:root{--navy-950:#08111f;--navy-900:#0d1728;--navy-800:#132238;--navy-700:#1c314d;--gold-500:#d4af37;--gold-400:#f0c95a;--gold-100:#fff6d6;--ink-950:#0c1424;--ink-700:#314057;--ink-500:#68758a;--line:#dfe5ee;--line-strong:#cbd5e1;--surface:#fff;--surface-soft:#f6f8fb;--surface-blue:#edf3fb;--green:#1f9d68;--amber:#c98412;--red:#cf3b3b;--shadow:0 18px 50px #0c142414;--radius:8px;color:var(--ink-950);font-synthesis:none;text-rendering:geometricprecision;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:#eef2f7;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{background:linear-gradient(#d4af370f,#0000 26rem),#eef2f7;grid-template-columns:280px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:linear-gradient(180deg, #d4af3714, transparent 34%), var(--navy-950);color:#f8fbff;border-right:1px solid #ffffff14;flex-direction:column;gap:24px;min-height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.brand-lockup{align-items:center;gap:12px;min-height:54px;display:flex}.brand-lockup img{object-fit:contain;background:#fff;border-radius:8px;width:44px;height:44px;padding:4px}.brand-lockup strong,.brand-lockup span{display:block}.brand-lockup strong{letter-spacing:0;font-size:18px}.brand-lockup span{color:#b6c2d2;margin-top:2px;font-size:13px}.nav-stack{gap:7px;display:grid}.nav-stack button{color:#cbd6e5;border-radius:var(--radius);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:10px;width:100%;padding:11px 12px;font-size:14px;font-weight:650;display:flex}.nav-stack button:hover{background:#ffffff0f}.nav-stack button.active{color:#fff;background:#d4af3724;border-color:#d4af3757}.nav-stack svg{color:var(--gold-400);flex:none}.sidebar-card{border-radius:var(--radius);background:#ffffff0f;border:1px solid #ffffff1a;margin-top:auto;padding:16px}.sidebar-card span,.sidebar-card small{color:#b8c4d5;font-size:12px;display:block}.sidebar-card strong{color:var(--gold-400);letter-spacing:.02em;margin:7px 0;font-size:24px;display:block}.main-area{min-width:0;padding:26px 30px 40px}.topbar{justify-content:space-between;align-items:flex-start;gap:24px;min-height:86px;margin-bottom:20px;display:flex}.topbar h1{letter-spacing:0;color:var(--ink-950);margin:0;font-size:clamp(28px,3vw,40px);line-height:1.05}.topbar p{color:var(--ink-500);max-width:720px;margin:9px 0 0;font-size:15px;line-height:1.5}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.primary-button,.ghost-button{border-radius:var(--radius);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 15px;font-size:14px;font-weight:750;display:inline-flex}.primary-button{color:var(--navy-950);background:linear-gradient(135deg, var(--gold-400), var(--gold-500));box-shadow:0 10px 22px #d4af3738}.primary-button:disabled{opacity:.7;cursor:wait}.ghost-button{color:var(--ink-700);border-color:var(--line);background:#fff}.metric-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.metric{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:36px 1fr;gap:4px 10px;padding:15px;display:grid;box-shadow:0 8px 22px #0c14240a}.metric-icon{background:var(--surface-blue);width:36px;height:36px;color:var(--navy-700);border-radius:8px;grid-row:span 2;place-items:center;display:grid}.metric svg{width:18px;height:18px}.metric span{color:var(--ink-500);text-transform:uppercase;align-self:end;font-size:12px;font-weight:700;line-height:1.1}.metric strong{color:var(--ink-950);font-size:24px;line-height:1}.metric.green strong{color:var(--green)}.metric.amber strong{color:var(--amber)}.workspace-grid{grid-template-columns:minmax(320px,.95fr) minmax(300px,.78fr) minmax(360px,1fr);align-items:start;gap:16px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel-title{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:68px;padding:18px 18px 14px;display:flex}.panel-title-icon{background:var(--navy-900);width:38px;height:38px;color:var(--gold-400);border-radius:8px;flex:none;place-items:center;display:grid}.panel-title svg{width:19px;height:19px}.panel-title h2{margin:0;font-size:18px;line-height:1.15}.panel-title p{color:var(--ink-500);margin:3px 0 0;font-size:13px;line-height:1.3}.input-panel textarea{resize:vertical;border:1px solid var(--line-strong);border-radius:var(--radius);width:calc(100% - 36px);height:210px;color:var(--ink-950);outline:none;margin:18px;padding:14px;font-size:14px;line-height:1.55}.input-panel textarea:focus,.form-grid input:focus,.form-grid select:focus{border-color:var(--gold-500);box-shadow:0 0 0 3px #d4af3724}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 18px 18px;display:grid}.form-grid label{color:var(--ink-500);text-transform:uppercase;gap:6px;font-size:12px;font-weight:800;line-height:1.2;display:grid}.form-grid input,.form-grid select{border:1px solid var(--line-strong);border-radius:var(--radius);width:100%;min-height:40px;color:var(--ink-950);text-transform:none;background:#fff;outline:none;padding:0 11px;font-size:14px;font-weight:650}.toggle-row{flex-direction:row;align-items:center;min-height:40px;color:var(--ink-700)!important;text-transform:none!important;gap:9px!important;font-size:14px!important;display:flex!important}.toggle-row input{width:17px;min-height:17px;accent-color:var(--gold-500)}.upload-panel{overflow:hidden}.dropzone{border-radius:var(--radius);min-height:158px;color:var(--navy-800);text-align:center;cursor:pointer;background:linear-gradient(#d4af3714,#edf3fbb3),#f8fafc;border:1px dashed #aebbd0;place-items:center;gap:8px;margin:18px;padding:18px;display:grid}.dropzone input{display:none}.dropzone strong{font-size:16px}.dropzone span{color:var(--ink-500);font-size:13px;line-height:1.4}.file-summary{flex-wrap:wrap;gap:8px;margin:0 18px 12px;display:flex}.file-summary span{border:1px solid var(--line);color:var(--ink-700);background:#fff;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800}.file-list{gap:8px;max-height:260px;padding:0 18px 18px;display:grid;overflow:auto}.empty-text{color:var(--ink-500);margin:0;font-size:14px}.file-row{border:1px solid var(--line);border-radius:var(--radius);background:#fff;justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex}.file-row.error{background:#fff6f6;border-color:#cf3b3b59}.file-row strong,.file-row span{display:block}.file-row strong{font-size:13px;line-height:1.25}.file-row span{color:var(--ink-500);margin-top:2px;font-size:12px}.file-row button{border:1px solid var(--line);width:28px;height:28px;color:var(--ink-500);background:#fff;border-radius:7px;flex:none;place-items:center;display:grid}.layer-list{gap:10px;max-height:610px;padding:18px;display:grid;overflow:auto}.layer-row{border:1px solid var(--line);border-radius:var(--radius);background:#fff;grid-template-columns:52px 1fr 24px;align-items:center;gap:12px;padding:11px;display:grid}.layer-row>span{width:48px;height:32px;color:var(--gold-400);background:var(--navy-900);letter-spacing:.02em;border-radius:7px;place-items:center;font-size:12px;font-weight:850;display:grid}.layer-row strong,.layer-row small{display:block}.layer-row strong{font-size:14px;line-height:1.2}.layer-row small{color:var(--ink-500);margin-top:3px;font-size:12px;line-height:1.3}.layer-row svg{color:var(--green)}.layer-row.review svg{color:var(--amber)}.report-grid{grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:16px;display:grid}.executive-callout{border-radius:var(--radius);color:#0f5c3d;background:#f0fbf6;border:1px solid #1f9d6840;align-items:flex-start;gap:12px;margin:18px;padding:16px;display:flex}.executive-callout strong,.executive-callout span{display:block}.executive-callout strong{color:#0b3d2b;line-height:1.35}.executive-callout span{color:#3d705b;margin-top:3px;font-size:13px}.report-body{padding:0 22px 22px}.report-body p{border-bottom:1px solid var(--line);color:var(--ink-700);margin:0;padding:15px 0;font-size:15px;line-height:1.65}.report-body p:last-child{border-bottom:0}.hazard-list,.minority-list{gap:10px;padding:18px;display:grid}.hazard-list{padding-bottom:8px}.minority-list{padding-top:6px}.hazard-row,.success-row{border-radius:var(--radius);align-items:flex-start;gap:9px;padding:11px;font-size:13px;line-height:1.45;display:flex}.hazard-row{color:#87560d;background:#fff7e8;border:1px solid #c9841233}.success-row{color:#155b40;background:#eefaf4;border:1px solid #1f9d6838}.minority-list article{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:12px}.minority-list span{color:var(--navy-800);background:var(--gold-100);border-radius:999px;margin-bottom:8px;padding:4px 8px;font-size:11px;font-weight:900;display:inline-flex}.minority-list p{color:var(--ink-700);margin:0;font-size:13px;line-height:1.5}.crystal-layout,.audit-layout{grid-template-columns:minmax(0,1fr);display:grid}.crystal-panel,.audit-panel{overflow:hidden}.hash-box{border:1px solid var(--line);border-left:4px solid var(--gold-500);border-radius:var(--radius);background:linear-gradient(135deg,#d4af371a,#13223814),#fff;margin:18px;padding:16px}.hash-box span,.hash-box strong{display:block}.hash-box span{color:var(--ink-500);text-transform:uppercase;font-size:12px;font-weight:800}.hash-box strong{color:var(--navy-900);word-break:break-all;margin-top:8px;font-family:SFMono-Regular,Consolas,monospace;font-size:clamp(12px,1.5vw,16px);line-height:1.45}.crystal-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 18px 18px;display:grid}.crystal-grid div{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:14px}.crystal-grid span,.crystal-grid strong{display:block}.crystal-grid span{color:var(--ink-500);text-transform:uppercase;font-size:12px;font-weight:800}.crystal-grid strong{margin-top:7px;font-size:24px}.sealed-note{color:var(--ink-700);background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius);gap:10px;margin:0 18px 18px;padding:14px;display:flex}.sealed-note p{margin:0;font-size:14px;line-height:1.55}.audit-chain{gap:10px;padding:18px;display:grid}.audit-record{border:1px solid var(--line);border-radius:var(--radius);background:#fff;grid-template-columns:180px minmax(0,1fr) 24px;align-items:center;gap:14px;padding:13px;display:grid}.audit-stage{color:var(--navy-800);text-transform:uppercase;align-items:center;gap:8px;font-size:12px;font-weight:900;display:flex}.audit-stage svg{color:var(--gold-500)}.audit-lines{min-width:0}.audit-lines span{color:var(--ink-500);white-space:nowrap;text-overflow:ellipsis;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.45;display:block;overflow:hidden}.audit-lines p{color:var(--ink-700);margin:5px 0 0;font-size:13px}@media (width<=1180px){.workspace-grid,.report-grid{grid-template-columns:1fr}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){.app-shell{grid-template-columns:1fr}.sidebar{min-height:auto;padding:16px;position:static}.nav-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-card{margin-top:0}.main-area{padding:18px 14px 28px}.topbar{flex-direction:column;align-items:stretch}.topbar-actions{justify-content:stretch}.topbar-actions button{flex:180px}.form-grid,.crystal-grid,.audit-record{grid-template-columns:1fr}}@media (width<=560px){.metric-strip,.nav-stack{grid-template-columns:1fr}.topbar h1{font-size:28px}.main-area{padding-inline:10px}.panel-title{padding:15px}.input-panel textarea{width:calc(100% - 28px);margin:14px}}
