:root{--canvas: #F4F6F9;--panel: #FFFFFF;--panel-subtle: #FAFBFD;--border: #DCE3EC;--border-strong: #CBD5E1;--divider: #EEF2F6;--ink: #0F172A;--ink-secondary: #334155;--ink-muted: #64748B;--primary: #004AAD;--primary-border: #003B8B;--primary-hover: #003B8B;--primary-tint: #EFF6FF;--cyan-accent: #11CCF5;--navy-hero: #07234B;--topbar-bg: #FFFFFF;--topbar-border: #DCE3EC;--topbar-surface: #F1F5F9;--topbar-line: #DCE3EC;--topbar-active: #004AAD;--topbar-inactive: #475569;--active-bg: #EFF6FF;--active-fg: #004AAD;--active-border: #BFDBFE;--cyan-bg: #ECFEFF;--cyan-fg: #0E7490;--cyan-border: #A5F3FC;--ok-bg: #ECFDF5;--ok-fg: #047857;--ok-border: #A7F3D0;--err-bg: #FEF2F2;--err-fg: #B91C1C;--err-border: #FECACA;--radius-panel: 7px;--radius-control: 5px;--radius-badge: 4px;--font-sans: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Inter", "Segoe UI", Roboto, sans-serif;--font-mono: "SF Mono", "JetBrains Mono", ui-monospace, Menlo, monospace}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background-color:var(--canvas);color:var(--ink);font-family:var(--font-sans);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.desk-shell{min-height:100vh;display:flex;flex-direction:column}.desk-topbar{min-height:54px;background-color:var(--topbar-bg);border-bottom:1px solid var(--topbar-border)}.desk-topbar-inner{max-width:1320px;min-height:54px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar-left{display:flex;align-items:center;gap:24px;min-height:54px}.brand-block{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.brand-logo-img{height:30px;width:auto;display:block}.brand-divider{width:1px;height:18px;background-color:var(--border);flex-shrink:0}.brand-desk-title{font-size:13.5px;font-weight:600;color:var(--ink);letter-spacing:-.01em;white-space:nowrap}.topbar-nav{display:flex;align-items:stretch;gap:4px;height:54px}.topbar-nav-link{display:inline-flex;align-items:center;height:54px;padding:0 12px;font-size:13.5px;font-weight:500;color:var(--topbar-inactive);border-bottom:2px solid transparent;transition:color .12s ease,border-color .12s ease}.topbar-nav-link:hover{color:var(--ink)}.topbar-nav-link.active{color:var(--topbar-active);font-weight:600;border-bottom-color:var(--topbar-active)}.topbar-right{display:flex;align-items:center;gap:12px}.lang-switch{display:inline-flex;align-items:center;gap:2px;padding:2px;background-color:var(--topbar-surface);border:1px solid var(--topbar-line);border-radius:var(--radius-control)}.lang-btn{height:24px;padding:0 9px;border:1px solid transparent;border-radius:3px;background:transparent;color:var(--ink-muted);font-size:12px;font-weight:600;cursor:pointer;transition:background-color .12s ease,color .12s ease,border-color .12s ease}.lang-btn:hover{color:var(--ink);background-color:#eef2f7}.topbar-divider{width:1px;height:16px;background-color:var(--topbar-line);flex-shrink:0}.topbar-user{color:var(--ink-secondary);font-size:12.5px;font-weight:500;white-space:nowrap}.topbar-signout{height:28px;padding:0 10px;border-radius:var(--radius-control);border:1px solid var(--border-strong);background-color:#fff;color:var(--ink-secondary);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background-color .12s ease,color .12s ease,border-color .12s ease}.topbar-signout:hover{background-color:var(--panel-subtle);border-color:#94a3b8;color:var(--ink)}.desk-main{flex:1;width:100%;display:flex;flex-direction:column}.desk-subbar{width:100%;background-color:#fff;border-bottom:1px solid var(--border);padding:13px 24px}.desk-subbar-inner{max-width:1272px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px 20px;flex-wrap:wrap}.subbar-left{display:flex;flex-direction:column;gap:3px;min-width:0}.subbar-lead{margin:3px 0 0;font-size:12.5px;color:var(--ink-muted)}.breadcrumb{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-muted)}.breadcrumb a{color:var(--ink-muted)}.breadcrumb a:hover{color:var(--primary)}.breadcrumb-sep{color:#94a3b8}.subbar-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.subbar-title{margin:0;font-size:17px;font-weight:600;line-height:1.3;color:var(--ink)}.subbar-count{font-size:12.5px;color:var(--ink-muted)}.subbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.subbar-meta{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}.inline-meta-item{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;padding-right:14px;border-right:1px solid var(--divider)}.inline-meta-label{color:var(--ink-muted)}.inline-meta-val{color:var(--ink);font-weight:500}.segmented-tabs{display:inline-flex;align-items:center;gap:2px;padding:2px;background-color:#f1f5f9;border:1px solid var(--border);border-radius:var(--radius-control)}.segmented-tab{height:28px;padding:0 11px;border:1px solid transparent;border-radius:var(--radius-badge);background:transparent;color:var(--ink-muted);font-size:12px;font-weight:500;cursor:pointer;transition:background-color .12s ease,color .12s ease,border-color .12s ease}.segmented-tab:hover{color:var(--ink)}.segmented-tab.active{background-color:#fff;border-color:var(--border-strong);color:var(--ink);font-weight:600}.desk-container{width:100%;max-width:1320px;margin:0 auto;padding:18px 24px 36px}.list-stack{display:flex;flex-direction:column;gap:14px}.panel{background-color:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel)}.panel-flush{overflow:hidden}.panel-header{padding:11px 18px;border-bottom:1px solid var(--divider);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.panel-title{margin:0;font-size:13.5px;font-weight:600;color:var(--ink)}.panel-subtitle{margin:3px 0 0;font-size:12.5px;color:var(--ink-muted)}.panel-header-meta{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-muted);flex-wrap:wrap}.stage-summary-name{color:var(--primary);font-weight:600}.panel-count{font-size:12px;color:var(--ink-muted)}.stage-tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-badge);background-color:var(--primary-tint);border:1px solid #BFDBFE;color:var(--primary);font-size:11.5px;font-weight:600}.panel-body{padding:16px 18px}.panel-body-compact{padding:8px 18px 12px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:14px;align-items:start}.detail-main-col,.detail-side-col{display:flex;flex-direction:column;gap:14px;min-width:0}[data-testid=stage-submission-section]{border-top:2px solid var(--primary)}.status-badge,.verdict-badge,.round-badge,.mine-badge{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--radius-badge);font-size:11.5px;font-weight:600;white-space:nowrap}.status-badge.status-active{background-color:var(--active-bg);color:var(--active-fg);border:1px solid var(--active-border)}.status-badge.status-completed,.verdict-badge.verdict-pass{background-color:var(--ok-bg);color:var(--ok-fg);border:1px solid var(--ok-border)}.status-badge.status-terminated,.verdict-badge.verdict-fail{background-color:var(--err-bg);color:var(--err-fg);border:1px solid var(--err-border)}.round-badge{background-color:#f1f5f9;color:var(--ink-secondary);border:1px solid var(--border);font-weight:500}.mine-badge{background-color:var(--cyan-bg);color:var(--cyan-fg);border:1px solid var(--cyan-border)}.btn-primary,.btn-secondary,.btn-danger{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 15px;border-radius:var(--radius-control);font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background-color .12s ease,border-color .12s ease,color .12s ease,opacity .12s ease}.btn-primary{background-color:var(--primary);border:1px solid var(--primary-border);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover);border-color:#002e6e}.btn-secondary{background-color:#fff;border:1px solid var(--border-strong);color:var(--ink-secondary);font-weight:500}.btn-secondary:hover:not(:disabled){background-color:var(--panel-subtle);border-color:#94a3b8;color:var(--ink)}.btn-danger{background-color:#fff;border:1px solid #FCA5A5;color:var(--err-fg)}.btn-danger:hover:not(:disabled){background-color:var(--err-bg);border-color:var(--err-fg)}.btn-block{width:100%}button:disabled{opacity:.55;cursor:not-allowed}.btn-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.form-actions{display:flex;align-items:center;gap:8px;padding-top:14px;border-top:1px solid var(--divider)}.field-stack{display:flex;flex-direction:column;gap:14px}.field-row-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-group{display:flex;flex-direction:column;gap:5px}.field-label{font-size:12.5px;font-weight:600;color:var(--ink-secondary)}.field-input,.field-textarea{width:100%;border:1px solid var(--border-strong);border-radius:var(--radius-control);background-color:#fff;color:var(--ink);font-size:13px;transition:border-color .12s ease}.field-input{height:36px;padding:0 11px}.field-textarea{min-height:82px;padding:8px 11px;resize:vertical}.field-input:focus,.field-textarea:focus{outline:2px solid rgba(0,74,173,.16);outline-offset:0;border-color:var(--primary)}.helper-note{margin:0;padding:9px 12px;font-size:12.5px;color:var(--ink-secondary);background-color:var(--panel-subtle);border:1px solid var(--divider);border-left:3px solid var(--primary);border-radius:var(--radius-badge)}.mail-alerts{display:grid;gap:12px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--divider)}.mail-alerts .panel-subtitle{margin:0;font-size:15px;font-weight:650;color:var(--ink)}.mail-alert-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;font-size:13.5px;color:var(--ink)}.mail-alert-actions{display:inline-flex;gap:8px}.status-callout{margin:0;padding:10px 12px;font-size:12.5px;border-radius:var(--radius-badge)}.status-callout-ok{background-color:var(--ok-bg);color:var(--ok-fg);border:1px solid var(--ok-border)}.status-callout-err{background-color:var(--err-bg);color:var(--err-fg);border:1px solid var(--err-border)}.muted-note{margin:0;color:var(--ink-muted)}.submission-prompt{margin:0;font-size:12.5px;color:var(--ink-secondary);font-variant-numeric:tabular-nums}.error-banner,.form-error{background-color:var(--err-bg);color:var(--err-fg);border:1px solid var(--err-border);border-radius:var(--radius-control);padding:9px 12px;font-size:12.5px;margin:0 0 12px}.field-stack .error-banner{margin:0}.auth-stage{flex:1;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px 24px;gap:22px}.auth-split-card{width:min(940px,100%);display:grid;grid-template-columns:410px minmax(0,1fr);background-color:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 6px 24px #0f172a0d}.auth-hero{background-color:var(--navy-hero);border-right:1px solid #0B3168;padding:42px 38px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;gap:28px}.auth-hero-badge{display:inline-block;padding:4px 10px;border-radius:var(--radius-control);background-color:#11ccf524;border:1px solid rgba(17,204,245,.32);font-size:11.5px;font-weight:600;color:#67e8f9;letter-spacing:.03em}.auth-hero-title{margin:16px 0 0;font-size:24px;font-weight:700;line-height:1.36;letter-spacing:-.01em;color:#f8fafc}.auth-hero-lead{margin:12px 0 0;font-size:13.5px;line-height:1.68;color:#bfdbfe}.auth-hero-steps{display:flex;flex-direction:column;gap:10px}.auth-step-pill{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:var(--radius-panel);background-color:#ffffff0f;border:1px solid rgba(147,197,253,.16)}.auth-step-num{font-size:12px;font-weight:700;color:var(--cyan-accent);flex-shrink:0}.auth-step-text{font-size:13px;font-weight:500;color:#e2e8f0}.auth-form-col{padding:40px 46px;display:flex;flex-direction:column;justify-content:center;background-color:#fff}.auth-tab-strip{display:flex;align-items:center;gap:24px;border-bottom:1px solid #E2E8F0;margin-bottom:14px}.auth-tab-active{padding-bottom:10px;border-bottom:2px solid var(--primary);font-size:15px;font-weight:700;color:var(--ink)}.auth-input{height:40px}.auth-submit-btn{height:42px;font-size:14px;margin-top:4px}.auth-panel{width:min(440px,100%);overflow:hidden}.auth-body{padding:24px 26px}.auth-header{margin-bottom:16px}.auth-heading{margin:0;font-size:17px;font-weight:600;color:var(--ink)}.auth-lead{margin:0 0 18px;font-size:13px;color:var(--ink-muted)}.auth-header .auth-lead{margin:4px 0 0}.seed-footnote{margin-top:22px;padding:12px 14px;border:1px solid #E2E8F0;border-radius:6px;background-color:#f8fafc;font-size:12px;line-height:1.55;color:var(--ink-muted);display:flex;flex-direction:column;gap:4px}.seed-footnote strong{color:var(--ink-secondary);font-weight:600}.auth-page-footer{margin:0;font-size:12px;color:var(--ink-muted);text-align:center}.stat-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.stat-cell{padding:13px 18px;display:flex;flex-direction:column;gap:3px}.stat-cell+.stat-cell{border-left:1px solid var(--divider)}.stat-label{font-size:12px;font-weight:500;color:var(--ink-muted)}.stat-value{font-size:21px;font-weight:700;color:var(--ink);line-height:1.25}.stat-value.stat-primary{color:var(--primary)}.stat-value.stat-danger{color:var(--err-fg)}.stat-value.stat-ok{color:var(--ok-fg)}.stat-sub{font-size:11.5px;color:#94a3b8}.quote-card-list{display:flex;flex-direction:column;gap:10px}.quote-row-card{padding:15px 20px;display:grid;grid-template-columns:minmax(0,2.3fr) minmax(0,2.1fr) minmax(0,2fr) auto;align-items:center;gap:20px;transition:border-color .12s ease}.quote-row-card:hover{border-color:#93c5fd}.quote-row-card.is-mine{border-left:3px solid var(--primary)}.qrc-identity{min-width:0;display:flex;flex-direction:column;gap:4px}.qrc-badges{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.qrc-id{font-size:12.5px;font-weight:700;color:var(--primary)}.qrc-id:hover{text-decoration:underline}.qrc-title{font-size:14.5px;font-weight:600;color:var(--ink);line-height:1.35}.qrc-title:hover{color:var(--primary)}.qrc-sub{font-size:12px;color:var(--ink-muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.qrc-sub strong{color:var(--ink-secondary);font-weight:500}.qrc-progress{min-width:0;display:flex;flex-direction:column;gap:6px}.qrc-progress-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:12px}.qrc-stage-name{font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qrc-assignee-text{color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.milestone-track{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.milestone-seg{height:5px;border-radius:2px;background-color:#e2e8f0}.milestone-seg.visited{background-color:#93c5fd}.milestone-seg.current{background-color:var(--primary);box-shadow:0 0 0 1px var(--cyan-accent)}.milestone-seg.completed{background-color:#059669}.milestone-seg.terminated{background-color:#fecaca}.milestone-labels{display:flex;justify-content:space-between;font-size:10.5px;color:#94a3b8}.qrc-figures{min-width:0;display:flex;flex-direction:column;gap:3px}.qrc-target{font-size:12.5px;font-weight:600;color:var(--ink)}.qrc-latest{font-size:11.5px;font-weight:500}.qrc-latest.is-pass{color:var(--ok-fg)}.qrc-latest.is-fail{color:var(--err-fg)}.qrc-due{font-size:11.5px;color:var(--ink-muted)}.qrc-action{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.qrc-btn{min-width:82px;height:32px;font-size:12.5px}.dot-sep{color:#cbd5e1}.cell-muted{color:var(--ink-muted);font-weight:400}.due-text{font-size:12px;color:var(--ink-secondary)}.due-text.overdue{color:var(--err-fg);font-weight:600}.open-link{display:inline-flex;align-items:center;justify-content:center;min-width:82px;height:32px;padding:0 12px;border-radius:var(--radius-control);border:1px solid var(--border-strong);background-color:#fff;color:var(--primary);font-size:12.5px;font-weight:600;transition:background-color .12s ease,border-color .12s ease}.open-link:hover{background-color:var(--primary-tint);border-color:var(--primary)}.empty-desk{padding:44px 24px;text-align:center}.empty-text{margin:0 0 14px;color:var(--ink-muted)}.create-panel{max-width:860px;margin:0 auto}.checkbox-row{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-row input{width:15px;height:15px;margin:0;accent-color:var(--primary)}.override-section{display:flex;flex-direction:column;gap:12px}.override-table-wrap{border:1px solid var(--border);border-radius:var(--radius-control);overflow:hidden}.override-stage-cell{font-weight:600;color:var(--ink);width:220px}.col-sla{width:120px}.field-input-sla{height:32px;width:96px}.assignee-pills{display:flex;flex-wrap:wrap;gap:6px}.assignee-pill{display:inline-flex;align-items:center;height:27px;padding:0 10px;border:1px solid var(--border-strong);border-radius:var(--radius-badge);background-color:#fff;color:var(--ink-secondary);font-size:12px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .1s ease,border-color .1s ease,color .1s ease}.assignee-pill:hover{border-color:#94a3b8}.assignee-pill.selected{background-color:var(--primary-tint);border-color:var(--primary);color:var(--primary);font-weight:600}.assignee-pill input{display:none}.table-wrap{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table thead th{padding:9px 16px;background-color:var(--panel-subtle);border-bottom:1px solid var(--border);text-align:left;font-size:11.5px;font-weight:600;color:var(--ink-muted);white-space:nowrap}.data-table tbody td{padding:10px 16px;border-bottom:1px solid var(--divider);vertical-align:middle;color:var(--ink)}.data-table tbody tr:last-child td{border-bottom:none}.kv-table{width:100%;border-collapse:collapse}.kv-table th,.kv-table td{padding:9px 0;border-bottom:1px solid var(--divider);text-align:left;vertical-align:top;font-size:12.5px}.kv-table th{width:108px;padding-right:12px;color:var(--ink-muted);font-weight:500}.kv-table tr:last-child th,.kv-table tr:last-child td{border-bottom:none}.result-muted,.result-muted-inline{color:var(--ink-muted)}.choice-list{display:flex;flex-direction:column;gap:8px}.choice-option{display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-control);background-color:#fff;cursor:pointer;text-align:left;font-size:13px;color:var(--ink);transition:border-color .12s ease,background-color .12s ease}.choice-option:hover{border-color:#94a3b8;background-color:var(--panel-subtle)}.choice-option.selected{border:1.5px solid var(--primary);background-color:var(--primary-tint);color:var(--primary);font-weight:600}.choice-radio{width:14px;height:14px;border-radius:50%;border:1.5px solid #94A3B8;flex-shrink:0;position:relative}.choice-option.selected .choice-radio{border-color:var(--primary);background-color:var(--primary)}.choice-option.selected .choice-radio:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background-color:#fff}.audit-table tbody td{vertical-align:top}.col-time,.cell-time{width:156px;white-space:nowrap;color:var(--ink-muted);font-size:12px}.cell-stage{font-weight:500;color:var(--ink);width:190px}.audit-action{font-weight:500;color:var(--ink-secondary)}.history-kv{margin-top:5px;display:flex;flex-wrap:wrap;gap:5px 8px}.kv-chip{display:inline-flex;align-items:baseline;gap:4px;padding:2px 7px;border-radius:var(--radius-badge);background-color:var(--panel-subtle);border:1px solid var(--divider);font-size:12px}.kv-chip-key{color:var(--ink-muted)}.kv-chip-val{color:var(--ink)}.diagram-panel-body{padding:14px 16px}.diagram-viewport{position:relative;width:100%}.diagram-stage{position:relative;width:915px;height:560px;transform-origin:top left}.diagram-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:915px;height:560px;overflow:visible}.diagram-edge{fill:none;stroke:#cbd5e1;stroke-width:1.5}.diagram-edge.taken{stroke:#0284c7;stroke-width:1.8}.diagram-edge-label{fill:#64748b;font-size:11px;font-weight:500}.diagram-edge-label.taken{fill:#0369a1;font-weight:600}.diagram-node{position:absolute;box-sizing:border-box}.diagram-node-box{height:100%;border-radius:var(--radius-control);display:flex;align-items:center;justify-content:center;text-align:center;padding:4px 8px}.diagram-node-title{font-size:12px;font-weight:600;line-height:1.25}.diagram-node-line{display:block}.diagram-node-meta{margin-top:3px;font-size:11px;color:var(--ink-muted);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.state-current .diagram-node-box{background-color:var(--primary);border:1.5px solid var(--cyan-accent);color:#fff}.state-visited .diagram-node-box{background-color:#eff6ff;border:1px solid #93C5FD;color:var(--primary)}.state-pending .diagram-node-box{background-color:#fff;border:1px dashed #CBD5E1;color:#64748b}.state-pending .diagram-node-title{font-weight:500}.diagram-legend{padding:10px 18px;border-top:1px solid var(--divider);background-color:var(--panel-subtle);border-radius:0 0 var(--radius-panel) var(--radius-panel);display:flex;flex-wrap:wrap;gap:10px 18px;font-size:12px;color:var(--ink-muted)}.diagram-legend-item{display:inline-flex;align-items:center;gap:6px}.legend-swatch{display:inline-block;width:14px;height:10px;border-radius:2px}.swatch-current{background-color:var(--primary);border:1px solid var(--cyan-accent)}.swatch-visited{background-color:#eff6ff;border:1px solid #93C5FD}.swatch-pending{background-color:#fff;border:1px dashed #CBD5E1}.swatch-taken-edge{height:2px;border-radius:0;background-color:#0284c7}.diagram-node.is-editable{cursor:pointer}.diagram-node.is-editable:hover .diagram-node-box{border-color:var(--primary)}.diagram-edit-hint{margin:10px 0 0}.node-editor{margin-top:8px;display:flex;flex-direction:column;gap:12px}.node-editor-sla{max-width:150px}.admin-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:16px;align-items:start}.admin-menu{display:flex;flex-direction:column;border:1px solid var(--border);background:var(--panel);border-radius:var(--radius-panel);overflow:hidden}.admin-menu a{padding:11px 14px;color:var(--ink-secondary);font-weight:500;text-decoration:none;border-bottom:1px solid var(--divider);border-left:3px solid transparent}.admin-menu a:last-child{border-bottom:0}.admin-menu a:hover{background-color:var(--panel-subtle);color:var(--ink)}.admin-menu a.active{background-color:var(--primary-tint);border-left-color:var(--primary);color:var(--primary);font-weight:600}.admin-panel{min-width:0}.admin-row-actions{display:flex;flex-wrap:wrap;gap:8px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a73}.modal-card{width:min(680px,100%);max-height:calc(100vh - 48px);overflow:auto;padding:18px 20px;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-panel);box-shadow:0 12px 32px #0f172a1f}.modal-head{margin-bottom:12px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.admin-add-user{display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) auto;gap:10px;align-items:end;margin-top:14px}.sla-input{width:92px}.letter-list{display:grid;gap:16px}.letter-html{min-height:180px;font-family:var(--font-mono)}.letter-preview{width:100%;height:280px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--canvas)}.letter-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin-top:12px}.letter-actions .field-group{flex:1 1 220px;margin:0}.toast-stack{position:fixed;top:68px;right:16px;z-index:50;display:flex;flex-direction:column;gap:8px;width:min(360px,calc(100vw - 32px));pointer-events:none}.toast-item{display:flex;align-items:flex-start;gap:10px;padding:11px 14px;border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--panel);color:var(--ink);pointer-events:auto;box-shadow:0 4px 14px #0f172a14}.toast-ok{border-color:var(--ok-border);background:var(--ok-bg);color:var(--ok-fg)}.toast-err{border-color:var(--err-border);background:var(--err-bg);color:var(--err-fg)}.toast-message{flex:1 1 auto;font-size:13px;line-height:1.45}.toast-dismiss{flex:0 0 auto;border:0;background:transparent;color:inherit;cursor:pointer;padding:0;line-height:1;font-size:16px}@media(max-width:1080px){.detail-grid{grid-template-columns:minmax(0,1fr)}.quote-row-card{grid-template-columns:minmax(0,1.4fr) minmax(0,1.4fr);gap:14px}.qrc-action{justify-content:flex-start}.admin-add-user{grid-template-columns:1fr}}@media(max-width:860px){.auth-split-card{grid-template-columns:1fr}.auth-hero{border-right:none;border-bottom:1px solid #0B3168;padding:28px 24px}.auth-form-col{padding:28px 24px}.stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-cell:nth-child(3){border-left:none;border-top:1px solid var(--divider)}.stat-cell:nth-child(4){border-top:1px solid var(--divider)}.quote-row-card{grid-template-columns:1fr;gap:12px}.desk-topbar-inner{padding:6px 16px;flex-wrap:wrap}.desk-subbar{padding:12px 16px}.desk-container{padding:14px 16px 28px}.inline-meta-item{border-right:none;padding-right:0}.admin-layout{grid-template-columns:1fr}.audit-table thead,.override-table thead{display:none}.audit-table tbody tr,.override-table tbody tr{display:block;padding:10px 14px;border-bottom:1px solid var(--border)}.audit-table tbody tr:last-child,.override-table tbody tr:last-child{border-bottom:none}.audit-table tbody td,.override-table tbody td{display:flex;align-items:baseline;justify-content:space-between;gap:12px;width:100%;padding:4px 0;border-bottom:none;text-align:right}.audit-table tbody td:before,.override-table tbody td:before{content:attr(data-label);font-size:11.5px;font-weight:600;color:var(--ink-muted);text-align:left;flex-shrink:0}}@media(max-width:600px){.brand-divider,.brand-desk-title{display:none}.topbar-left{width:100%;justify-content:space-between}.topbar-right{width:100%;justify-content:flex-end;padding-bottom:6px}.field-row-two,.stat-strip{grid-template-columns:1fr}.stat-cell+.stat-cell{border-left:none;border-top:1px solid var(--divider)}}
