:root{--bg:#f0f4f8;--panel:#fff;--surface:#f4f8fc;--main-bg:#f0f4f8;--text:#1a2433;--muted:#6b7a94;--accent:#1e4976;--accent-2:#2d5a8e;--header-bg:#1a3a5c;--header-grad-2:#1a3a5c;--sidebar-bg:#1a3a5c;--sidebar-text:#b8cfe4;--sidebar-active-bg:#ffffff21;--border:#dce4f0;--card-header-bg:#2d5a8e;--orange:#f97316;--status-success:#22c55e;--status-active:#3b82f6;--status-critical:#ef4444;--status-muted:#94a3b8}[data-theme=dark]{--bg:#0d1b2e;--panel:#142236;--surface:#1a2d44;--main-bg:#0d1b2e;--text:#e2ecf5;--muted:#7fa5c5;--accent:#4a8fd4;--accent-2:#3a7bc8;--header-bg:#091526;--header-grad-2:#091526;--sidebar-bg:#091526;--sidebar-text:#8aafc8;--sidebar-active-bg:#ffffff1a;--border:#1e3555;--card-header-bg:#1a3a5c;--orange:#fb923c;--status-success:#34d399;--status-active:#60a5fa;--status-critical:#f87171;--status-muted:#a1aab8}@media (prefers-color-scheme:dark){:root:not([data-theme]){--bg:#0d1b2e;--panel:#142236;--surface:#1a2d44;--main-bg:#0d1b2e;--text:#e2ecf5;--muted:#7fa5c5;--accent:#4a8fd4;--accent-2:#3a7bc8;--header-bg:#091526;--header-grad-2:#091526;--sidebar-bg:#091526;--sidebar-text:#8aafc8;--sidebar-active-bg:#ffffff1a;--border:#1e3555;--card-header-bg:#1a3a5c;--orange:#fb923c;--status-success:#34d399;--status-active:#60a5fa;--status-critical:#f87171;--status-muted:#a1aab8}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:IBM Plex Sans,Segoe UI,sans-serif}.no-theme-transition,.no-theme-transition *{transition:none!important}.app-layout{min-height:100vh;display:flex}.sidebar{background:var(--sidebar-bg);flex-direction:column;gap:24px;width:240px;padding:32px 20px;display:flex;box-shadow:4px 0 16px #0000002e}.sidebar-brand{align-items:center;gap:12px;display:flex}.sidebar-brand strong{color:#fff}.sidebar-brand .muted{color:#fff9}.sidebar-footer strong{color:#fff}.sidebar-footer .muted{color:#fff9}.sidebar-logo{color:#fff;background:#ffffff1a;border:1px solid #fff3;border-radius:10px;place-items:center;width:42px;height:42px;font-weight:700;display:grid}.nav-list{flex-direction:column;gap:8px;display:flex}.nav-item{color:var(--sidebar-text);border:1px solid #0000;border-left-width:3px;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-weight:600;display:flex}.nav-item:hover{color:#fff;background:#ffffff14}.nav-item.active{background:var(--sidebar-active-bg);border-left:3px solid var(--orange);color:#fff;border-radius:0 8px 8px 0;padding-left:9px}.nav-item.small{padding-left:20px;font-size:13px}.sidebar-group{flex-direction:column;gap:6px;display:flex}.sidebar-group summary{cursor:pointer;align-items:center;list-style:none;display:flex}.sidebar-group summary::-webkit-details-marker{display:none}.sidebar-group summary:after{content:"▾";color:var(--muted);margin-left:auto;font-size:12px}.sidebar-group[open] summary:after{content:"▴"}.sidebar-heading{letter-spacing:.2em;text-transform:uppercase;color:#ffffff73;font-size:12px}.sidebar-footer{border-top:1px solid #ffffff26;flex-direction:column;gap:8px;margin-top:auto;padding-top:10px;display:flex}.theme-block{flex-direction:column;gap:6px;display:flex}.main-content{background:var(--main-bg);flex:1;min-height:100vh}.app-header{z-index:5;background:var(--header-bg);border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:16px;height:55px;padding:0 12px;display:flex;position:sticky;top:0}.app-header-left{align-items:center;gap:16px;display:flex}.header-project{color:#fff;align-items:center;gap:6px;margin-top:8px;font-size:12px;font-weight:600;display:flex}.header-project-label{color:#fff;font-size:16px}.header-project-select{color:#f8fafc;background:#0f172a40;border-color:#ffffff59;min-width:220px;height:44px;font-size:13px;font-weight:800}.header-project-select option{color:#0b0f19}[data-theme=dark] .header-project-select option{color:#f8fafc;background:#0b1324}.header-project-link{white-space:nowrap;justify-content:center;align-items:center;height:44px;padding:0 16px;font-size:13px;line-height:1;display:inline-flex;transform:translateY(-3px)}.header-project-link span{position:relative;top:5px}.app-header-brand{align-items:center;gap:12px;display:flex}.header-company-name{color:#fff;white-space:nowrap;font-size:10px}.app-header-brand{gap:8px}.app-header-logo{color:#fff;background:#ffffff1f;border:1px solid #fff6;border-radius:999px;place-items:center;width:36px;height:36px;font-weight:700;display:grid;overflow:hidden}.app-header-actions{align-items:center;gap:10px;display:flex}.header-notifications{align-items:center;display:flex;position:relative}.icon-button{color:#fff;background:#ffffff1a;border:1px solid #ffffff40;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex;position:relative}.icon-button svg{fill:none;stroke:currentColor;stroke-width:1.6px;width:18px;height:18px}.icon-badge{color:#0b0f19;background:#ef4444;border:1px solid #0f172a99;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;top:-4px;right:-4px}.header-logout{padding:6px 12px}.notifications-dropdown{border:1px solid var(--border);z-index:20;background:#0f172af2;border-radius:12px;width:320px;max-height:360px;padding:8px 0;position:absolute;top:46px;right:0;overflow:auto;box-shadow:0 12px 30px #0f172a66}.notifications-header{color:#94a3b8e6;border-bottom:1px solid #94a3b833;padding:8px 14px;font-size:12px;font-weight:600}.notifications-dropdown ul{gap:4px;margin:0;padding:4px 0;list-style:none;display:grid}.notifications-dropdown li button{text-align:left;color:#fff;cursor:pointer;background:0 0;border:none;gap:4px;width:100%;padding:8px 14px;display:grid}.notifications-dropdown li button:hover{background:#3b82f633}.notifications-subject{font-size:12px;font-weight:600}.notifications-meta{color:#94a3b8e6;font-size:11px}.notifications-empty{color:#94a3b8e6;padding:12px 14px;font-size:12px}.user-badge{color:#fff;white-space:nowrap;background:#ffffff1f;border-radius:999px;align-items:center;gap:10px;padding:3px 6px;display:flex}.header-user-name{color:#fff;font-size:10px}.user-avatar{color:#fff;background:#ffffff47;border-radius:999px;place-items:center;width:36px;height:36px;font-weight:700;display:grid;overflow:hidden}.app-header-logo img,.user-avatar img{object-fit:cover;border-radius:999px;width:100%;height:100%}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.theme-label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:11px}.theme-select{border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:10px;padding:6px 8px;font-size:12px}a{color:inherit;text-decoration:none}.container{max-width:1100px;margin:0 auto;padding:32px 20px 60px}.header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:18px;box-shadow:0 1px 6px #0f172a12}[data-theme=dark] .card{box-shadow:0 10px 30px #0003}.card-header{background:var(--card-header-bg);color:#fff;border-radius:8px 8px 0 0;margin:-16px -16px 16px;padding:10px 16px}.card-header h3,.card-header h2{color:#fff;margin:0;font-size:14px;font-weight:600}.page-shell{flex-direction:column;gap:20px;max-width:1600px;margin:0 auto;padding:32px 32px 60px;display:flex}.page-header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.product-title{letter-spacing:.01em;margin:0;font-size:20px;font-weight:500;line-height:1.1}.product-header{grid-template-rows:auto auto auto;grid-template-columns:1fr auto;gap:12px 24px;display:grid}.product-header-left{grid-area:1/1}.product-header-actions{grid-area:1/2}.product-header-divider{background:var(--border);grid-area:2/1/auto/-1;height:1px}.product-header-body{flex-wrap:nowrap;grid-area:3/1/auto/-1;align-items:flex-start;gap:32px;display:flex}.product-header-meta{flex:0 0 320px}.phase-strip-card{background:var(--panel);border:1px solid var(--border);border-radius:14px;flex:auto;gap:10px;padding:12px 14px;display:grid}.phase-strip-header{color:var(--muted);text-transform:uppercase;letter-spacing:.16em;justify-content:space-between;align-items:center;font-size:12px;display:flex}.phase-strip{flex-wrap:nowrap;gap:0;padding-bottom:2px;display:flex;overflow-x:auto}.phase-tab{color:#f8fbff;text-align:center;white-space:nowrap;cursor:pointer;background:#5a6f99;border:1px solid #5a6f99;border-right:none;border-radius:6px;flex:auto;align-content:center;justify-items:center;gap:2px;min-width:0;margin-right:-6px;padding:8px 14px;font-size:11px;transition:filter .15s;display:grid;position:relative}.phase-tab:hover{filter:brightness(1.15)}.phase-tab-chevron{clip-path:polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%,14px 50%);padding-left:26px;padding-right:26px}.phase-tab-start{clip-path:polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%);padding-right:26px}.phase-tab-end{clip-path:polygon(0 0,100% 0,100% 100%,0 100%,14px 50%);border-right:1px solid #7f93b9;margin-right:0;padding-left:26px}.phase-tab-readonly{cursor:default;opacity:.7}.phase-tab-label{justify-content:center;align-items:center;gap:4px;font-weight:700;line-height:1.2;display:flex}.phase-tab-check{opacity:.9;font-size:10px;font-weight:900}.phase-tab-active{outline-offset:-3px;outline:2px solid #fff9}.phase-sub-strip{padding-top:2px}.phase-sub-tab{background:#3d5a8a;border-color:#3d5a8a;padding:6px 14px;font-size:10.5px}.phase-sub-tab.phase-tab-start{padding-right:26px}.phase-sub-tab.phase-tab-chevron{padding-left:26px;padding-right:26px}.phase-sub-tab.phase-tab-end{border-right-color:#5572a0;padding-left:26px}.phase-tab-status{color:#ffffffa6;letter-spacing:.02em;font-size:9px;font-weight:700}.dash-welcome{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:4rem 2rem;display:flex}.dash-welcome-icon{background:var(--surface);border:2px solid var(--border);width:80px;height:80px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;display:flex}.dash-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.dash-header-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.dash-contract-select{min-width:200px;max-width:320px}.dash-kpis{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.dash-kpi-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.dash-kpi-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.dash-kpi-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.dash-kpi-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:12px;font-weight:600}.dash-kpi-value{color:var(--text);font-size:1.75rem;font-weight:700;line-height:1}.dash-kpi-progress{align-items:center;gap:.75rem;display:flex}.dash-contract-strip{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.dash-contract-strip-info{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.dash-contract-strip-name{font-size:15px;font-weight:700}.dash-contract-strip-id{color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:2px 8px;font-family:monospace;font-size:12px}.dash-contract-strip-company{color:var(--muted);font-size:13px}.dash-contract-strip-meta{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.dash-timeline-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;overflow:hidden}.dash-section-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem 1rem;display:flex}.dash-section-header h3{margin:0;font-size:1rem;font-weight:700}.dash-empty{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:3rem;display:flex}.dash-contracts-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;overflow:hidden}.dash-contract-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0;display:grid}.dash-contract-item{text-align:left;border:none;border-right:1px solid var(--border);border-bottom:1px solid var(--border);cursor:pointer;background:0 0;flex-direction:column;gap:6px;padding:1rem 1.25rem;transition:background .15s;display:flex}.dash-contract-item:hover{background:var(--surface)}.dash-contract-item.active{background:var(--surface);border-left:3px solid var(--accent)}.dash-contract-item-title{color:var(--text);font-size:14px;font-weight:600}.dash-contract-item-meta{align-items:center;gap:.5rem;font-size:12px;display:flex}.dashboard-theme{--dashboard-blue:#314e7a;--dashboard-blue-dark:#22365a;--dashboard-bg:#e9edf3}.dashboard-theme .dashboard-header{background:linear-gradient(90deg,var(--dashboard-blue),var(--dashboard-blue-dark));color:#f8fafc;border-radius:16px;margin-bottom:18px;padding:18px 22px}.dashboard-theme .dashboard-header .muted{color:#f8fafcbf}.dashboard-title-row{align-items:center;gap:10px;display:flex}.dashboard-title-select{color:#f8fafc;background:#0f172a40;border-color:#ffffff59;min-width:220px}.dashboard-title-select option{color:#0b0f19}.dashboard-theme .dashboard-topbar{justify-content:space-between;align-items:center;gap:16px;margin-top:-20px;margin-bottom:18px;display:flex}.dashboard-contract-select{gap:6px;min-width:220px;display:grid}.dashboard-kpis{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-top:-30px;margin-bottom:18px;display:grid}.dashboard-kpis .muted{color:var(--muted)}.text-white{color:#fff}.kpi-card{border-radius:10px;gap:6px;padding:16px;display:grid}.kpi-card .muted{color:var(--muted);font-size:12px}.kpi-card strong{color:var(--text);font-size:28px;font-weight:700}.kpi-progress{align-items:center;gap:10px;display:flex}.dashboard-main-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;display:grid}.dashboard-contract-row{margin-top:-30px;margin-bottom:10px}.dashboard-contracts-card{padding:1px 7px 5px;font-size:75%}.dashboard-contracts-card .row-title{font-size:12px}.dashboard-contracts-card .row-subtitle{font-size:11px}.dashboard-bottom-grid{grid-template-columns:minmax(0,1.9fr) minmax(0,.68fr);gap:16px;margin-top:-20px;display:grid}.dashboard-contracts-card .card-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.dashboard-contracts-card table{table-layout:fixed;width:100%}.dashboard-contracts-card th:first-child,.dashboard-contracts-card td:first-child{width:40%}.dashboard-contracts-card th:nth-child(2),.dashboard-contracts-card td:nth-child(2){width:25%}.dashboard-contracts-card th:nth-child(3),.dashboard-contracts-card td:nth-child(3){width:20%}.dashboard-contracts-card th:nth-child(4),.dashboard-contracts-card td:nth-child(4){width:15%}.dashboard-contracts-card th,.dashboard-contracts-card td{padding:4px 5px}.dashboard-side-panel{gap:16px;display:grid}.dashboard-timeline-card .card-header,.dashboard-milestones-card .card-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.dashboard-timeline-card,.dashboard-milestones-card{font-size:75%}.milestone-list{gap:10px;display:grid}.milestone-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding-bottom:8px;font-size:10px;display:flex}.text-danger{color:#dc2626}.text-warning{color:#f59e0b}.contract-summary-card{margin-bottom:16px}.contract-summary-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;display:grid}.contract-summary-actions{align-items:center;gap:10px;display:flex}.contract-update-modal{width:min(100vw,1400px);max-width:min(100vw,1400px);max-height:80vh;margin:0 12px;overflow-y:auto}.modal-card.contract-update-modal{width:min(100vw,1400px);max-width:min(100vw,1400px)}.contract-update-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.contract-milestone-editor{border-top:1px solid #94a3b833;margin-top:8px;padding-top:16px}.contract-milestone-form{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));align-items:end;gap:10px;margin-bottom:12px;display:grid}.contract-milestone-form .form-input{padding:8px 12px;font-size:14px}.contract-milestone-field{flex-direction:column;gap:6px;display:flex}.contract-milestone-field label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:11px}.contract-milestone-form .button{align-self:center;width:100%;height:36px}.contract-milestone-table table{border-collapse:collapse;width:100%}.contract-milestone-table th,.contract-milestone-table td{white-space:nowrap;padding:8px 10px;font-size:12px}.contract-milestone-table{max-height:280px;overflow:auto}.contract-milestone-upcoming{margin-top:16px}.contract-milestone-upcoming h4{margin-bottom:8px}.contract-milestone-table .ro-table{table-layout:auto;border-spacing:0}.contract-milestone-table .ro-table thead th{letter-spacing:.08em;white-space:nowrap;padding:6px 10px;font-size:12px}.contract-milestone-table .ro-table tbody tr{box-shadow:none;background:0 0}.contract-milestone-table .ro-table tbody td{border-bottom:1px solid var(--border);color:#fff;padding:8px 10px;font-size:12px}[data-theme=light] .contract-milestone-table .ro-table tbody td{color:#fff}.contract-milestone-table .ro-table tbody tr td:first-child,.contract-milestone-table .ro-table tbody tr td:last-child{border-radius:0}.contract-timeline-card{margin-bottom:16px}.contract-timeline-gantt{gap:12px;padding:1.25rem 1.5rem;display:grid}.gantt-header{color:var(--muted);grid-template-columns:180px 1fr;gap:12px;font-weight:600;display:grid}.gantt-label-spacer{padding-left:6px}.gantt-months{text-align:center;grid-auto-columns:1fr;grid-auto-flow:column;display:grid}.gantt-body{gap:12px;display:grid}.gantt-row{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:180px 1fr;align-items:center;gap:12px;padding:0;display:grid}.gantt-row.active .gantt-label{font-weight:600}.gantt-label{color:var(--text);padding-left:6px}.gantt-track{background:0 0;border:0;border-radius:999px;height:20px;position:relative;overflow:visible}.gantt-grid{background:0 0;position:absolute;inset:0}.gantt-marker{background:var(--accent);border:2px solid var(--panel);z-index:2;border-radius:999px;width:8px;height:8px;margin-top:-4px;margin-left:-4px;position:absolute;top:50%}.gantt-bar{background:#10b98159;border-radius:999px;height:12px;position:absolute;top:4px}.gantt-bar.risk{background:#f59e0b59}.gantt-bar.late{background:#ef444459}.gantt-bar .gantt-progress{border-radius:inherit;background:#10b981d9;height:100%}.gantt-bar.risk .gantt-progress{background:#f59e0bd9}.gantt-bar.late .gantt-progress{background:#ef4444d9}.contract-timeline-detail{border-top:1px solid var(--border);padding:.75rem 1.5rem 1.25rem}.contract-timeline-detail-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:12px}.contract-timeline-detail-table th,.contract-timeline-detail-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 8px}.contract-timeline-detail-table th{color:var(--muted);font-weight:600}.phase-status-line{background:0 0;border-radius:999px;width:100%;height:4px;margin-top:6px}.phase-indicator{border-radius:999px;width:100%;height:4px;margin-top:6px}.phase-indicator-good{background:#39b36e}.phase-indicator-bad{background:#d9534f}.phase-indicator-neutral{background:#fff;border:1px solid #d1d9ea}[data-theme=dark] .phase-indicator-neutral{background:#f1f5ff;border-color:#51607c}[data-theme=dark] .phase-tab{color:#e7eefc;background:#3d4a67;border-color:#3d4a67}[data-theme=dark] .phase-tab-status{color:#eef2ffb3}.stage-summary{justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.stage-summary strong{font-size:18px}.stage-deadline{margin:0;font-size:12px}.stage-editor{border-radius:16px;flex-direction:column;gap:12px;margin-top:12px;padding:20px;display:flex}.breadcrumb{text-transform:uppercase;letter-spacing:.2em;color:var(--muted);margin-bottom:4px;font-size:12px}.progress-wrap{width:min(460px,100%);margin-top:16px}.progress-inline{color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:12px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:600;display:inline-flex}.progress-pill{text-align:center;border-radius:999px;justify-content:center;align-items:center;min-width:64px;height:22px;padding:0 10px;font-weight:700;line-height:22px;display:inline-flex}.progress-pill-0{color:#fff;background:#d9534f}.progress-pill-25{color:#1a1408;background:#f0ad4e}.progress-pill-50{color:#1f1705;background:#f7d154}.progress-pill-75{color:#0b2a12;background:#a7e3b0}.progress-pill-100{color:#fff;background:#2e8b57}.progress-label{justify-content:space-between;align-items:center;margin-bottom:4px;font-size:12px;display:flex}.progress-bar{background:#1a2132;border-radius:999px;width:100%;height:12px;overflow:hidden}[data-theme=light] .progress-bar{background:#e3e9f4}.progress-fill{border-radius:inherit;background:linear-gradient(135deg,var(--accent),var(--accent-2));height:100%}.header-actions{flex-wrap:wrap;gap:10px;display:flex}.tabs{background:#11152a;border-radius:12px;gap:8px;padding:8px;display:flex}.tab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:10px 16px;font-weight:600}.tab.active{color:var(--text);background:#1f2a44}[data-theme=light] .tabs{background:#eaf0fb}[data-theme=light] .tab.active{color:var(--text);border:1px solid var(--border);background:#fff}.tab-panel{background:var(--surface);border-radius:16px;padding:24px}.tab-section{flex-direction:column;gap:18px;display:flex}.table-controls{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.search-input{border:1px solid var(--border);background:var(--panel);min-width:250px;color:var(--text);border-radius:10px;flex:1;padding:10px 12px}.chip-row{gap:8px;display:flex}.chip{background:#1f2a44;border-radius:999px;padding:6px 10px;font-size:12px}.table-wrapper{border:1px solid #1f2a44;border-radius:14px;width:100%;overflow-x:auto}.component-name{font-weight:600}.expansion-row{background:#101428}.expansion-panel{background:#161b2c;border-radius:8px;justify-content:space-between;align-items:center;padding:12px;display:flex}.expansion-actions{align-items:center;gap:8px;display:flex}.image-grid-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.drag-drop{text-align:center;border:1px dashed #1f2a44;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:80px;padding:12px;display:flex}.image-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (max-width:980px){.image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.image-grid{grid-template-columns:1fr}}.image-card{background:#101428;border:1px solid #1f2a44;border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.image-thumb{object-fit:contain;cursor:pointer;background:#0b0f1b;width:100%;height:180px}.image-info{color:var(--text);justify-content:space-between;align-items:center;padding:6px 10px;font-size:12px;display:flex}.status-chip{border-radius:999px;padding:4px 8px;font-size:10px;font-weight:600}.primary-chip{color:#0b0e13;background:#facc15}.documents-layout{grid-template-columns:minmax(220px,320px) 1fr;gap:18px;display:grid}.document-list{background:#0f141e;border:1px solid #1f2a44;border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex}.document-empty{text-align:center;color:var(--muted);border:1px dashed #1f2a44;border-radius:10px;padding:18px}.document-empty p:first-child{color:var(--text);font-weight:600}.document-row{color:var(--text);background:#121628;border:1px solid #0000;border-radius:10px;justify-content:space-between;align-items:center;padding:10px;display:flex}.document-actions{align-items:center;gap:10px;display:inline-flex}.document-row.active{border-color:var(--accent-2)}.product-docs-layout{grid-template-columns:minmax(260px,360px) 1fr;align-items:stretch;gap:18px;height:100%;min-height:420px;display:grid}.product-docs-body,.component-docs-body{flex:1;padding:16px;overflow-y:auto}.product-docs-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;align-self:stretch;gap:16px;height:100%;padding:16px;display:flex}.product-docs-sidebar{flex-direction:column;gap:12px;min-height:60vh;display:flex}.product-docs-list{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:10px;padding:12px;display:flex}.product-docs-list-header{color:#6b7280;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.product-docs-list-scroll{flex-direction:column;gap:10px;max-height:260px;padding-right:4px;display:flex;overflow-y:auto}.product-docs-row{text-align:left;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px;display:flex}.product-docs-row.active{border-color:var(--accent-2);box-shadow:0 0 0 1px #60a5fa66}.product-docs-title{color:#111827;margin:0;font-size:13px;font-weight:600}.product-docs-meta{color:#6b7280;font-size:11px}.product-docs-cta{color:var(--accent-2);font-size:11px;font-weight:600}.product-docs-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.product-docs-meta{background:#fff;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.product-docs-viewer{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;justify-content:center;align-items:center;height:100%;min-height:60vh;display:flex;overflow:hidden}.product-docs-iframe{border:none;width:100%;height:100%;min-height:60vh}.product-docs-empty{text-align:center;padding:24px}@media (max-width:900px){.product-docs-layout{grid-template-columns:1fr}.product-docs-panel{order:1}.product-docs-viewer{order:0}}.document-row.active{border-color:var(--accent);background:#1f2a44}.document-viewer{border:1px solid #1f2a44;border-radius:12px;min-height:320px;overflow:hidden}.document-viewer iframe{border:none;width:100%;height:100%}.document-viewer .muted{margin-top:40px}.activity-feed,.audit-table{flex-direction:column;gap:12px;display:flex}.activity-item{background:#101428;border:1px solid #1f2a44;border-radius:10px;justify-content:space-between;align-items:center;padding:12px;display:flex}.modal-backdrop{z-index:1000;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{border-radius:16px;width:min(520px,90vw);padding:24px;position:relative}.compact-modal{width:min(480px,90vw);padding:18px;font-size:13px}.compact-modal h2{margin-bottom:8px;font-size:16px}.compact-modal label{font-size:12px}.compact-modal .form-input{margin-bottom:10px;padding:8px 10px;font-size:12px}.product-docs-modal{flex-direction:column;width:min(1100px,94vw);max-height:90vh;padding:0;display:flex}.product-docs-headerbar{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:18px 24px 14px;display:flex}.product-docs-header-actions{align-items:center;gap:8px;display:flex}.product-docs-header-actions .button{height:32px;padding:0 10px;font-size:12px}.product-docs-close{color:#dc2626;cursor:pointer;background:#fee2e2;border:1px solid #fecaca;border-radius:6px;place-items:center;width:32px;height:32px;font-size:16px;display:grid}.product-docs-close:hover{background:#fecaca}.component-report-modal,.purchased-report-modal{flex-direction:column;gap:12px;width:min(1100px,94vw);max-height:85vh;padding:18px 20px;display:flex}.component-report-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.component-report-header h2{margin:0;font-size:16px}.component-report-actions{align-items:center;gap:8px;display:flex}.component-report-actions .button{padding:6px 10px;font-size:11px}.component-report-table-wrap{border:1px solid var(--border);border-radius:12px;overflow:auto}.component-report-table{border-collapse:collapse;width:100%;font-size:11px}.component-report-table th,.component-report-table td{text-align:left;vertical-align:top;border-bottom:1px solid #ffffff14;padding:8px 10px}[data-theme=light] .component-report-table th,[data-theme=light] .component-report-table td{border-bottom:1px solid #0f172a14}.component-report-table th{text-transform:uppercase;letter-spacing:.08em;color:#fff;white-space:nowrap;background:#2f6fde;font-size:10px;position:sticky;top:0}.component-report-table tbody tr:last-child td{border-bottom:none}.component-docs-modal{flex-direction:column;width:min(900px,92vw);max-height:85vh;padding:0;display:flex}.component-docs-layout{grid-template-columns:1fr 320px;gap:16px;min-height:60vh;display:grid}.component-docs-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;min-height:60vh;overflow:hidden}.component-docs-iframe{border:none;width:100%;height:100%;min-height:60vh}.component-docs-list{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:12px;min-height:60vh;padding:12px;display:flex}.component-docs-list-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.component-docs-list-scroll{flex-direction:column;gap:10px;padding-right:4px;display:flex;overflow-y:auto}.component-docs-row{text-align:left;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px;display:flex}.component-docs-row.active{border-color:var(--accent-2);box-shadow:0 0 0 1px #60a5fa66}.component-docs-title{color:#111827;margin:0;font-size:13px;font-weight:600}.component-docs-meta{color:#6b7280;font-size:11px}.component-docs-cta{color:var(--accent-2);font-size:11px;font-weight:600}.component-docs-actions{justify-content:flex-end;margin-top:auto;display:flex}.component-docs-empty{text-align:center;color:#6b7280;justify-content:center;align-items:center;padding:16px;display:flex}@media (max-width:960px){.component-docs-layout{grid-template-columns:1fr}.component-docs-preview{order:0}.component-docs-list{order:1;min-height:auto}}.pdf-modal{flex-direction:column;width:min(1100px,94vw);max-height:90vh;padding:0;display:flex}.pdf-modal-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.pdf-modal-title{color:#111827;margin:0;font-size:16px;font-weight:600}.pdf-modal-actions{align-items:center;gap:8px;display:flex}.pdf-modal-close{cursor:pointer;color:#6b7280;background:0 0;border:none;font-size:18px}.pdf-modal-body{background:#f8fafc;flex:1;position:relative}.pdf-modal-iframe{border:none;width:100%;height:100%;min-height:70vh}.pdf-modal-overlay,.pdf-modal-empty{color:#6b7280;justify-content:center;align-items:center;font-size:14px;display:flex;position:absolute;inset:0}.form-input{width:100%;color:var(--text);background:#0f141e;border:1px solid #1f2a44;border-radius:10px;margin-top:4px;margin-bottom:12px;padding:10px 12px}[data-theme=light] .form-input{border-color:var(--border);color:var(--text);background:#fff}.modal-actions{justify-content:flex-end;gap:10px;margin-top:12px;display:flex}.message-card{color:#8fd4b1;background:#6ee7b71f;border:1px solid #6ee7b799}.button.secondary{color:var(--text);background:#1f2a44}.button.tiny-button.secondary{color:var(--text);background:#131a2b}.text-link{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px}.documents-layout .button{align-self:flex-start}.dashboard-shell{flex-direction:column;gap:20px;max-width:1350px;margin:0 auto;padding:32px 20px 60px;display:flex}.dashboard-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.dashboard-topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.topbar-actions{gap:10px;display:flex}.kpi-strip{flex-wrap:wrap;gap:12px;display:flex}.kpi-card{background:#0d111f;border:1px solid #1f2a44;border-radius:14px;flex-direction:column;flex:1;gap:8px;min-width:180px;padding:16px;display:flex}.table-panel{padding:18px}.table-panel table{border-collapse:collapse;width:100%}.table-panel th,.table-panel td{text-align:left;border-bottom:1px solid #1f2a44;padding:12px 10px}.table-panel thead th{z-index:1;background:#111429;position:sticky;top:0}.product-image-cell{width:80px}.product-image-cell img{object-fit:contain;border:1px solid #1f2a44;border-radius:12px;width:64px;height:64px;display:block}.component-thumb-header{width:56px}.component-thumb-cell{width:56px;padding:6px 4px}.component-thumb,.component-thumb-placeholder{object-fit:contain;background:#11152a;border:1px solid #1f2a44;border-radius:12px;width:44px;height:44px;margin:0 auto;display:block}.component-thumb-placeholder{color:var(--muted);justify-content:center;align-items:center;font-size:11px;display:flex}.component-doc-button{color:var(--accent-2);cursor:pointer;background:#0e1424;border:1px solid #1f2a44;border-radius:10px;justify-content:center;align-items:center;gap:4px;padding:4px 10px;font-size:12px;transition:border-color .2s;display:inline-flex}.component-doc-button:hover,.component-doc-button:focus-visible{border-color:var(--accent)}.component-attachment-upload{color:#0c1526;background:#7fb9ff;border-color:#7fb9ff;transform:translateY(-5px)}.component-attachment-upload:hover,.component-attachment-upload:focus-visible{background:#6aaeff;border-color:#6aaeff}.placeholder-image{background:#ffffff0d;border:1px dashed #1f2a44;border-radius:12px;width:64px;height:64px}.image-card{background:#0c101c;border:1px solid #1f2337;border-radius:16px;flex-direction:column;gap:8px;padding:12px;display:flex}.image-grid-fixed{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (max-width:980px){.image-grid-fixed{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.image-grid-fixed{grid-template-columns:1fr}}.image-wrapper{background:#0b0f1b;border-radius:12px;position:relative;overflow:hidden}.image-thumb{object-fit:contain;background:#0b0f1b;width:100%;height:180px;transition:transform .2s}.image-thumb-placeholder{color:var(--muted);justify-content:center;align-items:center;font-size:12px;display:flex}.image-wrapper:hover .image-thumb{transform:scale(1.03)}.image-primary-badge{color:#0b0f1b;background:#22c55e;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:700;position:absolute;top:8px;left:8px}.image-caption{color:var(--muted);min-height:1.5em;font-size:12px}.upload-dialog{z-index:1200;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.upload-dialog::backdrop{background:#00000080}.upload-dialog-panel{background:#fff;border-radius:16px;flex-direction:column;width:min(560px,92vw);max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 40px #00000040}.upload-dropzone{flex-direction:column;justify-content:center;gap:.5rem;min-height:140px;display:flex}.upload-dropzone-icon{color:#0f172a;background:#60a5fa26;border-radius:50%;place-items:center;width:42px;height:42px;margin:0 auto;display:grid}.upload-dialog-header{text-align:center;border-bottom:1px solid #e5e7eb;flex-direction:column;align-items:center;gap:8px;width:100%;padding:20px 32px 16px;display:flex}.upload-lead-text,.upload-support-text{text-align:center;max-width:520px;margin:0 auto}.upload-dialog-actions{background:#f9fafb;border-top:1px solid #e5e7eb;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;padding:24px 32px;display:flex}.upload-dialog-actions button{width:200px}.upload-file-button{color:#111827;background:#f9fafb;border:1px solid #d1d5db;border-radius:999px;padding:8px 14px;font-size:12px;font-weight:600}.upload-file-input{display:none}.upload-file-button:hover{background:#f3f4f6}.upload-file-name{text-align:center}.upload-extra-fields{margin-top:12px}.upload-file-meta{text-align:center}.upload-dialog-body{text-align:center;flex-direction:column;align-items:center;gap:20px;max-height:70vh;padding:32px;display:flex;overflow-y:auto}.upload-dialog-body>*{width:min(460px,100%)}.upload-dialog-body label,.upload-dialog-body input,.upload-dialog-body textarea,.upload-dialog-body button{width:100%}.upload-preview img{width:100%;max-width:240px;margin:0 auto;display:block}.table-row{cursor:pointer;transition:background .2s}.table-row:hover{background:#6ee7b71a}[data-theme=light] .table-row:hover{background:#2563eb14}.progress-cell{align-items:center;gap:6px;display:flex}.progress-bar.small{background:#101428;border-radius:999px;flex:1;height:6px;overflow:hidden}.table-panel .progress-fill{border-radius:inherit;background:linear-gradient(135deg,var(--accent),var(--accent-2));height:100%}.status-chip{color:var(--text);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.status-chip.success{background:var(--status-success);color:#fff}.status-chip.warning{color:#0b0e13;background:#facc15}.status-chip.active{background:var(--status-active);color:#fff}.status-chip.danger{background:var(--status-critical);color:#fff}.status-chip.muted-chip{background:var(--status-muted);color:#fff}.welcome-card{text-align:center;padding:60px}.import-shell{flex-direction:column;gap:24px;display:flex}.stepper{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.step{color:var(--text);cursor:pointer;background:linear-gradient(135deg,#0c101e,#12192f);border:1px solid #1f2a44;border-radius:12px;align-items:center;gap:10px;padding:12px;display:flex}.step.complete{border-color:#34d399}.step.active{border-color:var(--accent);box-shadow:0 0 0 2px #60a5fa4d}.step-index{border:1px solid #1f2a44;border-radius:50%;place-items:center;width:32px;height:32px;font-size:14px;display:grid}.step-copy{text-align:left}.import-body{grid-template-columns:minmax(360px,1fr) minmax(240px,1fr);align-items:start;gap:20px;display:grid}.import-form{padding:24px}.import-form label{flex-direction:column;gap:6px;margin-bottom:14px;font-weight:600;display:flex}.import-form input{color:var(--text);background:#0c101c;border:1px solid #1f2a44;border-radius:10px;padding:10px}.form-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.import-help{flex-direction:column;gap:12px;min-height:320px;padding:24px;display:flex}.template-actions{flex-wrap:wrap;gap:8px;display:flex}.help-list{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.review-note{background:#0c101c;border:1px solid #1f2a44;border-radius:10px;padding:12px}.auth-shell{place-items:center;min-height:calc(100vh - 200px);padding:40px 20px;display:grid}.auth-card{background:var(--panel);border:1px solid #1f2a44;border-radius:20px;flex-direction:column;gap:18px;width:420px;padding:32px;display:flex;box-shadow:0 20px 40px #00000040}.auth-brand{align-items:center;gap:16px;display:flex}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-form label{flex-direction:column;gap:6px;font-weight:600;display:flex}.auth-form input:not([type=checkbox]){border:1px solid var(--border);background:var(--panel);color:var(--text);box-sizing:border-box;border-radius:10px;width:100%;padding:10px 12px}.auth-form input:not([type=checkbox]):focus{border-color:var(--accent,#3b82f6);background:var(--panel);outline:none}.auth-form input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--panel)inset;-webkit-text-fill-color:var(--text);transition:background-color 9999s ease-in-out}.auth-form input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--panel)inset;-webkit-text-fill-color:var(--text);transition:background-color 9999s ease-in-out}.form-row{justify-content:space-between;align-items:center;font-size:13px;display:flex}.checkbox-row{align-items:center;gap:6px;font-weight:400;display:flex}.divider{text-align:center;color:var(--muted);border-top:1px solid #1f2a44;padding-top:12px;font-size:12px}.auth-footer{text-align:center;font-size:13px}.button.inline-link{border-radius:6px;padding:6px 12px;font-size:13px}.button.tiny-button{padding:6px 10px;font-size:12px}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.muted{color:var(--muted)}.badge{color:var(--muted);background:#1f2a44;border-radius:999px;padding:4px 10px;font-size:12px;display:inline-block}.button{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#0b0e13;border-radius:12px;padding:10px 14px;font-weight:600;display:inline-block}[data-theme=light] .button{color:#0b0e13}[data-theme=light] .button.secondary{color:#1b2333;border:1px solid var(--border);background:#eef3fb}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 8px}.ro-table{border-collapse:separate;border-spacing:0 4px;table-layout:fixed;width:100%}.ro-table th:first-child,.ro-table td:first-child{width:32%}.ro-table th:nth-child(2),.ro-table td:nth-child(2){width:10%}.ro-table thead th{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);text-align:left;padding:8px 12px;font-size:11px}.ro-table tbody tr{background:linear-gradient(135deg,#0f1422e6,#121a30e6);border-radius:16px;box-shadow:0 16px 32px #080c1459}.ro-table tbody td{border-bottom:none;padding:16px 12px}[data-theme=light] .ro-table thead th{color:var(--muted);border-bottom:2px solid var(--border);background:#f4f7fc}[data-theme=light] .ro-table tbody tr{background:var(--panel);border-bottom:1px solid var(--border);box-shadow:none;border-radius:0}[data-theme=light] .ro-table tbody tr:hover{background:#f0f5ff}.ro-table tbody tr td:first-child{border-top-left-radius:16px;border-bottom-left-radius:16px}.ro-table tbody tr td:last-child{border-top-right-radius:16px;border-bottom-right-radius:16px}[data-theme=light] .ro-table tbody tr td:first-child,[data-theme=light] .ro-table tbody tr td:last-child{border-radius:0}.ro-table tbody tr:hover{transform:translateY(-1px);box-shadow:0 18px 40px #080e1873}[data-theme=light] .ro-table tbody tr:hover{box-shadow:none;transform:none}.mono{color:var(--muted);font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.row-subtitle{color:var(--muted);font-size:12px}.row-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}[data-theme=light] .row-title,[data-theme=light] .ro-products-table .row-title{color:var(--text)}[data-theme=light] .ro-table .mono,[data-theme=light] .row-subtitle{color:var(--muted)}[data-theme=light] .ro-table tbody td:nth-child(5){color:var(--text)}[data-theme=light] .progress-cell .muted{color:var(--muted)}[data-theme=light] .ro-table tbody td:nth-child(3){color:var(--text)}.dashboard-shell:before{content:"";z-index:-1;background:radial-gradient(circle at 10% 10%,#6ee7b72e,#0000 45%),radial-gradient(circle at 80% 20%,#60a5fa2e,#0000 45%),radial-gradient(circle at 50% 80%,#facc151f,#0000 45%);position:fixed;inset:0}.table-card{box-shadow:none;background:0 0;border:none}.ro-detail-card{gap:20px;display:grid}.ro-detail-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.ro-detail-editor{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end;gap:16px;display:grid}.ro-detail-actions{justify-content:flex-end;display:flex}.ro-products-table{table-layout:fixed;width:100%}.ro-products-table th{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);vertical-align:bottom;padding-bottom:8px;font-size:11px}.ro-products-table th,.ro-products-table td{text-align:left;vertical-align:middle}.ro-products-table th:first-child{width:10%}.ro-products-table th:nth-child(2){width:32%}.ro-products-table th:nth-child(3){width:22%}.ro-products-table th:nth-child(4){width:20%}.ro-products-table th:nth-child(5){width:16%}.product-cell{align-items:center;gap:12px;display:flex}.product-thumb{background:#111828;border:1px solid #1f2a44;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:112px;height:112px;display:flex;position:relative;overflow:hidden}.product-thumb img{object-fit:cover;width:100%;height:100%}.product-tracking{flex-direction:column;gap:20px;display:flex}.tracking-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.tracking-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.tracking-section{background:#0f1526;border:1px solid #1f2a44;border-radius:12px;padding:16px}.tracking-section h3{margin:0 0 12px;font-size:16px}.tracking-section label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:11px}.tracking-chip-row{align-items:center;min-height:24px;margin:-4px 0 12px;display:flex}.product-progress-row{align-items:center;gap:20px;display:flex}.product-progress-block{flex:1;min-width:0}.product-hero-image{background:#111828;border:1px solid #1f2a44;border-radius:16px;flex-shrink:0;width:325px;height:250px;overflow:hidden}.header-actions{align-items:flex-end}.product-header-actions{flex-direction:column;align-items:flex-end}.header-action-row{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.header-image-slot{justify-content:flex-end;margin-top:0;display:flex}.header-image-group{align-items:center;gap:16px;display:flex}.product-hero-image img{object-fit:cover;width:100%;height:100%}.product-hero-placeholder{background:linear-gradient(135deg,#60a5fa4d,#6ee7b74d);width:100%;height:100%}.phase-board{margin-top:24px}.phase-board-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.phase-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.phase-card{border:1px solid var(--border);color:var(--text);cursor:pointer;background:linear-gradient(135deg,#18243de6,#111827f2);border-radius:12px;justify-content:space-between;align-items:center;padding:14px;transition:transform .2s,box-shadow .2s;display:flex}[data-theme=light] .phase-card{background:linear-gradient(135deg,#f5f8ff,#eef3fb)}.phase-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px #080e1840}.phase-label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 6px;font-size:12px}.phase-status{font-weight:700}.phase-cta{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-size:12px}.phase-footer{margin-top:12px}.product-hero-wrapper{grid-template-columns:minmax(556px,1.87fr) 400px;gap:16px;margin-top:10px;display:grid}.product-view-grid,.component-detail-grid{grid-template-columns:minmax(240px,1fr);gap:16px;display:grid}.product-view-grid{gap:6px;min-width:0}.component-detail-grid{justify-self:end;width:400px;min-width:400px;max-width:400px}.po-select-card{margin-top:16px}.po-select-list{gap:10px;margin-top:12px;display:grid}.po-select-item{text-align:left;color:inherit;background:#0f172a0a;border:1px solid #94a3b833;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}[data-theme=dark] .po-select-item{background:#0f172a59;border-color:#94a3b84d}.po-select-item:hover{border-color:#3b82f699}.hero-summary,.hero-image,.hero-component{padding:18px}.compact-hero-image{min-height:420px;max-height:420px;padding-bottom:20px;overflow:hidden}.component-detail-card{flex-direction:column;padding:0;display:flex;overflow:hidden}.component-detail-header{color:#f7f9ff;background:linear-gradient(90deg,#6e86b0,#5a77a8);padding:10px 14px;font-size:13px;font-weight:600}[data-theme=light] .component-detail-card{background:#fff}[data-theme=dark] .component-detail-card{background:#121a2b}.component-detail-card>:not(.component-detail-header){padding-left:14px;padding-right:14px}.purchased-components-card{flex-direction:column;gap:12px;display:flex}.purchased-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.purchased-header-actions{align-items:center;gap:8px;display:flex}.purchased-add-button{height:28px;padding:6px 12px;font-size:12px}.purchased-header h3{margin:0;font-size:16px}.purchased-header p{margin:4px 0 0;font-size:12px}.purchased-table-scroll{border:1px solid var(--border);border-radius:12px;max-height:260px;overflow:auto}.purchased-table{border-collapse:collapse;width:100%;font-size:11px}.purchased-table th,.purchased-table td{text-align:left;border-bottom:1px solid #ffffff14;padding:10px 12px}[data-theme=light] .purchased-table th,[data-theme=light] .purchased-table td{border-bottom:1px solid #0f172a14}.purchased-table th{text-transform:uppercase;letter-spacing:.08em;color:#fff;white-space:nowrap;background:#2f6fde;font-size:10px;position:sticky;top:0}[data-theme=light] .purchased-table th{background:#2f6fde}.purchased-table tbody tr:last-child td{border-bottom:none}.purchased-component-name{font-weight:600}.purchased-status-pill{color:#0b0e13;border-radius:999px;justify-content:center;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.purchased-actions{flex-wrap:wrap;gap:8px;display:flex}.purchased-update-button{padding:6px 10px;font-size:11px}.purchased-delete-button{color:#fca5a5;background:#f8717129;border:1px solid #f8717180;padding:6px 10px;font-size:11px}.purchased-error{margin:0}.purchased-empty{margin:4px 0 0}.component-title{margin:10px 0 6px;font-size:14px;font-weight:700}.component-detail-divider{background:#b4bed259;height:1px;margin:6px 0}.component-detail-rows{gap:4px;font-size:11px;display:grid}.component-detail-row{align-items:center;gap:6px;display:flex}.component-detail-row span{color:var(--muted);min-width:92px}.component-detail-row strong{color:var(--text)}.product-meta{gap:10px;margin-top:8px;display:grid}.product-meta-row{align-items:baseline;gap:8px;font-size:13px;display:flex}.product-meta-label{color:var(--muted);flex-shrink:0;min-width:130px;font-weight:600}.product-meta-value{color:var(--text);white-space:nowrap;font-weight:600}.hero-summary h3,.hero-image h3,.hero-component h3{margin:0 0 12px}.component-image{justify-content:center;align-items:center;gap:10px;margin:12px 0;display:flex}.component-image-actions{flex-direction:column;justify-content:center;align-items:center;gap:8px;min-width:78px;display:flex}.component-image-actions .component-doc-button{padding:6px 10px;font-size:11px}.component-image-actions .component-doc-delete-button{color:#fff;background:#d9534f;border:1px solid #d9534f}.component-image-actions .component-doc-delete-button:disabled{opacity:.6;cursor:not-allowed}.component-image-actions-row{justify-content:center;gap:8px;margin-top:8px;padding-left:14px;padding-right:14px;display:flex}.component-image-delete{color:#fff;background:#d9534f;border:1px solid #d9534f;transform:translateY(-5px)}.component-selector-row{grid-template-columns:minmax(170px,1.2fr) minmax(140px,1fr) auto;align-items:center;gap:8px;margin-bottom:12px;display:grid}.component-add-button{white-space:nowrap;padding:8px 10px;font-size:11px}.updated-by-row{align-items:center;gap:8px;display:flex}.updated-by-row .form-input{margin-bottom:0}.component-image-frame{border:1px solid var(--border);background:#0f1626;border-radius:12px;flex:0 0 250px;place-items:center;width:250px;height:250px;margin-top:-20px;display:grid;overflow:hidden}[data-theme=light] .component-image-frame{background:#eef3fb}.component-image-frame img{object-fit:contain;object-position:center;width:250px;height:250px;display:block}.component-detail-section{margin-top:12px}.component-activity-section{flex-direction:column;height:100px;display:flex}.component-activity-section .activity-scroll{flex:1;max-height:none}.component-attachments-section{flex-direction:column;height:120px;display:flex}.component-attachments-section .component-attachments-row{flex:1;min-height:0}.component-attachments-section .component-attachments-list.is-scroll{height:100%;max-height:none}.component-detail-section h4{color:var(--text);margin:0 0 6px;font-size:12px}.component-activity-list,.component-attachments-list{gap:5px;margin:0;padding:0;font-size:11px;list-style:none;display:grid}.activity-scroll{max-height:64px;padding-right:4px;overflow-y:auto}.component-activity-list li:before{content:"▸";color:#6b84b2;margin-right:6px}.activity-status{font-weight:600}.component-attachments-list li{align-items:center;gap:8px;min-width:0;display:flex}.component-attachments-list li:before{content:"📎";font-size:12px}.component-attachments-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.component-doc-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.component-doc-actions{align-items:center;gap:6px;display:inline-flex}.component-doc-link{color:var(--accent);cursor:pointer;background:0 0;border:none;font-size:11px}.component-doc-delete{color:#d9534f;cursor:pointer;background:0 0;border:none;font-size:14px;line-height:1}.component-doc-button{padding:4px 8px;font-size:11px}.component-attachments-row{grid-template-columns:1fr;align-items:start;gap:10px;min-width:0;display:grid}.component-attachments-list.is-scroll{max-height:90px;padding-right:4px;overflow-y:auto}.component-action-row{justify-content:center;gap:8px;margin-top:auto;margin-bottom:14px;padding-top:30px;padding-bottom:0;padding-left:14px;display:flex}.component-action-button{padding:6px 10px;font-size:11px}.component-attachments a{color:var(--accent)}.hero-meta{gap:12px;display:grid}.hero-progress{margin-top:16px}.hero-risk{align-items:center;gap:10px;margin-top:14px;display:flex}.hero-image-header{justify-content:space-between;align-items:center;display:flex}.hero-image-header-actions{align-items:center;gap:8px;display:inline-flex}.hero-image-header-actions .button{padding:4px 8px;font-size:11px}.hero-primary-label{text-transform:uppercase;letter-spacing:.06em;color:#4caf50;background:#4caf5033;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:600}.hero-image-body{justify-content:center;align-items:center;gap:12px;margin-top:12px;display:flex}.hero-image-header-actions .component-doc-button{padding:6px 10px;font-size:11px}.hero-image-header-actions .hero-image-delete{color:#fff;background:#d9534f;border:1px solid #d9534f}.hero-image-header-actions .hero-image-delete:disabled{opacity:.6;cursor:not-allowed}.hero-image-actions-row{justify-content:center;align-items:center;gap:8px;width:auto;margin-top:10px;margin-left:0;display:flex}.hero-image-actions-row .component-doc-button{padding:6px 10px;font-size:11px}.hero-image-actions-row .hero-image-delete{color:#fff;background:#d9534f;border:1px solid #d9534f}.compact-hero-image .hero-image-body{margin-bottom:0}.hero-image-frame{border:1px solid var(--border);background:#0f1626;border-radius:16px;flex:1;place-items:center;max-width:520px;min-height:323px;margin-top:-10px;margin-left:0;display:grid;overflow:hidden}.hero-image-frame img{object-fit:contain;width:520px;height:323px}.hero-arrow{border:1px solid var(--border);background:var(--panel);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:50%}.hero-arrow:disabled{opacity:.4;cursor:default}.component-title{margin:0 0 12px;font-weight:700}.component-metrics{gap:10px;margin-bottom:16px;display:grid}.phase-modal{max-width:520px}.product-hero-image.secondary{opacity:.95;border-radius:16px;width:325px;height:250px}.product-hero-image.secondary img{object-fit:contain;background:#0f141f}.product-dashboard{flex-direction:column;gap:18px;display:flex}.product-dashboard-title{border-bottom:1px solid var(--border);padding-bottom:12px}.product-dashboard-title h2{margin:0 0 6px;font-size:20px}.product-dashboard-meta{flex-direction:column;gap:4px;display:flex}.product-dashboard-grid{grid-template-columns:minmax(220px,.85fr) minmax(560px,2.4fr) minmax(260px,1fr);align-items:start;gap:18px;display:grid}.summary-panel{gap:14px;display:grid}.summary-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.summary-progress{flex-direction:column;gap:8px;display:flex}.progress-pill{width:fit-content;color:var(--text);background:#3a7bd52e;border-radius:999px;padding:6px 12px;font-weight:700}[data-theme=light] .progress-pill{background:#3a7bd526}.center-panel{flex-direction:column;gap:18px;display:flex}.phase-track{border:1px solid var(--border);border-radius:10px;gap:0;display:flex;overflow:hidden}.phase-segment{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2f5ea8,#2a66b8);border:none;border-right:1px solid #fff3;flex-direction:column;flex:140px;align-items:flex-start;gap:6px;padding:12px 14px;display:flex;position:relative;overflow:hidden}[data-theme=light] .phase-segment{background:linear-gradient(135deg,#2a66b8,#3c7bd6)}.phase-segment:last-child{border-right:none}.phase-segment .phase-name{text-transform:uppercase;letter-spacing:.12em;opacity:.9;font-size:12px}.phase-segment .phase-percent{font-size:16px;font-weight:700}.phase-segment .phase-arrow{background:inherit;clip-path:polygon(0 0,100% 50%,0 100%,10% 50%);width:24px;position:absolute;top:0;bottom:0;right:-12px}.product-image-stage{grid-template-columns:minmax(120px,1fr) minmax(320px,2fr) minmax(120px,1fr);align-items:center;gap:12px;display:grid}.image-frame{align-items:center;gap:12px;display:flex}.hero-image-frame{border:1px solid var(--border);background:#0f1626;border-radius:16px;flex:1;place-items:center;max-width:520px;min-height:323px;display:grid;overflow:hidden}[data-theme=light] .hero-image-frame{background:#eef3fb}.component-panel h3{margin:0 0 12px}.component-panel h4{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:16px 0 8px;font-size:13px}.component-activity,.component-attachments{margin-top:12px}.activity-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:10px;padding:6px 0;font-size:13px;display:flex}.activity-row:last-child{border-bottom:none}.attachment-row{color:var(--accent);padding:6px 0;font-weight:600;display:block}.product-dashboard-bottom{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;display:grid}.activity-log h3,.po-summary h3{margin:0 0 12px}.summary-list{gap:8px;display:grid}.summary-list .summary-row{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:8px 10px}.import-choice-card{justify-content:space-between;align-items:center;gap:12px;display:flex}.import-choice-actions{align-items:center;gap:10px;display:flex}.import-choice-modal{text-align:center;flex-direction:column;gap:16px;width:min(420px,90vw);display:flex}.import-choice-modal .import-choice-actions{justify-content:center}.import-grid-shell{flex-direction:column;gap:16px;display:flex}.import-grid-card{flex-direction:column;gap:10px;display:flex}.import-grid-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.import-grid-header h3{margin:0;font-size:14px}.import-grid-actions{align-items:center;gap:8px;display:flex}.import-grid-actions .add-row-button{color:#eef2ff;background:#2563eb;border-color:#2563eb}.import-grid-actions .download-button{color:#0b1b12;background:#16a34a;border-color:#16a34a}.import-grid-table .remove-row-button{color:#fff1f2;background:#dc2626;border-color:#dc2626}.import-grid-table-wrap{border:1px solid var(--border);border-radius:12px;max-width:100%;overflow:auto}.import-grid-table{border-collapse:collapse;width:100%;min-width:900px;font-size:11px}.import-grid-table th,.import-grid-table td{text-align:left;vertical-align:top;border-bottom:1px solid #ffffff14;padding:6px 8px}[data-theme=light] .import-grid-table th,[data-theme=light] .import-grid-table td{border-bottom:1px solid #0f172a14}.import-grid-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;background:#0f172a33;font-size:10px;position:sticky;top:0}.import-grid-table tbody tr:nth-child(2n) td{background:#0f172a1f}.import-grid-table tbody tr td{background:#2f6fde14}.import-input{border:1px solid var(--border);background:var(--panel);width:100%;min-width:90px;color:var(--text);border-radius:8px;padding:4px 6px;font-size:11px}.import-submit-row{justify-content:flex-end;margin-top:12px;display:flex}.phase-docs-panel{border:1px solid var(--border);background:#0f172a33;border-radius:12px;margin:12px 0;padding:10px 12px}.phase-docs-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.phase-docs-list{gap:8px;display:grid}.phase-doc-row{background:#0f172a59;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:6px 8px;display:flex}.phase-doc-name{font-size:12px;font-weight:600}.phase-review-banner{background:#eab3081a;border:1px solid #facc15;justify-content:space-between;align-items:center;gap:12px;display:flex}.phase-review-compose{gap:12px;display:grid}.eng-review{flex-direction:column;gap:16px;display:flex}.eng-summary-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (max-width:700px){.eng-summary-grid{grid-template-columns:1fr}}.eng-summary-card{border:1px solid var(--border);background:var(--bg);border-radius:10px;overflow:hidden}.eng-summary-card-pending{opacity:.7;border-style:dashed}.itp-header-card{padding:1rem 1.25rem}.itp-header-meta{flex-wrap:wrap;gap:2rem;display:flex}.itp-header-field{flex-direction:column;gap:2px;min-width:160px;display:flex}.itp-header-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted,#6b7280);font-size:.72rem;font-weight:600}.itp-header-value{font-size:.95rem;font-weight:500}.eng-summary-empty p{margin:0;padding:14px}.eng-summary-label{letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--accent,#2563eb);padding:4px 14px;font-size:.7rem;font-weight:700}.eng-summary-card:nth-child(2) .eng-summary-label{background:#15803d}.eng-summary-header{justify-content:space-between;align-items:center;gap:8px;padding:10px 14px 6px;display:flex}.eng-summary-author{flex-direction:column;gap:2px;display:flex}.eng-thread{flex-direction:column;gap:10px;display:flex}.eng-empty{text-align:center;padding:24px}.eng-message{border:1px solid var(--border);background:var(--panel);border-radius:12px;overflow:hidden}.eng-message-vendor{border-left:3px solid #4a72b0}.eng-message-client{border-left:3px solid #15803d}.eng-message-header{background:var(--card-header-bg);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.eng-message-meta{align-items:center;gap:10px;font-size:13px;display:flex}.eng-message-time{color:var(--muted);font-size:11px}.eng-message-action{color:#fff;white-space:nowrap;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:3px 10px;font-size:10px;font-weight:700}.eng-message-field{color:var(--text);margin:0;padding:4px 14px 0;font-size:13px}.eng-message-field-label{margin-right:4px;font-weight:600}.eng-attachments{flex-direction:column;gap:0;display:flex}.eng-attachment{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;display:flex}.eng-attachment:last-child{border-bottom:none}.eng-attachment-old{opacity:.45}.eng-attachment-info{align-items:center;gap:8px;min-width:0;display:flex}.eng-attachment-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.eng-attachment-version{color:#fff;background:#3b5a8a;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:700}.eng-attachment-superseded{color:var(--muted);font-size:10px;font-style:italic}.eng-attachment-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.eng-pdf-status{color:#fff;text-transform:capitalize;white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:10px;font-weight:700}.eng-review-btn{height:28px;padding:4px 10px;font-size:11px}.eng-approved-box{border:2px solid #15803d;border-radius:10px;overflow:hidden}.eng-approved-box-title{color:#fff;letter-spacing:.06em;text-transform:uppercase;background:#15803d;padding:6px 14px;font-size:.78rem;font-weight:700}.eng-approved-by{color:var(--text-muted,#6b7280);padding:6px 14px 0;font-size:.82rem}.eng-approved-list{flex-direction:column;display:flex}.eng-approved-row{border-top:1px solid #dcfce7;justify-content:space-between;align-items:center;gap:8px;padding:8px 14px;display:flex}.eng-approved-row:first-child{border-top:none}.eng-approved-info{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.eng-approved-name{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:500;overflow:hidden}.eng-done-banner{color:#fff;background:#15803d;border-radius:10px;padding:12px 16px;font-size:14px;font-weight:600}.eng-compose{gap:10px;display:grid}.eng-compose h3{margin:0}.eng-file-list{flex-direction:column;gap:6px;display:flex}.eng-file-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;display:flex}.eng-file-name{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.85rem;overflow:hidden}.eng-file-remove{color:#94a3b8;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:1.1rem;line-height:1}.eng-file-remove:hover{color:#dc2626}.eng-recipients{margin-top:12px}.eng-recipients>label{color:#374151;margin-bottom:6px;font-size:13px;font-weight:600;display:block}.eng-recipient-list{flex-direction:column;gap:6px;display:flex}.eng-recipient-item{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.eng-recipient-item input[type=checkbox]{cursor:pointer;width:15px;height:15px}.eng-compose-actions{align-items:center;gap:12px;display:flex}.eng-mark-done{border-top:1px solid var(--border);gap:8px;margin-top:8px;padding-top:14px;display:grid}.eng-mark-done h4{margin:0;font-size:13px}.eng-review-panel{gap:12px;display:grid}.eng-review-panel h3{margin:0}.eng-pdf-decisions{flex-direction:column;gap:10px;display:flex}.eng-pdf-decision-row{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:10px;padding:10px 14px;display:flex}.eng-pdf-decision-info{align-items:center;gap:8px;display:flex}.eng-pdf-decision-actions{flex-wrap:wrap;gap:8px;display:flex}.eng-decision-btn{cursor:pointer;background:var(--panel);color:var(--text);border:2px solid #0000;border-color:var(--border);border-radius:8px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .15s}.eng-decision-approved{color:#15803d;border-color:#15803d}.eng-decision-rejected{color:#991b1b;border-color:#991b1b}.eng-decision-approved_conditionally{color:#92400e;border-color:#92400e}.eng-decision-selected.eng-decision-approved{color:#fff;background:#15803d}.eng-decision-selected.eng-decision-rejected{color:#fff;background:#991b1b}.eng-decision-selected.eng-decision-approved_conditionally{color:#fff;background:#92400e}.eng-decision-note{border-left:3px solid var(--border);background:#ffffff0a;border-radius:0 6px 6px 0;flex-direction:column;gap:6px;margin-top:8px;padding:10px 12px;display:flex}.eng-review-note-display{color:var(--muted);background:#ffffff0a;border-left:3px solid #6b7280;border-radius:0 4px 4px 0;margin:6px 0 4px;padding:6px 10px;font-size:.84rem}.eng-resubmit-form{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.eng-doc-table{border-collapse:collapse;width:100%;margin-top:.5rem;font-size:.85rem}.eng-doc-table th{text-align:left;border-bottom:1px solid var(--border);color:var(--muted);text-transform:uppercase;letter-spacing:.4px;padding:8px 10px;font-size:.78rem;font-weight:600}.eng-doc-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:8px 10px}.eng-doc-table tr:last-child td{border-bottom:none}.phase-review-compose-header{justify-content:space-between;align-items:center;display:flex}.phase-review-actions-row{flex-wrap:wrap;gap:10px;display:flex}.phase-review-inline-undo{background:#eab3081f;border:1px solid #facc1580;border-radius:999px;align-items:center;gap:10px;padding:6px 10px;font-size:12px;display:inline-flex}.phase-review-actions-row .button.secondary.danger{color:#fee2e2;border-color:#dc2626}.phase-review-approve{color:#0b0f19!important;background:#10b981a6!important;border-color:#10b981a6!important}.phase-review-reject{color:#0b0f19!important;background:#ef4444a6!important;border-color:#ef4444a6!important}.phase-review-conditional{color:#0b0f19!important;background:#fbbf24a6!important;border-color:#fbbf24a6!important}.phase-review-final{color:#0b0f19!important;background:#2563ebbf!important;border-color:#2563ebbf!important}.phase-review-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:16px;display:grid}.phase-review-table-card h3,.phase-review-message-card h3{margin-bottom:12px}.phase-review-table{border-collapse:collapse;width:100%;font-size:12px}.phase-review-table th,.phase-review-table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px}.phase-review-table tbody tr{cursor:pointer}.phase-review-table tbody tr:hover{background:#3b82f61f}.phase-review-table tbody tr.active{background:#3b82f633}.phase-review-status{border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.phase-review-status.approved{color:#0b0f19;background:#10b981a6}.phase-review-status.rejected{color:#0b0f19;background:#ef4444a6}.phase-review-status.conditional{color:#0b0f19;background:#fbbf2499}.phase-review-status.sent{color:#0b0f19;background:#1e40afb3}.phase-review-message{gap:12px;display:grid}.phase-review-message-header{justify-content:space-between;align-items:center;display:flex}.phase-review-message-body{border:1px solid var(--border);background:#0f172a33;border-radius:10px;min-height:90px;padding:12px}.phase-review-reply{border:1px solid var(--border);background:#0f172a1f;border-radius:12px;gap:10px;padding:12px;display:grid}.phase-review-final-approve{border:1px solid var(--border);background:#1e40af14;border-radius:12px;gap:10px;padding:12px;display:grid}.phase-review-attachments ul{gap:10px;margin:8px 0 0;padding:0;list-style:none;display:grid}.phase-review-attachments li{border:1px solid var(--border);background:#0f172a26;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;display:flex}.phase-review-attachment-actions{align-items:center;gap:8px;display:flex}.phase-review-attachment-actions .button.secondary{padding:6px 10px;font-size:11px}.phase-review-attachment-actions .button.secondary.danger{color:#fee2e2;border-color:#dc2626}.phase-review-recipient-list{border:1px solid var(--border);border-radius:10px;gap:8px;max-height:220px;margin-top:6px;padding:8px;display:grid;overflow:auto}.phase-review-recipient{grid-template-columns:16px 1fr;align-items:center;gap:8px;font-size:12px;display:grid}.phase-review-recipient-email{color:#94a3b8e6;margin-left:6px;font-size:11px}.phase-review-documents{gap:8px;display:grid}.phase-review-documents-list{gap:12px;max-height:260px;padding-right:4px;display:grid;overflow:auto}.phase-review-documents-entry{border:1px solid var(--border);background:#0f172a1f;border-radius:12px;gap:8px;padding:10px 12px;display:grid}.phase-review-documents-meta{justify-content:space-between;align-items:center;display:flex}.phase-review-documents-files{gap:8px;display:grid}.phase-review-documents-file{border:1px solid var(--border);background:#0f172a33;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:12px;display:flex}.import-landing-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem;margin-top:.5rem;display:grid}.import-landing-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:1.25rem;padding:1.75rem;transition:border-color .2s,box-shadow .2s;display:flex}.import-landing-card:hover{border-color:var(--accent);box-shadow:0 4px 24px #0000001f}.import-landing-card.featured{border-color:var(--accent);background:linear-gradient(135deg,#1e497614 0%,var(--panel)100%);position:relative}.import-landing-icon{background:var(--accent);color:#fff;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.import-landing-icon.secondary-icon{background:var(--surface);color:var(--accent);border:1px solid var(--border)}.import-landing-content{flex:1}.import-landing-content h2{margin-bottom:.5rem;font-size:1.125rem;font-weight:700}.import-landing-badge{letter-spacing:.06em;text-transform:uppercase;background:var(--accent);color:#fff;border-radius:20px;margin-bottom:.5rem;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.import-landing-features{flex-direction:column;gap:.3rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.import-landing-features li{color:var(--muted);padding-left:1.1em;font-size:13px;position:relative}.import-landing-features li:before{content:"✓";color:var(--status-success);font-weight:700;position:absolute;left:0}.import-landing-cta{align-self:flex-start;margin-top:auto}.breadcrumb-link{color:var(--accent);opacity:.8;text-decoration:none;transition:opacity .15s}.breadcrumb-link:hover{opacity:1;text-decoration:underline}.wizard-steps{align-items:center;gap:0;margin-bottom:2rem;padding-bottom:4px;display:flex;overflow-x:auto}.wizard-step{align-items:center;gap:.5rem;display:flex;position:relative}.wizard-step-circle{background:var(--surface);border:2px solid var(--border);width:32px;height:32px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;transition:background .2s,border-color .2s,color .2s;display:flex}.wizard-step.active .wizard-step-circle{background:var(--accent);border-color:var(--accent);color:#fff}.wizard-step.done .wizard-step-circle{background:var(--status-success);border-color:var(--status-success);color:#fff}.wizard-step-label{color:var(--muted);white-space:nowrap;font-size:13px;font-weight:500}.wizard-step.active .wizard-step-label{color:var(--text);font-weight:600}.wizard-step.done .wizard-step-label{color:var(--status-success)}.wizard-step-line{background:var(--border);flex-shrink:0;width:40px;height:2px;margin:0 .25rem}.wizard-card{margin-bottom:1.5rem}.wizard-section-title{margin-bottom:.25rem;font-size:1.25rem;font-weight:700}.wizard-section-desc{margin-bottom:1.5rem}.wizard-form-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;display:grid}.wizard-field{flex-direction:column;gap:6px;display:flex}.wizard-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:12px;font-weight:600}.required{color:var(--status-critical)}.wizard-hint{color:var(--muted);margin:0;font-size:11px}.wizard-weights-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;margin-bottom:1rem;display:grid}.wizard-weight-item{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1rem}.wizard-weight-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.625rem;font-size:12px;font-weight:600;display:block}.wizard-weight-input-row{align-items:center;gap:.75rem;display:flex}.wizard-range{accent-color:var(--accent);cursor:pointer;flex:1;height:4px}.wizard-weight-number-wrap{align-items:center;gap:.25rem;display:flex}.wizard-weight-number{text-align:right;width:60px!important;padding:.25rem .5rem!important}.wizard-weight-total{padding:.75rem 0;font-size:14px;font-weight:600}.wizard-po-form{background:var(--surface);border:1px solid var(--border);border-radius:10px;grid-template-columns:1fr 1fr 1fr auto;align-items:flex-end;gap:.875rem;margin-bottom:.5rem;padding:1rem;display:grid}@media (max-width:640px){.wizard-po-form{grid-template-columns:1fr 1fr}}.wizard-review-section{border-bottom:1px solid var(--border);padding:1rem 0}.wizard-review-section:last-child{border-bottom:none}.wizard-review-section h4{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.625rem;font-size:14px;font-weight:700}.wizard-review-grid{grid-template-columns:120px 1fr;gap:.375rem 1rem;font-size:14px;display:grid}.wizard-review-list{flex-direction:column;gap:.375rem;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.wizard-nav{align-items:center;gap:.75rem;padding:1.5rem 0;display:flex}.import-tab-bar{background:var(--panel);border:1px solid var(--border);scrollbar-width:none;border-radius:12px;flex-wrap:nowrap;gap:.25rem;margin-bottom:1.25rem;padding:.5rem;display:flex;overflow-x:auto}.import-tab-bar::-webkit-scrollbar{display:none}.import-tab-btn{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem .75rem;font-size:13px;font-weight:500;transition:background .15s,color .15s;display:flex}.import-tab-btn:hover{background:var(--surface);color:var(--text)}.import-tab-btn.active{background:var(--accent);color:#fff}.import-tab-num{background:#ffffff2e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:inline-flex}.import-tab-btn:not(.active) .import-tab-num{background:var(--border);color:var(--muted)}.import-section{background:var(--panel);border:1px solid var(--border);border-radius:12px;margin-bottom:1.25rem;overflow:hidden}.import-section-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem 1rem;display:flex}.import-section-header h3{margin:0 0 .2rem;font-size:1.05rem;font-weight:700}.import-section-header p{margin:0;font-size:13px}.import-section-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.import-grid-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.import-grid{border-collapse:collapse;width:100%;font-size:13px}.import-grid th,.import-grid td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);vertical-align:middle;padding:0}.import-grid th:last-child,.import-grid td:last-child{border-right:none}.import-grid th{background:var(--surface);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);white-space:nowrap;padding:.5rem .75rem;font-size:11px;font-weight:700}.import-grid tbody tr:last-child td{border-bottom:none}.ig-cell{width:100%;min-width:100px;color:var(--text);box-sizing:border-box;background:0 0;border:none;outline:none;padding:.45rem .65rem;font-family:inherit;font-size:13px;transition:background .1s;display:block}.ig-cell:focus{background:rgba(var(--accent-rgb,30,73,118),.07)}.ig-cell.required{border-left:2px solid var(--accent)}select.ig-cell{cursor:pointer;appearance:auto}.ig-remove{border:1px solid var(--border);width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;margin:4px;font-size:12px;transition:background .15s,color .15s;display:flex}.ig-remove:hover:not(:disabled){background:var(--status-critical);border-color:var(--status-critical);color:#fff}.ig-remove:disabled{opacity:.35;cursor:not-allowed}.import-bottom-nav{border-top:1px solid var(--border);align-items:center;gap:.75rem;margin-top:.25rem;padding:1rem 0 2rem;display:flex}.import-alert{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding:1rem 1.25rem;font-size:14px;display:flex}.import-alert strong{text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:700}.import-alert p,.import-alert pre{margin:0}.import-alert.error{color:var(--status-critical);background:#ef444412;border-color:#ef44444d}.import-alert.success{color:var(--status-success);background:#22c55e12;border-color:#22c55e4d}.csv-import-layout{grid-template-columns:220px 1fr;align-items:flex-start;gap:1.5rem;display:grid}@media (max-width:720px){.csv-import-layout{grid-template-columns:1fr}}.csv-step-list{background:var(--panel);border:1px solid var(--border);border-radius:12px;position:sticky;top:1rem;overflow:hidden}.csv-step-item{text-align:left;cursor:pointer;border:none;border-bottom:1px solid var(--border);width:100%;color:var(--muted);background:0 0;align-items:center;gap:.75rem;padding:.875rem 1.125rem;font-size:13px;font-weight:500;transition:background .15s;display:flex}.csv-step-item:last-child{border-bottom:none}.csv-step-item:hover,.csv-step-item.active{background:var(--surface);color:var(--text)}.csv-step-item.complete{color:var(--status-success)}.csv-step-num{background:var(--border);width:24px;height:24px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.csv-step-item.active .csv-step-num{background:var(--accent);color:#fff}.csv-step-item.complete .csv-step-num{background:var(--status-success);color:#fff}.csv-step-info{flex-direction:column;gap:2px;display:flex}.csv-step-info strong{font-size:13px}.csv-step-info span{color:var(--muted);font-size:11px}.csv-upload-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:1.5rem;padding:2rem;display:flex}.csv-upload-field{flex-direction:column;gap:.5rem;display:flex}.csv-upload-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:12px;font-weight:700}.csv-upload-drop{border:2px dashed var(--border);cursor:pointer;text-align:center;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:2rem;transition:border-color .15s,background .15s;display:flex;position:relative}.csv-upload-drop:hover{border-color:var(--accent);background:var(--surface)}.csv-upload-drop input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.csv-upload-drop-icon{color:var(--muted)}.csv-upload-drop-text{color:var(--muted);font-size:14px;font-weight:500}.csv-upload-drop-hint{color:var(--muted);opacity:.7;font-size:12px}.csv-file-selected{background:var(--surface);color:var(--status-success);border:1px solid #22c55e40;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:13px;display:flex}.csv-upload-nav{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;padding-top:.5rem;display:flex}.csv-complete-card{background:var(--panel);border:1px solid var(--border);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:1rem;padding:3rem 2rem;display:flex}.csv-complete-icon{border:2px solid var(--status-success);width:64px;height:64px;color:var(--status-success);background:#22c55e1a;border-radius:50%;justify-content:center;align-items:center;display:flex}
