/* 기록보관소 — 관리 화면 계보 · v1.2 */
@media (min-width:1600px){
  html.ui-pc .dash, html.ui-pc .toprow{ max-width:1600px }
}
.tbtn.tbtn-back{
  background:var(--pt); color:#08121a; font-weight:800;
  min-height:44px; height:44px; border-color:var(--pt);
  display:inline-flex; align-items:center; justify-content:center;
  text-decoration:none; white-space:nowrap; padding:0 14px;
}
#logout, .tbtn-logout{
  color:var(--stop);
  border-color:rgba(255,107,94,.45);
}
html.ui-phone .toprow{ flex-wrap:wrap; align-items:center; }
html.ui-phone .tbtn-back{
  display:inline-flex !important;
  order:-1; flex:1 1 100%;
  min-height:44px; height:44px;
}
html.ui-phone .top-actions{ display:flex; flex-wrap:wrap; }
html.ui-pc .tbtn-back{ flex:0 0 auto; order:0; }

.arch-search{
  display:flex; gap:8px; margin:0 0 12px;
}
.arch-search input{
  flex:1; height:44px; padding:0 12px; border-radius:8px;
  border:1.5px solid var(--line2); background:var(--ink2); color:var(--txt);
  font:16px inherit; min-width:0;
}
.arch-search button, .arch-more, .arch-old{
  min-height:44px; padding:0 14px; border-radius:8px;
  border:1px solid var(--line2); background:transparent; color:var(--txt2);
  font:800 13px inherit; cursor:pointer; white-space:nowrap;
}
.arch-old[aria-pressed="true"]{
  background:rgba(255,107,94,.14); color:var(--stop); border-color:rgba(255,107,94,.45);
}
.arch-tools{
  display:flex; flex-wrap:wrap; gap:8px; align-items:center;
  margin:0 0 12px;
}
.arch-proj-wrap{
  display:flex; align-items:center; gap:8px; flex:1 1 220px; min-width:0;
}
.arch-proj-wrap.hide, .arch-old.hide{ display:none !important; }
.arch-proj-lab{ font:800 12.5px inherit; color:var(--txt2); white-space:nowrap; }
.arch-proj-wrap select{
  flex:1; min-width:0; height:44px; padding:0 10px; border-radius:8px;
  border:1.5px solid var(--line2); background:var(--ink2); color:var(--txt);
  font:16px inherit;
}
.arch-tabs{ display:flex; flex-wrap:wrap; gap:6px; margin:0 0 14px; }
.arch-tabs .tabx{
  min-height:44px; padding:0 12px; border-radius:10px;
  border:1px solid var(--line2); background:transparent; color:var(--txt2);
  font:800 13px inherit; cursor:pointer;
}
.arch-tabs .tabx.on{ background:rgba(57,211,182,.14); color:var(--pt); border-color:rgba(57,211,182,.45); }
.arch-panel.hide{ display:none !important; }

.arch-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  align-items:stretch;
}
@media (min-width:1100px){
  html.ui-pc .arch-grid{ grid-template-columns:repeat(3, minmax(0,1fr)); }
}
@media (min-width:1600px){
  html.ui-pc .arch-grid{ grid-template-columns:repeat(4, minmax(0,1fr)); }
}
.arch-grid > .empty,
.arch-grid > .gate-pass-line,
.arch-grid > .gate-pass-list{ grid-column:1 / -1; }

.hist-row{
  background:var(--card); border:1px solid var(--line); border-radius:12px;
  padding:12px 14px; margin:0; height:100%;
  overflow-wrap:anywhere;
}
.hist-row.reject{
  border-color:#FF6B5E;
  border-width:1.5px;
  cursor:pointer;
}
.hist-row.reject .hist-title{ color:#FF6B5E; }
.hist-row.pass{ border-style:dashed; }
.hist-code{
  margin:0 0 4px; font-size:12px; font-weight:800; letter-spacing:.04em; color:var(--pt);
  display:flex; align-items:center; gap:8px; flex-wrap:wrap;
  overflow-wrap:anywhere;
}
.hist-code .code-copy{ height:28px; padding:0 8px; font-size:12px; min-height:28px; }
.hist-title{
  margin:0 0 6px; font-size:15px; font-weight:800;
  overflow-wrap:anywhere;
}
.hist-meta{
  margin:0; font-size:12.5px; color:var(--txt2); line-height:1.45;
  overflow-wrap:anywhere;
}
.gate-detail{
  display:none;
  margin-top:10px; padding-top:10px;
  border-top:1px solid rgba(255,107,94,.35);
}
.hist-row.reject.open .gate-detail,
.hist-row.open .gate-detail{ display:block; }
.gate-detail p{ margin:0 0 6px; font-size:13px; line-height:1.45; overflow-wrap:anywhere; max-width:100%; min-width:0; }
.gate-detail .k{ color:var(--txt2); font-weight:700; margin-right:6px; }
.arch-detail-btn{
  display:inline-flex; align-items:center; justify-content:center;
  margin-top:10px; min-height:44px; padding:0 14px; border-radius:8px;
  border:1px solid var(--line2); background:transparent; color:var(--txt2);
  font:800 13px inherit; cursor:pointer; white-space:nowrap; max-width:100%;
}
.hist-row.open .arch-detail-btn{ color:var(--pt); border-color:rgba(57,211,182,.45); }
.arch-docs{ display:flex; flex-wrap:wrap; gap:8px; min-width:0; max-width:100%; margin-top:6px; }
.arch-doc-open{
  min-height:44px; padding:0 12px; border-radius:8px; max-width:100%; min-width:0;
  border:1px solid var(--line2); background:transparent; color:var(--pt);
  font:800 13px inherit; cursor:pointer; overflow-wrap:anywhere; white-space:normal;
}
html.ui-phone .arch-detail-btn{ width:100%; }
.gate-pass-line{
  display:flex; align-items:center; justify-content:space-between; gap:8px;
  width:100%; text-align:left; cursor:pointer;
  min-height:44px; padding:10px 14px; border-radius:12px;
  border:1px solid var(--line); background:var(--card); color:var(--txt);
  font:800 14px inherit;
}
.gate-pass-line[aria-expanded="true"]{ border-color:var(--pt); }
.gate-pass-list.hide{ display:none !important; }
.gate-pass-list{
  display:grid; grid-template-columns:1fr; gap:12px;
}
@media (min-width:1100px){
  html.ui-pc .gate-pass-list{ grid-template-columns:repeat(3, minmax(0,1fr)); }
}
@media (min-width:1600px){
  html.ui-pc .gate-pass-list{ grid-template-columns:repeat(4, minmax(0,1fr)); }
}

.arch-grid .doc{
  margin:0; height:100%;
  overflow-wrap:anywhere;
}
.arch-grid .doc .dt, .arch-grid .doc .ds{
  overflow-wrap:anywhere;
  text-overflow:unset;
  white-space:normal;
}

.top-actions a.tbtn{ display:inline-flex; align-items:center; text-decoration:none; }
html.ui-phone .arch-tabs{ display:grid; grid-template-columns:1fr 1fr; }
html.ui-phone .arch-tabs .tabx[data-tab="status"]{ grid-column:1 / -1; }
html.ui-phone .arch-tabs .tabx{ width:100%; font-size:12.5px; padding:0 8px; }
html.ui-phone .top-actions a.tbtn{
  display:flex; align-items:center; justify-content:center; text-decoration:none;
}
html.ui-phone .arch-tools{ flex-direction:column; align-items:stretch; }
html.ui-phone .arch-proj-wrap{ flex:1 1 auto; }
html.ui-phone .arch-old{ width:100%; }
