:root{color:#1d2732;font-synthesis:none;background:#f4f6f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#f4f6f8;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}input,select,textarea{color:#1d2732;background:#fff;border:1px solid #d7dde2;border-radius:8px;outline:none;width:100%;padding:9px 10px}input:focus,select:focus,textarea:focus{border-color:#929ca5;box-shadow:0 0 0 3px #46546214}label{color:#5d6874;gap:6px;font-size:12px;font-weight:700;display:grid}a{color:inherit;text-decoration:none}.loading-page,.login-page{place-items:center;min-height:100vh;padding:24px;display:grid}.loading-page{color:#697580;align-content:center;gap:8px}.loading-mark{color:#1d2732;font-size:28px;font-weight:800}.login-card{background:#fff;border:1px solid #e0e5e9;border-radius:14px;width:min(420px,100%);padding:28px;box-shadow:0 18px 50px #1b263014}.login-brand{gap:2px;margin-bottom:26px;display:grid}.login-brand strong{font-size:25px}.login-brand span{color:#7a858f;font-size:12px}.form-stack{gap:16px;display:grid}.form-stack h1{margin:0;font-size:24px}.form-stack p{color:#6b7680;margin:5px 0 0;font-size:13px;line-height:1.5}.login-note{text-align:center;font-size:11px!important}.otp-input{text-align:center;letter-spacing:8px;font-size:26px;font-weight:700}.app-shell{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.sidebar{background:#fff;border-right:1px solid #e4e8ec;height:100vh;padding:18px 14px;position:sticky;top:0}.brand{gap:2px;padding:4px 8px 18px;display:grid}.brand strong{font-size:22px}nav{gap:4px;display:grid}.nav-item{text-align:left;color:#3f4a55;background:0 0;border:0;border-radius:8px;padding:10px 11px;font-size:13px;font-weight:600;display:block}.nav-item.active{color:#111820;background:#eceff2}.content{min-width:0;padding:0 26px 28px}.topbar{z-index:5;background:#f4f6f8f5;border-bottom:1px solid #e2e7eb;justify-content:space-between;align-items:center;gap:20px;min-height:64px;margin-bottom:22px;display:flex;position:sticky;top:0}.topbar-user{gap:2px;display:grid}.topbar-user span{color:#7a858f;font-size:11px}.topbar-actions,.inline-actions,.admin-action-row,.form-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.page-stack{gap:16px;display:grid}.page-header{justify-content:space-between;align-items:end;gap:20px;display:flex}.page-header h1{margin:0;font-size:25px;line-height:1.2}.page-header p{color:#68737e;margin:5px 0 0;font-size:13px}.card{background:#fff;border:1px solid #e2e7eb;border-radius:12px;padding:18px}.card h2{margin:0;font-size:17px}.card h3{margin:0 0 10px;font-size:14px}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.section-heading.compact{margin-bottom:8px}.section-heading p{color:#7a858f;margin:4px 0 0;font-size:12px}.button{border:1px solid #0000;border-radius:8px;min-height:34px;padding:8px 11px;font-size:12px;font-weight:700}.button.primary{color:#fff;background:#202a34}.button.ghost{color:#46525e;background:0 0}.button.danger{color:#9b2f2f;background:#fff;border-color:#e0bcbc}.form-error,.form-success{border-radius:8px;padding:9px 10px;font-size:12px}.form-error{color:#8f2d2d;background:#fff3f3;border:1px solid #efcccc}.form-error.inline{background:0 0;border:0;padding:0}.form-success{color:#306b40;background:#f1f8f3;border:1px solid #cae2d0}.compact-grid{grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px;display:grid}.full-span{grid-column:1/-1}.table-wrap{border:1px solid #e4e8ec;border-radius:9px;overflow:auto}.data-table{border-collapse:collapse;width:100%;font-size:12px}.data-table th,.data-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #edf0f2;padding:10px 11px}.data-table th{color:#5c6873;z-index:1;background:#f8f9fa;font-size:11px;position:sticky;top:0}.data-table tbody tr{cursor:pointer}.data-table .selected-row{background:#f0f3f5}.data-table td strong,.data-table td small{display:block}.data-table td small{color:#7b8690;margin-top:2px}.status-pill{border-radius:999px;align-items:center;min-height:22px;padding:3px 8px;font-size:10px;font-weight:800;display:inline-flex}.status-pill.active{color:#32663b;background:#edf7ef}.status-pill.inactive{color:#6d747b;background:#f1f2f3}.status-pill.locked{color:#86501e;background:#fff3e9}.admin-action-row{border-bottom:1px solid #edf0f2;margin-bottom:16px;padding-bottom:14px}.detail-columns{grid-template-columns:minmax(220px,.7fr) minmax(520px,2fr);gap:22px;display:grid}.checkbox-stack{gap:7px;margin-bottom:12px;display:grid}.check-row{color:#3c4751;align-items:center;gap:8px;display:flex}.check-row input{width:15px;height:15px}.scope-stack{gap:8px;margin-bottom:10px;display:grid}.scope-row{grid-template-columns:135px repeat(4,minmax(90px,1fr)) auto;gap:7px;display:grid}.password-reset{border-top:1px solid #edf0f2;margin-top:18px;padding-top:16px}.password-reset input{width:min(340px,100%)}.empty-state{text-align:center;color:#6b7680;place-content:center;gap:5px;min-height:160px;display:grid}.empty-state strong{color:#303b45}.modal-backdrop{z-index:50;background:#141b2161;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{background:#fff;border:1px solid #e0e5e9;border-radius:13px;width:min(430px,100%);padding:20px;box-shadow:0 24px 70px #0d141b2e}.modal-card h2{margin:0;font-size:18px}.modal-card p{color:#68737e;font-size:13px;line-height:1.5}@media (width<=1200px){.compact-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}.detail-columns{grid-template-columns:1fr}}@media (width<=760px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}.content{padding:0 14px 18px}.topbar{padding:0}.topbar-actions .button.ghost{display:none}.compact-grid{grid-template-columns:1fr}.scope-row{grid-template-columns:1fr 1fr}.full-span{grid-column:auto}}.sync-summary{grid-template-columns:repeat(5,minmax(100px,1fr));gap:10px;margin-top:14px;display:grid}.sync-metric{border:1px solid #e4e8ec;border-radius:9px;gap:4px;padding:10px 12px;display:grid}.sync-metric span{color:#77828c;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:700}.sync-metric strong{font-size:16px}.sync-history{border-top:1px solid #edf0f2;margin-top:18px;padding-top:16px}.status-pill.succeeded{color:#32663b;background:#edf7ef}.status-pill.failed{color:#8e3030;background:#fff1f1}.status-pill.running{color:#315f8a;background:#eef4fb}@media (width<=900px){.sync-summary{grid-template-columns:repeat(2,minmax(100px,1fr))}}.price-create-grid{grid-template-columns:repeat(4,minmax(150px,1fr))}.price-summary{gap:16px;display:grid}.price-summary-main{justify-content:space-between;align-items:center;gap:16px;display:flex}.price-summary h1{margin:3px 0 0;font-size:24px}.eyebrow{color:#7a858f;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.status-pill.large{color:#394550;background:#eef1f3;padding:6px 11px;font-size:11px}.summary-grid{grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px;display:grid}.summary-item{border:1px solid #edf0f2;border-radius:9px;gap:4px;padding:10px 11px;display:grid}.summary-item span{color:#7b8690;font-size:10px;font-weight:700}.summary-item strong{font-size:13px}.summary-notes{border-top:1px solid #edf0f2;padding-top:12px}.summary-notes strong{font-size:12px}.summary-notes p{color:#56616c;margin:5px 0 0;font-size:12px;line-height:1.5}.scope-chips{flex-wrap:wrap;gap:6px;display:flex}.scope-chip{background:#f8f9fa;border:1px solid #dce2e6;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:700}.back-button{width:fit-content;padding-left:0}.pricing-grid-wrap{max-height:62vh;overflow:auto}.pricing-grid{min-width:2100px}.budget-grid{min-width:1050px}.pricing-grid th{z-index:3;top:0}.pricing-grid td{vertical-align:middle}.pricing-grid .sticky-col{z-index:2;background:#fff;position:sticky}.pricing-grid th.sticky-col{z-index:4;background:#f8f9fa}.col-sales{min-width:150px;max-width:150px;left:0}.col-customer{min-width:210px;max-width:210px;left:150px}.col-product{min-width:210px;max-width:210px;left:360px;box-shadow:4px 0 7px #141e280d}.grid-input{border-radius:6px;min-width:120px;padding:6px 7px;font-size:11px}.number-input{text-align:right;font-variant-numeric:tabular-nums}.required-input{background:#fff8f8;border-color:#d58d8d}.money-cell{font-variant-numeric:tabular-nums;text-align:right!important}.money-cell.strong{font-weight:800}.deviation-cell{color:#8a521d;background:#fff7ec;font-weight:800}.grid-filters{grid-template-columns:repeat(3,minmax(150px,220px)) auto;align-items:center;gap:8px;margin-bottom:10px;display:grid}.grid-footer{justify-content:space-between;align-items:center;gap:16px;margin-top:10px;display:flex}.save-state{color:#6a7580;font-size:11px;font-weight:700}.save-state.dirty{color:#8a521d}.pagination{color:#66717c;align-items:center;gap:8px;font-size:11px;display:flex}@media (width<=1200px){.price-create-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.summary-grid{grid-template-columns:repeat(3,minmax(130px,1fr))}}@media (width<=760px){.price-create-grid,.summary-grid,.grid-filters{grid-template-columns:1fr}.price-summary-main,.grid-footer{flex-direction:column;align-items:flex-start}}.submission-list{gap:8px;display:grid}.submission-row{border:1px solid #e5e9ed;border-radius:9px;justify-content:space-between;align-items:center;gap:14px;padding:10px 11px;display:flex}.submission-row>div{gap:3px;display:grid}.submission-row strong{font-size:13px}.submission-row span{color:#6d7883;font-size:11px}.approval-deviation-wrap{max-height:52vh}.approval-deviation-table{min-width:1500px}.approval-action-card{gap:14px;display:grid}.approval-behalf{background:#f8f9fa;border:1px solid #dfe4e8;border-radius:8px;width:fit-content;padding:9px 11px}.approval-buttons{flex-wrap:wrap;gap:8px;display:flex}.evidence-upload{grid-template-columns:180px minmax(260px,1fr) auto;align-items:end;gap:8px;margin-bottom:12px;display:grid}.evidence-list{gap:7px;margin-top:10px;display:grid}.evidence-row{color:#35414c;border:1px solid #e5e9ed;border-radius:8px;grid-template-columns:18px 1fr auto;align-items:center;gap:10px;padding:9px 10px;display:grid}.evidence-row input{width:15px;height:15px}.evidence-row>div{gap:2px;display:grid}.evidence-row strong{font-size:12px}.evidence-row span{color:#7a858f;font-size:10px;font-weight:600}@media (width<=760px){.submission-row{flex-direction:column;align-items:flex-start}.evidence-upload{grid-template-columns:1fr}}.price-list-table{min-width:1050px}.nowrap{flex-wrap:nowrap}.wide-modal{width:min(1180px,96vw);max-height:90vh;overflow:auto}.history-modal{width:min(560px,96vw);max-height:84vh;overflow:auto}.snapshot-preview-wrap{max-height:66vh}.snapshot-preview-table{min-width:900px}.history-stack{gap:8px;display:grid}.history-export-row{border:1px solid #e7ebee;border-radius:9px;justify-content:space-between;align-items:center;gap:16px;padding:10px 11px;display:flex}.history-export-row>div{gap:3px;display:grid}.history-export-row strong{font-size:12px}.history-export-row span{color:#77828c;font-size:11px}.deployment-table-wrap{max-height:68vh}.deployment-table{min-width:1180px}.compact-input{min-width:180px;padding:6px 7px;font-size:11px}.verification-summary{color:#5d6874;gap:18px;margin-bottom:10px;font-size:12px;display:flex}.verification-result-wrap{max-height:62vh}.verification-result-table,.history-table{min-width:1050px}.history-detail-modal{width:min(1280px,97vw);max-height:92vh;overflow:auto}.history-detail-stack{gap:16px;display:grid}.history-snapshot-note{background:#fafbfb;border:1px solid #e5eaed;border-radius:9px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;font-size:11px;display:flex}.history-snapshot-note code{color:#66717b;word-break:break-all}.history-subtitle{margin:0 0 8px;font-size:13px}.history-line-wrap{max-height:52vh}.history-line-table{min-width:1200px}.history-workflow{gap:8px;display:grid}.history-workflow-row{border:1px solid #e8ecef;border-radius:9px;grid-template-columns:180px 1fr;gap:14px;padding:10px 12px;display:grid}.history-workflow-row>div:first-child{gap:3px;display:grid}.history-workflow-row span{color:#6f7a84;font-size:11px}.history-approval-list{gap:4px;display:grid}@media (width<=760px){.history-workflow-row{grid-template-columns:1fr}}.dashboard-metrics{grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;display:grid}.dashboard-metric-card{align-content:center;gap:5px;min-height:90px;display:grid}.dashboard-metric-card span{color:#74808a;font-size:11px;font-weight:700}.dashboard-metric-card strong{font-size:28px;line-height:1}.audit-filters{grid-template-columns:minmax(240px,1fr) 180px auto}.audit-table-wrap{max-height:68vh}.audit-table{min-width:1280px}.audit-table code{word-break:break-all;font-size:10px}.health-grid{grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;display:grid}.health-card{align-content:center;gap:5px;min-height:96px;display:grid}.health-card span,.health-card small{color:#74808a;font-size:11px}.health-card strong{font-size:18px}.health-info-value{overflow-wrap:anywhere}@media (width<=980px){.dashboard-metrics,.health-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.audit-filters{grid-template-columns:1fr}}@media (width<=560px){.dashboard-metrics,.health-grid{grid-template-columns:1fr}}.audit-tabs{gap:8px;margin-bottom:10px;display:flex}.auth-audit-table{min-width:1320px}.audit-user-agent{overflow-wrap:anywhere;color:#66717b;max-width:320px;font-size:10px}:root{--surface:#fff;--surface-soft:#f7f9fc;--canvas:#f3f6fa;--border:#e3e9f0;--text:#16202a;--muted:#687586;--accent:#2457a6;--accent-soft:#edf3fc;--accent-strong:#173f7e;--success-soft:#edf8f1;--warning-soft:#fff7e8;--danger-soft:#fff1f1}body{background:var(--canvas);color:var(--text)}.app-shell{grid-template-columns:252px 1fr}.sidebar{border-right-color:var(--border);background:#fff;flex-direction:column;padding:22px 16px 16px;display:flex}.brand{padding:2px 8px 16px}.brand strong{letter-spacing:-.03em;font-size:24px}.brand span{color:var(--muted);font-size:11px}.sidebar-profile{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;gap:5px;margin:0 2px 20px;padding:13px 12px;display:grid}.sidebar-profile-label,.nav-label,.topbar-kicker{color:#8190a0;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:800}.sidebar-profile strong{font-size:13px}.sidebar-profile small{color:var(--muted);margin-top:3px;font-size:10px;line-height:1.45}.role-badge{background:var(--accent-soft);width:fit-content;color:var(--accent-strong);border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.nav-label{padding:0 10px 7px}.nav-item{color:#44505d;border-radius:9px;padding:10px 11px;font-size:12px;font-weight:700}.nav-item:hover{background:#f4f7fa}.nav-item.active{background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 3px 0 0 var(--accent)}.sidebar-footer{color:#8a96a3;gap:2px;margin-top:auto;padding:16px 9px 3px;font-size:10px;display:grid}.sidebar-footer small{font-size:9px}.content{padding:0 30px 32px}.topbar{border-bottom-color:var(--border);background:#f3f6faf5;min-height:72px;margin-bottom:26px}.topbar-user{gap:1px}.topbar-user strong{font-size:14px}.topbar-user>span:last-child{color:var(--muted);font-size:11px}.page-header{align-items:center}.page-header h1{color:#17212b;letter-spacing:-.025em}.page-header p{max-width:760px;color:var(--muted);line-height:1.55}.card{border-color:var(--border);border-radius:13px;box-shadow:0 1px 2px #111f2e06}.button{border-radius:8px;font-weight:750;transition:background .15s,border-color .15s,transform .15s}.button:active:not(:disabled){transform:translateY(1px)}.button.primary{background:var(--accent);color:#fff}.button.primary:hover:not(:disabled){background:var(--accent-strong)}.button.secondary{color:#344250;background:#fff;border-color:#d6dee7}.button.secondary:hover:not(:disabled),.button.ghost:hover:not(:disabled){background:#f2f5f8}.data-table th{color:#687586;text-transform:none;letter-spacing:0;background:#f7f9fb}.data-table tbody tr:hover{background:#f7faff}.status-pill{font-weight:800}.welcome-panel{background:linear-gradient(135deg,#fff 0%,#f5f8fc 100%);border:1px solid #dfe7f0;border-radius:16px;grid-template-columns:minmax(0,1fr) minmax(260px,380px);align-items:center;gap:28px;padding:24px 26px;display:grid}.welcome-panel h1{letter-spacing:-.035em;margin:6px 0 7px;font-size:28px}.welcome-panel p{max-width:680px;color:var(--muted);margin:0;font-size:13px;line-height:1.6}.welcome-role{background:#fffc;border:1px solid #dce5ef;border-radius:12px;gap:5px;padding:15px 16px;display:grid}.welcome-role>span{color:#8190a0;text-transform:uppercase;letter-spacing:.07em;font-size:10px;font-weight:800}.welcome-role strong{color:var(--accent-strong);font-size:16px}.welcome-role small{color:var(--muted);line-height:1.5}.section-title-row{margin:2px 0 10px}.section-title-row h2{margin:0;font-size:16px}.section-title-row p{color:var(--muted);margin:4px 0 0;font-size:11px}.dashboard-metric-card{border-top:3px solid #dbe7f6}.dashboard-metric-card strong{color:#1c3556}.login-page{background:radial-gradient(circle at 20% 20%,#3867ac1a,#0000 32%),linear-gradient(135deg,#eef3f8 0%,#f8fafc 100%)}.login-layout{grid-template-columns:minmax(280px,1fr) minmax(360px,430px);align-items:center;gap:54px;width:min(940px,100%);display:grid}.login-intro{padding:22px}.login-intro .login-brand{margin-bottom:48px}.login-intro h2{letter-spacing:-.04em;max-width:480px;margin:0 0 12px;font-size:34px;line-height:1.1}.login-intro p{max-width:520px;color:var(--muted);margin:0;font-size:14px;line-height:1.7}.login-card{border-color:#dfe6ee;border-radius:16px;width:100%;padding:30px;box-shadow:0 22px 65px #182c441a}.login-card .form-stack h1{margin-top:5px;font-size:26px}.login-submit{min-height:40px}.login-secondary-actions{justify-content:center}.otp-input::placeholder{color:#c5ccd4;letter-spacing:6px}@media (width<=860px){.login-layout{grid-template-columns:1fr;gap:18px;width:min(460px,100%)}.login-intro{padding:0 6px}.login-intro .login-brand{margin-bottom:16px}.login-intro h2,.login-intro>p{display:none}.welcome-panel{grid-template-columns:1fr}}@media (width<=760px){.content{padding:0 14px 20px}.topbar{min-height:64px}.welcome-panel{padding:18px}.welcome-panel h1{font-size:23px}}.field-help{color:var(--muted);margin-top:-1px;font-size:10px;font-weight:500;line-height:1.4;display:block}.role-badge.demo-access{color:#8a5a12;background:#fff7e8;border:1px solid #f0ddb4}
