:root{--brand:#ff4d00;--brand-600:#e04400;--brand-700:#b53400;--brand-50:#fff3ec;--brand-100:#ffe1d1;--gray-0:#fff;--gray-25:#fbfbfc;--gray-50:#f6f7f9;--gray-100:#eff1f4;--gray-200:#e3e6eb;--gray-300:#cbd0d8;--gray-400:#a6adb8;--gray-500:#818a97;--gray-600:#5c6470;--gray-700:#3d444e;--gray-800:#252a31;--gray-900:#161a1f;--green:#1f8f5a;--green-50:#e8f6ef;--red:#d93036;--red-50:#fdecec;--amber:#b77900;--amber-50:#fdf4dc;--blue:#2f6fca;--blue-50:#e9f1fc;--bg:var(--gray-50);--surface:var(--gray-0);--border:var(--gray-200);--text:var(--gray-900);--text-2:var(--gray-600);--text-3:var(--gray-500);--radius:10px;--radius-sm:7px;--shadow-sm:0 1px 2px #161a1f0d;--shadow:0 1px 3px #161a1f0f, 0 6px 20px #161a1f0d;--sidebar-w:248px;--sidebar-w-collapsed:68px;--topbar-h:56px;--font:"Segoe UI Variable Text", "Segoe UI", system-ui, Arial, sans-serif;--font-head:"Segoe UI Variable Display", "Segoe UI", system-ui, Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.45}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{font-family:var(--font-head);margin:0}a{color:inherit}.muted{color:var(--text-3)}.text-red{color:var(--red)}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.btn{border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;height:36px;padding:0 14px;font-size:13px;font-weight:600;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.btn:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400)}.btn:disabled{opacity:.6;cursor:default}.btn-sm{height:30px;padding:0 10px;font-size:12.5px}.btn-lg{height:44px;font-size:14.5px}.btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn-primary:hover:not(:disabled){background:var(--brand-600);border-color:var(--brand-600)}.btn-success{background:var(--green);border-color:var(--green);color:#fff}.btn-success:hover:not(:disabled){background:#187548;border-color:#187548}.icon-button{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--text-2);cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.icon-button:hover{background:var(--gray-100);color:var(--text)}.badge{white-space:nowrap;vertical-align:middle;border-radius:999px;align-items:center;height:21px;padding:0 8px;font-size:11.5px;font-weight:600;display:inline-flex}.badge-gray{background:var(--gray-100);color:var(--gray-700)}.badge-green{background:var(--green-50);color:var(--green)}.badge-red{background:var(--red-50);color:var(--red)}.badge-amber{background:var(--amber-50);color:var(--amber)}.badge-orange{background:var(--brand-50);color:var(--brand-700)}.badge-blue{background:var(--blue-50);color:var(--blue)}.avatar{background:var(--brand-50);width:34px;height:34px;color:var(--brand-700);object-fit:cover;border-radius:50%;flex:none;place-items:center;font-size:12.5px;font-weight:700;display:inline-grid}.avatar-sm{width:30px;height:30px;font-size:11.5px}.field{flex-direction:column;gap:6px;display:flex}.field>span{color:var(--gray-700);font-size:12px;font-weight:600}.input-icon{align-items:center;display:flex;position:relative}.input-icon>svg{color:var(--text-3);pointer-events:none;position:absolute;left:12px}.input-icon input{border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--surface);outline:none;width:100%;height:44px;padding:0 44px 0 38px;transition:border-color .12s,box-shadow .12s}.input-icon input:hover{border-color:var(--gray-400)}.input-icon input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-100)}.reveal{width:32px;height:32px;color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid;position:absolute;right:6px}.reveal:hover{background:var(--gray-100);color:var(--text)}.alert{border-radius:var(--radius-sm);background:var(--red-50);color:#a3262b;padding:10px 12px;font-size:13px}.search-box{border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--surface);outline:none;width:260px;height:36px;padding:0 12px}.search-box:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-100)}.login{background:var(--surface);grid-template-columns:minmax(360px,44%) 1fr;min-height:100%;display:grid}.login-aside{background:radial-gradient(120% 90% at 0% 0%, #2a2f37 0%, var(--gray-900) 60%);color:#fff;flex-direction:column;justify-content:space-between;padding:36px 40px;display:flex;position:relative;overflow:hidden}.login-aside:after{content:"";background:radial-gradient(circle,#ff4d0059,#0000 65%);border-radius:50%;width:380px;height:380px;position:absolute;bottom:-120px;right:-120px}.login-aside-brand{font-family:var(--font-head);align-items:center;gap:10px;font-size:17px;font-weight:700;display:flex}.login-aside-brand img{background:#fff;border-radius:9px;width:36px;height:36px;padding:4px}.login-aside-copy{z-index:1;max-width:400px;position:relative}.login-aside-copy h2{margin-bottom:12px;font-size:30px;line-height:1.2}.login-aside-copy p{color:var(--gray-400);margin:0;font-size:15px}.login-aside-foot{color:var(--gray-500);font-size:12px}.login-panel{place-items:center;padding:32px 16px;display:grid}.login-form{flex-direction:column;gap:16px;width:100%;max-width:380px;display:flex}.login-form h1{font-size:26px}.login-sub{color:var(--text-2);margin:-10px 0 8px}.version{text-align:center;color:var(--text-3);margin:4px 0 0;font-size:11.5px}@media (max-width:760px){.login{grid-template-columns:1fr}.login-aside{display:none}}.shell{grid-template-columns:var(--sidebar-w) 1fr;height:100%;transition:grid-template-columns .18s;display:grid}.shell.collapsed{grid-template-columns:var(--sidebar-w-collapsed) 1fr}.sidebar{background:var(--gray-900);min-height:0;color:var(--gray-300);flex-direction:column;display:flex}.sidebar-brand{height:var(--topbar-h);border-bottom:1px solid #ffffff0f;flex:none;align-items:center;gap:10px;padding:0 16px;display:flex}.sidebar-brand img{object-fit:contain;background:#fff;border-radius:8px;flex:none;width:34px;height:34px;padding:3px}.sidebar-brand-text{flex-direction:column;min-width:0;display:flex}.sidebar-brand-text strong{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;overflow:hidden}.sidebar-brand-text span{letter-spacing:.06em;text-transform:uppercase;color:var(--gray-500);font-size:10.5px}.sidebar-nav{scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;flex:1;padding:10px 10px 16px;overflow-y:auto}.nav-group+.nav-group{margin-top:12px}.nav-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--gray-500);padding:6px 10px 4px;font-size:10.5px;font-weight:700}.nav-item{border-radius:var(--radius-sm);height:36px;color:var(--gray-300);white-space:nowrap;align-items:center;gap:11px;padding:0 10px;font-size:13.5px;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex}.nav-item svg{flex:none}.nav-item:hover{color:#fff;background:#ffffff0f}.nav-item.active{background:var(--brand);color:#fff}.nav-soon{color:var(--gray-500);background:#ffffff12;border-radius:999px;margin-left:auto;padding:1px 6px;font-size:10px;font-weight:600}.nav-item.active .nav-soon{color:#fff;background:#fff3}.sidebar-toggle{border-radius:var(--radius-sm);height:42px;color:var(--gray-500);cursor:pointer;background:0 0;border:0;flex:none;align-items:center;gap:11px;margin:0 10px 10px;padding:0 12px;display:flex}.sidebar-toggle:hover{color:#fff;background:#ffffff0f}.collapsed .nav-label,.collapsed .nav-soon,.collapsed .nav-group-label,.collapsed .sidebar-brand-text{display:none}.collapsed .nav-item,.collapsed .sidebar-toggle,.collapsed .sidebar-brand{justify-content:center;padding:0}.collapsed .nav-group+.nav-group{border-top:1px solid #ffffff0f;margin-top:8px;padding-top:8px}.main{flex-direction:column;min-width:0;min-height:0;display:flex}.topbar{height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;padding:0 20px;display:flex}.topbar-title{font-family:var(--font-head);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;overflow:hidden}.topbar-user{align-items:center;gap:10px;display:flex}.topbar-user-text{text-align:right;flex-direction:column;line-height:1.25;display:flex}.topbar-user-text strong{font-size:13px;font-weight:600}.topbar-user-text span{color:var(--text-3);font-size:11.5px}.content{flex:1;min-height:0;overflow:auto}.page{max-width:1600px;margin:0 auto;padding:22px 24px 28px}.page-fill{flex-direction:column;max-width:none;height:100%;display:flex}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.page-header h1{font-size:22px}.page-header p{color:var(--text-2);align-items:center;gap:12px;margin:4px 0 0;display:flex}.page-actions{align-items:center;gap:8px;display:flex}.back-link{color:var(--brand-700);align-items:center;gap:4px;font-weight:600;text-decoration:none;display:inline-flex}.back-link:hover{text-decoration:underline}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;min-width:0;display:flex}.card-head{border-bottom:1px solid var(--gray-100);justify-content:space-between;align-items:center;gap:10px;padding:14px 16px 12px;display:flex}.card-head h2{font-size:14.5px}.card-body{flex:1;min-height:0}.state{color:var(--text-3);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:40px 16px;display:flex}.state strong{color:var(--gray-700);font-size:13.5px}.state-error{color:var(--red)}.inline-error{border-radius:var(--radius-sm);background:var(--red-50);color:#a3262b;margin:0 16px 14px;padding:8px 10px;font-size:12.5px}.tabs{border-radius:var(--radius);background:var(--gray-100);gap:4px;width:-moz-fit-content;width:fit-content;margin-bottom:12px;padding:4px;display:flex}.tab{border-radius:var(--radius-sm);height:30px;color:var(--text-2);cursor:pointer;background:0 0;border:0;padding:0 12px;font-size:12.5px;font-weight:600}.tab:hover{color:var(--text)}.tab.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.hero{background:radial-gradient(140% 120% at 100% 0%, #ff4d0052, transparent 55%), var(--gray-900);color:#fff;border-radius:14px;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;padding:22px 24px;display:flex}.hero-greeting{letter-spacing:.04em;text-transform:uppercase;color:var(--gray-400);font-size:12px;font-weight:600}.hero h1{margin-top:4px;font-size:24px}.hero p{color:var(--gray-400);margin:4px 0 0}.hero-live{white-space:nowrap;background:#ffffff14;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:600;display:flex}.pulse{background:#3ddc84;border-radius:50%;width:8px;height:8px;animation:1.8s infinite pulse;box-shadow:0 0 #3ddc8499}@keyframes pulse{70%{box-shadow:0 0 0 8px #3ddc8400}to{box-shadow:0 0 #3ddc8400}}.stats{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-bottom:18px;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);align-items:center;gap:12px;padding:16px;display:flex}.stat-icon{border-radius:10px;flex:none;place-items:center;width:42px;height:42px;display:grid}.tone-orange{background:var(--brand-50);color:var(--brand)}.tone-blue{background:var(--blue-50);color:var(--blue)}.tone-green{background:var(--green-50);color:var(--green)}.tone-amber{background:var(--amber-50);color:var(--amber)}.tone-gray{background:var(--gray-100);color:var(--gray-700)}.stat-text{flex-direction:column;min-width:0;display:flex}.stat-label{color:var(--text-2);font-size:12px;font-weight:600}.stat-value{font-family:var(--font-head);font-variant-numeric:tabular-nums;font-size:22px;line-height:1.2}.stat-hint{color:var(--text-3);font-size:11.5px}.shortcuts{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-bottom:18px;display:grid}.shortcut{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);text-align:left;cursor:pointer;align-items:center;gap:12px;padding:12px 14px;transition:border-color .12s,box-shadow .12s,transform .12s;display:flex}.shortcut svg{color:var(--brand);flex:none}.shortcut span{flex-direction:column;display:flex}.shortcut strong{font-size:13.5px}.shortcut small{color:var(--text-3);font-size:12px}.shortcut:hover{border-color:var(--brand-100);box-shadow:var(--shadow);transform:translateY(-1px)}.dash-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px;display:grid}@media (max-width:1180px){.dash-grid{grid-template-columns:1fr 1fr}}@media (max-width:820px){.dash-grid{grid-template-columns:1fr}}.list{max-height:420px;margin:0;padding:4px 0;list-style:none;overflow-y:auto}.list-row{align-items:center;gap:10px;padding:10px 16px;display:flex}.list-row+.list-row{border-top:1px solid var(--gray-100)}.list-compact .list-row{padding:8px 16px}.list-main{flex-direction:column;flex:1;min-width:0;display:flex}.list-main strong{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.list-main span{color:var(--text-2);font-size:12.5px}.list-actions{gap:6px;display:flex}.note{align-items:flex-start}.note.unread{background:var(--brand-50);cursor:pointer}.note-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.vgrid{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-height:300px;box-shadow:var(--shadow-sm);contain:strict;overscroll-behavior:contain;flex:1;overflow:auto}.vgrid-inner{position:relative}.vgrid-head{z-index:2;background:var(--gray-25);border-bottom:1px solid var(--border);height:40px;display:grid;position:sticky;top:0}.vgrid-th{letter-spacing:.04em;text-transform:uppercase;min-width:0;color:var(--text-2);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:4px;padding:0 14px;font-size:11.5px;font-weight:700;display:flex}.vgrid-th span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vgrid-th:hover{color:var(--text);background:var(--gray-50)}.vgrid-body{position:relative}.vgrid-row{border-bottom:1px solid var(--gray-100);background:var(--surface);will-change:transform;align-items:center;display:grid;position:absolute;top:0;left:0;right:0}.vgrid-row.striped{background:var(--gray-25)}.vgrid-row:hover{background:var(--gray-50)}.vgrid-row.selected{background:var(--brand-50)}.vgrid.clickable .vgrid-row{cursor:pointer}.vgrid-cell{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:0 14px;font-size:13.5px;overflow:hidden}.vgrid-th.right,.vgrid-cell.right{text-align:right;font-variant-numeric:tabular-nums;justify-content:flex-end}.vgrid-th.center,.vgrid-cell.center{text-align:center;justify-content:center}.cell-strong{font-weight:600}.cell-person{align-items:center;gap:10px;min-width:0;display:flex}.btn-danger{background:var(--red);border-color:var(--red);color:#fff}.btn-danger:hover:not(:disabled){background:#b9262c;border-color:#b9262c}.btn-warning{color:#fff;background:#d97706;border-color:#d97706}.btn-warning:hover:not(:disabled){background:#b45f05;border-color:#b45f05}.btn-active{background:var(--brand-50);border-color:var(--brand-100);color:var(--brand-700)}.tone-text-blue{color:var(--blue);flex:none}.tone-text-green{color:var(--green);flex:none}.tone-text-red{color:var(--red);flex:none}.tone-text-amber{color:var(--amber);flex:none}.tone-text-orange{color:var(--brand);flex:none}.mono{letter-spacing:.01em;font-family:Cascadia Mono,Consolas,ui-monospace,monospace}.input,.select{border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--surface);outline:none;width:100%;height:38px;padding:0 11px;transition:border-color .12s,box-shadow .12s}.select{cursor:pointer;width:auto;padding-right:28px}.textarea{resize:vertical;height:auto;padding:9px 11px}.input:focus,.select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-100)}.input:disabled{background:var(--gray-50);color:var(--text-2)}.form{flex-direction:column;gap:14px;display:flex}.form-row{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.field-inline{flex-direction:row;align-items:center;gap:12px;margin-bottom:12px}.modal-backdrop{z-index:50;background:#161a1f6b;place-items:center;padding:24px 16px;animation:.12s fade;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:14px;flex-direction:column;max-width:100%;max-height:calc(100vh - 48px);animation:.14s rise;display:flex;box-shadow:0 24px 60px #161a1f40}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(6px)scale(.99)}}.modal-head{justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 12px;display:flex}.modal-head h2{font-size:17px}.modal-head p{color:var(--text-2);margin:4px 0 0;font-size:13px}.modal-body{min-height:0;padding:4px 20px 18px;overflow:auto}.modal-foot{border-top:1px solid var(--gray-100);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}.dialog-message{white-space:pre-line;color:var(--gray-700)}.dialog-message p{margin:0 0 8px}.dialog-message p:last-child{margin-bottom:0}.dialog-alert{align-items:flex-start;gap:12px;display:flex}.toasts{z-index:60;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.toast{border-radius:var(--radius);background:var(--gray-900);color:#fff;box-shadow:var(--shadow);align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:500;animation:.16s rise;display:flex}.toast-success svg{color:#3ddc84}.toast-error svg{color:#ff7a7f}.menu{z-index:70;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:210px;padding:5px;animation:80ms fade;position:fixed;box-shadow:0 12px 32px #161a1f29}.menu-item{text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;width:100%;height:34px;padding:0 10px;font-size:13px;display:flex}.menu-item:hover{background:var(--gray-100)}.menu-item small{color:var(--text-3);margin-left:auto;padding-left:12px;font-size:11px}.menu-danger{color:var(--red)}.menu-warning{color:#c2410c}.menu-locked{color:var(--gray-400)}.menu-divider{background:var(--gray-100);height:1px;margin:4px 6px}.row-menu{width:28px;height:28px;color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.row-menu:hover{background:var(--gray-200);color:var(--text)}.vgrid-row.checked{background:var(--brand-50)}.vgrid input[type=checkbox]{width:15px;height:15px;accent-color:var(--brand);cursor:pointer}.split{flex:1;grid-template-columns:minmax(360px,2fr) 3fr;gap:14px;min-height:0;display:grid}.pane{flex-direction:column;gap:10px;min-width:0;min-height:0;display:flex}.pane-head{justify-content:space-between;align-items:center;gap:10px;min-height:40px;display:flex}.pane-head h2{white-space:nowrap;text-overflow:ellipsis;font-size:15px;overflow:hidden}.pane-head>div:first-child{flex-direction:column;min-width:0;display:flex}.pane-head .muted{font-size:12.5px}.pane-actions{flex:none;gap:6px;display:flex}.pane .search-box{width:100%}.pane-empty{text-align:center;color:var(--text-3);background:var(--surface);border:1px dashed var(--gray-300);border-radius:var(--radius);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;padding:24px;display:flex}.pane-empty strong{color:var(--gray-700)}.parts{border:1px solid var(--border);border-radius:var(--radius);max-height:340px;margin:0;padding:0;list-style:none;overflow:auto}.part{align-items:center;gap:10px;padding:10px 12px;display:flex}.part+.part{border-top:1px solid var(--gray-100)}.search-bar{gap:10px;margin-bottom:14px;display:flex}.search-bar .select{height:44px}.search-input{flex:1;align-items:center;max-width:560px;display:flex;position:relative}.search-input svg{color:var(--text-3);position:absolute;left:14px}.search-input input{border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--surface);letter-spacing:.08em;outline:none;width:100%;height:44px;padding:0 64px 0 42px;font-family:Cascadia Mono,Consolas,ui-monospace,monospace;font-size:16px}.search-input input::placeholder{font-family:var(--font);letter-spacing:0;font-size:14px}.search-input input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-100)}.search-count{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:12px;position:absolute;right:14px}.search-panes{flex:1;grid-template-columns:minmax(300px,1.1fr) minmax(240px,.9fr) minmax(340px,1.4fr);gap:14px;min-height:0;display:grid}.copy-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex:1;margin:0;padding:6px;list-style:none;overflow:auto}.copy-item{border-radius:var(--radius-sm);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;flex-direction:column;width:100%;padding:10px 12px;display:flex}.copy-item:hover{background:var(--gray-50)}.copy-item.active{background:var(--brand-50);border-color:var(--brand-100)}.copy-item strong{font-size:13.5px}.copy-item span{color:var(--text-2);font-size:12.5px}.copy-item small{color:var(--text-3);font-size:11.5px}.pane-detail{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 0 0}.pane-detail .pane-head{padding:0 14px}.pane-detail .pane-empty{border:0}.detail-scroll{flex:1;padding:0 14px 14px;overflow:auto}.detail-section+.detail-section{margin-top:14px}.detail-section h3{letter-spacing:.06em;text-transform:uppercase;color:var(--brand-700);margin-bottom:6px;font-size:11.5px;font-weight:700}.detail-section dl{border:1px solid var(--gray-100);border-radius:var(--radius-sm);margin:0}.detail-row{grid-template-columns:130px 1fr;gap:10px;padding:7px 10px;display:grid}.detail-row+.detail-row{border-top:1px solid var(--gray-100)}.detail-row dt{color:var(--text-2);font-size:12.5px}.detail-row dd{word-break:break-word;-webkit-user-select:text;user-select:text;margin:0;font-size:13.5px;font-weight:500}.check-row{cursor:pointer;align-items:center;gap:10px;padding:8px 4px;display:flex}.check-row input{width:16px;height:16px;accent-color:var(--brand)}.check-all{border-bottom:1px solid var(--gray-100);margin-bottom:4px;font-weight:600}.check-list{max-height:340px;margin:0;padding:0;list-style:none;overflow:auto}.pick-search{align-items:center;gap:6px;margin-bottom:10px;display:flex;position:relative}.pick-search>svg{color:var(--text-3);position:absolute;left:12px}.pick-search input{border:1px solid var(--gray-300);border-radius:var(--radius-sm);outline:none;flex:1;height:40px;padding:0 12px 0 36px}.pick-search input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-100)}.pick-list{border:1px solid var(--border);border-radius:var(--radius);height:360px;overflow:auto}.pick-item{text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;height:44px;padding:0 12px;display:flex;position:absolute;top:0;left:0;right:0}.pick-item strong{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.pick-item span{color:var(--text-3);font-size:12px}.pick-item.active{background:var(--brand-50)}.pick-count{color:var(--text-3);margin-top:8px;font-size:12px}.dropzone{border:2px dashed var(--gray-300);background:var(--surface);color:var(--text-3);cursor:pointer;border-radius:14px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;transition:border-color .12s,background .12s;display:flex}.dropzone svg{color:var(--brand)}.dropzone strong{color:var(--gray-800);font-size:15px}.dropzone:hover,.dropzone.over{border-color:var(--brand);background:var(--brand-50)}.upload-page{padding:14px 16px 16px}.spreadsheet-host{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.spreadsheet-host.hidden{display:none}.spreadsheet-title{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:12px;height:40px;padding:0 14px;display:flex}.spreadsheet-title .muted{align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.spreadsheet-host .e-spreadsheet{border:0;flex:1;min-height:0}.review{outline:none;flex-direction:column;flex:1;min-height:0;display:flex}.review-bar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:10px;margin-bottom:12px;padding:12px 14px;display:flex}.review-branch{flex:1;align-items:baseline;gap:8px;min-width:0;display:flex}.review-branch strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.review-tools{justify-content:space-between;align-items:center;gap:10px;display:flex}.review-tools .tabs{margin-bottom:0}.review-summary{color:var(--text-2);margin:8px 0 10px}.upload-progress{align-items:center;gap:14px;margin-bottom:12px;display:flex}.progress{background:var(--gray-200);border-radius:999px;flex:1;height:10px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--brand), #ff8a3d);height:100%;transition:width .25s}.upload-progress-text{flex-direction:column;min-width:260px;font-size:12.5px;display:flex}.aliases{grid-template-columns:1fr 1.2fr;gap:16px;min-height:420px;display:grid}.aliases-fields,.aliases-names{flex-direction:column;gap:8px;min-height:0;display:flex}.aliases-names h3{align-items:center;min-height:38px;font-size:13.5px;display:flex}.select-list{border:1px solid var(--border);border-radius:var(--radius);flex:1;height:320px;margin:0;padding:4px;list-style:none;overflow:auto}.select-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;width:100%;padding:7px 10px;display:flex}.select-list button:hover{background:var(--gray-50)}.select-list button.active{background:var(--brand-50);color:var(--brand-700);font-weight:600}.select-list small{color:var(--text-3)}.alias-row{justify-content:space-between;align-items:center;padding:2px 4px 2px 10px;display:flex}.select-list li+li .alias-row{border-top:1px solid var(--gray-100)}.alias-empty{padding:10px}.inline-add{gap:8px;display:flex}@media (max-width:1100px){.split,.search-panes{grid-template-columns:1fr;grid-auto-rows:minmax(320px,1fr)}}.vgrid-check{justify-content:center;align-items:center;padding:0;display:flex;overflow:visible}.review-title{align-items:baseline;gap:12px;margin:2px 0 10px;display:flex}.review-title strong{font-family:var(--font-head);letter-spacing:.04em;font-size:15px}.vgrid-editable{cursor:text}.vgrid-editing{box-shadow:inset 0 0 0 2px var(--brand);background:#fff;padding:0}.vgrid-editing input{width:100%;height:100%;font:inherit;border:0;outline:none;padding:0 12px}.vgrid:focus{outline:none}.foot-left{margin-right:auto}.keep-alive{height:100%}.keep-alive[hidden]{display:none}.spreadsheet-actions{gap:6px;margin-left:auto;display:flex}.spreadsheet-title{height:48px}.operations-page{flex-direction:column;height:100%;min-height:0;display:flex}.operations-page>.page{flex:1;min-height:0}.operations-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.operations-toolbar label{align-items:center;gap:8px;display:flex}.operations-toolbar input,.operations-toolbar select,.operations-field input:not([type=checkbox]),.operations-field select{border:1px solid var(--border,#e5e7eb);color:#1f2937;font:inherit;background:#fff;border-radius:7px;padding:9px 10px}.operations-form{flex-direction:column;gap:16px;display:flex}.operations-field{flex-direction:column;gap:7px;display:flex}.operations-field select[multiple]{min-height:140px}.operations-buttons{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}
