:root{--sidebar-bg:#1d1d1d;--sidebar-text:#89a;--sidebar-text-active:#fff;--sidebar-active-border:#ea5300;--sidebar-hover-bg:#ffffff12;--sidebar-group-bg:#1e2a36;--sidebar-icon:#89a;--sidebar-icon-active:#fff;--sidebar-accent:#ea5300;--sidebar-accent-hover:#c94800;--sidebar-width:210px;--sidebar-width-collapsed:56px;--bg-page:#f0f0f0;--bg-card:#fff;--bg-hover:#f3f4f6;--bg-overlay:#11182773;--accent:#ea5300;--accent-hover:#c94800;--accent-light:#fff1e8;--accent-text:#7c2d12;--accent-bg-subtle:#ea530012;--accent-border-subtle:#ea530040;--text-primary:#111827;--text-secondary:#6b7280;--text-muted:#9ca3af;--text-inverse:#fff;--text-link:#ea5300;--border:#e5e7eb;--border-subtle:#f3f4f6;--border-strong:#d1d5db;--border-focus:#ea5300;--status-processing-bg:#e0f2fe;--status-processing-text:#0c4a6e;--status-pending-tech-bg:#fef3c7;--status-pending-tech-text:#92400e;--status-pending-ops-bg:#ffedd5;--status-pending-ops-text:#9a3412;--status-returned-bg:#fee2e2;--status-returned-text:#991b1b;--status-send-ops-bg:#ede9fe;--status-send-ops-text:#5b21b6;--status-approved-bg:#d1fae5;--status-approved-text:#065f46;--status-completed-bg:#fef9c3;--status-completed-text:#854d0e;--status-win-bg:#d1fae5;--status-win-text:#065f46;--status-lost-bg:#fee2e2;--status-lost-text:#991b1b;--status-cancel-bg:#f3f4f6;--status-cancel-text:#4b5563;--row-win-bg:#f0fdf4;--row-lost-bg:#fef2f2;--row-cancel-bg:#f9fafb;--color-success:#10b981;--color-success-bg:#d1fae5;--color-success-text:#065f46;--color-error:#ef4444;--color-error-bg:#fee2e2;--color-error-text:#991b1b;--color-warning:#f59e0b;--color-warning-bg:#fef3c7;--color-warning-text:#92400e;--color-info:#0284c7;--color-info-bg:#e0f2fe;--color-info-text:#0c4a6e;--btn-primary-bg:#ea5300;--btn-primary-bg-hover:#c94800;--btn-primary-text:#fff;--btn-secondary-bg:#fff;--btn-secondary-bg-hover:#f6f6f7;--btn-secondary-border:#d1d5db;--btn-secondary-text:#111827;--btn-danger-bg:#fff;--btn-danger-bg-hover:#fee2e2;--btn-danger-border:#fecaca;--btn-danger-text:#dc2626;--shadow-sm:0 1px 2px #1118270d;--shadow-md:0 4px 6px #11182712,0 1px 3px #1118270f;--shadow-lg:0 10px 15px #11182714,0 4px 6px #1118270d;--shadow-modal:0 20px 40px #11182729;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--font-sans:"DM Sans",system-ui,-apple-system,sans-serif;--font-mono:"JetBrains Mono","Fira Code",monospace;--topnav-height:56px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.12s;--dur-base:.18s;--dur-slow:.28s}@keyframes rmc-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes rmc-fade-in{0%{opacity:0}to{opacity:1}}@keyframes rmc-pop-in{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}@keyframes rmc-slide-in-right{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}@keyframes rmc-shimmer{0%{background-position:-160% 0}to{background-position:160% 0}}@keyframes rmc-spin{to{transform:rotate(360deg)}}@keyframes rmc-shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-3px)}40%,60%{transform:translate(3px)}}@keyframes rmc-pulse-soft{50%{opacity:.55}}.anim-fade-up{animation:rmc-fade-up var(--dur-slow) var(--ease-out) both}.anim-fade-in{animation:rmc-fade-in var(--dur-base) var(--ease-out) both}.anim-pop{animation:rmc-pop-in var(--dur-base) var(--ease-out) both}.anim-stagger>:first-child{animation-delay:0s}.anim-stagger>:nth-child(2){animation-delay:25ms}.anim-stagger>:nth-child(3){animation-delay:50ms}.anim-stagger>:nth-child(4){animation-delay:75ms}.anim-stagger>:nth-child(5){animation-delay:.1s}.anim-stagger>:nth-child(6){animation-delay:.125s}.anim-stagger>:nth-child(7){animation-delay:.15s}.anim-stagger>:nth-child(n+8){animation-delay:.175s}.page-enter-active{transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out)}.page-leave-active{transition:opacity var(--dur-fast) var(--ease-in-out);position:absolute;inset:0}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0}.modal-enter-active .modal,.modal-leave-active .modal{transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out)}.modal-enter-active,.modal-leave-active{transition:opacity var(--dur-base) var(--ease-out)}.modal-enter-from,.modal-leave-to{opacity:0}.modal-enter-from .modal,.modal-leave-to .modal{opacity:0;transform:translateY(10px)scale(.98)}.drawer-enter-active,.drawer-leave-active{transition:opacity var(--dur-base) var(--ease-out)}.drawer-enter-active .drawer,.drawer-leave-active .drawer{transition:transform var(--dur-slow) var(--ease-out)}.drawer-enter-from,.drawer-leave-to{opacity:0}.drawer-enter-from .drawer,.drawer-leave-to .drawer{transform:translate(100%)}.anim-tab{animation:rmc-fade-up var(--dur-base) var(--ease-out) both}.toast-enter-active{animation:rmc-slide-in-right var(--dur-base) var(--ease-out) both}.toast-leave-active{transition:opacity var(--dur-base) var(--ease-in-out), transform var(--dur-base) var(--ease-in-out)}.toast-leave-to{opacity:0;transform:translate(16px)}.toast-move{transition:transform var(--dur-base) var(--ease-out)}.skel{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--bg-hover) 25%, #e9eaec 37%, var(--bg-hover) 63%);background-size:300% 100%;animation:1.4s ease-in-out infinite rmc-shimmer;position:relative;overflow:hidden}.skel-text{height:11px}.skel-line{height:13px}.skel-title{border-radius:var(--radius-md);height:20px}.skel-pill{border-radius:var(--radius-full);height:18px}.skel-block{border-radius:var(--radius-md);height:64px}.spinner{vertical-align:-2px;border:2px solid;border-right-color:#0000;border-radius:50%;width:13px;height:13px;animation:.7s linear infinite rmc-spin;display:inline-block}.anim-shake{animation:rmc-shake .42s var(--ease-in-out) both}.anim-pulse{animation:1.6s ease-in-out infinite rmc-pulse-soft}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.skel{background:var(--bg-hover)}}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%}body{font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-page);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.mono{font-family:var(--font-mono)}.muted{color:var(--text-secondary)}.faint{color:var(--text-muted)}body{overflow-wrap:break-word}.clip{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.badge{border-radius:var(--radius-full);white-space:nowrap;text-overflow:ellipsis;vertical-align:bottom;max-width:100%;transition:background var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out);padding:2px 10px;font-size:11px;font-weight:500;display:inline-block;overflow:hidden}.chip{border-radius:var(--radius-sm);border:1px solid var(--border);padding:1px 7px;font-size:11px;font-weight:600;display:inline-block}.btn{border-radius:var(--radius-md);transition:background var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out),opacity var(--dur-base) var(--ease-out);border:1px solid #0000;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)scale(.985)}.btn:focus-visible{box-shadow:0 0 0 3px var(--accent-bg-subtle),0 0 0 1px var(--accent);outline:none}.btn-primary{background:var(--btn-primary-bg);color:#fff}.btn-primary:hover{background:var(--btn-primary-bg-hover)}.btn-secondary{color:var(--btn-secondary-text);border-color:var(--btn-secondary-border);background:#fff}.btn-secondary:hover{background:var(--btn-secondary-bg-hover)}.btn-danger{color:var(--btn-danger-text);border-color:var(--btn-danger-border);background:#fff}.btn-danger:hover{background:var(--btn-danger-bg-hover)}.btn-sm{padding:5px 10px;font-size:12px}.btn:disabled{opacity:.55;cursor:not-allowed}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out)}.card-interactive{cursor:pointer}.card-interactive:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.page{padding:var(--space-6);max-width:1360px;margin:0 auto}.page-h1{font-size:22px;font-weight:700}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.row{gap:var(--space-4);display:flex}.grid{gap:var(--space-4);display:grid}table.tbl{border-collapse:collapse;width:100%;font-size:13px}.tbl thead th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);border-bottom:1px solid var(--border);background:#fafafa;padding:10px 12px;font-size:11px;font-weight:600;position:sticky;top:0}.tbl tbody td{border-bottom:1px solid var(--border-subtle);vertical-align:middle;padding:11px 12px}.tbl tbody tr{transition:background var(--dur-fast) var(--ease-out)}.tbl tbody tr:hover{background:var(--bg-hover)}.tbl tbody tr.row-new{animation:rmc-fade-up var(--dur-base) var(--ease-out) both}.tbl tbody tr.row-converted{background:var(--status-win-bg)}.tbl tbody tr.row-converted:hover{filter:brightness(.97)}.tbl tbody tr.row-win{background:var(--row-win-bg)}.tbl tbody tr.row-lost{background:var(--row-lost-bg)}.tbl tbody tr.row-cancel{background:var(--row-cancel-bg)}.tbl tbody tr.row-win>td:first-child{box-shadow:inset 3px 0 0 var(--status-win-text)}.tbl tbody tr.row-lost>td:first-child{box-shadow:inset 3px 0 0 var(--status-lost-text)}.tbl tbody tr.row-cancel>td:first-child{box-shadow:inset 3px 0 0 var(--status-cancel-text)}.tbl tbody tr.row-win:hover,.tbl tbody tr.row-lost:hover,.tbl tbody tr.row-cancel:hover{filter:brightness(.97)}.tbl tbody tr.row-archived td{opacity:.55}.tbl-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:#fff;overflow:auto}.input,select.input{border:1px solid var(--border-strong);border-radius:var(--radius-md);width:100%;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out);background:#fff;padding:8px 10px;font-family:inherit;font-size:13px}.input:hover:not(:focus){border-color:var(--text-muted)}.input:focus{border-color:var(--border-focus);outline:none;box-shadow:0 0 0 3px #ea530026}.search{position:relative}.search .input{padding-right:30px}.search .input::-webkit-search-cancel-button{display:none}.input-clear{background:var(--bg-hover);width:18px;height:18px;color:var(--text-secondary);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:14px;line-height:1;display:flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.input-clear:hover{background:var(--border-strong);color:var(--text-primary)}.field-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:4px;font-size:11px;font-weight:600;display:block}.checkline{color:var(--text-secondary);cursor:pointer;align-items:center;gap:7px;font-size:13px;display:inline-flex}.checkline input{accent-color:var(--accent)}.memrows{flex-direction:column;gap:8px;display:flex}.memrow{grid-template-columns:1fr 1fr auto;align-items:center;gap:8px;display:grid}.memrow .input{min-width:0}@media (width<=860px){.memrow{grid-template-columns:1fr auto}.memrow .input:first-child{grid-column:1/-1}}.moneyfield{border:1px solid var(--border-strong);border-radius:var(--radius-md);transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out);background:#fff;align-items:stretch;display:flex}.moneyfield:hover:not(:focus-within){border-color:var(--text-muted)}.moneyfield:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 3px #ea530026}.moneyfield>.input,.moneyfield>select.input{background:0 0;border:none;border-radius:0;width:auto;min-width:0}.moneyfield>.input:hover,.moneyfield>.input:focus{box-shadow:none;border-color:#0000}.moneyfield>.cur{border-right:1px solid var(--border);flex:0 0 7.5rem}.moneyfield>.amt{flex:auto}.shell{height:100vh;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);flex-direction:column;flex-shrink:0;transition:width .2s;display:flex}.sidebar.collapsed{width:var(--sidebar-width-collapsed)}.sb-logo{height:var(--topnav-height);border-bottom:1px solid #ffffff0f;align-items:center;gap:8px;padding:0 16px;display:flex}.sb-brand{color:#fff;letter-spacing:.04em;font-size:15px;font-weight:700}.sb-nav{flex:1;padding:8px 0;overflow-y:auto}.sb-group-label{color:#6b7684;text-transform:uppercase;letter-spacing:.09em;padding:10px 16px 4px;font-size:10px;font-weight:700}.sb-item{border-radius:var(--radius-md);color:var(--sidebar-text);transition:background var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out),padding-left var(--dur-base) var(--ease-out);align-items:center;gap:10px;margin:1px 8px;padding:8px 12px;font-size:13.5px;font-weight:500;display:flex}.sb-item:not(.active):hover{padding-left:16px}.sb-item svg{transition:color var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out)}.sb-item:hover svg{transform:scale(1.08)}.sb-item:hover{background:var(--sidebar-hover-bg);color:#fff}.sb-item:hover svg{color:var(--sidebar-icon-active)}.sb-item.active{color:#fff;background:var(--sidebar-group-bg)}.sb-item.active svg{color:var(--sidebar-icon-active)}.sb-item.indented{margin-left:18px;padding-left:14px;font-size:13px}.sb-item.standalone{text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:600}.sb-item svg,.sb-group-hd svg{width:17px;height:17px;color:var(--sidebar-icon);flex-shrink:0}.sb-group-hd{border-radius:var(--radius-md);color:var(--sidebar-text);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;width:calc(100% - 16px);margin:1px 8px;padding:8px 12px;font-size:12px;font-weight:700;display:flex}.sb-group-hd:hover{background:var(--sidebar-hover-bg);color:#fff}.sb-group-hd .chev{width:14px;height:14px;margin-left:auto;transition:transform .15s;display:flex}.sb-group-hd.collapsed .chev{transform:rotate(-90deg)}.sidebar.collapsed .sb-txt,.sidebar.collapsed .sb-group-label,.sidebar.collapsed .chev{display:none}.sb-user{border-top:1px solid #ffffff0f;align-items:center;gap:10px;padding:12px;display:flex}.avatar{background:var(--sidebar-accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:flex}.sb-uname{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:600;overflow:hidden}.sb-urole{color:var(--sidebar-text);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:600}.sb-signout{background:var(--sidebar-accent);color:#fff;border-radius:var(--radius-md);height:38px;transition:background var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out);border:none;justify-content:center;align-items:center;gap:8px;margin:0 12px 16px;font-size:13px;font-weight:600;display:flex}.sb-signout:hover{background:var(--sidebar-accent-hover)}.sb-signout:active:not(:disabled){transform:scale(.98)}.sb-signout svg{flex-shrink:0;width:16px;height:16px}.sidebar.collapsed .sb-user,.sidebar.collapsed .sb-signout .so-txt{display:none}.main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.topbar{height:var(--topnav-height);border-bottom:1px solid var(--border);background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;padding:0 20px;display:flex}.topbar .tb-title{font-size:15px;font-weight:600}.tb-left{align-items:center;gap:12px;display:flex}.tb-right{color:var(--text-muted);align-items:center;gap:10px;font-size:12px;display:flex}.hamburger{color:var(--text-secondary);transition:color var(--dur-base) var(--ease-out);background:0 0;border:none;font-size:18px;display:none}.hamburger:hover{color:var(--text-primary)}.collapse-btn{color:var(--text-secondary);border-radius:var(--radius-sm);transition:color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out);background:0 0;border:none;align-items:center;padding:4px;display:flex}.collapse-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.collapse-btn svg{width:18px;height:18px;transition:transform var(--dur-base) var(--ease-out)}.collapse-btn:active svg{transform:scale(.9)}.content{flex:1;position:relative;overflow-y:auto}.fieldgrid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;display:grid}.fp .fp-l{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:3px;font-size:11px;font-weight:600}.fp .fp-v{font-size:13.5px;font-weight:500}.filterbar{border:1px solid var(--border);border-radius:var(--radius-lg);background:#fff;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;padding:12px 14px;display:flex}.preset{border-radius:var(--radius-full);border:1px solid var(--border);color:var(--text-secondary);transition:background var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out);background:#fff;padding:5px 12px;font-size:12px;font-weight:600}.preset:hover:not(.active){border-color:var(--border-strong);color:var(--text-primary)}.preset:active{transform:scale(.97)}.preset.active{background:var(--accent);color:#fff;border-color:var(--accent)}.login-wrap{height:100vh;display:flex}.login-brand{background:var(--sidebar-bg);color:#fff;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:18px;padding:40px;display:flex}.login-form{background:var(--bg-page);flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.login-card{border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:400px;box-shadow:var(--shadow-lg);background:#fff;padding:38px 34px}.hint{background:var(--color-info-bg);color:var(--color-info-text);border-radius:var(--radius-md);padding:8px 12px;font-size:12px}.warn{background:var(--color-warning-bg);color:var(--color-warning-text);border-radius:var(--radius-md);padding:8px 12px;font-size:12px}.ok{background:var(--color-success-bg);color:var(--color-success-text);border-radius:var(--radius-md);padding:8px 12px;font-size:12px}.err{background:var(--color-error-bg);color:var(--color-error-text);border-radius:var(--radius-md);padding:8px 12px;font-size:12px}.empty{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);text-align:center;transition:border-color var(--dur-slow) var(--ease-out);background:#fff;padding:48px 24px}.empty:hover{border-color:var(--text-muted)}.empty-t{margin-bottom:6px;font-size:15px;font-weight:600}.empty-s{color:var(--text-secondary);font-size:13px}.inf-foot{color:var(--text-secondary);flex-direction:column;align-items:center;gap:10px;padding:16px 0 4px;font-size:12.5px;display:flex}.inf-sentinel{width:100%;height:1px}.inf-end{color:var(--text-muted);align-items:center;gap:8px;font-size:12px;display:inline-flex}.inf-end:before,.inf-end:after{content:"";background:var(--border-strong);width:28px;height:1px;display:block}.inf-count{color:var(--text-muted);font-size:12px}.statepage{justify-content:center;align-items:center;min-height:100%;padding:48px 24px;display:flex}.statepage-inner{text-align:center;max-width:460px}.statepage-mark{margin-bottom:14px;font-size:44px;line-height:1}.statepage h1{margin-bottom:8px;font-size:22px;font-weight:700}.statepage p{color:var(--text-secondary);margin-bottom:20px;font-size:13.5px}.statepage-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.statepage details{text-align:left;margin-top:22px}.statepage summary{color:var(--text-muted);cursor:pointer;font-size:12px}.statepage pre{border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-mono);color:var(--color-error-text);white-space:pre-wrap;word-break:break-word;background:#fff;max-height:220px;margin-top:8px;padding:12px;font-size:11.5px;overflow:auto}.modal-overlay{background:var(--bg-overlay);z-index:1000;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);background:#fff;flex-direction:column;width:100%;max-width:520px;max-height:90vh;display:flex}.modal.wide{max-width:640px}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-head h3{font-size:16px;font-weight:700}.modal-x{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);width:28px;height:28px;transition:background var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out);background:0 0;border:none;font-size:22px;line-height:1}.modal-x:hover{background:var(--bg-hover);color:var(--text-primary);transform:rotate(90deg)}.modal-body{padding:20px;overflow-y:auto}.modal-foot{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.mfield{margin-bottom:14px}.drawer-overlay{background:var(--bg-overlay);z-index:990;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{width:100%;max-width:820px;height:100%;box-shadow:var(--shadow-modal);background:#fff;flex-direction:column;display:flex}.drawer-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 20px;display:flex}.drawer-title{white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:700;overflow:hidden}.drawer-sub{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:12.5px;overflow:hidden}.drawer-actions{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;gap:8px;padding:12px 20px;display:flex}.drawer-tabs{border-bottom:1px solid var(--border);gap:2px;padding:0 12px;display:flex;overflow-x:auto}.drawer-body{flex:1;padding:20px;overflow-y:auto}.tab{color:var(--text-secondary);white-space:nowrap;transition:color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out);background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 12px;font-size:12.5px;font-weight:600}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.matrix-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);overflow-x:auto}.matrix{border-collapse:collapse;width:100%;font-size:12.5px}.matrix th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);border-bottom:1px solid var(--border);background:#fafafa;padding:8px 10px;font-size:10.5px;font-weight:600}.matrix td{border-bottom:1px solid var(--border-subtle);vertical-align:top;padding:8px 10px}.matrix tr:last-child td{border-bottom:none}.matrix .yes{color:var(--color-success);font-weight:700}.matrix .no{color:var(--text-muted)}.chiplist{flex-wrap:wrap;gap:4px;display:flex}.checkgrid{border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:4px 12px;max-height:170px;padding:10px;display:grid;overflow-y:auto}.row-click{cursor:pointer}.tbl tbody tr.detail-row:hover{background:0 0}.detail-row>td{background:var(--bg-hover);border-top:none;padding:0}.detail{animation:rmc-fade-up var(--dur-fast) var(--ease-out) both;padding:14px 16px 18px}.detail-tbl{background:var(--surface,#fff);margin-top:4px}.detail-tbl td,.detail-tbl th{font-size:12.5px}.mgrid{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}.mgrid>*{min-width:0}.mfield-wide{grid-column:1/-1}textarea.input{resize:vertical;font-family:inherit}#toast-root{z-index:1100;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.toast{color:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);background:#111827;min-width:210px;max-width:380px;padding:10px 16px;font-size:13px;font-weight:500;transition:opacity .3s}.toast.success{background:var(--color-success)}.toast.error{background:var(--color-error)}.toast.warning{background:var(--color-warning)}.toast.info{background:var(--color-info)}.meter{border-radius:var(--radius-full);background:var(--border-subtle);height:8px;overflow:hidden}.meter-fill{border-radius:var(--radius-full);background:var(--accent);height:100%;transition:width var(--dur-slow) var(--ease-out)}.meter-sm{height:6px}.score-hero{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);flex-wrap:wrap;align-items:center;gap:18px;padding:16px;display:flex}.score-total{font-size:34px;font-weight:800;line-height:1}.score-of{color:var(--text-muted);font-size:15px;font-weight:600}.score-grade{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:19px;font-weight:800;display:flex}.score-sec{justify-content:space-between;align-items:baseline;gap:10px;margin:16px 0 5px;font-size:13px;font-weight:600;display:flex}.score-sec-pts{font-family:var(--font-mono);color:var(--text-secondary);white-space:nowrap;font-size:12px}.sidebar-scrim{display:none}@media (width<=860px){.sidebar{z-index:40;height:100vh;transition:transform .2s;position:fixed;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.sidebar-scrim{z-index:39;background:var(--bg-overlay);display:block;position:fixed;inset:0}.hamburger{display:block}.collapse-btn,.login-brand{display:none}.page{padding:var(--space-4)}}
