@import url("https://fonts.googleapis.com/css2?family=Orbitron:wght@700&family=Roboto:wght@300;400;500;700&family=Roboto+Mono:wght@400;500&display=swap");:root{--color-brand:#9A061A;--color-brand-rgb:154,6,26;--color-brand-dark:#7a0415;--color-brand-light:#c40822;--color-black:#000008;--color-bg:#0f1216;--color-bg-sidebar:#0a0c0f;--color-bg-surface:#1a1f26;--color-border-dark:rgba(255,255,255,0.06);--color-text-dark:#ffffff;--color-text-muted-dark:#c4c7cc;--color-text-subtle-dark:#888c92;--color-bg-main:#f4f5f7;--color-bg-card:#ffffff;--color-border:#e8e9ec;--color-border-subtle:#f0f1f3;--color-text:#0f1216;--color-text-body:#1a1a1f;--color-text-muted:#5d6066;--color-text-subtle:#888c92;--color-success:#22a35a;--color-success-bg:#d5f3df;--color-success-text:#15803d;--color-warning:#d99a00;--color-warning-bg:#fef3da;--color-info:#3b82f6;--color-info-bg:#e0eafa;--color-purple:#8b5cf6;--color-teal:#14b8a6;--color-danger:#c40822;--color-danger-rgb:196,8,34;--color-brand-bg:#fde9ec;--color-brand-border:#f7ccd2;--font-display:"Orbitron",sans-serif;--font-body:"Roboto",sans-serif;--font-mono:"Roboto Mono",monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-card:10px;--radius-btn:6px;--radius-badge:4px;--radius-pill:999px;--shadow-card:0 1px 3px rgba(0,0,0,0.08),0 1px 2px rgba(0,0,0,0.04);--shadow-modal:0 20px 60px rgba(0,0,0,0.18);--shadow-popover:0 6px 20px rgba(0,0,0,0.12);--color-bg-subtle:#fafbfc;--sidebar-width:224px;--sidebar-width-collapsed:60px;--topbar-height:56px;--portal-sidebar-width:260px;--portal-topbar-height:80px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}summary::-webkit-details-marker{display:none}html{font-size:14px;-webkit-font-smoothing:antialiased;scrollbar-gutter:stable}body{font-family:var(--font-body);font-weight:400;background:var(--color-bg-main);color:var(--color-text-body);line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,select,textarea{font-family:inherit}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.eyebrow{font-size:11px;font-weight:600;color:var(--color-brand);letter-spacing:.14em;text-transform:uppercase}.page-title{font-family:var(--font-display);font-size:26px;font-weight:700;color:var(--color-text);letter-spacing:.02em}.section-heading{font-size:13px;font-weight:600;color:var(--color-text)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);height:34px;padding:0 var(--space-4);border-radius:var(--radius-btn);font-size:13px;font-weight:500;border:1px solid transparent;transition:background .15s,border-color .15s,opacity .15s;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-brand);color:#fff;border-color:var(--color-brand)}.btn-primary:hover{background:var(--color-brand-light)}.btn-secondary{background:var(--color-bg-card);color:var(--color-text-body);border-color:var(--color-border)}.btn-secondary:hover{background:var(--color-bg-main)}.btn-sub-cta{background:var(--color-bg-card);color:var(--color-brand);border-color:var(--color-brand)}.btn-sub-cta:hover{background:var(--color-brand-bg)}.btn-hover-brand:hover{color:var(--color-brand);border-color:var(--color-brand)}.btn-icon{display:inline-flex;align-items:center;gap:6px}.btn-ghost{background:transparent;color:var(--color-text-muted);border-color:transparent}.btn-ghost:hover{background:var(--color-bg-main);color:var(--color-text)}.card-close-btn{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;background:none;border:none;border-radius:8px;cursor:pointer;font-size:18px;line-height:1;color:var(--color-text-muted);transition:background .15s,color .15s}.card-close-btn:hover{background:var(--color-bg-main);color:var(--color-text)}.card-close-btn:focus-visible{outline:2px solid var(--color-brand);outline-offset:-2px}.btn-danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.btn-danger-soft{background:transparent;color:var(--color-danger);border-color:transparent}.btn-danger-soft:hover{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.btn-ghost-danger{background:transparent;color:var(--color-text-muted);border-color:transparent}.btn-ghost-danger:focus-visible,.btn-ghost-danger:hover:not(:disabled){background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.comment-remove-link{border:none;background:none;color:var(--color-text-muted);font-size:12px;cursor:pointer;padding:0;margin-top:6px;transition:color .15s}.comment-remove-link:hover{color:var(--color-danger)}.comment-remove-confirm:hover:not(:disabled){filter:brightness(.85)}.btn-lg{height:46px;padding:0 var(--space-8);font-size:15px}.btn-sm{height:28px;padding:0 var(--space-3);font-size:12px}.btn-split{display:flex;border-radius:var(--radius-btn);overflow:hidden}.btn-split .btn{border-radius:0}.btn-split:hover .btn-primary{background:var(--color-brand-light)}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.card-header{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between}.card-body{padding:var(--space-6)}.card-link{transition:box-shadow .15s}.card-link:hover{box-shadow:0 0 0 2px var(--color-brand)}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:var(--radius-pill);font-size:12px;font-weight:500}.status-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.pill-success{background:var(--color-success-bg);color:var(--color-success)}.pill-warning{background:var(--color-warning-bg);color:var(--color-warning)}.pill-info{background:var(--color-info-bg);color:var(--color-info)}.pill-brand{background:var(--color-brand-bg);color:var(--color-brand)}.pill-neutral{background:var(--color-bg-main);color:var(--color-text-muted)}.pill-purple{background:#ede9fe;color:var(--color-purple)}.pill-teal{background:#ccfbf1;color:var(--color-teal)}.pill-danger{background:rgba(var(--color-danger-rgb),.12);color:var(--color-danger)}.pill-ref{background:var(--color-bg-main);color:var(--color-text-muted);font-family:var(--font-mono);letter-spacing:.04em}.pill-ref:before{content:none}.chip{display:inline-flex;align-items:center;gap:var(--space-1);height:30px;padding:0 12px;border-radius:var(--radius-pill);font-size:12px;font-weight:500;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-muted);cursor:pointer;transition:all .15s}.chip:hover{border-color:var(--color-text-muted);color:var(--color-text)}.chip.active{background:var(--color-brand);border-color:var(--color-brand);color:#fff}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:11px 18px;font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-bg-subtle);border-bottom:1px solid var(--color-border);text-align:left;white-space:nowrap}.data-table td{padding:14px 18px;font-size:13px;color:var(--color-text-body);border-bottom:1px solid var(--color-border-subtle);vertical-align:middle}.data-table tbody tr:hover{background:var(--color-bg-subtle)}.th-sort-btn{display:inline-flex;align-items:center;gap:4px;padding:0;background:none;border:none;border-radius:4px;cursor:pointer;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit}.th-sort-btn:hover{color:var(--color-text)}.th-sort-btn:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.notif-pref-row{padding:12px 8px;margin:0 -8px;border-top:1px solid var(--color-border)}.notif-pref-row:first-child{border-top:none;padding-top:4px}.notif-pref-row:hover{background:var(--color-bg-subtle)}.data-table tbody tr:last-child td{border-bottom:none}.data-table td:first-child,.data-table th:first-child{padding-right:0;width:44px}.asset-id-cell{gap:6px}.asset-id-cell,.asset-id-copy-btn{display:inline-flex;align-items:center}.asset-id-copy-btn{justify-content:center;width:20px;height:20px;padding:0;border:none;background:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-text-muted);cursor:pointer;opacity:0;transition:opacity .12s,color .12s}.asset-id-copy-btn:hover{color:var(--color-brand)}.asset-id-copy-btn:focus-visible,.data-table tbody tr:hover .asset-id-copy-btn{opacity:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tab-strip{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden}.tab-strip,.tab-strip-scroll{display:flex;align-items:stretch}.tab-strip-scroll{overflow-x:auto;scrollbar-width:none}.tab-strip-scroll::-webkit-scrollbar{display:none}.tab-strip-trailing{flex:1 1;display:flex;align-items:stretch;border-left:1px solid var(--color-border)}.tab-strip--neutral .stage-tab.active{color:var(--color-text);font-weight:700;background:var(--color-bg-main);border-bottom-color:var(--color-text)}.tab-strip--neutral .stage-tab.active .stage-count{background:#fff;color:var(--color-text-muted)}.stage-tab{flex:1 1;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:14px;font-size:13px;font-weight:500;color:var(--color-text-muted);cursor:pointer;white-space:nowrap;border:none;border-bottom:2px solid transparent;background:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:all .15s}.stage-tab:hover{color:var(--color-text);background:var(--color-bg-main)}.stage-tab.active{color:var(--color-brand);border-bottom-color:var(--color-brand-light)}.btn-filters{border:1px solid var(--color-border);background:transparent;color:var(--color-text-muted)}.btn-filters.is-active,.btn-filters:hover{border-color:var(--color-brand);background:rgba(var(--color-brand-rgb),.06);color:var(--color-brand)}.stage-count{background:var(--color-bg-main);color:var(--color-text-muted);border-radius:var(--radius-pill);font-size:11px;padding:1px 6px;font-weight:600}.stage-tab.active .stage-count{background:var(--color-brand-bg);color:var(--color-brand)}.stage-tab-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--color-text-muted)}.stage-tab.active .stage-tab-dot{background:var(--color-brand)}.list-card>.tab-strip{border:none;border-bottom:1px solid var(--color-border);border-radius:var(--radius-card) var(--radius-card) 0 0;box-shadow:none}.list-card>:last-child{border-bottom-left-radius:var(--radius-card);border-bottom-right-radius:var(--radius-card)}.list-card>.tab-strip:last-child{border-bottom:none}.filter-band{padding:12px 16px;background:var(--color-bg-main);border-bottom:1px solid var(--color-border)}.list-card>.filter-band:last-child{border-bottom:none}.dropdown-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.12);padding:4px}.dropdown-option{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:4px;font-size:13px;color:var(--color-text);cursor:pointer}.dropdown-option:hover{background:var(--color-bg-main)}.select-chevron{display:block;flex-shrink:0;width:12px;height:12px;background-color:var(--color-text-muted);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") center /contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") center /contain no-repeat;transition:rotate .15s}.select-chevron.is-open{rotate:180deg}@supports ((-webkit-appearance:base-select) or (-moz-appearance:base-select) or (appearance:base-select)){select:where(:not([multiple],[size])),select:where(:not([multiple],[size]))::picker(select){-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select}select:where(:not([multiple],[size])){display:flex;align-items:center;gap:8px}select.form-select{-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select;background-image:none;padding-right:var(--space-3)}select:where(:not([multiple],[size]))::picker-icon{content:"";width:12px;height:12px;background-color:var(--color-text-muted);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") center /contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") center /contain no-repeat;transition:rotate .15s}select:where(:not([multiple],[size])):open::picker-icon{rotate:180deg}select:where(:not([multiple],[size]))::picker(select){background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.12);padding:4px;margin-block:4px;max-height:280px}select:where(:not([multiple],[size])) option{padding:6px 10px;border-radius:4px;font-size:13px;color:var(--color-text)}select:where(:not([multiple],[size])) option::checkmark{display:none}select:where(:not([multiple],[size])) option:focus-visible,select:where(:not([multiple],[size])) option:hover{background:var(--color-bg-main);outline:none}select:where(:not([multiple],[size])) option:checked{background:var(--color-bg-main);font-weight:600}select:where(:not([multiple],[size])) option:disabled{color:var(--color-text-subtle)}}.tab-strip-tools{display:flex;align-items:center;gap:8px;padding:8px 12px;width:100%;min-width:0}.tab-strip-tools>.btn-filters,.tab-strip-tools>.tab-strip-tools-end{margin-left:auto;flex-shrink:0}.tab-strip-tools .tab-strip-search{width:300px;max-width:100%;min-width:0}@media (max-width:640px){.tab-strip-tools .tab-strip-search{flex:1 1;width:auto}}.kpi-number{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--color-text);letter-spacing:.02em}.progress-bar{height:6px;background:var(--color-border);border-radius:var(--radius-pill);overflow:hidden}.progress-bar-fill{height:100%;background:var(--color-brand);border-radius:var(--radius-pill);transition:width .3s ease}.form-group{display:flex;flex-direction:column;gap:var(--space-1)}.form-label{font-size:12px;font-weight:500;color:var(--color-text)}input[type=checkbox],input[type=radio]{accent-color:var(--color-brand)}.form-input{height:36px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-btn);font-family:var(--font-body);font-size:13px;color:var(--color-text-body);background:var(--color-bg-card);transition:border-color .15s,box-shadow .15s;outline:none;width:100%}.form-input:focus{border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-bg)}.form-input::placeholder{color:var(--color-text-subtle)}.form-input-scan{border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-bg);font-family:var(--font-mono);font-size:15px;height:46px;padding:0 var(--space-4)}.form-textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-btn);font-size:13px;color:var(--color-text-body);background:var(--color-bg-card);resize:vertical;outline:none;width:100%;min-height:80px}.form-textarea:focus{border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-bg)}.form-select{height:36px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-btn);font-size:13px;color:var(--color-text-body);background:var(--color-bg-card);outline:none;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;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='%23888c92' stroke-width='2'%3E%3Cpolyline points='6,9 12,15 18,9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}.form-select:focus{border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-bg)}.form-hint{font-size:11px;color:var(--color-text-subtle)}.form-error{font-size:11px;color:var(--color-danger)}.divider{border:none;border-top:1px solid var(--color-border);margin:var(--space-4) 0}.asset-id{font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--color-text)}*{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.confirm-backdrop{position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.confirm-dialog{width:420px;max-width:100%;box-shadow:var(--shadow-modal)}.confirm-dialog-title{font-size:16px;font-weight:600;color:var(--color-text);margin-bottom:var(--space-2)}.confirm-dialog-message{font-size:14px;color:var(--color-text-muted);line-height:1.5;white-space:pre-line}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5)}