/* Archive presentation only. Keep business scripts, data and bridge contracts unchanged. */
:root { color-scheme: dark; }
[data-theme="light"] { color-scheme: light; }
body { font-family: 'Inter','NotoSansSC','Noto Sans SC',sans-serif; font-size:14px; line-height:1.6; height:100dvh; }
button,input,select,textarea { font-family:inherit; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
#sidebar { padding:20px 8px 12px; }
.sidebar-logo { padding:0 10px 16px; }
.sidebar-logo h2 { font-size:15px; line-height:1.6; }
.sidebar-logo span { display:block; font-size:9px; letter-spacing:.8px; margin-top:3px; }
.sidebar-section-label { padding:0; margin:14px 12px 6px; }
.sidebar-nav { padding:0; }
.nav-item { width:100%; border:0; background:transparent; text-align:left; font-family:inherit; line-height:1.6; font-weight:400; }
.nav-item .icon { font-size:16px; }
.sidebar-bottom { padding:16px 4px 0; margin-top:auto; }
.quick-link { font-size:12px; padding:10px 8px; }
#main { min-width:0; }
.topbar { min-height:76px; gap:16px; padding:14px 24px; }
.page-heading { min-width:0; }
.page-heading p { color:var(--text2); font-size:11px; margin-top:2px; }
.topbar-actions,#topbar-actions { flex-wrap:wrap; }
.topbar-actions { justify-content:flex-end; }
.topbar-btn { line-height:1.6; }
#content { padding:24px; min-width:0; }
.filters,.mw-toolbar { padding:14px; border:1px solid var(--border); border-radius:12px; background:var(--bg2); margin-bottom:16px; }
.filters input,.filters select,.mw-toolbar input { background:var(--bg3); padding:8px 12px; max-width:100%; }
.filters .search-input { min-width:200px; }
.table-container { background:var(--bg2); border-radius:12px; }
tbody tr:hover { background:var(--bg3); }
tbody td { line-height:1.6; }
.addr-text,.mw-addr { font-family:'JetBrainsMono','JetBrains Mono',monospace; }
.action-btns { flex-wrap:wrap; }
.btn-edit,.btn-del { white-space:nowrap; }
.pagination { flex-wrap:wrap; }
.modal-overlay { padding:20px; }
.modal { line-height:1.6; }
.login-box { width:min(400px,calc(100vw - 32px)); text-align:left; padding:36px; }
.login-box h1 { font-size:22px; line-height:1.5; }
.login-eyebrow { color:var(--accent); font-size:10px; letter-spacing:1.4px; margin:6px 0 22px; }
.login-box p { line-height:1.8; margin-bottom:24px; }
.login-box input { background:var(--bg3); }
.login-footnote { color:var(--text2); font-size:11px; text-align:center; margin-top:20px; }
@media(max-width:1050px) and (min-width:761px) {
  .topbar { align-items:flex-start; }
  .topbar-actions { max-width:60%; }
}
@media(max-width:760px) {
  body { flex-direction:column; overflow:auto; height:auto; min-height:100dvh; }
  #sidebar { width:100%; flex-shrink:0; padding:15px 12px 10px; border-right:0; border-bottom:1px solid var(--border); }
  .sidebar-logo { padding:0 4px 12px; }
  .sidebar-logo h2 { font-size:15px; }
  .sidebar-logo span,.sidebar-section-label { display:none; }
  .sidebar-nav { display:flex; overflow-x:auto; flex-shrink:0; padding-top:10px; gap:3px; }
  .nav-item { flex-shrink:0; width:auto; padding:8px 10px; font-size:12px; gap:6px; white-space:nowrap; margin:0; }
  .nav-item .icon { font-size:14px; width:16px; }
  .sidebar-bottom { border:0; padding:6px 0 0; }
  .quick-link { margin:0; padding:4px; font-size:11px; }
  #main { overflow:visible; flex:none; width:100%; }
  .topbar { padding:12px 15px; min-height:unset; flex-wrap:wrap; gap:10px; }
  .topbar-actions { width:100%; justify-content:flex-start; gap:6px; }
  .topbar-btn { font-size:11px; padding:6px 10px; }
  #content { padding:16px 15px; overflow:visible; }
  .filters,.mw-toolbar { padding:12px; gap:8px; }
  .filters .search-input,.mw-toolbar input { flex-basis:100%; min-width:0; width:100%; }
  .filters select { flex:1; min-width:100px; }
  .table-container table { min-width:820px; }
  .table-container { max-width:100%; }
  .form-row { grid-template-columns:1fr; }
  .modal { padding:20px; max-height:88dvh; }
  .modal-overlay { padding:12px; }
  .mw-card-top { flex-wrap:wrap; }
  .login-box { padding:28px; }
}
