@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal-rJmnGBSt.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal-7khWdh9v.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal-DY7AcnAa.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#f4f3ee;--surface:#fff;--surface-2:#eeede6;--surface-3:#e6e4dc;--rule:#dcdad2;--rule-strong:#c3c0b6;--ink:#1c2127;--ink-2:#464e58;--ink-3:#626a74;--ink-4:#8a919a;--line:#0f7a67;--jade:#0f7a67;--line-strong:#0a5f50;--line-ink:#0b5c4e;--line-wash:#e2f0eb;--line-wash-2:#cfe6de;--info:#2c5a88;--info-wash:#e5edf6;--amber:#8f5c00;--amber-mark:#d19a1f;--amber-wash:#faf0d8;--crimson:#b3261e;--crimson-strong:#8f1d17;--crimson-wash:#fbe8e6;--neutral-wash:#ebeae4;--panel:#1c2127;--panel-2:#262c33;--panel-3:#313841;--panel-ink:#eef0f2;--panel-ink-2:#a4acb5;--panel-rule:#343b44;--font:"Archivo Variable", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", "Source Han Sans SC", system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--fs-11:.6875rem;--fs-12:.75rem;--fs-13:.8125rem;--fs-14:.875rem;--fs-16:1rem;--fs-18:1.125rem;--fs-22:1.375rem;--fs-28:1.75rem;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--radius-s:4px;--radius:6px;--radius-l:10px;--shadow-1:0 1px 2px #1c21270f, 0 1px 1px #1c21270a;--shadow-2:0 6px 16px -4px #1c212724, 0 2px 4px #1c21270f;--shadow-3:0 24px 48px -12px #1c212747, 0 4px 12px #1c212714;--ease-out:cubic-bezier(.16, 1, .3, 1);--t-fast:.12s;--t:.2s;--rail-w:224px;--topbar-h:56px;--control-h:32px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body{height:100%;margin:0}body{font-family:var(--font);font-size:var(--fs-14);color:var(--ink);background:var(--paper);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.55}#app{min-height:100%}::selection{background:var(--line-wash-2);color:var(--ink)}:focus-visible{outline:2px solid var(--line);outline-offset:2px;border-radius:var(--radius-s)}input,textarea{caret-color:var(--line)}h1,h2,h3,h4{letter-spacing:-.005em;text-wrap:balance;margin:0;font-weight:600;line-height:1.3}p{margin:0}a{color:var(--line-ink);text-underline-offset:3px;text-decoration:none;text-decoration-thickness:1px}a:hover{text-decoration:underline}code,kbd,pre{font-family:var(--font-mono);font-size:.92em}pre{white-space:pre-wrap;word-break:break-word;margin:0}button,input,select,textarea{font:inherit;color:inherit}img,svg{display:block}hr{border:0;border-top:1px solid var(--rule);margin:var(--s-4) 0}*{scrollbar-width:thin;scrollbar-color:var(--rule-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--rule-strong);background-clip:padding-box;border:3px solid #0000;border-radius:10px}::-webkit-scrollbar-thumb:hover{background-color:var(--ink-4)}::-webkit-scrollbar-track{background:0 0}.num,.tnum{font-variant-numeric:tabular-nums}.code{font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap;font-weight:560;font-stretch:88%}.muted,.faint{color:var(--ink-3)}.nowrap{white-space:nowrap}.right{text-align:right}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.shell{grid-template-columns:var(--rail-w) minmax(0, 1fr);min-height:100vh;display:grid}.rail{background:var(--panel);height:100vh;color:var(--panel-ink);border-right:1px solid #0f1317;flex-direction:column;display:flex;position:sticky;top:0}.rail-brand{align-items:center;gap:var(--s-3);height:var(--topbar-h);padding:0 var(--s-4);border-bottom:1px solid var(--panel-rule);color:var(--panel-ink);text-decoration:none;display:flex}.rail-brand:hover{text-decoration:none}.rail-brand strong{font-size:var(--fs-16);letter-spacing:.04em;font-weight:650}.rail-brand small{font-size:var(--fs-11);color:var(--panel-ink-2);letter-spacing:.08em;font-stretch:90%;display:block}.rail-nav{padding:var(--s-3) var(--s-2) var(--s-4);scrollbar-color:var(--panel-3) transparent;flex:1;overflow-y:auto}.rail-group+.rail-group{margin-top:var(--s-4)}.rail-group-title{align-items:center;gap:var(--s-2);padding:0 var(--s-3);margin-bottom:var(--s-1);font-size:var(--fs-12);color:var(--panel-ink-2);font-weight:500;display:flex}.rail-group-title:after{content:"";background:var(--panel-rule);flex:1;height:1px}.rail-link{align-items:center;gap:var(--s-3);height:34px;padding:0 var(--s-3);border-radius:var(--radius);color:var(--panel-ink-2);font-size:var(--fs-14);transition:background var(--t-fast), color var(--t-fast);display:flex;position:relative}.rail-link:hover{background:var(--panel-2);color:var(--panel-ink);text-decoration:none}.rail-link svg{flex:none;width:17px;height:17px}.rail-link[aria-current=page]{background:var(--panel-3);color:#fff;font-weight:560}.rail-link[aria-current=page] .rail-stop{background:var(--line);box-shadow:0 0 0 3px #0f7a6747}.rail-stop{width:7px;height:7px;transition:background var(--t);background:0 0;border-radius:50%;margin-left:auto}.rail-link .rail-ext{opacity:.55;width:13px;height:13px;margin-left:auto}.rail-foot{padding:var(--s-3) var(--s-4);border-top:1px solid var(--panel-rule);font-size:var(--fs-12);color:var(--panel-ink-2)}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;height:var(--topbar-h);align-items:center;gap:var(--s-4);padding:0 var(--s-6);-webkit-backdrop-filter:saturate(1.2)blur(8px);backdrop-filter:saturate(1.2)blur(8px);border-bottom:1px solid var(--rule);background:#f4f3eeeb;display:flex;position:sticky;top:0}.topbar-crumbs{align-items:center;gap:var(--s-2);min-width:0;font-size:var(--fs-13);color:var(--ink-3);display:flex}.topbar-crumbs a{color:var(--ink-3)}.topbar-crumbs a:hover{color:var(--ink)}.topbar-crumbs .sep{color:var(--ink-4)}.topbar-crumbs strong{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-weight:560;overflow:hidden}.topbar-spacer{flex:1}.topbar-search{width:min(320px,32vw);position:relative}.topbar-search svg{width:15px;height:15px;color:var(--ink-4);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.topbar-search input{background:var(--surface);width:100%;padding-left:32px}.topbar-search kbd{font-size:var(--fs-11);color:var(--ink-4);border:1px solid var(--rule);background:var(--paper);border-radius:4px;padding:0 5px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.icon-btn.menu-btn{display:none}.content{padding:var(--s-6) var(--s-6) var(--s-12);flex:1}.page{max-width:1320px;margin:0 auto}.page.narrow{max-width:960px}.user-chip{align-items:center;gap:var(--s-2);border:1px solid var(--rule);background:var(--surface);cursor:pointer;border-radius:999px;padding:3px 4px 3px 3px;display:flex}.user-chip:hover{border-color:var(--rule-strong)}.avatar{background:var(--ink);color:#fff;width:26px;height:26px;font-size:var(--fs-12);border-radius:50%;flex:none;place-items:center;font-weight:600;display:grid}.user-chip .who{flex-direction:column;padding-right:6px;line-height:1.15;display:flex}.user-chip .who b{font-size:var(--fs-13);font-weight:560}.user-chip .who small{font-size:var(--fs-11);color:var(--ink-3)}.page-head{align-items:flex-end;gap:var(--s-4);margin-bottom:var(--s-6);flex-wrap:wrap;display:flex}.page-head-main{flex:1;min-width:260px}.page-head h1{font-size:var(--fs-22);letter-spacing:-.01em;align-items:center;gap:var(--s-3);flex-wrap:wrap;font-weight:640;display:flex}.page-head p{color:var(--ink-3);margin-top:var(--s-1);max-width:72ch}.page-head-actions{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.code-tag{height:26px;padding:0 var(--s-2);border-radius:var(--radius-s);background:var(--ink);color:#fff;font-size:var(--fs-13);font-variant-numeric:tabular-nums;letter-spacing:.02em;align-items:center;font-weight:600;font-stretch:88%;display:inline-flex}.meta-row{gap:var(--s-1) var(--s-5);margin-top:var(--s-2);color:var(--ink-3);font-size:var(--fs-13);flex-wrap:wrap;display:flex}.meta-row b{color:var(--ink);font-weight:520}.btn{--btn-bg:var(--surface);--btn-fg:var(--ink);--btn-bd:var(--rule-strong);height:var(--control-h);padding:0 var(--s-3);border:1px solid var(--btn-bd);border-radius:var(--radius);background:var(--btn-bg);color:var(--btn-fg);font-size:var(--fs-14);white-space:nowrap;cursor:pointer;transition:background var(--t-fast), border-color var(--t-fast), color var(--t-fast), box-shadow var(--t-fast);justify-content:center;align-items:center;gap:6px;font-weight:520;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface-2);text-decoration:none}.btn:active{transform:translateY(.5px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn svg{flex:none;width:15px;height:15px}.btn.primary{--btn-bg:var(--line);--btn-fg:#fff;--btn-bd:var(--line);box-shadow:inset 0 1px #00000014,0 1px 2px #0a5f5033}.btn.primary:hover{background:var(--line-strong);border-color:var(--line-strong)}.btn.danger{--btn-fg:var(--crimson);--btn-bd:#e6b9b5}.btn.danger:hover{background:var(--crimson-wash)}.btn.danger.solid{--btn-bg:var(--crimson);--btn-fg:#fff;--btn-bd:var(--crimson)}.btn.danger.solid:hover{background:var(--crimson-strong)}.btn.ghost{--btn-bg:transparent;--btn-bd:transparent;color:var(--ink-2)}.btn.ghost:hover{background:var(--surface-3);color:var(--ink)}.btn.sm{height:26px;padding:0 var(--s-2);font-size:var(--fs-13);border-radius:var(--radius-s)}.btn.icon{width:var(--control-h);padding:0}.btn.icon.sm{width:26px}.btn.loading{pointer-events:none;position:relative;color:#0000!important}.btn.loading:after{content:"";border:2px solid;border-color:var(--btn-fg) transparent var(--btn-fg) transparent;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin;position:absolute}@keyframes spin{to{transform:rotate(360deg)}}.btn-row{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.linkish{color:var(--line-ink);cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.linkish:hover{text-decoration:underline}.linkish.danger{color:var(--crimson)}.input,.select,.textarea{width:100%;min-height:var(--control-h);border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);font-size:var(--fs-14);transition:border-color var(--t-fast), box-shadow var(--t-fast);padding:5px 10px}.input::placeholder,.textarea::placeholder{color:var(--ink-4)}.input:hover,.select:hover,.textarea:hover{border-color:var(--ink-4)}.input:focus,.select:focus,.textarea:focus{border-color:var(--line);outline:none;box-shadow:0 0 0 3px #0f7a6729}.input:disabled,.select:disabled,.textarea:disabled{background:var(--surface-2);color:var(--ink-3);cursor:not-allowed}.input[readonly]{background:var(--surface-2)}.textarea{resize:vertical;padding-top:7px;line-height:1.5}.select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23626a74' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:30px}.select[multiple]{background-image:none;min-height:96px;padding-right:10px}.check{align-items:center;gap:var(--s-2);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex}.check input{width:16px;height:16px;accent-color:var(--line);cursor:pointer;margin:0}input[type=checkbox]{accent-color:var(--line)}input[type=file].input{padding:4px}input[type=file]::file-selector-button{font:inherit;font-size:var(--fs-13);border:1px solid var(--rule-strong);background:var(--surface-2);border-radius:var(--radius-s);cursor:pointer;color:var(--ink);margin-right:10px;padding:2px 10px}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>.btn{align-self:flex-start}.field>span.label{font-size:var(--fs-13);color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:6px;font-weight:520;display:flex}.field>span.label em{color:var(--crimson);font-style:normal;font-weight:600}.field>span.label>.btn,.field>span.label>.tr-chip{margin-left:auto}.field>small{color:var(--ink-3);font-size:var(--fs-12);line-height:1.45}.span-2,.field.span-2{grid-column:span 2}.span-all,.field.span-all{grid-column:1/-1}.form-grid{gap:var(--s-4) var(--s-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-actions{gap:var(--s-2);margin-top:var(--s-5);align-items:center;display:flex}.form-actions .spacer{flex:1}.form-note{font-size:var(--fs-13);color:var(--ink-3)}fieldset.group{border:0;margin:0;padding:0}fieldset.group+fieldset.group{margin-top:var(--s-6);padding-top:var(--s-5);border-top:1px solid var(--rule)}fieldset.group>legend{float:left;width:100%;margin-bottom:var(--s-3);font-weight:600;font-size:var(--fs-14);padding:0}fieldset.group>legend+*{clear:both}fieldset.group>legend small{color:var(--ink-3);margin-left:var(--s-2);font-weight:400;font-size:var(--fs-12)}.line-editor{border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);overflow:auto}.line-editor table{min-width:100%}.line-editor td{vertical-align:middle;padding:6px}.line-editor th{padding:8px 6px}.line-editor td .input,.line-editor td .select{height:28px;min-height:28px;font-size:var(--fs-13);min-width:84px;padding:3px 8px}.line-editor td.lbl{min-width:180px;max-width:280px;font-size:var(--fs-13)}.sheet{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-l);box-shadow:var(--shadow-1)}.sheet+.sheet,.sheet+.section,.section+.sheet,.section+.section{margin-top:var(--s-6)}.sheet-head{align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--rule);flex-wrap:wrap;min-height:52px;display:flex}.sheet-head h2,.sheet-head h3{font-size:var(--fs-16);font-weight:600}.sheet-head .count{color:var(--ink-3);font-size:var(--fs-13);font-variant-numeric:tabular-nums}.sheet-head .spacer{flex:1}.sheet-body{padding:var(--s-5) var(--s-4)}.sheet-foot{padding:var(--s-3) var(--s-4);border-top:1px solid var(--rule);align-items:center;gap:var(--s-3);color:var(--ink-3);font-size:var(--fs-13);display:flex}.section-title{align-items:baseline;gap:var(--s-3);margin:var(--s-8) 0 var(--s-3);display:flex}.section-title:first-child{margin-top:0}.section-title h2{font-size:var(--fs-16);font-weight:620}.section-title p{color:var(--ink-3);font-size:var(--fs-13)}.section-title .spacer{flex:1}.toolbar{gap:var(--s-2);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--rule);background:var(--surface);border-radius:var(--radius-l) var(--radius-l) 0 0;flex-wrap:wrap;align-items:center;display:flex}.toolbar .input,.toolbar .select{width:auto;min-width:150px}.toolbar .search-select{flex:0 240px;width:auto;min-width:220px;max-width:280px}.toolbar .search-select-input{min-height:var(--control-h);height:var(--control-h);font-size:var(--fs-14);padding-top:4px;padding-bottom:4px}.toolbar .grow{flex:1;min-width:220px}.toolbar .spacer{flex:1}.table-wrap{overflow-x:auto}table.data{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--fs-14)}table.data th{z-index:1;text-align:left;font-weight:560;font-size:var(--fs-12);color:var(--ink-3);background:var(--surface-2);white-space:nowrap;border-bottom:1px solid var(--rule);padding:8px 12px;position:sticky;top:0}table.data th:first-child{border-top-left-radius:0}table.data td{vertical-align:top;border-bottom:1px solid #ebe9e2;padding:10px 12px}table.data tbody tr:last-child td{border-bottom:0}table.data tbody tr{transition:background var(--t-fast)}table.data tbody tr:hover{background:#faf9f5}table.data tbody tr.selected{background:var(--line-wash)}table.data tbody tr.highlight{background:#f3f8f4}table.data tbody tr.clickable{cursor:pointer}table.data tbody tr.clickable:focus-visible{outline:2px solid var(--line);outline-offset:-2px;background:var(--line-wash)}table.data td.num,table.data th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}table.data td.act{white-space:nowrap;text-align:right}table.data td.act .btn{vertical-align:middle}table.data td.act>a,table.data td.act>.linkish{font-size:var(--fs-13);vertical-align:middle;align-items:center;gap:4px;display:inline-flex}table.data td.act>*+*{margin-left:var(--s-3)}table.data td.check-cell,table.data th.check-cell{width:36px;padding-right:0}table.data td .sub{font-size:var(--fs-12);color:var(--ink-3);margin-top:2px;display:block}table.data td .sub.wrap{white-space:normal}table.data td.wrap{min-width:220px;max-width:420px}table.data.compact td{padding:7px 12px}table.data td.best{background:var(--line-wash);box-shadow:inset 0 0 0 1px var(--line-wash-2)}table.data td.best b{color:var(--line-ink)}.status{height:22px;font-size:var(--fs-12);white-space:nowrap;background:var(--neutral-wash);color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:0 8px 0 7px;font-weight:540;display:inline-flex}.status:before{content:"";opacity:.85;background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.status.t-line{background:var(--line-wash);color:var(--line-ink)}.status.t-info{background:var(--info-wash);color:var(--info)}.status.t-amber{background:var(--amber-wash);color:var(--amber)}.status.t-crimson{background:var(--crimson-wash);color:var(--crimson)}.status.t-ink{background:var(--ink);color:#fff}.status.t-ink:before{background:#fff}.tag{border-radius:var(--radius-s);height:22px;font-size:var(--fs-12);background:var(--surface-2);color:var(--ink-2);border:1px solid var(--rule);white-space:nowrap;align-items:center;padding:0 8px;display:inline-flex}.tag.amber{background:var(--amber-wash);color:var(--amber);border-color:#ecd9a8}.tag.line{background:var(--line-wash);color:var(--line-ink);border-color:var(--line-wash-2)}.tag.crimson{background:var(--crimson-wash);color:var(--crimson);border-color:#efc4c0}.tags{flex-wrap:wrap;gap:6px;display:flex}.tabs{border-bottom:1px solid var(--rule);margin-bottom:var(--s-5);scrollbar-width:none;gap:2px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{color:var(--ink-3);white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:10px 14px;font-weight:520;text-decoration:none;display:inline-flex;position:relative}.tab:hover{color:var(--ink);text-decoration:none}.tab[aria-selected=true]{color:var(--ink)}.tab[aria-selected=true]:after{content:"";background:var(--line);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:-1px;left:10px;right:10px}.tab .n{font-size:var(--fs-11);color:var(--ink-3);background:var(--surface-2);font-variant-numeric:tabular-nums;border-radius:999px;padding:0 6px}.sub-tabs{margin:calc(var(--s-5) * -1 + 1px) 0 var(--s-4);flex-wrap:wrap;gap:6px;display:flex}.sub-tab{border:1px solid var(--rule);background:var(--surface);color:var(--ink-2);font-size:var(--fs-13);cursor:pointer;border-radius:999px;padding:5px 12px;font-family:inherit;font-weight:520}.sub-tab:hover{border-color:var(--rule-strong);color:var(--ink)}.sub-tab[aria-selected=true]{background:var(--line);border-color:var(--line);color:#fff;font-weight:600}.segmented{background:var(--surface-3);border-radius:var(--radius);gap:2px;padding:3px;display:inline-flex}.segmented button{cursor:pointer;color:var(--ink-2);font-weight:520;font-size:var(--fs-13);background:0 0;border:0;border-radius:4px;padding:4px 12px}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.kv{gap:var(--s-4) var(--s-5);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin:0;display:grid}.kv.two{grid-template-columns:repeat(2,minmax(0,1fr))}.kv>div{min-width:0}.kv dt{font-size:var(--fs-12);color:var(--ink-3);margin-bottom:2px}.kv dd{color:var(--ink);overflow-wrap:anywhere;margin:0}.kv dd.empty-val{color:var(--ink-3)}.kv .span-all{grid-column:1/-1}.empty{padding:var(--s-8) var(--s-5);text-align:center;color:var(--ink-3)}.empty.compact{padding:var(--s-4) var(--s-4)}.empty svg{width:24px;height:24px;margin:0 auto var(--s-2);color:var(--ink-4)}.empty b{color:var(--ink-2);margin-bottom:var(--s-1);font-weight:560;display:block}.empty p{max-width:48ch;font-size:var(--fs-13);margin:0 auto}.empty .btn{margin-top:var(--s-3)}.skeleton{padding:var(--s-4);align-content:start;gap:14px;min-height:180px;display:grid}.skeleton i{background:linear-gradient(90deg, var(--surface-2), var(--surface-3), var(--surface-2));background-size:200% 100%;border-radius:4px;height:18px;animation:1.4s ease-in-out infinite shimmer;display:block}.skeleton i:nth-child(3n){width:72%}.skeleton i:nth-child(3n+2){width:88%}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.skeleton i{background:var(--surface-2);animation:none}}.error-box{gap:var(--s-3);padding:var(--s-4);border-radius:var(--radius);background:var(--crimson-wash);color:var(--crimson-strong);align-items:flex-start;display:flex}.error-box svg{flex:none;width:18px;height:18px;margin-top:2px}.notice{gap:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--radius);background:var(--surface-2);color:var(--ink-2);font-size:var(--fs-13);align-items:flex-start;display:flex}.notice svg{width:16px;height:16px;color:var(--ink-3);flex:none;margin-top:2px}.notice.amber{background:var(--amber-wash);color:#6b4500}.notice.amber svg{color:var(--amber)}.notice.line{background:var(--line-wash);color:var(--line-ink)}.notice.line svg{color:var(--line)}.notice+.notice,.notice .notice-line{margin-top:var(--s-2)}.notice .notice-actions{align-items:center;gap:var(--s-2);margin-top:var(--s-3);display:flex}.notice .notice-line.bad{color:var(--crimson);font-weight:520}dialog.drawer,dialog.dialog{color:var(--ink);background:var(--surface);border:0;padding:0}dialog.drawer::backdrop,dialog.dialog::backdrop{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#14181c61}dialog.drawer{height:100vh;max-height:100vh;width:min(var(--drawer-w,640px), 100vw);max-width:100vw;box-shadow:var(--shadow-3);animation:drawer-in var(--t) var(--ease-out);flex-direction:column;margin:0;display:flex;position:fixed;inset:0 0 0 auto}dialog.drawer:not([open]){display:none}dialog.drawer.wide{--drawer-w:960px}dialog.drawer.xwide{--drawer-w:1180px}@keyframes drawer-in{0%{opacity:.4;transform:translate(24px)}to{opacity:1;transform:none}}.drawer-head{align-items:center;gap:var(--s-3);padding:0 var(--s-5);border-bottom:1px solid var(--rule);flex:none;height:60px;display:flex}.drawer-head h2{font-size:var(--fs-18);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.drawer-body{padding:var(--s-5);flex:1;overflow-y:auto}.drawer-foot{gap:var(--s-2);padding:var(--s-3) var(--s-5);border-top:1px solid var(--rule);background:var(--paper);flex:none;align-items:center;display:flex}.drawer-foot .spacer{flex:1}dialog.dialog{border-radius:var(--radius-l);width:min(480px,100vw - 32px);box-shadow:var(--shadow-3);animation:dialog-in var(--t) var(--ease-out)}dialog.dialog.wide{width:min(720px,100vw - 32px)}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:none}}.dialog-body{padding:var(--s-5) var(--s-5) var(--s-4)}.dialog-body h2{font-size:var(--fs-18);margin-bottom:var(--s-2)}.dialog-body>p{color:var(--ink-2)}.dialog-body .field{margin-top:var(--s-4)}.dialog-foot{justify-content:flex-end;gap:var(--s-2);padding:var(--s-3) var(--s-5);background:var(--paper);border-top:1px solid var(--rule);border-radius:0 0 var(--radius-l) var(--radius-l);display:flex}.pop-anchor{position:relative}.popover{z-index:40;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-l);width:360px;max-height:480px;box-shadow:var(--shadow-2);animation:dialog-in var(--t-fast) var(--ease-out);position:absolute;top:calc(100% + 8px);right:0;overflow:auto}.popover.menu{width:240px;padding:var(--s-1)}.popover-head{padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--rule);align-items:center;font-weight:600;display:flex}.popover-head .spacer{flex:1}.menu-item{align-items:center;gap:var(--s-2);border-radius:var(--radius-s);cursor:pointer;text-align:left;width:100%;color:var(--ink);font-size:var(--fs-14);background:0 0;border:0;padding:8px 10px;display:flex}.menu-item:hover{background:var(--surface-2);text-decoration:none}.menu-item svg{width:15px;height:15px;color:var(--ink-3)}.menu-sep{background:var(--rule);height:1px;margin:var(--s-1) 0}.menu-label{font-size:var(--fs-12);color:var(--ink-3);padding:8px 10px 4px}.notif{gap:var(--s-3);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--rule);grid-template-columns:8px minmax(0,1fr);display:grid}.notif:last-child{border-bottom:0}.notif .dot{background:0 0;border-radius:50%;width:8px;height:8px;margin-top:7px}.notif.unread .dot{background:var(--line)}.notif b{font-weight:560;display:block}.notif p{color:var(--ink-3);font-size:var(--fs-13)}.notif .meta{gap:var(--s-3);font-size:var(--fs-12);color:var(--ink-3);align-items:center;margin-top:4px;display:flex}.icon-btn{width:34px;height:34px;color:var(--ink-2);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;display:grid;position:relative}.icon-btn:hover{background:var(--surface-3);color:var(--ink)}.icon-btn svg{width:18px;height:18px}.icon-btn .badge-dot{background:var(--line);width:8px;height:8px;box-shadow:0 0 0 2px var(--paper);border-radius:50%;position:absolute;top:6px;right:7px}.icon-btn.locale-btn{border-color:var(--rule);border-radius:999px;align-items:center;gap:5px;width:auto;padding:0 8px;display:inline-flex}.locale-btn .locale-short{font-size:var(--fs-12);letter-spacing:.02em;color:var(--ink-2);font-weight:620}.locale-menu{width:208px}.locale-menu .menu-item{justify-content:space-between}.locale-menu .menu-item[aria-checked=true]{font-weight:600}.locale-menu .locale-check{width:14px;height:14px;color:var(--line)}.toasts{z-index:1000;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;border-radius:var(--radius);background:var(--ink);color:#fff;min-width:240px;max-width:min(560px,100vw - 32px);box-shadow:var(--shadow-2);font-size:var(--fs-14);animation:toast-in var(--t) var(--ease-out);align-items:center;gap:10px;padding:10px 14px;display:flex}.toast svg{flex:none;width:16px;height:16px}.toast.success svg{color:#6fd3b8}.toast.error{background:#3b1512}.toast.error svg{color:#ff8f86}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.route{padding:var(--s-4) var(--s-2) var(--s-2);position:relative}.route-track{grid-template-columns:repeat(var(--stops), minmax(0, 1fr));display:grid;position:relative}.route-track:before{content:"";left:calc(50% / var(--stops));right:calc(50% / var(--stops));background:var(--rule);border-radius:4px;height:4px;position:absolute;top:13px}.route-track:after{content:"";left:calc(50% / var(--stops));background:var(--line);height:4px;width:calc(100% - 100% / var(--stops));transform:scaleX(var(--progress));transform-origin:0;transition:transform .4s var(--ease-out);border-radius:4px;position:absolute;top:13px}.route-stop{z-index:1;cursor:pointer;color:var(--ink-3);font:inherit;background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;min-width:0;padding:0;display:flex;position:relative}.route-stop:disabled{cursor:default}.route-dot{background:var(--surface);border:3px solid var(--rule-strong);width:30px;height:30px;font-size:var(--fs-11);font-variant-numeric:tabular-nums;color:var(--ink-3);transition:transform var(--t-fast), box-shadow var(--t-fast);border-radius:50%;place-items:center;font-weight:650;font-stretch:88%;display:grid}.route-stop:not(:disabled):hover .route-dot{transform:scale(1.08)}.route-stop.done .route-dot{background:var(--line);border-color:var(--line);color:#fff}.route-stop.here .route-dot{background:var(--surface);border-color:var(--line);color:var(--line-ink);animation:here 2.4s var(--ease-out) infinite;box-shadow:0 0 0 5px #0f7a6729}@keyframes here{0%,to{box-shadow:0 0 0 5px #0f7a6729}50%{box-shadow:0 0 0 8px #0f7a670f}}.route-label{font-size:var(--fs-13);color:var(--ink-2);white-space:nowrap;font-weight:540}.route-sub{font-size:var(--fs-11);color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:-4px}.route-stop.here .route-label{color:var(--ink);font-weight:650}.route-stop.upcoming .route-label{color:var(--ink-3);font-weight:480}.route-stop.active-tab .route-label{text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:5px;text-decoration-thickness:2px}.mini-route{align-items:center;gap:3px;display:inline-flex}.mini-route i{background:var(--rule);border-radius:2px;width:10px;height:4px}.mini-route i.on{background:var(--line)}.mini-route i.here{background:var(--surface);width:14px;height:8px;box-shadow:inset 0 0 0 2px var(--line);border-radius:4px}.mini-route-label{font-size:var(--fs-12);color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:8px}.qty-chain{align-items:stretch;gap:0;display:flex}.qty-chain>div{border-left:1px solid var(--rule);flex:1;min-width:56px;padding:4px 8px}.qty-chain>div:first-child{border-left:0;padding-left:0}.qty-chain small{font-size:var(--fs-11);color:var(--ink-3);display:block}.qty-chain b{font-variant-numeric:tabular-nums;font-weight:560}.qty-chain b.short{color:var(--amber)}.timeline{margin:0;padding:0;list-style:none;position:relative}.timeline li{padding:0 0 var(--s-4) 28px;position:relative}.timeline li:before{content:"";background:var(--rule);width:2px;position:absolute;top:8px;bottom:-8px;left:6px}.timeline li:last-child:before{display:none}.timeline li:after{content:"";background:var(--surface);border:2px solid var(--line);border-radius:50%;width:8px;height:8px;position:absolute;top:4px;left:1px}.timeline .t-head{gap:var(--s-2);flex-wrap:wrap;align-items:baseline;display:flex}.timeline .t-head b{font-weight:560}.timeline .t-meta{font-size:var(--fs-12);color:var(--ink-3)}details.raw{border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper)}details.raw+details.raw{margin-top:var(--s-2)}details.raw summary{cursor:pointer;font-size:var(--fs-13);color:var(--ink-2);padding:8px 12px;font-weight:520}details.raw pre{padding:var(--s-3);border-top:1px solid var(--rule);font-size:var(--fs-12);background:var(--surface);border-radius:0 0 var(--radius) var(--radius);max-height:360px;overflow:auto}.pager{align-items:center;gap:var(--s-2);display:flex}.pager span{font-variant-numeric:tabular-nums}.route-dot.wide{letter-spacing:-.02em;font-size:9px}.field.invalid .input,.field.invalid .select,.field.invalid .textarea{border-color:var(--crimson)}.field-err{color:var(--crimson-strong)!important}.kv.four{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=900px){.kv.four{grid-template-columns:repeat(2,minmax(0,1fr))}}.search-select{width:100%;position:relative}.search-select-control{align-items:center;display:flex;position:relative}.search-select-icon{color:var(--ink-4);pointer-events:none;position:absolute;left:9px}.search-select-input{border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);width:100%;min-height:34px;color:var(--ink);font:inherit;padding:6px 28px}.search-select-input:hover{border-color:var(--ink-4)}.search-select-input:focus{border-color:var(--line);outline:none;box-shadow:0 0 0 3px #0f7a6729}.search-select-input::placeholder{color:var(--ink-4)}.search-select.disabled .search-select-input{background:var(--surface-2);color:var(--ink-3);cursor:not-allowed}.search-select-clear{border-radius:var(--radius-s);color:var(--ink-4);cursor:pointer;background:0 0;border:0;padding:2px;display:inline-flex;position:absolute;right:6px}.search-select-clear:hover{color:var(--ink);background:var(--surface-2)}.search-select-menu{z-index:40;max-height:264px;padding:var(--s-1);border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 8px 24px #1c21271f}.search-select-option{align-items:center;gap:var(--s-2);border-radius:var(--radius-s);width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:6px 8px;display:flex}.search-select-option.active{background:var(--surface-2)}.search-select-option.chosen{font-weight:600}.search-select-option:disabled{color:var(--ink-4);cursor:not-allowed}.search-select-option.create{color:var(--line);border-top:1px solid var(--rule);border-radius:0 0 var(--radius-s) var(--radius-s);margin-top:2px}.search-select-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.search-select-state{color:var(--ink-3);font-size:var(--fs-13);margin:0;padding:8px}.segmented button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.search-select-proxy{opacity:0;pointer-events:none;clip:rect(0 0 0 0);border:0;width:1px;height:1px;padding:0;position:absolute}.mt-3{margin-top:var(--s-3)}.mt-4{margin-top:var(--s-4)}.mt-6{margin-top:var(--s-6)}.mb-4{margin-bottom:var(--s-4)}.late{color:var(--crimson);font-weight:560}.mono,textarea.mono{font-family:var(--font-mono);font-size:var(--fs-13)}.big{font-size:var(--fs-22);font-weight:600}.h-sub{font-size:var(--fs-14);margin:var(--s-6) 0 var(--s-3);align-items:baseline;gap:var(--s-2);font-weight:620;display:flex}.h-sub:first-child{margin-top:0}.plain-list{margin:var(--s-2) 0 0;font-size:var(--fs-13);gap:4px;padding:0;list-style:none;display:grid}.stack>*+*{margin-top:0}code.hash{font-size:var(--fs-12);word-break:break-all;color:var(--ink-2);background:var(--surface-2);border-radius:4px;padding:2px 6px}.back-link{font-size:var(--fs-13);color:var(--ink-3);margin-bottom:var(--s-3);align-items:center;gap:6px;display:inline-flex}.back-link svg{display:inline}table.data tr.retired td{color:var(--ink-3)}table.data tr.retired td .status{opacity:.8}table.data tr.flagged td{background:#fffaf0}.split-2{gap:var(--s-6);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.split-2>.sheet+.sheet{margin-top:0}.split-2.wide-left{grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr)}.sku-evidence{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.sku-evidence table.data td.wrap{min-width:150px;max-width:340px}.sku-evidence table.data th,.sku-evidence table.data td{padding-left:9px;padding-right:9px}@media (width<=1439px){.sku-evidence{grid-template-columns:minmax(0,1fr)}}.tab-panel{animation:panel-in var(--t) var(--ease-out)}@keyframes panel-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.danger-zone{border-color:#efc9c5}.danger-zone .sheet-head h2{color:var(--crimson)}.login{grid-template-columns:minmax(360px,5fr) 7fr;min-height:100vh;display:grid;position:relative}.login-locale{z-index:5;position:absolute;top:16px;right:18px}.login-panel{justify-content:space-between;gap:var(--s-10);padding:var(--s-10) var(--s-10) var(--s-8);background:var(--panel);color:var(--panel-ink);flex-direction:column;display:flex;position:relative;overflow:hidden}.login-brand{align-items:center;gap:var(--s-3);z-index:1;display:flex;position:relative}.login-brand strong{font-size:var(--fs-18);letter-spacing:.06em;display:block}.login-brand small{font-size:var(--fs-12);color:var(--panel-ink-2);display:block}.login-route{z-index:1;margin:0;padding:0 0 0 4px;list-style:none;position:relative}.login-route li{align-items:center;gap:var(--s-4);height:44px;font-size:var(--fs-16);color:var(--panel-ink);animation:stop-in .52s var(--ease-out) both;animation-delay:calc(var(--i) * 55ms);display:flex;position:relative}.login-route li:before{content:"";background:var(--line);width:4px;height:44px;position:absolute;top:22px;left:15px}.login-route li:last-child:before{display:none}.login-dot{z-index:1;background:var(--panel);border:3px solid var(--line);width:34px;height:34px;font-size:var(--fs-11);color:#bfe6da;font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-weight:650;font-stretch:88%;display:grid;position:relative}.login-route li:first-child .login-dot{background:var(--line);color:#fff}.login-route li:last-child .login-dot{color:var(--line-ink);background:#fff}@keyframes stop-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:none}}.login-caption{z-index:1;max-width:34ch;color:var(--panel-ink-2);font-size:var(--fs-14);line-height:1.7;position:relative}.login-form-wrap{padding:var(--s-10) var(--s-6);background:var(--paper);place-items:center;display:grid}.login-form{gap:var(--s-4);width:min(380px,100%);display:grid}.login-form h1{font-size:var(--fs-28);letter-spacing:-.01em;font-weight:650}.login-form>p.muted{margin-top:calc(var(--s-2) * -1);margin-bottom:var(--s-2)}.login-submit{height:40px;font-size:var(--fs-16);margin-top:var(--s-2)}.signals{background:var(--rule);border:1px solid var(--rule);border-radius:var(--radius-l);margin-bottom:var(--s-6);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.signal{align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);background:var(--surface);color:var(--ink-3);transition:background var(--t-fast);display:flex}.signal:hover{background:#faf9f5;text-decoration:none}.signal svg{width:18px;height:18px;color:var(--ink-4);flex:none}.signal b{font-size:var(--fs-22);color:var(--ink-3);font-weight:620;line-height:1}.signal span{font-size:var(--fs-13)}.signal.on.crimson b,.signal.on.crimson svg{color:var(--crimson)}.signal.on.amber b,.signal.on.amber svg{color:var(--amber)}.signal.on span{color:var(--ink);font-weight:520}.wb-grid{gap:var(--s-6);grid-template-columns:minmax(0,1fr) 380px;align-items:start;display:grid}.wb-main>.sheet+.sheet,.wb-side>.sheet+.sheet{margin-top:var(--s-6)}.route-load{padding-top:var(--s-2)}.route-load-track{grid-template-columns:repeat(var(--stops), minmax(0, 1fr));display:grid;position:relative}.route-load-track:before{content:"";left:calc(50% / var(--stops));right:calc(50% / var(--stops));background:var(--line);border-radius:3px;height:3px;position:absolute;top:82px}.route-load-stop{color:var(--ink-3);flex-direction:column;align-items:center;gap:6px;display:flex;position:relative}.route-load-stop:hover{color:var(--ink);text-decoration:none}.route-load-stop .bar{justify-content:center;align-items:flex-end;width:14px;height:72px;display:flex;position:relative}.route-load-stop .bar:before{content:"";width:100%;height:calc(var(--h) * 100%);background:var(--line-wash-2);border-radius:3px 3px 0 0;min-height:0}.route-load-stop.has .bar:before{background:var(--line)}.route-load-stop .bar b{bottom:calc(var(--h) * 100% + 2px);font-size:var(--fs-12);color:var(--ink);font-weight:600;position:absolute}.route-load-stop .dot{background:var(--surface);border:3px solid var(--line);z-index:1;border-radius:50%;width:11px;height:11px}.route-load-stop.has .dot{background:var(--line)}.route-load-stop .lbl{text-align:center;width:2.4em;min-height:2.5em;font-size:11px;line-height:1.25}.route-load-foot{margin-top:var(--s-3);font-size:var(--fs-12);color:var(--ink-3)}.station-filter{margin-bottom:var(--s-4);flex-wrap:wrap;gap:6px;display:flex}.station-filter button{border:1px solid var(--rule);background:var(--surface);height:30px;color:var(--ink-2);cursor:pointer;font-size:var(--fs-13);transition:all var(--t-fast);border-radius:999px;align-items:center;gap:8px;padding:0 10px 0 12px;display:inline-flex}.station-filter button b{color:var(--ink-3);font-weight:600;font-size:var(--fs-12)}.station-filter button.has b{color:var(--line-ink)}.station-filter button:hover{border-color:var(--rule-strong)}.station-filter button[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:#fff}.station-filter button[aria-selected=true] b{color:#9ee0cd}@media (width<=900px){.station-filter{scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.station-filter::-webkit-scrollbar{display:none}.station-filter button{flex:none}}.route-sheet{margin-bottom:var(--s-5);padding:0 var(--s-4) var(--s-2);overflow-x:auto}.route-sheet .route{min-width:720px}.next-step{align-items:center;gap:var(--s-3);margin:calc(var(--s-5) * -1 + 1px) 0 var(--s-5);padding:var(--s-3) var(--s-4);border-radius:var(--radius);border:1px solid var(--rule);border-left:3px solid var(--ink-4);background:var(--surface);display:flex}.next-step-icon{background:var(--surface-2);width:26px;height:26px;color:var(--ink-3);border-radius:50%;flex:none;place-items:center;display:grid}.next-step-text{gap:1px;min-width:0;display:grid}.next-step-text b{font-size:var(--fs-13);color:var(--ink);font-weight:620}.next-step-text span{font-size:var(--fs-13);color:var(--ink-3)}.next-step-cta{border:1px solid var(--line);background:var(--line-wash);color:var(--line-ink);font:inherit;font-size:var(--fs-13);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:5px;margin-left:auto;padding:6px 12px;font-weight:560;display:inline-flex}.next-step-cta:hover{background:var(--line-wash-2)}.next-step.todo{border-left-color:var(--line)}.next-step.todo .next-step-icon{background:var(--line-wash);color:var(--line-ink)}.next-step.blocked{border-left-color:var(--amber-mark);background:var(--amber-wash)}.next-step.blocked .next-step-icon{color:var(--amber);background:#f5e5bd}.next-step.blocked .next-step-cta{border-color:var(--amber);background:var(--surface);color:var(--amber)}.next-step.done{border-left-color:var(--line)}.next-step.done .next-step-icon{background:var(--line-wash);color:var(--line-ink)}.quote-cell+.quote-cell{border-top:1px dashed var(--rule);margin-top:6px;padding-top:6px}.quote-cell .tag{height:18px;margin-right:4px;font-size:11px}.quote-cell .sub{font-size:var(--fs-12);color:var(--ink-3);display:block}table.compare th.num,table.compare td.num{min-width:128px}.snapshot{display:inline}.snapshot .tag{vertical-align:1px;height:18px;margin-right:6px;font-size:11px}.snapshot .sub{display:inline!important}.cost{font-size:var(--fs-12);color:var(--ink-2);flex-direction:column;display:flex}.mapping-group{padding:var(--s-3) var(--s-4) var(--s-4);border-bottom:1px solid var(--rule)}.mapping-group:last-child{border-bottom:0}.mapping-head{gap:var(--s-2);margin-bottom:var(--s-2);align-items:center;display:flex}.mapping-group .table-wrap{border:1px solid var(--rule);border-radius:var(--radius)}.steps{margin-bottom:var(--s-4);border:1px solid var(--rule);border-radius:var(--radius-l);background:var(--surface);gap:0;display:flex;overflow-x:auto}.step{border:0;border-right:1px solid var(--rule);cursor:pointer;min-width:108px;color:var(--ink-2);font-size:var(--fs-13);white-space:nowrap;background:0 0;flex:1;align-items:center;gap:8px;padding:10px 14px;display:flex}.step:last-child{border-right:0}.step:hover{background:#faf9f5}.step-n{background:var(--surface-3);width:20px;height:20px;color:var(--ink-2);border-radius:50%;place-items:center;font-size:11px;font-weight:650;display:grid}.step.on{color:var(--ink);background:var(--line-wash);font-weight:600}.step.on .step-n{background:var(--line);color:#fff}.workdays{gap:var(--s-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.workdays>div{padding:var(--s-2) var(--s-3);border-radius:var(--radius);background:var(--surface-2)}.workdays small{font-size:var(--fs-12);color:var(--ink-3);display:block}.workdays b{font-size:var(--fs-22);font-weight:620}.workspace{margin-top:var(--s-8);padding-top:var(--s-6);border-top:1px solid var(--rule-strong)}.workspace-head{justify-content:space-between;align-items:flex-end;gap:var(--s-4);margin-bottom:var(--s-4);flex-wrap:wrap;display:flex}.workspace-head h2{font-size:var(--fs-18);align-items:center;gap:10px;font-weight:640;display:flex}.workspace-head h2:before{content:"";background:var(--surface);border:3px solid var(--line);border-radius:50%;flex:none;width:12px;height:12px}.workspace-head p{color:var(--ink-3);font-size:var(--fs-13);margin-top:2px}.ms-strip{padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--rule);align-items:center;gap:3px;display:flex}.ms-strip span{background:var(--rule);border-radius:3px;flex:1;max-width:48px;height:6px}.ms-strip span.on{background:var(--line)}.ms-strip span.na{background:repeating-linear-gradient(45deg, var(--rule), var(--rule) 3px, transparent 3px, transparent 6px)}.ms-strip b{margin-left:var(--s-3);font-size:var(--fs-13)}.tree-cell{padding-left:calc(var(--lvl) * 20px);flex-wrap:wrap;align-items:center;gap:6px 8px;display:inline-flex}.tree-mark{border:2px solid var(--ink-4);border-radius:50%;flex:none;width:8px;height:8px}.tree-node{flex:none;width:10px;height:10px;position:relative}.tree-node.lvl-1{display:none}.tree-node.lvl-2{border-left:2px solid var(--rule-strong);border-bottom:2px solid var(--rule-strong);border-bottom-left-radius:3px;width:12px;height:12px;margin-top:-5px}.tree-node.lvl-3{background:var(--line);border-radius:50%;width:6px;height:6px;margin-left:2px}.tree-cell b{font-weight:560}.cat-picker,.cat-picker-rows{gap:6px;display:grid}.cat-row{align-items:center;gap:var(--s-2);grid-template-columns:46px minmax(0,1fr);display:grid}.cat-row.is-idle .select{opacity:.55}.cat-level{height:20px;font-size:var(--fs-11);letter-spacing:.02em;white-space:nowrap;border-radius:4px;flex:none;place-items:center;padding:0 6px;font-weight:620;display:inline-grid}.cat-level.lvl-1{background:var(--ink);color:var(--surface)}.cat-level.lvl-2{background:var(--surface-3);color:var(--ink);border:1px solid var(--rule-strong)}.cat-level.lvl-3{color:var(--line-ink);border:1px dashed var(--line);background:0 0}.cat-picker-foot{align-items:center;gap:var(--s-3);min-height:22px;padding-left:52px;display:flex}.cat-picker-foot .linkish{margin-left:auto}.cat-path{font-size:var(--fs-13);flex-wrap:wrap;align-items:center;gap:2px;display:inline-flex}.cat-node{align-items:center;gap:2px;display:inline-flex}.cat-sep{color:var(--ink-4);flex:none}.cat-node.lvl-1 .cat-name{color:var(--ink);font-weight:620}.cat-node.lvl-2 .cat-name{color:var(--ink-2)}.cat-node.lvl-3 .cat-name{color:var(--line-ink);font-weight:560}.cat-picker-foot .cat-node.lvl-3 .cat-name:after{content:"";background:var(--line);vertical-align:2px;border-radius:50%;width:5px;height:5px;margin-left:5px;display:inline-block}.cat-note{color:var(--amber);font-size:var(--fs-12);margin-left:6px}.cat-path.muted .cat-node .cat-name{color:var(--ink-3);font-weight:480}.cat-leaf{flex-direction:column;gap:1px;line-height:1.35;display:inline-flex}.cat-leaf-name{color:var(--ink);font-weight:560}.cat-leaf-name.lvl-1{font-weight:620}.cat-leaf-name.lvl-3{color:var(--line-ink);font-weight:560}.cat-leaf .sub{font-size:var(--fs-12);color:var(--ink-3)}.check-tree{gap:8px;display:grid}.score-line{align-items:center;gap:var(--s-5);padding:var(--s-4);border-radius:var(--radius);background:var(--surface-2);margin-bottom:var(--s-2);display:flex}.score-line small{font-size:var(--fs-12);color:var(--ink-3);display:block}.score-line b{font-size:var(--fs-28);color:var(--line-ink);font-weight:650;line-height:1.1}.contact-list{gap:var(--s-2);display:grid}.contact{gap:2px var(--s-3);padding:var(--s-3);border:1px solid var(--rule);border-radius:var(--radius);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.contact-main{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.contact-meta{gap:4px var(--s-4);color:var(--ink-3);font-size:var(--fs-13);flex-wrap:wrap;grid-column:1;display:flex}.contact .btn{grid-area:1/2/span 2}.contact-form{padding:var(--s-4);border:1px solid var(--line-wash-2);border-radius:var(--radius);background:#fbfdfc}.comments{margin:0;padding:0;list-style:none}.comments li{gap:var(--s-3);padding:var(--s-4);border-bottom:1px solid var(--rule);grid-template-columns:30px minmax(0,1fr);display:grid}.comments li:last-child{border-bottom:0}.comments .avatar{width:30px;height:30px}.c-head{gap:var(--s-2);font-size:var(--fs-13);flex-wrap:wrap;align-items:baseline;display:flex}.c-body{white-space:pre-wrap;margin-top:4px}.c-mentions{font-size:var(--fs-12);color:var(--line-ink);margin-top:4px}.mention-pick{margin-top:var(--s-3);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip{border:1px solid var(--rule);background:var(--surface);cursor:pointer;height:26px;font-size:var(--fs-12);color:var(--ink-2);border-radius:999px;padding:0 10px}.chip:hover{border-color:var(--rule-strong)}.chip.on{background:var(--line-wash);border-color:var(--line);color:var(--line-ink)}.knowledge{gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(360px,1fr));display:grid}.k-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-l);padding:var(--s-4);gap:var(--s-3);flex-direction:column;display:flex}.k-card header{align-items:flex-start;gap:var(--s-3);display:flex}.k-card h3{font-size:var(--fs-16);flex:1}.k-card footer{gap:var(--s-2);padding-top:var(--s-3);border-top:1px solid var(--rule);align-items:center;margin-top:auto;display:flex}.k-card footer .spacer{flex:1}.k-card .kv{gap:var(--s-2);grid-template-columns:minmax(0,1fr)}.output-card{border:1px solid var(--rule);border-radius:var(--radius);margin-bottom:var(--s-3);overflow:hidden}.output-card header{align-items:center;gap:var(--s-3);background:var(--surface-2);border-bottom:1px solid var(--rule);padding:8px 12px;display:flex}.output-card header .spacer{flex:1}.output-card pre.json{padding:var(--s-3);font-size:var(--fs-12);max-height:280px;overflow:auto}.output-card details.raw{margin:0 var(--s-3) var(--s-3)}.figures{border:1px solid var(--rule);border-radius:var(--radius-l);background:var(--surface);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.figures>div{padding:var(--s-4) var(--s-5);border-left:1px solid var(--rule)}.figures>div:first-child{border-left:0}.figures small{font-size:var(--fs-12);color:var(--ink-3);display:block}.figures b{font-size:var(--fs-28);letter-spacing:-.01em;font-weight:620}.figures b span{font-size:var(--fs-16);color:var(--ink-3);margin-left:2px}.bars{gap:10px;display:grid}.bar-row{gap:var(--s-3);font-size:var(--fs-13);grid-template-columns:96px minmax(0,1fr) 48px 40px;align-items:center;display:grid}.bar-label{color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bar-track{background:var(--surface-2);border-radius:4px;height:8px;overflow:hidden}.bar-fill{background:var(--line);border-radius:4px;height:100%;display:block}.bar-row b{text-align:right}.bar-pct{color:var(--ink-3);text-align:right;font-size:var(--fs-12)}.search-hero{gap:var(--s-2);display:flex;position:relative}.search-hero svg{width:18px;height:18px;color:var(--ink-4);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-hero .input{height:44px;font-size:var(--fs-16);padding-left:42px}.search-hero .btn{height:44px;padding:0 var(--s-5)}.search-results{margin-top:var(--s-6);gap:var(--s-4);display:grid}.search-results .sheet+.sheet{margin-top:0}.result-list{margin:0;padding:0;list-style:none}.result-list li a{padding:10px var(--s-4);color:var(--ink);border-bottom:1px solid #ebe9e2;display:block}.result-list li:last-child a{border-bottom:0}.result-list li a:hover{background:#faf9f5;text-decoration:none}.result-list b{font-weight:560}.month-label{text-align:center;min-width:110px;font-size:var(--fs-16)}.cal{background:var(--rule);border-radius:0 0 var(--radius-l) var(--radius-l);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.cal-h{background:var(--surface-2);text-align:center;font-size:var(--fs-12);color:var(--ink-3);padding:8px 0;font-weight:560}.cal-d{background:var(--surface);text-align:left;cursor:pointer;min-height:76px;font:inherit;color:var(--ink);transition:background var(--t-fast);border:0;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;display:flex;position:relative}.cal-d:disabled{cursor:default}.cal-d:not(:disabled):hover{background:#f8f7f2}.cal-d.empty{background:var(--paper);cursor:default}.cal-d b{font-size:var(--fs-16);font-weight:600}.cal-d span{font-size:var(--fs-12);color:var(--line-ink)}.cal-d.rest{background:#f6f5f0}.cal-d.rest b,.cal-d.rest span{color:var(--ink-3)}.cal-d small{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;overflow:hidden}.cal-d.today b{color:#fff;background:var(--ink);border-radius:4px;padding:0 6px}.cal-d.set:after{content:"";background:var(--amber-mark);border-radius:50%;width:6px;height:6px;position:absolute;top:10px;right:10px}.portal-shell{min-height:100vh}.portal-bar{z-index:20;background:var(--panel);color:var(--panel-ink);position:sticky;top:0}.portal-bar-inner{align-items:center;gap:var(--s-3);max-width:1120px;height:60px;padding:0 var(--s-6);margin:0 auto;display:flex}.portal-title strong{letter-spacing:.05em;display:block}.portal-title small{font-size:var(--fs-12);color:var(--panel-ink-2);display:block}.portal-user{color:var(--panel-ink-2);font-size:var(--fs-13)}.portal-bar .btn.ghost{color:var(--panel-ink-2)}.portal-bar .btn.ghost:hover{background:var(--panel-2);color:#fff}.portal-main{max-width:1120px;padding:var(--s-8) var(--s-6) var(--s-12);margin:0 auto}.portal-hero{justify-content:space-between;align-items:flex-start;gap:var(--s-4);margin-bottom:var(--s-6);display:flex}.portal-hero h1{font-size:var(--fs-28);font-weight:650}.portal-hero p{color:var(--ink-3);margin-top:4px}.agreement-text{white-space:pre-wrap;max-height:320px;padding:var(--s-4);background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);margin-top:var(--s-3);font-size:var(--fs-13);line-height:1.7;overflow:auto}@media (width<=1180px){.wb-grid{grid-template-columns:minmax(0,1fr)}.figures{grid-template-columns:repeat(3,minmax(0,1fr))}.figures>div:nth-child(4){border-left:0}.figures>div:nth-child(n+4){border-top:1px solid var(--rule)}}@media (width<=960px){.shell{grid-template-columns:minmax(0,1fr)}.rail{z-index:60;width:min(280px,86vw);transition:transform var(--t) var(--ease-out);position:fixed;top:0;left:0;transform:translate(-100%)}.rail.open{box-shadow:var(--shadow-3);transform:none}.rail-scrim{z-index:55;background:#14181c66;position:fixed;inset:0}.icon-btn.menu-btn{display:grid}.split-2,.split-2.wide-left,.sku-evidence,.login{grid-template-columns:minmax(0,1fr)}.login-panel{padding:var(--s-6);gap:var(--s-6)}.login-route{flex-wrap:wrap;gap:6px 0;display:flex}.login-route li{height:auto;font-size:var(--fs-12);flex-direction:column;gap:4px;width:11%;min-width:48px}.login-route li:before{width:100%;height:4px;top:15px;left:50%}.login-dot{width:30px;height:30px}.login-caption{display:none}}@media (width<=720px){.content{padding:var(--s-4) var(--s-3) var(--s-10)}.topbar{padding:0 var(--s-3);gap:var(--s-2)}.topbar-search{flex:1;width:auto}.topbar-search kbd,.topbar-crumbs,.user-chip .who{display:none}.signals,.figures{grid-template-columns:repeat(2,minmax(0,1fr))}.figures>div{border-left:0;border-top:1px solid var(--rule)}.form-grid.two,.form-grid.three{grid-template-columns:minmax(0,1fr)}.span-2,.field.span-2{grid-column:auto}.page-head h1{font-size:var(--fs-18)}.toolbar .input,.toolbar .select,.toolbar .search-select{flex:140px;min-width:0;max-width:none}.segmented{flex-wrap:wrap;width:100%;display:flex}.segmented button{text-align:center;flex:auto}.kv,.kv.two,.kv.four{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-main{padding:var(--s-5) var(--s-3) var(--s-10)}.portal-bar-inner{padding:0 var(--s-3)}.portal-user{display:none}.knowledge{grid-template-columns:minmax(0,1fr)}.bar-row{grid-template-columns:72px minmax(0,1fr) 40px 34px}}@media (width<=480px){.kv,.kv.two,.kv.four{grid-template-columns:minmax(0,1fr)}}.split-bar{background:var(--surface-2);border-radius:4px;width:160px;height:8px;display:flex;overflow:hidden}.split-bar i{background:var(--line);height:100%;display:block}.split-bar i.wait{background:var(--amber-mark)}.drawer-body>.meta-row:first-child+fieldset.group{margin-top:var(--s-5)}.mb-6{margin-bottom:var(--s-6)}.wb-main,.wb-side{min-width:0}@media (width<=1180px){.wb-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=720px){.table-wrap table.data{min-width:640px}.page-head-actions{width:100%}}.chip-pick{flex-wrap:wrap;gap:6px;display:flex}.chip-pick .chip{cursor:pointer;height:28px;font-size:var(--fs-13);align-items:center;gap:6px;padding:0 12px;display:inline-flex}.chip-pick .chip input{opacity:0;pointer-events:none;position:absolute}.chip-pick .chip:has(input:focus-visible){outline:2px solid var(--line);outline-offset:2px}.chip-pick .chip.disabled{opacity:.5;cursor:not-allowed}em.req{color:var(--crimson);margin-left:3px;font-style:normal}.src-ref{color:var(--info)}.notice.bad{background:var(--crimson-wash);color:var(--crimson-strong)}.filter-note{padding:8px var(--s-4);background:var(--line-wash);color:var(--line-ink);font-size:var(--fs-13);border-bottom:1px solid var(--rule)}.toolbar.attr-filter{background:var(--surface);padding:8px var(--s-4);gap:var(--s-2);font-size:var(--fs-13);border-top:0;border-radius:0}.toolbar.attr-filter .attr-badge{border-radius:var(--radius-s);background:var(--surface-2);height:24px;color:var(--ink-2);font-size:var(--fs-12);white-space:nowrap;align-items:center;padding:0 8px;font-weight:560;display:inline-flex}.toolbar.attr-filter .input,.toolbar.attr-filter .select{min-width:112px;height:28px;min-height:28px;font-size:var(--fs-13);padding:2px 26px 2px 8px}.toolbar.attr-filter .input{padding-right:8px}.toolbar.attr-filter .btn{height:28px;font-size:var(--fs-13);padding:0 10px}.perm-toolbar{margin:var(--s-5) 0 var(--s-3);border:1px solid var(--rule);border-radius:var(--radius)}.perm-groups{gap:var(--s-3);grid-template-columns:repeat(auto-fill,minmax(360px,1fr));display:grid}.perm-group{border:1px solid var(--rule);border-radius:var(--radius);padding:var(--s-2) var(--s-3) var(--s-3);background:var(--surface);margin:0}.perm-group legend{align-items:center;gap:var(--s-2);width:100%;padding:0 4px;font-weight:600;display:flex}.perm-group legend .muted{font-weight:400;font-size:var(--fs-12);margin-left:auto}.perm-list{gap:6px;margin-top:6px;display:grid}.perm-list .check{font-size:var(--fs-13);align-items:flex-start;line-height:1.4}.perm-list .check input{margin-top:2px}.figures.four{grid-template-columns:repeat(4,minmax(0,1fr))}.fig-sub{font-size:var(--fs-12);color:var(--ink-3);margin-top:2px;display:block}.meter{background:var(--surface-3);border-radius:2px;height:4px;margin-top:8px;display:block;overflow:hidden}.meter i{background:var(--line);height:100%;display:block}.ai-layout{gap:var(--s-6);grid-template-columns:260px minmax(0,1fr);align-items:start;display:grid}.cap-list{top:calc(var(--topbar-h) + 16px);max-height:calc(100vh - var(--topbar-h) - 48px);padding:6px;position:sticky;overflow:auto}.cap-item{border-radius:var(--radius);color:var(--ink);gap:1px;padding:8px 10px;display:grid}.cap-item:hover{background:var(--surface-2);text-decoration:none}.cap-item.on{background:var(--line-wash)}.cap-item .code{font-size:var(--fs-11);color:var(--ink-3)}.cap-item b{font-weight:560;font-size:var(--fs-13)}.cap-item small{font-size:var(--fs-11);color:var(--ink-3)}.cap-item.on small,.cap-item.on .code{color:var(--line-ink)}.ai-editor-head{align-items:center;gap:var(--s-3);margin-bottom:var(--s-4);flex-wrap:wrap;display:flex}.ai-editor-head h2{font-size:var(--fs-18)}.ai-editor-head>div{margin-right:auto}.versions{margin:0;padding:0;list-style:none}.versions li{padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--rule);gap:6px;display:grid}.versions li:last-child{border-bottom:0}.versions li.on{background:#fbfdfc}.v-head{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.v-head .spacer{flex:1}.snap-list{padding:var(--s-3);font-size:var(--fs-13);background:var(--surface);gap:4px;display:grid}.sr{gap:var(--s-3);flex-direction:column;display:flex}.sr.expanded{z-index:70;background:var(--paper);padding:var(--s-4);position:fixed;inset:0}.sr-bar{align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-4);background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-l);flex-wrap:wrap;display:flex}.sr-bar>svg{width:18px;height:18px;color:var(--line)}.sr-bar .select{width:auto;min-width:240px;max-width:360px}.sr-msg{min-width:160px;font-size:var(--fs-13);color:var(--ink-3);flex:1}.sr-work{gap:var(--s-4);grid-template-columns:minmax(0,1.25fr) minmax(360px,1fr);height:calc(100vh - 300px);min-height:520px;display:grid}.sr.expanded .sr-work{flex:1;height:auto}.sr-doc,.sr-mat{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-l);flex-direction:column;min-height:0;display:flex;overflow:hidden}.sr-panelbar{padding:8px var(--s-3);border-bottom:1px solid var(--rule);background:var(--surface-2);font-size:var(--fs-13);flex:none;align-items:center;gap:6px;display:flex}.sr-panelbar .spacer{flex:1}.sr-panelbar .sep{background:var(--rule-strong);width:1px;height:18px;margin:0 4px}.sr-zoom{text-align:center;min-width:40px}.sr-scroll{background:#e9e7df;flex:1;padding:20px;overflow:auto}.sr-empty{height:100%;color:var(--ink-3);place-items:center;display:grid}.sr-page{box-shadow:var(--shadow-2);background:#fff;margin:0 auto;position:relative}.sr-foot{padding:6px var(--s-3);font-size:var(--fs-12);color:var(--ink-3);border-top:1px solid var(--rule);flex:none}.sr-list{flex:1;min-height:120px;overflow:auto}.sr-list-empty{place-items:center;display:grid}.sr-row{gap:var(--s-3);width:100%;padding:10px var(--s-3);text-align:left;cursor:pointer;font:inherit;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #ebe9e2;grid-template-columns:48px minmax(0,1fr) auto;display:grid}.sr-row:hover{background:#faf9f5}.sr-row.on{background:var(--line-wash)}.sr-no{font-weight:600}.sr-sum{gap:2px;min-width:0;display:grid}.sr-item{font-size:var(--fs-12);color:var(--ink-3)}.sr-desc{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sr-qty{font-size:var(--fs-13);justify-items:end;gap:4px;display:grid}.sr-editor{border-top:1px solid var(--rule-strong);max-height:55%;padding:var(--s-3) var(--s-4) var(--s-4);gap:var(--s-3);background:#fcfcfa;flex:none;display:grid;overflow:auto}.sr-editor-head{gap:var(--s-3);align-items:baseline;display:flex}.sr-fields{gap:var(--s-3);border:0;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;display:grid}.sr-editor .form-actions{margin-top:0}.sr-editor .form-actions .spacer{flex:1}.ci{gap:var(--s-4);grid-template-columns:minmax(0,1fr) minmax(420px,1fr);height:calc(100vh - 110px);display:grid}.ci-left,.ci-right{border:1px solid var(--rule);border-radius:var(--radius-l);background:var(--surface);flex-direction:column;min-height:0;display:flex;overflow:hidden}.ci-pane-title{gap:var(--s-3);padding:10px var(--s-3);border-bottom:1px solid var(--rule);background:var(--surface-2);font-size:var(--fs-13);align-items:baseline;display:flex}.ci-grid{flex:1;overflow:auto}.ci-grid table{border-collapse:collapse;font-size:var(--fs-12)}.ci-grid th{background:var(--surface-2);color:var(--ink-3);border:1px solid var(--rule);padding:4px 8px;font-weight:560;position:sticky;top:0}.ci-grid tbody th{position:sticky;left:0}.ci-grid td{white-space:nowrap;text-overflow:ellipsis;border:1px solid #ebe9e2;max-width:220px;padding:4px 8px;overflow:hidden}.ci-grid td.on{background:var(--amber-wash);box-shadow:inset 0 0 0 2px var(--amber-mark)}.ci-rows{padding:var(--s-2);border-bottom:1px solid var(--rule);flex:none;gap:4px;display:flex;overflow-x:auto}.ci-row{border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);cursor:pointer;min-width:76px;font:inherit;font-size:var(--fs-13);color:var(--ink);justify-items:start;padding:4px 10px;display:grid}.ci-row small{color:var(--ink-3);font-size:11px}.ci-row.bad small{color:var(--crimson)}.ci-row.on{border-color:var(--line);background:var(--line-wash)}.ci-editor{padding:var(--s-4);flex:1;overflow:auto}.ci-unmapped{gap:var(--s-2);display:grid}.ci-unmapped-row{gap:var(--s-3);padding:var(--s-2) var(--s-3);border:1px dashed var(--rule-strong);border-radius:var(--radius);grid-template-columns:minmax(0,1fr) 200px auto;align-items:center;display:grid}.ci-contact{padding:var(--s-3);border:1px solid var(--rule);border-radius:var(--radius)}.ci-contact+.ci-contact{margin-top:var(--s-3)}.ci-contact-head{align-items:center;gap:var(--s-3);margin-bottom:var(--s-3);display:flex}.ci-contact-head .select{width:auto;min-width:200px;margin-left:auto}.ci-actions{bottom:calc(var(--s-4) * -1);background:var(--surface);padding:var(--s-3) 0;border-top:1px solid var(--rule);position:sticky}@media (width<=1180px){.ai-layout{grid-template-columns:minmax(0,1fr)}.cap-list{max-height:240px;position:static}.sr-work,.ci{grid-template-columns:minmax(0,1fr);height:auto}.sr-doc{height:70vh}.ci-left{height:50vh}.figures.four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.sr-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.ci-unmapped-row,.perm-groups{grid-template-columns:minmax(0,1fr)}}.captcha{border-radius:var(--radius-l);background:var(--surface);width:min(360px,100vw - 24px);color:var(--ink);border:0;padding:0;overflow:visible;box-shadow:0 24px 60px #14181647}.captcha::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#14181673}.captcha-head{font-size:var(--fs-14);color:var(--line-ink);align-items:center;gap:8px;padding:12px 14px 10px;display:flex}.captcha-head b{color:var(--ink);font-weight:620}.captcha-head .spacer{flex:1}.captcha .icon-btn{width:30px;height:30px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.captcha .icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.captcha .icon-btn:disabled{opacity:.4;cursor:default}.captcha-stage{background:var(--surface-2);-webkit-user-select:none;user-select:none;touch-action:none;border-radius:10px;margin:0 14px;position:relative;overflow:hidden}.captcha-bg{object-fit:cover;width:100%;height:100%;display:block}.captcha-piece{cursor:grab;filter:drop-shadow(0 3px 5px #00000073);transition:none;position:absolute}.captcha-stage.dragging .captcha-piece{cursor:grabbing;filter:drop-shadow(0 6px 10px #00000080)}.captcha-stage.ready .captcha-piece,.captcha-stage.fail .captcha-piece{transition:left .26s var(--ease-out)}.captcha-stage.fail .captcha-piece{animation:.36s captcha-shake}.captcha-veil{font-size:var(--fs-13);color:var(--ink-3);background:var(--surface-2);place-content:center;justify-items:center;gap:10px;display:grid;position:absolute;inset:0}.captcha-veil.err{color:var(--crimson-strong);text-align:center;padding:0 16px}.captcha-veil .spin{border:2px solid var(--rule);border-top-color:var(--line);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}.captcha-toast{font-size:var(--fs-13);color:#fff;animation:captcha-rise .18s var(--ease-out);justify-content:center;align-items:center;gap:6px;padding:7px;font-weight:600;display:flex;position:absolute;bottom:0;left:0;right:0}.captcha-toast.success{background:#0f765aeb}.captcha-toast.fail{background:#b02a37eb}.captcha-track{background:var(--surface-2);border:1px solid var(--rule);border-radius:10px;height:44px;margin:12px 14px 0;position:relative;overflow:hidden}.captcha-fill{background:var(--line-wash);border-right:1px solid color-mix(in srgb, var(--line) 35%, transparent);position:absolute;top:0;bottom:0;left:0}.captcha-track.success .captcha-fill{background:#0f765a29}.captcha-track.fail .captcha-fill{background:#b02a371f}.captcha-hint{font-size:var(--fs-13);color:var(--ink-3);pointer-events:none;place-items:center;padding-left:44px;transition:opacity .16s;display:grid;position:absolute;inset:0}.captcha-track.dragging .captcha-hint,.captcha-track.success .captcha-hint,.captcha-track.fail .captcha-hint{opacity:0}.captcha-handle{width:44px;color:var(--line-ink);box-shadow:0 1px 3px #0000002e, 0 0 0 1px var(--rule);cursor:grab;touch-action:none;background:#fff;border:0;border-radius:9px;place-items:center;display:grid;position:absolute;top:0;bottom:0}.captcha-track.ready .captcha-handle,.captcha-track.fail .captcha-handle{transition:left .26s var(--ease-out)}.captcha-track.dragging .captcha-handle{cursor:grabbing;background:var(--line);color:#fff}.captcha-track.success .captcha-handle{background:var(--line);color:#fff}.captcha-track.fail .captcha-handle{background:var(--crimson);color:#fff}.captcha-handle:focus-visible{outline:2px solid var(--line);outline-offset:2px}.captcha-handle:disabled{cursor:default}@keyframes captcha-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}@keyframes captcha-rise{0%{transform:translateY(100%)}to{transform:none}}@media (prefers-reduced-motion:reduce){.captcha-stage.fail .captcha-piece{animation:none}.captcha-piece,.captcha-handle{transition:none!important}}.code-row{gap:var(--s-2);display:flex}.code-row .input{flex:1}.amber-text{color:#8a5a00}.ok-text{color:var(--line-ink)}.src-link{font-size:var(--fs-12);align-items:center;gap:4px;display:inline-flex}.sr-work[hidden]{display:none!important}.cmp-head{align-items:center;gap:var(--s-4);padding:10px var(--s-4);border-bottom:1px solid var(--rule);font-size:var(--fs-13);flex-wrap:wrap;display:flex}.cmp-head .spacer{flex:1}.cmp-ex{align-items:flex-end;gap:var(--s-2);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--rule);background:var(--amber-wash);display:flex}.cmp-ex .field{flex:1}.doc-cands,.fb-cands{display:grid}.doc-cand,.fb-cand{padding:var(--s-4);border-bottom:1px solid var(--rule);gap:var(--s-3);display:grid}.doc-cand:last-child,.fb-cand:last-child{border-bottom:0}.doc-cand.ok{background:#fbfdfc}.doc-cand.no{opacity:.6}.doc-cand fieldset{border:0;margin:0;padding:0}.doc-cand-head,.fb-head{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.doc-sugg{font-size:var(--fs-13);padding:var(--s-2) var(--s-3);background:var(--info-wash,#eef4fa);border-radius:var(--radius)}.doc-cand .form-actions{margin-top:0}.self-end{align-self:end}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.wbp{gap:var(--s-3);display:grid}.wbp-bar{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.wbp-bar .select{width:auto;min-width:140px}.wbp-bar .spacer{flex:1}.wbp-body{gap:var(--s-3);grid-template-columns:220px minmax(0,1fr);height:min(64vh,640px);display:grid}.wbp-mats{font-size:var(--fs-13);align-content:start;gap:4px;padding-right:4px;display:grid;overflow:auto}.wbp-mat{text-align:left;border:1px solid var(--rule);background:var(--surface);border-radius:var(--radius);cursor:pointer;font:inherit;color:var(--ink);padding:6px 8px;display:grid}.wbp-mat small{color:var(--ink-3);font-size:var(--fs-11)}.wbp-mat.on{border-color:var(--line);background:var(--line-wash)}.wbp-grid{border:1px solid var(--rule);border-radius:var(--radius);background:#fff;overflow:auto}.wbp-grid table{border-collapse:collapse;font-size:var(--fs-12)}.wbp-grid th{background:var(--surface-2);color:var(--ink-3);border:1px solid var(--rule);z-index:1;padding:3px 8px;font-weight:560;position:sticky;top:0}.wbp-grid tbody th{z-index:0;left:0}.wbp-grid td{white-space:pre-wrap;vertical-align:top;border:1px solid #ebe9e2;max-width:260px;padding:3px 8px}.wbp-grid td img{max-width:120px;max-height:90px;margin-top:4px;display:block}.wbp-grid tr.src-row td{background:#eef4fa}.wbp-grid td.src-cell{box-shadow:inset 0 0 0 2px var(--info);background:#dfeaf6}@media (width<=1180px){.form-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.wbp-body{grid-template-columns:minmax(0,1fr);height:auto}.wbp-grid{height:60vh}}.paths{gap:var(--s-2);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.path{padding:var(--s-3);border:1px solid var(--rule);border-radius:var(--radius);opacity:.6;gap:4px;display:grid}.path.on{opacity:1;border-color:var(--line);background:var(--line-wash)}.path span{font-size:var(--fs-12);color:var(--ink-3)}.gate{align-items:center;gap:var(--s-4);margin-top:var(--s-4);padding:var(--s-4) var(--s-5);border:1px solid #e3c98a;border-left:4px solid var(--amber-mark);border-radius:var(--radius-l);background:var(--amber-wash);display:flex}.gate>div{flex:1}.gate p{color:var(--ink-2);font-size:var(--fs-13);margin:4px 0 0}.gate.soft{border-color:var(--rule);border-left-color:var(--info);background:var(--surface)}.file-state{align-items:center;gap:var(--s-3);padding:var(--s-3);border-radius:var(--radius);flex-wrap:wrap;display:flex}.file-state>span{flex:1}.file-state.ok{background:var(--line-wash);color:var(--line-ink)}.file-state.missing{background:var(--amber-wash);color:#7a5200}.ai-suggest{border:1px solid color-mix(in srgb, var(--info) 30%, var(--rule));border-radius:var(--radius-l);padding:var(--s-3) var(--s-4);gap:var(--s-2);background:#f6f9fc;display:grid}.ai-suggest-head{color:var(--info);align-items:center;gap:8px;display:flex}.ai-suggest-head b{color:var(--ink)}.ai-suggest-head .muted{font-size:var(--fs-12)}.ai-suggest-head .spacer{flex:1}.ai-suggest-list{gap:4px;margin:0;display:grid}.ai-suggest-list>div{gap:var(--s-3);border-bottom:1px dashed var(--rule);grid-template-columns:96px minmax(0,1fr) auto;align-items:baseline;padding:4px 0;display:grid}.ai-suggest-list dt{font-size:var(--fs-12);color:var(--ink-3)}.ai-suggest-list dd{margin:0}.ai-suggest-note{font-size:var(--fs-12);color:#7a5200;margin:0}.recall{gap:var(--s-2);margin-bottom:var(--s-3);display:grid}.recall-head{color:var(--line-ink);align-items:center;gap:8px;display:flex}.recall-head b{color:var(--ink)}.recall-head .muted{font-size:var(--fs-12)}.recall-empty{font-size:var(--fs-13);margin:0}.recall-list{gap:4px;display:grid}.recall-item{gap:var(--s-3);padding:8px var(--s-3);border:1px solid var(--rule);border-radius:var(--radius);grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.recall-item.on{border-color:var(--line);background:var(--line-wash)}.recall-item.warn{background:var(--amber-wash);border-color:#ecd9a8}.recall-main{gap:3px;min-width:0;display:grid}.recall-main small{font-size:var(--fs-12);color:var(--ink-2)}.recall-main small.faint{color:var(--ink-3)}.recall-reasons{flex-wrap:wrap;gap:4px;display:flex}.recall-acts{white-space:nowrap;justify-items:end;gap:4px;display:grid}.recall-note{font-size:var(--fs-12);color:var(--ink-3);margin:0}.price-hint{white-space:normal;min-width:180px}.account-choices{gap:var(--s-2);margin:0;padding:0;list-style:none;display:grid}.account-choice{gap:var(--s-1);width:100%;padding:var(--s-3) var(--s-4);text-align:left;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);color:var(--ink);cursor:pointer;transition:border-color var(--t-fast), background var(--t-fast);display:grid}.account-choice:hover:not(:disabled),.account-choice:focus-visible{border-color:var(--line);background:var(--line-wash);outline:none}.account-choice.last{border-color:var(--line-strong)}.account-choice:disabled{opacity:.6;cursor:progress}.account-choice-main{justify-content:space-between;align-items:baseline;gap:var(--s-3);display:flex}.account-choice-main b{font-size:var(--fs-16);font-weight:620}.account-choice-main .code{margin-left:var(--s-2);color:var(--ink-4);font-size:var(--fs-12)}.account-choice-meta{justify-content:space-between;gap:var(--s-3);color:var(--ink-3);font-size:var(--fs-12);display:flex}.login-remember{font-size:var(--fs-13);color:var(--ink-3)}.fulfilment-filters{flex-wrap:wrap;gap:8px;margin:16px 0 8px;display:flex}.fulfilment-action-list,.fulfilment-checks{margin:0;padding:0;list-style:none}.fulfilment-action-list>li{border-bottom:1px solid var(--rule);grid-template-columns:minmax(180px,1fr) minmax(240px,2fr) auto;align-items:center;gap:24px;padding:18px 0;display:grid}.fulfilment-action-list>li:last-child{border-bottom:0}.fulfilment-reason{overflow-wrap:anywhere;line-height:1.65}.fulfilment-next{white-space:nowrap}.fulfilment-overdue{color:var(--crimson)}.fulfilment-checks>li{border-bottom:1px solid var(--rule);align-items:baseline;gap:12px;padding:12px 0;display:flex}.fulfilment-checks>li>div{flex:1;min-width:0}.fulfilment-checks p{margin:4px 0 0}.fulfilment-assist{background:var(--surface);border:1px solid var(--rule);border-radius:12px;margin:20px 0;padding:20px}.fulfilment-assist-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.fulfilment-assist-head h3{margin:0;font-size:16px}.fulfilment-source{flex-wrap:wrap;align-items:flex-end;gap:12px;margin:16px 0;display:flex}.fulfilment-source>.field{flex:1;min-width:200px}.fulfilment-upload{cursor:pointer;position:relative;overflow:hidden}.fulfilment-upload input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.fulfilment-upload:focus-within{outline:2px solid var(--line);outline-offset:3px}.fulfilment-result{border-top:1px solid var(--rule);margin-top:16px;padding-top:16px}.fulfilment-candidate{border-bottom:1px solid var(--rule);margin-bottom:18px;padding-bottom:18px}.fulfilment-candidate>.form-grid{margin:12px 0}.fulfilment-evidence{overflow-wrap:anywhere;font-size:13px;line-height:1.65}.fulfilment-evidence a{margin-right:12px}.fulfilment-saved{font-weight:600}.fulfilment-run{margin-top:16px}.fulfilment-run summary{cursor:pointer}.fulfilment-target{outline:2px solid var(--line);outline-offset:-2px}@media (width<=700px){.fulfilment-action-list>li{grid-template-columns:1fr;gap:8px}.fulfilment-next{justify-self:start}.fulfilment-assist{padding:14px}.fulfilment-source{align-items:stretch}.fulfilment-source>.field{flex-basis:100%}.fulfilment-assist .form-grid.two{grid-template-columns:1fr}.fulfilment-checks>li{flex-wrap:wrap}.fulfilment-checks>li>div{flex-basis:65%}}.fulfilment-actions .sub{color:var(--ink-3);margin-top:4px;font-size:12px;display:block}.fulfilment-actions .fulfilment-overdue{color:var(--crimson)}.sr-ai{margin-top:var(--s-3);flex-direction:column;min-height:320px;max-height:calc(100vh - 260px);display:flex;overflow:hidden}.doc-panel-bar{align-items:center;gap:var(--s-2);padding:8px var(--s-3);border-bottom:1px solid var(--rule);background:var(--surface-2);font-size:var(--fs-13);flex-wrap:wrap;flex:none;display:flex}.doc-panel-bar .spacer{flex:1}.doc-panel{flex:1;min-height:0;overflow:auto}.doc-manual{padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--rule);gap:var(--s-2);background:#fcfcfa;display:grid}.doc-manual p{font-size:var(--fs-13);margin:0}.doc-manual .form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.cell-tr{flex-wrap:wrap;align-items:center;gap:4px 6px;display:flex}.tr-chip{border:1px solid var(--rule);height:20px;color:var(--ink-3);font-size:var(--fs-12);white-space:nowrap;cursor:pointer;vertical-align:middle;background:0 0;border-radius:999px;align-items:center;gap:4px;padding:0 7px;line-height:1;display:inline-flex}.tr-chip svg{flex:none;width:12px;height:12px;margin:0}.tr-chip:hover{color:var(--ink);border-color:var(--ink-3)}.tr-chip.confirmed{color:var(--line-ink);background:var(--line-wash);border-color:color-mix(in srgb, var(--line) 40%, transparent)}.tr-chip.stale{color:var(--crimson);border-color:color-mix(in srgb, var(--crimson) 40%, transparent)}.tr-chip.draft{color:var(--ink-2);border-color:color-mix(in srgb, var(--ink-3) 45%, transparent)}.tr-chip.none{color:var(--ink-3);border-style:dashed}.tr-inline-zh{background:var(--line-wash);border-left:2px solid var(--line);border-radius:0 var(--radius-s) var(--radius-s) 0;color:var(--ink);font-size:var(--fs-13);flex-basis:100%;align-items:baseline;gap:6px;margin-top:2px;padding:4px 8px;font-weight:450;line-height:1.45;display:flex}.tr-inline-badge{background:color-mix(in srgb, var(--line) 16%, transparent);color:var(--line-ink);border-radius:3px;flex:none;padding:0 5px;font-size:11px;font-weight:600;line-height:1.5;display:inline-block}.tr-inline-text{overflow-wrap:anywhere}.tr-src{border-left:2px solid var(--line);background:var(--surface-2);border-radius:0 var(--radius-s) var(--radius-s) 0;padding:8px var(--s-3);margin-bottom:var(--s-3)}.tr-src-head{align-items:center;gap:var(--s-2);font-size:var(--fs-13);display:flex}.tr-src-text{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);margin:6px 0 0;line-height:1.65}.tr-actions{align-items:center;gap:var(--s-2);margin-bottom:var(--s-3);flex-wrap:wrap;display:flex}.tr-actions .spacer{flex:1}.tr-origin{font-size:var(--fs-12);color:var(--ink-3)}.tr-origin.confirmed{color:var(--line-ink)}.tr-terms{margin-top:var(--s-3);padding-top:var(--s-3);border-top:1px solid var(--rule);font-size:var(--fs-13)}.tr-terms ul{margin:6px 0}.tr-terms p{margin:0}.tr-inline{margin-top:6px}.q-export{display:inline-block;position:relative}.q-export-menu{z-index:20;background:var(--surface);border:1px solid var(--rule);width:260px;box-shadow:var(--shadow-2);font-size:var(--fs-13);border-radius:8px;gap:8px;padding:12px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.q-export-menu .muted{font-size:var(--fs-12);line-height:1.5}.line-tr-toolbar{align-items:center;gap:var(--s-2);padding:8px var(--s-3);margin-bottom:var(--s-3);background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--radius);font-size:var(--fs-13);flex-wrap:wrap;display:flex}.line-tr-toolbar .spacer{flex:1}.line-tr{background:var(--rule);border:1px solid var(--rule);border-radius:var(--radius-l);gap:1px;display:grid;overflow:hidden}.line-tr-row{padding:var(--s-3) var(--s-4);background:var(--surface);gap:8px;display:grid}.line-tr-row.on{background:color-mix(in srgb, var(--line) 5%, var(--surface))}.line-tr-grid{gap:var(--s-4);grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:stretch;margin-top:2px;display:grid}.line-tr-col-src{background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--radius-s);padding:8px 10px}.line-tr-col-zh{flex-direction:column;gap:4px;display:flex}.line-tr-col-label{font-size:var(--fs-12);color:var(--ink-3);margin-bottom:4px;font-weight:560;display:block}@media (width<=720px){.line-tr-grid{grid-template-columns:1fr}}.match-box{padding:var(--s-3);border-radius:var(--radius);background:var(--amber-wash);gap:var(--s-2);border:1px solid #ecd9a8;display:grid}.match-box>p{font-size:var(--fs-12);color:var(--amber);margin:0;font-weight:560}.match-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.match-item{justify-content:space-between;align-items:center;gap:var(--s-3);background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-s);font-size:var(--fs-13);flex-wrap:wrap;padding:6px 10px;display:flex}.match-item-meta{font-size:var(--fs-12);color:var(--ink-3);align-items:center;gap:6px;display:inline-flex}.drawer-sec{border:1px solid var(--rule);border-radius:var(--radius-l);background:var(--surface);overflow:hidden}.drawer-sec+.drawer-sec,.sheet+.drawer-sec,.drawer-sec+.sheet{margin-top:var(--s-5)}.drawer-sec-head{justify-content:space-between;align-items:center;gap:var(--s-3);padding:10px var(--s-4);background:var(--surface-2);border-bottom:1px solid var(--rule);flex-wrap:wrap;display:flex}.drawer-sec-head h3{font-size:var(--fs-14);margin:0;font-weight:600}.drawer-sec-body{padding:var(--s-4)}.side-divider{border-top:1px solid var(--rule);margin:var(--s-4) calc(var(--s-4) * -1);padding:var(--s-4) var(--s-4) 0}.side-subhead{font-size:var(--fs-13);color:var(--ink-2);margin-bottom:var(--s-2);justify-content:space-between;align-items:center;font-weight:600;display:flex}.line-tr-head{align-items:center;gap:var(--s-2);font-size:var(--fs-13);display:flex}.line-tr-head .spacer{flex:1}.line-tr-src{font-size:var(--fs-13);color:var(--ink-2);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.6}.line-tr-zh{font-size:var(--fs-14)}.line-tr-tech{font-size:var(--fs-12);color:var(--ink-3);margin:0}.tr-history{margin-top:var(--s-3);border-top:1px solid var(--rule);padding-top:var(--s-3);font-size:var(--fs-13)}.tr-history summary{cursor:pointer;color:var(--ink-2)}.tr-history ol{margin-top:var(--s-2);gap:var(--s-2)}.tr-history li{padding-bottom:var(--s-2);border-bottom:1px dashed var(--rule)}.tr-history li:last-child{border-bottom:0;padding-bottom:0}.tr-hist-head{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.tr-hist-diff{overflow-wrap:anywhere;margin:3px 0 0;line-height:1.6}.tr-hist-before{color:var(--ink-3);text-decoration:line-through;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule)}.tr-proposal{margin-top:var(--s-3);font-size:var(--fs-13)}.tr-proposal p{margin:4px 0 0}.tr-quality{border:1px solid var(--rule);border-radius:var(--radius-l);padding:var(--s-3);margin-bottom:var(--s-3);background:var(--surface)}.tr-quality-head{align-items:baseline;gap:var(--s-2);margin-bottom:var(--s-3);flex-wrap:wrap;display:flex}.tr-quality-grid{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.tr-quality-grid>div{flex-direction:column;gap:2px;display:flex}.tr-quality-num{font-size:var(--fs-22);font-variant-numeric:tabular-nums;font-weight:600}.tr-quality-detail{margin-top:var(--s-3);font-size:var(--fs-13)}.tr-quality-detail summary{cursor:pointer;color:var(--ink-2);margin-bottom:var(--s-2)}.tr-quality p{margin:var(--s-2) 0 0}.row-tight{align-items:center;gap:8px;display:inline-flex}.node1-gate-bar{justify-content:space-between;align-items:center;gap:var(--s-3);padding:10px var(--s-4);margin-bottom:var(--s-3);border:1px solid var(--rule);border-radius:var(--radius-l);background:var(--surface);flex-wrap:wrap;display:flex}.node1-gate-bar.ok,.node1-gate-bar.is-passed{border-left:4px solid var(--line);background:color-mix(in srgb, var(--line-wash) 45%, var(--surface))}.node1-gate-bar.warn,.node1-gate-bar.is-attention{border-color:#e3c98a;border-left:4px solid var(--amber-mark);background:var(--amber-wash)}.node1-gate-main{font-size:var(--fs-13);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.node1-gate-badge{font-size:var(--fs-12);border-radius:999px;align-items:center;padding:2px 8px;font-weight:620;display:inline-flex}.node1-gate-badge.ok{background:var(--line);color:#fff}.node1-gate-badge.amber{background:var(--amber-mark);color:#fff}.node1-gate-clar{background:var(--surface);font-size:var(--fs-12);border:1px solid #e3c98a;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;display:inline-flex}.node1-gate-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stage1-quick-strip{justify-content:space-between;align-items:center;gap:var(--s-3);padding:10px var(--s-4);margin-bottom:var(--s-4);border:1px solid color-mix(in srgb, var(--line) 35%, var(--rule));border-radius:var(--radius-l);background:var(--line-wash);font-size:var(--fs-13);flex-wrap:wrap;display:flex}.stage1-quick-info{color:var(--line-ink);align-items:center;gap:8px;display:flex}.std-sku-search{gap:var(--s-2);flex-wrap:wrap;display:flex}.std-sku-search .input{flex:1;min-width:180px}.std-results{gap:4px;max-height:240px;display:grid;overflow:auto}.std-result{align-items:center;gap:var(--s-3);padding:6px var(--s-3);border:1px solid var(--rule);border-radius:var(--radius);font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;grid-template-columns:120px minmax(0,1fr) auto;display:grid}.std-result:hover{border-color:var(--rule-strong)}.std-result.on{border-color:var(--line);background:var(--line-wash)}.std-r-desc{min-width:0;display:grid}.std-r-desc small{color:var(--ink-3)}.s1-dispatch-bar{justify-content:space-between;align-items:center;gap:var(--s-3);padding:12px var(--s-4);border-top:1px solid var(--rule);border-left:4px solid var(--line);background:color-mix(in srgb, var(--line-wash) 40%, var(--surface));flex-wrap:wrap;display:flex}.s1-dispatch-groups{font-size:var(--fs-13);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.s1-dispatch-badge{background:var(--line);color:#fff;font-size:var(--fs-12);border-radius:4px;align-items:center;padding:2px 8px;font-weight:620;display:inline-flex}.s1-group-pill{border:1px solid color-mix(in srgb, var(--line) 45%, var(--rule));background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-12);cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;transition:all .12s;display:inline-flex}.s1-group-pill:hover{border-color:var(--line);background:var(--line-wash)}.s1-dispatch-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mb-3{margin-bottom:var(--s-3)}.s2-task-strip{border:1px solid var(--rule);border-left:4px solid var(--info);border-radius:var(--radius-l);background:var(--surface);padding:7px 12px}.s2-task-chip{border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface-2);font-size:var(--fs-12);align-items:center;gap:6px;padding:2px 8px;display:inline-flex}.s2-trigger-pill{border-radius:var(--radius-s);border:1px solid var(--rule);background:var(--surface-2);text-align:left;padding:3px 6px;font-size:11px;line-height:1.3}.s2-trigger-pill.tc{border-left:3px solid var(--info)}.s2-trigger-pill.alt{border-left:3px solid var(--amber-mark)}.s2-workbench-grid{grid-template-columns:minmax(0,1fr) 264px;align-items:start;gap:12px;display:grid}@media (width<=1180px){.s2-workbench-grid{grid-template-columns:1fr}}.s2-matrix-col{min-width:0}.s2-matrix-col table.data.compare{table-layout:fixed;width:100%}.s2-matrix-col table.data.compare th,.s2-matrix-col table.data.compare td{padding:7px 8px}.s2-matrix-col table.data.compare th.num,.s2-matrix-col table.data.compare td.num{white-space:normal;min-width:0}.s2-matrix-col table.data.compare th.mat-col,.s2-matrix-col table.data.compare td.mat-col{width:192px;min-width:0;max-width:none}.s2-matrix-col table.data.compare th.sup-col,.s2-matrix-col table.data.compare td.sup-col{min-width:0}.s2-matrix-col table.data.compare .sup-col-head{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:2px;line-height:1.25;display:flex}.s2-matrix-col table.data.compare th.trigger-col,.s2-matrix-col table.data.compare td.trigger-col{white-space:normal;width:168px;min-width:0;max-width:none}.s2-clamp-1{-webkit-line-clamp:1;word-break:break-all;-webkit-box-orient:vertical;overflow:hidden;display:-webkit-box!important}.s2-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;display:-webkit-box!important}.s2-precheck-col{position:sticky;top:12px}.s2-precheck-card{border:1px solid var(--rule);border-radius:var(--radius-l);background:var(--surface);box-shadow:var(--shadow-1);overflow:hidden}.s2-precheck-head{background:color-mix(in srgb, var(--line-wash) 60%, var(--surface));border-bottom:1px solid var(--rule);color:var(--line-ink);font-size:var(--fs-13);align-items:center;gap:6px;padding:8px 12px;display:flex}.s2-precheck-list{gap:6px;padding:8px 10px;display:grid}.s2-precheck-item{border-radius:var(--radius-s);border:1px solid var(--rule);background:var(--surface-2);padding:5px 8px;font-size:11.5px}.s2-precheck-item .sub{font-size:11px;line-height:1.35}.s2-precheck-item.ok{border-left:3px solid var(--line)}.s2-precheck-item.warn{border-left:3px solid var(--amber-mark);background:var(--amber-wash)}.s2-sup-summary{border-top:1px solid var(--rule);gap:5px;padding:8px 10px;display:grid}.s2-sup-summary-title{color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:640}.s2-sup-summary-row{border-radius:var(--radius-s);background:var(--surface-2);border:1px solid var(--rule);justify-content:space-between;align-items:center;gap:6px;padding:4px 8px;font-size:11.5px;display:flex}.s2-sup-summary-row .sub{font-size:11px;line-height:1.25}.s2-precheck-actions{border-top:1px solid var(--rule);background:var(--surface-2);justify-content:flex-end;padding:8px 10px;display:flex}.s3-workbench-bar{padding:10px var(--s-4);border:1px solid var(--rule);border-left:4px solid var(--line);border-radius:var(--radius-l);background:var(--surface)}.s3-l4-gate-banner{justify-content:space-between;align-items:center;gap:var(--s-3);padding:10px var(--s-4);border:1px solid #e3c98a;border-left:4px solid var(--amber-mark);border-radius:var(--radius-l);background:var(--amber-wash);color:#7c2d12;font-size:var(--fs-13);flex-wrap:wrap;display:flex}.s3-kpi-pill{border:1px solid var(--rule);background:var(--surface-2);font-size:var(--fs-12);border-radius:999px;align-items:center;gap:8px;padding:4px 12px;display:inline-flex}.s3-cand-quotes{flex-wrap:wrap;gap:5px;display:flex}.s3-cand-chip{border:1px solid var(--rule-strong);background:var(--surface-2);font:inherit;color:var(--ink-2);cursor:pointer;border-radius:6px;align-items:center;padding:3px 8px;font-size:11px;transition:all .12s;display:inline-flex}.s3-cand-chip:hover:not(:disabled){border-color:var(--line);background:var(--line-wash)}.s3-cand-chip.pri{border-color:var(--line);background:var(--line-wash);color:var(--line-ink);font-weight:620;box-shadow:0 0 0 1px #0f766e2e}.s3-cand-chip.bak{background:var(--amber-wash);border-color:#d8c690}.s3-matrix-foot{justify-content:space-between;align-items:center;gap:var(--s-4);padding:12px var(--s-4);color:#f3f6f4;background:#17211d;border-top:1px solid #2b3a34;flex-wrap:wrap;display:flex}.s3-foot-metrics{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.s3-foot-metric{flex-direction:column;gap:2px;display:flex}.s3-foot-label{color:#9fb2aa;font-size:11px}.s3-foot-metric b{font-size:var(--fs-14);color:#fff}.s3-foot-metric b small{color:#9fb2aa;font-weight:400}.s3-foot-highlight{color:#5eead4!important}.s3-foot-ok{color:#6ee7b7!important}.s3-foot-warn{color:#fcd34d!important}.s3-sim-cell{min-width:210px}.s3-sim-input{width:96px!important;height:28px!important;padding:2px 6px!important;font-size:12px!important}.s3-sim-days{width:60px!important;height:28px!important;padding:2px 6px!important;font-size:12px!important}.modal-backdrop{z-index:90;padding:var(--s-5);background:#12161485;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pure-pdf-modal{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-l);width:min(920px,94vw);max-height:88vh;box-shadow:var(--shadow-2);flex-direction:column;display:flex;overflow:hidden}.pure-pdf-head{padding:12px var(--s-4);background:var(--surface-2);border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;display:flex}.pure-pdf-guard{padding:8px var(--s-4);background:var(--line-wash);color:var(--line-ink);font-size:var(--fs-12);border-bottom:1px solid color-mix(in srgb, var(--line) 30%, var(--rule));flex-wrap:wrap;gap:12px;font-weight:560;display:flex}.pure-pdf-paper{padding:var(--s-5);background:#fff;overflow:auto}.pure-pdf-dochead{justify-content:space-between;align-items:flex-start;gap:var(--s-4);padding-bottom:var(--s-3);border-bottom:2px solid var(--ink);display:flex}.pure-pdf-brand{font-size:var(--fs-16);letter-spacing:.02em;font-weight:700}.s4-triage-banner{padding:10px var(--s-4);border:1px solid var(--rule);border-left:4px solid var(--line);border-radius:var(--radius-l);background:var(--surface)}.s4-split-grid{gap:var(--s-4);grid-template-columns:minmax(340px,41%) minmax(0,59%);align-items:start;display:grid}@media (width<=1180px){.s4-split-grid{grid-template-columns:1fr}}.s4-left-col,.s4-right-col{gap:var(--s-4);flex-direction:column;min-width:0;display:flex}.s4-left-col>.sheet{margin-top:0!important}.s4-basis-card{border:1px solid var(--rule);border-radius:var(--radius-l);background:var(--surface);box-shadow:var(--shadow-1);overflow:hidden}.s4-basis-head{justify-content:space-between;align-items:center;gap:var(--s-2);padding:10px var(--s-4);background:color-mix(in srgb, var(--line-wash) 55%, var(--surface));border-bottom:1px solid var(--rule);font-size:var(--fs-13);color:var(--line-ink);display:flex}.s4-quote-strip{padding:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;display:grid}.s4-quote-pill{border-radius:var(--radius-s);border:1px solid var(--rule);background:var(--surface-2);color:var(--ink);font-size:var(--fs-12);padding:8px 10px;text-decoration:none;display:block}.s4-quote-pill.active{border-color:var(--line);background:color-mix(in srgb, var(--line-wash) 45%, var(--surface))}.s4-basis-note{padding:8px var(--s-4);border-top:1px solid var(--rule);background:var(--surface-2);font-size:var(--fs-12);color:var(--ink-2)}.s4-chain-triage{border:1px solid var(--rule);border-radius:var(--radius-l);background:var(--surface);box-shadow:var(--shadow-1);overflow:hidden}.s4-chain-triage-head{justify-content:space-between;align-items:center;gap:var(--s-3);padding:10px var(--s-4);background:var(--surface-2);border-bottom:1px solid var(--rule);flex-wrap:wrap;display:flex}.s4-po-launch-bar{justify-content:space-between;align-items:center;gap:var(--s-4);padding:12px var(--s-4);color:#f3f6f4;background:#17211d;border-top:1px solid #2b3a34;flex-wrap:wrap;display:flex}.s4-po-metrics{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.s4-po-metrics>div{flex-direction:column;gap:2px;display:flex}.s4-po-label{color:#9fb2aa;font-size:11px}.s4-po-val{font-size:var(--fs-13);color:#fff}.s4-po-val.ok{color:#6ee7b7}html.ws-mode{--rail-w:56px}@media (width>=961px){html.ws-mode .rail-brand{justify-content:center;padding:0}html.ws-mode .rail-brand>span,html.ws-mode .rail-group-title,html.ws-mode .rail-link>.rail-stop,html.ws-mode .rail-foot{display:none}html.ws-mode .rail-link>span:not(.rail-stop){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}html.ws-mode .rail-nav{padding:var(--s-2) 6px;scrollbar-width:none}html.ws-mode .rail-group+.rail-group{margin-top:var(--s-2);padding-top:var(--s-2);border-top:1px solid var(--panel-rule)}html.ws-mode .rail-link{justify-content:center;padding:0}html.ws-mode .rail-link[aria-current=page]:before{content:"";background:var(--line);border-radius:0 2px 2px 0;width:3px;position:absolute;top:8px;bottom:8px;left:-6px}}html.ws-mode .content{padding:0}html.ws-mode .topbar{padding:0 var(--s-4)}.ws-page{max-width:none;height:calc(100dvh - var(--topbar-h));background:var(--surface);grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);display:grid}.ws-head{align-items:center;gap:var(--s-3);min-width:0;height:38px;padding:0 var(--s-3);background:var(--paper);border-bottom:1px solid var(--rule);font-size:var(--fs-13);white-space:nowrap;display:flex}.ws-head .code{font-weight:620}.ws-head-title{text-overflow:ellipsis;min-width:0;color:var(--ink);overflow:hidden}.ws-head-meta{text-overflow:ellipsis;min-width:0;color:var(--ink-3);overflow:hidden}.ws-head .spacer{flex:1}.ws-tabs{flex:none;gap:2px;display:flex}.ws-tabs button{height:28px;padding:0 var(--s-2);border-radius:var(--radius-s);color:var(--ink-3);font:inherit;cursor:pointer;background:0 0;border:0}.ws-tabs button:hover{background:var(--surface-3);color:var(--ink)}.ws-tabs button[aria-current=page]{color:var(--line-ink);font-weight:600}.ws-body{grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;display:grid}.ws-body.with-doc{grid-template-columns:minmax(260px, var(--ws-doc)) 5px minmax(0, 1fr)}.ws-doc{background:var(--surface-3);flex-direction:column;min-width:0;min-height:0;display:flex}.ws-doc[hidden]{display:none}.ws-split{background:var(--rule);cursor:col-resize;transition:background var(--t-fast)}.ws-split:hover{background:var(--line)}.ws-main{background:var(--surface);flex-direction:column;min-width:0;min-height:0;display:flex}.orig-pane{flex-direction:column;flex:1;min-height:0;display:flex}.ws-doc-bar{height:42px;padding:0 var(--s-2);background:var(--surface);border-bottom:1px solid var(--rule);flex:none;align-items:center;gap:2px;display:flex}.ws-doc-bar .spacer{flex:1}.orig-file-select{width:auto;min-width:0;max-width:58%;height:30px;font-size:var(--fs-13);text-overflow:ellipsis;background-color:#0000;border-color:#0000;padding-left:6px}.orig-file-select:hover{border-color:var(--rule)}.ws-doc-page{color:var(--ink-3);font-size:var(--fs-12);padding:0 2px}.ws-zoom{min-width:40px;height:26px;color:var(--ink-3);font:inherit;font-size:var(--fs-12);cursor:pointer;border-radius:var(--radius-s);background:0 0;border:0}.ws-zoom:hover{background:var(--surface-2)}.orig-pdf-scroll{min-height:0;padding:var(--s-3);overscroll-behavior:contain;flex:1;overflow:auto}.orig-excel-wrap{background:var(--surface);flex:1;min-height:0;display:flex}.orig-excel-wrap .wbp.embedded{flex:1;grid-template-rows:auto minmax(0,1fr);gap:0;min-width:0}.wbp.embedded .wbp-bar{padding:3px var(--s-2);border-bottom:1px solid var(--rule)}.wbp.embedded .wbp-bar .select{min-width:0;max-width:60%;height:28px;font-size:var(--fs-12);background-color:#0000;border-color:#0000}.wbp.embedded .wbp-body{height:auto;min-height:0;display:block}.wbp.embedded .wbp-grid{border:0;border-radius:0;height:100%}.wbp.embedded .wbp-grid tr.src-row td{background:var(--line-wash)}.wbp.embedded .wbp-grid td.src-cell{background:var(--line-wash-2);box-shadow:inset 0 0 0 2px var(--line)}.orig-image{max-width:100%;box-shadow:var(--shadow-2);background:#fff;margin:0 auto;display:block}.sr-empty{padding:var(--s-6);text-align:center;color:var(--ink-3)}.sr-mark{z-index:1;cursor:pointer;transition:background var(--t-fast), box-shadow var(--t-fast);background:0 0;border:0;border-radius:2px;padding:0;position:absolute}.sr-mark:hover{background:#0f7a6712}.sr-mark:focus-visible{outline:2px solid var(--line);outline-offset:1px}.sr-mark.on{z-index:2;box-shadow:0 0 0 2px var(--line);background:#0f7a6721}.ws-bar{align-items:center;gap:var(--s-2);min-width:0;height:42px;padding:0 var(--s-2) 0 var(--s-3);border-bottom:1px solid var(--rule);flex:none;display:flex}.ws-filter{gap:var(--s-3);flex:none;display:flex}.ws-filter button{height:41px;color:var(--ink-3);font:inherit;font-size:var(--fs-13);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:4px;padding:0 1px;display:inline-flex}.ws-filter button:hover{color:var(--ink)}.ws-filter button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--line);font-weight:580}.ws-filter .num{color:var(--ink-3);font-weight:480;font-size:var(--fs-12)}.ws-status{align-items:center;gap:var(--s-2);min-width:0;color:var(--ink-2);font-size:var(--fs-12);white-space:nowrap;flex:1;display:flex;overflow:hidden}.ws-status .linkish{font-size:inherit;flex:none}.ws-ai-progress{color:var(--ink-3);font-variant-numeric:tabular-nums}.ws-note{align-items:baseline;gap:0 var(--s-2);padding:5px var(--s-3);border-bottom:1px solid var(--rule);background:var(--paper);color:var(--ink-2);font-size:var(--fs-12);flex-wrap:wrap;flex:none;margin:0;display:flex}.ws-note.amber{background:var(--amber-wash);color:var(--amber)}.ws-note .linkish{font-size:inherit}.ws-empty{justify-content:center;align-items:center;gap:var(--s-3);padding:var(--s-6);color:var(--ink-3);flex-direction:column;flex:1;display:flex}.ws-empty p{margin:0}.ws-icon{border-radius:var(--radius-s);width:28px;height:28px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:inline-grid}.ws-icon:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.ws-icon:disabled{opacity:.35;cursor:default}.ws-menu{flex:none;position:relative}.ws-menu-list{z-index:30;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--surface);min-width:148px;box-shadow:var(--shadow-2);padding:4px;position:absolute;top:calc(100% + 4px);right:0}.ws-dock .ws-menu-list{top:auto;bottom:calc(100% + 4px)}.ws-menu-list button{width:100%;padding:6px var(--s-2);border-radius:var(--radius-s);color:var(--ink);font:inherit;font-size:var(--fs-13);text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;display:flex}.ws-menu-list button:hover:not(:disabled){background:var(--surface-2)}.ws-menu-list button:disabled{color:var(--ink-4);cursor:default}.ws-menu-list button.danger{color:var(--crimson)}.ws-grid{overscroll-behavior:contain;background:var(--surface);-webkit-user-select:none;user-select:none;flex:1;min-height:0;scroll-padding-top:33px;position:relative;overflow:auto}.ws-grid table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;font-size:var(--fs-13)}.ws-grid th,.ws-grid td{box-sizing:border-box}.ws-grid thead th{z-index:3;height:32px;padding:0 var(--s-2);border-bottom:1px solid var(--rule-strong);border-right:1px solid var(--rule);background:var(--surface-2);color:var(--ink-3);font-size:var(--fs-12);text-align:left;white-space:nowrap;font-weight:540;position:sticky;top:0;overflow:hidden}.ws-grid thead th.num{text-align:right}.ws-grid thead th.ws-no,.ws-grid thead th.ws-frozen{z-index:5}.ws-resize{cursor:col-resize;width:7px;position:absolute;top:0;bottom:0;right:-3px}.ws-resize:hover{background:linear-gradient(to right, transparent 3px, var(--line) 3px, var(--line) 4px, transparent 4px)}.ws-grid thead th.ws-no{padding:0 0 0 26px}.ws-grid tbody th.ws-no{z-index:2;border-bottom:1px solid #ecebe4;border-right:1px solid var(--rule);background:var(--surface);text-align:left;cursor:pointer;padding:0;font-weight:480;display:table-cell;position:sticky;left:0}.ws-grid th.ws-no{position:sticky;left:0}.ws-grid td{background:var(--surface);vertical-align:top;cursor:cell;border-bottom:1px solid #ecebe4;border-right:1px solid #ecebe4;height:38px;padding:0;position:relative;overflow:visible}.ws-grid td.ws-frozen{z-index:2;border-right-color:var(--rule);position:sticky}.ws-val{height:37px;padding:0 var(--s-2);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;line-height:37px;overflow:hidden}.ws-grid td.num .ws-val{text-align:right;font-variant-numeric:tabular-nums}.ws-val.is-note{color:var(--ink-3)}.ws-lineno{color:var(--ink-3);font-size:var(--fs-12)}.ws-row.is-active .ws-no{background:var(--line-wash)}.ws-row.is-active .ws-lineno{color:var(--line-ink);font-weight:620}.ws-row.is-active td{background:#f6faf8}.ws-grid td.is-missing{background:#fdf9ee}.ws-row.is-active td.is-missing{background:#fbf5e4}.ws-grid td.is-ghost .ws-val{color:var(--ink-3)}.ws-grid td.is-ghost:after,.ws-grid td.is-auto:after{content:"";pointer-events:none;border-style:solid;border-width:0 6px 6px 0;position:absolute;top:0;right:0}.ws-grid td.is-auto:after{border-color:transparent var(--line) transparent transparent}.ws-grid td.is-ghost:after{border-color:transparent var(--rule-strong) transparent transparent}.ws-row.confirmed .ws-val{color:var(--ink-2)}.ws-row.retired .ws-val{color:var(--ink-4);text-decoration:line-through}.ws-grid td.in-range.is-multi{background:var(--line-wash)}.ws-grid td.is-fill{background:var(--line-wash);box-shadow:inset 1px 0 0 var(--line), inset -1px 0 0 var(--line)}.ws-grid td.is-cursor{z-index:3;box-shadow:inset 0 0 0 2px var(--line)}.ws-grid tbody tr:first-child td{border-top:0}.ws-row.is-fresh td{animation:ws-reached 1.3s var(--ease-out)}@keyframes ws-reached{0%{background:var(--line-wash-2)}}.ws-route{background:var(--line);width:2px;position:absolute;top:0;bottom:-1px;left:5px}.ws-route.anchor{top:50%}.ws-route.end{bottom:50%}.ws-route.anchor:before,.ws-route.end:before{content:"";background:var(--line);border-radius:50%;width:7px;height:7px;position:absolute;left:-2.5px}.ws-route.anchor:before{top:-3px}.ws-route.end:before{background:var(--surface);width:5px;height:5px;box-shadow:0 0 0 1.5px var(--line);bottom:-3px;left:-1.5px}.ws-state{width:16px;color:var(--line);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:0;bottom:0;left:12px}.ws-state:disabled{cursor:default}.ws-lineno{line-height:37px;position:absolute;top:0;left:30px}.ws-dot{width:8px;height:8px;box-shadow:inset 0 0 0 1.5px var(--rule-strong);border-radius:50%;display:block}.ws-dot.ready{box-shadow:inset 0 0 0 1.5px var(--line)}.ws-state.ready:not(:disabled):hover .ws-dot,.ws-state.reconfirm:not(:disabled):hover .ws-dot{background:var(--line);box-shadow:none}.ws-dot.reconfirm{box-shadow:inset 0 0 0 2px var(--amber-mark)}.ws-dot.retired{box-shadow:none;background:var(--ink-4);border-radius:0;width:8px;height:1px}.ws-stop td{border-top:1px dashed var(--rule-strong);border-bottom:1px dashed var(--rule-strong);background:var(--paper);height:24px;color:var(--amber);font-size:var(--fs-12);cursor:default;padding:0}.ws-stop span{padding:0 var(--s-3);line-height:22px;display:inline-block;position:sticky;left:12px}.ws-add td{background:var(--surface);cursor:default;border-bottom:0;border-right:0;height:34px}.ws-add-btn{height:26px;padding:0 var(--s-2);border-radius:var(--radius-s);color:var(--ink-3);font:inherit;font-size:var(--fs-12);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;margin:4px 0 0 12px;display:inline-flex;position:sticky;left:12px}.ws-add-btn:hover{background:var(--surface-2);color:var(--ink)}.ws-editor{width:100%;height:100%;padding:0 var(--s-2);resize:none;color:#0000;caret-color:#0000;font:inherit;opacity:0;pointer-events:none;background:0 0;border:0;outline:0;margin:0;line-height:37px;position:absolute;inset:0;overflow:hidden}.ws-editor.on{z-index:6;background:var(--surface);width:max(100%,240px);height:auto;min-height:100%;color:var(--ink);caret-color:var(--line);opacity:1;pointer-events:auto;box-shadow:0 0 0 2px var(--line), var(--shadow-2);-webkit-user-select:text;user-select:text;white-space:pre-wrap;padding:8px;line-height:20px;bottom:auto;right:auto}.ws-fill{z-index:4;border:1px solid var(--surface);background:var(--line);cursor:crosshair;width:8px;height:8px;position:absolute;bottom:-4px;right:-4px}.ws-list{z-index:60;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--surface);max-height:252px;box-shadow:var(--shadow-2);padding:4px;position:fixed;overflow:auto}.ws-list button{width:100%;padding:5px var(--s-2);border-radius:var(--radius-s);color:var(--ink);font:inherit;font-size:var(--fs-13);text-align:left;cursor:pointer;background:0 0;border:0;display:block}.ws-list button.on,.ws-list button:hover{background:var(--line-wash)}.ws-list small{color:var(--ink-3);font-size:var(--fs-11);white-space:normal;display:block}.ws-list p{padding:var(--s-2);color:var(--ink-3);font-size:var(--fs-12);margin:0}.ws-dock{z-index:8;border-top:1px solid var(--rule-strong);background:var(--paper);flex:none;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);height:clamp(146px,18vh,210px);display:grid;position:relative}.ws-dock-src{min-width:0;min-height:0;padding:6px 0 0 var(--s-3);border-right:1px solid var(--rule);flex-direction:column;display:flex}.ws-dock-head{align-items:center;gap:var(--s-2);min-height:28px;padding-right:var(--s-2);color:var(--ink-3);font-size:var(--fs-12);flex:none;display:flex}.ws-dock-head b{color:var(--ink);font-weight:620}.ws-dock-head .spacer{flex:1}.ws-dock-gap{color:var(--amber)}.ws-src{min-height:0;padding:0 var(--s-3) var(--s-3) 0;color:var(--ink);font-size:var(--fs-13);white-space:pre-wrap;tab-size:2;word-break:break-word;-webkit-user-select:text;user-select:text;cursor:text;flex:1;margin:0;line-height:33px;overflow:auto}.ws-src mark{border-bottom:2px solid var(--line);color:inherit;cursor:pointer;background:0 0;padding-bottom:1px;position:relative}.ws-src mark[data-label]:after{content:attr(data-label);color:var(--line-ink);white-space:nowrap;pointer-events:none;font-size:10px;font-weight:560;line-height:11px;position:absolute;top:100%;left:0}.ws-dock-tip{padding:2px var(--s-3) 6px 0;color:var(--amber);font-size:var(--fs-12);flex:none;margin:0}.ws-pick{z-index:60;border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-2);gap:1px;padding:3px;display:flex;position:fixed}.ws-pick button{height:26px;padding:0 var(--s-2);border-radius:var(--radius-s);color:var(--panel-ink);font:inherit;font-size:var(--fs-12);cursor:pointer;white-space:nowrap;background:0 0;border:0}.ws-pick button:hover{background:var(--panel-3);color:#fff}.ws-pick button.on{background:var(--line);color:#fff}.ws-pick-x{place-items:center;width:26px;display:inline-grid;color:var(--panel-ink-2)!important;padding:0!important}.ws-facts{min-width:0;padding:4px var(--s-3);overflow:auto}.ws-fact{gap:var(--s-2);border-bottom:1px solid var(--rule);font-size:var(--fs-12);grid-template-columns:minmax(56px,auto) minmax(0,1fr) auto;align-items:baseline;padding:6px 0;line-height:1.5;display:grid}.ws-fact:last-child{border-bottom:0}.ws-fact-k{color:var(--ink-3);white-space:nowrap}.ws-fact-v{min-width:0;color:var(--ink);overflow-wrap:anywhere}.ws-fact-v small{color:var(--ink-3);font-size:var(--fs-11);display:block}.ws-fact-v .input{height:28px;font-size:var(--fs-12)}.ws-fact-a .linkish{font-size:var(--fs-12);white-space:nowrap}@media (width<=1100px){.ws-head-meta{display:none}}@media (width<=960px){.ws-page{height:calc(100dvh - var(--topbar-h))}.ws-body.with-doc{grid-template-rows:34% minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.ws-split,.ws-head-title{display:none}.ws-tabs{scrollbar-width:none;flex:0 auto;min-width:0;overflow-x:auto}.ws-dock{height:132px;display:block;overflow:auto}.ws-dock-src{padding-right:var(--s-3);border-right:0;border-bottom:1px solid var(--rule);display:block}.ws-src,.ws-facts{overflow:visible}.ws-status{display:none}.ws-bar{justify-content:space-between}}@media (prefers-reduced-motion:reduce){.ws-row.is-fresh td{animation:none}}.ai-meter{background:var(--line-wash);border-radius:4px;height:8px;overflow:hidden}.ai-meter i{background:var(--line);border-radius:4px;height:100%;display:block}.ai-meter.amber{background:var(--amber-wash)}.ai-meter.amber i{background:var(--amber)}.ai-meter.crimson{background:var(--crimson-wash)}.ai-meter.crimson i{background:var(--crimson)}.ai-quota{padding:var(--s-4) var(--s-5)}.ai-quota-head{justify-content:space-between;align-items:center;gap:var(--s-3);min-height:24px;display:flex}.ai-quota-head small{font-size:var(--fs-12);color:var(--ink-3)}.ai-all{align-items:center;gap:var(--s-2);font-size:var(--fs-13);color:var(--ink-2);cursor:pointer;display:inline-flex}.ai-quota-figure{margin:2px 0 var(--s-2);color:var(--ink-3);font-size:var(--fs-14)}.ai-quota-figure b{font-size:var(--fs-28);letter-spacing:-.01em;color:var(--ink);font-weight:620}.ai-quota-meta{gap:var(--s-1) var(--s-5);margin:var(--s-3) 0 0;font-size:var(--fs-13);color:var(--ink-3);flex-wrap:wrap;display:flex}.ai-quota-meta b{color:var(--ink-2);font-weight:560}.ai-tally{gap:var(--s-8);margin-bottom:var(--s-4);display:flex}.ai-tally small{font-size:var(--fs-12);color:var(--ink-3);display:block}.ai-tally b{font-size:var(--fs-22);font-weight:620}.ai-chart{margin:0}.ai-chart figcaption{justify-content:space-between;gap:var(--s-3);margin-bottom:var(--s-2);font-size:var(--fs-12);color:var(--ink-2);display:flex}.ai-chart-empty{margin:var(--s-2) 0}.ai-days{border-bottom:1px solid var(--rule-strong);align-items:end;gap:2px;height:96px;display:grid}.ai-day{border-radius:var(--radius-s);justify-content:center;align-items:flex-end;height:100%;display:flex;position:relative}.ai-day i{background:var(--line);width:100%;max-width:24px;transition:background var(--t-fast);border-radius:4px 4px 0 0;display:block}.ai-day:hover i,.ai-day:focus-visible i{background:var(--line-strong)}.ai-day:focus-visible{outline:2px solid var(--line);outline-offset:1px}.ai-tip{z-index:3;border-radius:var(--radius-s);background:var(--panel);color:var(--panel-ink-2);font-size:var(--fs-12);white-space:nowrap;box-shadow:var(--shadow-2);pointer-events:none;padding:4px 8px;font-style:normal;display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.ai-tip b{color:var(--panel-ink);font-weight:600}.ai-day.start .ai-tip{left:0;transform:none}.ai-day.end .ai-tip{left:auto;right:0;transform:none}.ai-day:hover .ai-tip,.ai-day:focus-visible .ai-tip{display:block}.ai-axis{font-size:var(--fs-11);color:var(--ink-3);justify-content:space-between;margin-top:4px;display:flex}.ai-chart details.raw{margin-top:var(--s-1);background:0 0;border:0}.ai-chart details.raw summary{font-size:var(--fs-12);color:var(--ink-3);padding:2px 0;font-weight:400}.ai-chart details.raw table{max-width:320px}.ai-bars .bar-row{grid-template-columns:minmax(0,200px) minmax(0,1fr) 64px 56px}.ai-switch{flex:none;width:32px;height:18px;display:inline-flex;position:relative}.ai-switch input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.ai-switch input:disabled{cursor:not-allowed}.ai-switch i{background:var(--rule-strong);pointer-events:none;width:100%;height:100%;transition:background var(--t-fast);border-radius:999px}.ai-switch i:after{content:"";width:14px;height:14px;box-shadow:var(--shadow-1);transition:transform var(--t-fast);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.ai-switch input:checked+i{background:var(--line)}.ai-switch input:checked+i:after{transform:translate(14px)}.ai-switch input:disabled+i{opacity:.5}.ai-switch input:focus-visible+i{outline:2px solid var(--line);outline-offset:2px}.ai-group+.ai-group{border-top:1px solid var(--rule)}.ai-group h3{padding:var(--s-3) var(--s-4) var(--s-1);font-size:var(--fs-12);color:var(--ink-3);margin:0;font-weight:560}.ai-cap{gap:var(--s-4);padding:6px var(--s-4);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;display:grid}.ai-cap:last-child{padding-bottom:var(--s-3)}.ai-cap-name b{font-weight:520;display:block}.ai-cap-name small{font-size:var(--fs-12);color:var(--ink-3);display:block}.ai-cap-use{font-size:var(--fs-12);color:var(--ink-3);white-space:nowrap}.ai-sources{gap:var(--s-2);margin:0;padding:0;list-style:none;display:grid}.ai-sources li{gap:var(--s-1) var(--s-3);flex-wrap:wrap;display:flex}.ai-foot{margin:var(--s-4) 0 0}.ai-bar{align-items:center;gap:var(--s-2) var(--s-3);margin-bottom:var(--s-3);flex-wrap:wrap;display:flex}.ai-month.select,.ai-month{width:auto;min-width:140px}.ai-bar .spacer{flex:1}.ai-figures b{font-size:var(--fs-22)}.ai-two{gap:var(--s-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ai-two>.sheet+.sheet{margin-top:0}.ai-use{gap:4px;min-width:150px;display:grid}.ai-use .ai-meter{height:4px}.ai-open{font-weight:560}.ai-readback{font-size:var(--fs-12);color:var(--ink-3);margin-top:2px;display:block}.ai-drawer-use{margin:var(--s-4) 0 var(--s-2);font-size:var(--fs-13);color:var(--ink-2)}.ai-grant{gap:6px var(--s-4);margin:0 0 var(--s-3);border:0;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;padding:0;display:grid}.ai-grant legend{font-size:var(--fs-12);color:var(--ink-3);margin-bottom:6px;padding:0;font-weight:560}.ai-grant .check{min-width:0}.ai-trial .json{margin:var(--s-3) 0 0}@media (width<=720px){.ai-two,.ai-grant{grid-template-columns:minmax(0,1fr)}.ai-bars .bar-row{grid-template-columns:minmax(0,1fr) 64px 48px}.ai-bars .bar-track{display:none}.ai-cap{grid-template-columns:minmax(0,1fr) auto}.ai-cap-use{display:none}.ai-figures{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-figures>div:nth-child(odd){border-left:0}}
