:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#eef4ff;--bg:#07090f;--panel:#111723d1;--panel-2:#171f2fb8;--line:#94a3b82e;--muted:#94a3b8;--text:#eef4ff;--accent:#d9e7ff;--blue:#5aa9ff;--red:#ff7474;--amber:#f5b65b;--green:#5ee0a0;--shadow:0 24px 70px #0006;background:#07090f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--bg);min-height:100%}body{background:radial-gradient(circle at 0 0,#5082ff33,#0000 34rem),radial-gradient(circle at 88% 8%,#ffffff14,#0000 28rem),linear-gradient(135deg,#07090f 0%,#0b1020 46%,#06070b 100%);min-height:100%;margin:0}button,input,select{font:inherit}button{cursor:pointer}.app-shell{width:min(1440px,100% - 32px);margin:0 auto;padding:28px 0 56px}.hero{grid-template-columns:1.55fr .8fr;align-items:stretch;gap:22px;margin-bottom:22px;display:grid}.hero-copy,.hero-panel,.card{border:1px solid var(--line);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(#151c2ae0,#0a0e17db);border-radius:28px}.hero-copy{min-height:320px;padding:34px}.eyebrow{color:#cbdcff;letter-spacing:.04em;text-transform:uppercase;background:#ffffff0a;border:1px solid #cbdcff29;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:inline-flex}.hero h1{letter-spacing:-.06em;color:#f8fbff;max-width:980px;margin:22px 0 14px;font-size:clamp(34px,5vw,66px);line-height:.95}.hero p{color:#b7c4d7;max-width:920px;margin:0;font-size:16px;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.upload-btn,.secondary-btn{color:#07101f;letter-spacing:-.01em;background:linear-gradient(135deg,#fff,#dce9ff);border:0;border-radius:16px;align-items:center;gap:10px;height:48px;padding:0 18px;font-weight:800;display:inline-flex;box-shadow:0 18px 45px #7ca6ff2e}.secondary-btn{color:#eef4ff;box-shadow:none;background:#ffffff0f;border:1px solid #ffffff24}.secondary-btn:disabled{opacity:.45;cursor:not-allowed}.upload-btn input{display:none}.error-banner{color:#ffd1d1;background:#b91c1c2e;border:1px solid #ff74743d;border-radius:16px;align-items:center;gap:10px;margin-top:18px;padding:12px 14px;display:flex}.hero-panel{flex-direction:column;justify-content:space-between;padding:26px;display:flex}.panel-title{letter-spacing:-.02em;align-items:center;gap:10px;font-weight:900;display:flex}.hero-panel ol{color:#c8d4e7;margin:22px 0;padding-left:22px;line-height:2.05}.privacy-note{border-top:1px solid var(--line);color:var(--green);padding-top:16px;font-size:14px;font-weight:700}.main-grid{grid-template-columns:.92fr 1.08fr;gap:22px;display:grid}.card{padding:24px}.settings-card,.observations-card{grid-column:1/-1}.section-title{text-transform:uppercase;letter-spacing:.07em;color:#dbe7ff;align-items:center;gap:10px;margin-bottom:18px;font-size:15px;font-weight:900;display:flex}.settings-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.field{flex-direction:column;gap:7px;min-width:0;display:flex}.field.wide{grid-column:span 2}.field span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:800}.field input,.field select{color:#f4f8ff;background:#070b14b8;border:1px solid #94a3b838;border-radius:14px;outline:none;width:100%;min-height:44px;padding:0 13px;box-shadow:inset 0 1px #ffffff0a}.field input:focus,.field select:focus{border-color:#91beff9e;box-shadow:0 0 0 4px #5aa9ff1a}.stats-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.stat-card{border:1px solid var(--line);background:#ffffff0b;border-radius:20px;min-height:112px;padding:16px}.stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:800}.stat-value{letter-spacing:-.04em;margin-top:8px;font-size:clamp(22px,2.6vw,34px);font-weight:950}.stat-helper{color:#aab7c8;margin-top:6px;font-size:12px}.stat-card.critical .stat-value{color:var(--red)}.stat-card.high .stat-value{color:var(--amber)}.stat-card.medium .stat-value{color:var(--blue)}.stat-card.low .stat-value{color:var(--green)}.narrative-preview{color:#c8d4e7;border:1px solid var(--line);background:#ffffff09;border-radius:20px;margin:18px 0 0;padding:16px;line-height:1.7}.sheet-list{gap:10px;margin-top:16px;display:grid}.sheet-row{border:1px solid var(--line);color:#dbe7ff;background:#ffffff09;border-radius:16px;grid-template-columns:1.4fr .5fr .5fr .65fr;align-items:center;gap:12px;padding:12px;display:grid}.sheet-row div{flex-direction:column;gap:3px;min-width:0;display:flex}.sheet-row strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sheet-row span{color:#aab7c8;font-size:12px}.pill{background:#ffffff0f;border:1px solid #ffffff24;border-radius:999px;justify-content:center;align-items:center;width:fit-content;min-width:70px;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.pill.critical{color:#ffd6d6;background:#ff747424}.pill.high{color:#ffe4bd;background:#f5b65b24}.pill.medium{color:#cfe5ff;background:#5aa9ff24}.pill.low{color:#c9ffe5;background:#5ee0a024}.empty-state,.placeholder-panel{text-align:center;color:#aab7c8;background:#ffffff06;border:1px dashed #94a3b840;border-radius:22px;place-items:center;min-height:260px;padding:28px;display:grid}.empty-state h3{color:#eef4ff;margin:12px 0 6px}.empty-state p{max-width:460px;margin:0;line-height:1.6}.placeholder-panel{text-align:left;justify-content:center;gap:14px;min-height:160px;display:flex}.placeholder-panel strong{color:#eef4ff}.placeholder-panel p{color:#aab7c8;margin:6px 0 0}.observation-layout{grid-template-columns:minmax(280px,.37fr) 1fr;gap:16px;display:grid}.issue-list{flex-direction:column;gap:9px;max-height:720px;padding-right:4px;display:flex;overflow:auto}.issue-list::-webkit-scrollbar{width:8px}.issue-list::-webkit-scrollbar-thumb{background:#94a3b838;border-radius:999px}.issue-item{text-align:left;border:1px solid var(--line);color:#e6efff;background:#ffffff09;border-radius:16px;grid-template-columns:12px 1fr;align-items:start;gap:10px;width:100%;padding:13px;display:grid}.issue-item.active{background:#5aa9ff1f;border-color:#91beff7a}.issue-item strong{font-size:13px;line-height:1.35;display:block}.issue-item small{color:#aab7c8;margin-top:6px;line-height:1.35;display:block}.risk-dot{background:var(--green);border-radius:999px;width:10px;height:10px;margin-top:4px}.risk-dot.critical{background:var(--red)}.risk-dot.high{background:var(--amber)}.risk-dot.medium{background:var(--blue)}.issue-preview{border:1px solid var(--line);background:#ffffff09;border-radius:22px;padding:22px}.preview-topline{color:#aab7c8;flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.issue-preview h2{letter-spacing:-.04em;margin:14px 0 18px;font-size:clamp(24px,3vw,36px)}.preview-block{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.preview-block h3{color:#dbe7ff;letter-spacing:.07em;text-transform:uppercase;margin:0 0 8px;font-size:13px}.preview-block p{color:#c8d4e7;margin:0;font-size:14px;line-height:1.72}@media (width<=1050px){.hero,.main-grid{grid-template-columns:1fr}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{grid-template-columns:repeat(2,1fr)}.observation-layout{grid-template-columns:1fr}.issue-list{max-height:360px}}@media (width<=680px){.app-shell{width:min(100% - 20px,1440px);padding-top:10px}.hero-copy,.hero-panel,.card{border-radius:20px;padding:18px}.hero h1{font-size:36px}.hero p{font-size:14px}.hero-actions{flex-direction:column}.upload-btn,.secondary-btn{justify-content:center;width:100%}.settings-grid,.stats-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.sheet-row{grid-template-columns:1fr;gap:8px}.issue-preview{padding:16px}}.supabase-note{border-top:1px solid var(--line);color:#c8d4e7;align-items:flex-start;gap:10px;padding-top:16px;display:flex}.supabase-note strong{color:var(--green);text-transform:uppercase;letter-spacing:.06em;font-size:13px;display:block}.supabase-note span{color:#aab7c8;word-break:break-word;margin-top:4px;font-size:12px;line-height:1.45;display:block}.supabase-note.fallback strong{color:var(--amber)}.supabase-note.loading strong{color:var(--blue)}.stat-value{overflow-wrap:anywhere}
