@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";@layer components,utilities;@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}:root{--font-body:"Space Grotesk", "Trebuchet MS", sans-serif;--font-code:"IBM Plex Mono", "Courier New", monospace;--ink-strong:#173046;--ink-soft:#3f5e72;--ink-muted:#617f95;--line-soft:#58758d3d;color-scheme:light}*{box-sizing:border-box}html,body,#root{min-height:100%}body{min-width:320px;font-family:var(--font-body);color:var(--ink-strong);background:radial-gradient(circle at 4% 6%,#ecf8f3 0,#0000 36%),radial-gradient(circle at 90% 4%,#e8f2fb 0,#0000 32%),linear-gradient(#f7fafc,#eff5f9 42%,#edf2f7);margin:0}.app-shell{position:relative;min-height:100vh;overflow:hidden;color:var(--ink-strong)}.app-shell--loading .dashboard-root{filter:blur(10px) saturate(.88);transform:scale(.994);pointer-events:none;-webkit-user-select:none;user-select:none}.loading-screen{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:1.2rem}.loading-screen__veil{position:absolute;inset:0;background:radial-gradient(circle at 18% 18%,rgba(22,123,167,.22),transparent 32%),radial-gradient(circle at 80% 12%,rgba(32,167,128,.2),transparent 28%),linear-gradient(180deg,#f4f9fccc,#eaf2f7e6);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.loading-screen__panel{position:relative;width:min(520px,100%);border:1px solid rgba(78,112,136,.22);border-radius:28px;background:linear-gradient(160deg,#fffffff5,#f6fbfdeb);box-shadow:0 26px 90px #132d432e;padding:1.5rem 1.35rem 1.25rem;text-align:center;overflow:hidden}.loading-screen__panel:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:4px;background:linear-gradient(90deg,#1f6e95,#22a38b,#f2b345)}.loading-screen__badge{display:inline-flex;align-items:center;justify-content:center;margin-bottom:.9rem;border:1px solid rgba(28,79,112,.16);border-radius:999px;background:#1c4f7012;color:#234e6b;padding:.32rem .72rem;font-family:var(--font-code);font-size:.72rem;letter-spacing:.09em;text-transform:uppercase}.loading-screen__signal{position:relative;width:88px;height:88px;margin:0 auto .95rem}.loading-screen__signal-ring,.loading-screen__signal-core{position:absolute;inset:0;border-radius:50%}.loading-screen__signal-ring{border:1px solid rgba(25,109,158,.18);background:radial-gradient(circle,#2382ae14,#2382ae05);animation:loadingPulse 1.6s ease-in-out infinite}.loading-screen__signal-core{inset:18px;background:linear-gradient(145deg,#1c7e9d,#1ea37f);box-shadow:0 0 0 10px #1ea37f14,0 12px 28px #1c5a7442;animation:loadingCoreGlow 1.4s ease-in-out infinite}.loading-screen__panel h2{margin:0;color:#102a3c;font-size:clamp(1.35rem,1.1rem + .7vw,1.9rem);letter-spacing:-.02em}.loading-screen__copy{margin:.65rem auto 0;max-width:42ch;color:#466578;font-size:.92rem;line-height:1.55}.loading-screen__meter{position:relative;margin:1rem 0 0;width:100%;height:10px;border-radius:999px;background:#1f4e6f14;overflow:hidden}.loading-screen__meter-bar{position:absolute;inset:0 auto 0 -35%;width:38%;border-radius:inherit;background:linear-gradient(90deg,#145c8126,#1f7397 45%,#22a28a);animation:loadingSweep 1.7s ease-in-out infinite}.loading-screen__stages{margin-top:1rem;display:grid;gap:.55rem;text-align:left}.loading-stage{display:flex;align-items:center;gap:.65rem;border:1px solid rgba(69,103,126,.14);border-radius:14px;background:#ffffffb8;padding:.7rem .78rem;animation:fadeInUp .36s ease-out both;animation-delay:var(--stage-delay, 0ms)}.loading-stage__dot{width:10px;height:10px;border-radius:50%;background:linear-gradient(145deg,#1d7a97,#22a48a);box-shadow:0 0 0 6px #22a48a14;animation:loadingDotPulse 1.2s ease-in-out infinite}.loading-stage p{margin:0;color:#26475c;font-size:.84rem;font-weight:600}.loading-screen__meta{margin:.95rem 0 0;color:#5b7283;font-size:.8rem}.backdrop-layer{position:absolute;inset:-30% -10% auto;height:720px;background:radial-gradient(circle at 8% 20%,rgba(26,171,137,.22),transparent 37%),radial-gradient(circle at 85% 10%,rgba(26,101,171,.2),transparent 34%),radial-gradient(circle at 50% 55%,rgba(247,179,43,.15),transparent 50%);filter:blur(16px);pointer-events:none}.dashboard-root{position:relative;z-index:1;width:min(1260px,100% - 2.4rem);margin:0 auto;padding:2.2rem 0 2.8rem;animation:fadeInUp .55s ease-out both}.hero-header{margin-bottom:1.2rem}.hero-kicker{margin:0;font-family:var(--font-code);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.hero-header h1{margin:.32rem 0 0;font-size:clamp(1.8rem,1.2rem + 1.8vw,2.8rem);line-height:1.15;letter-spacing:-.02em;color:#0f2432}.hero-copy{margin:.75rem 0 0;max-width:72ch;color:var(--ink-soft);font-size:.98rem}.metric-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:1.3rem 0}.metric-card{border:1px solid var(--line-soft);border-radius:16px;background:#ffffffd6;box-shadow:0 8px 26px #15213414;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);padding:.95rem 1rem}.metric-label{margin:0;color:var(--ink-muted);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.metric-value{margin:.42rem 0 0;color:#0d2534;font-size:1.7rem;font-weight:700}.metric-value--small{font-size:1.02rem;line-height:1.25}.workspace-grid{display:grid;grid-template-columns:minmax(320px,36%) minmax(0,1fr);gap:1rem;align-items:flex-start}.panel{border:1px solid var(--line-soft);border-radius:22px;background:linear-gradient(160deg,#ffffffed,#ffffffd9);box-shadow:0 18px 44px #1223361a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.2rem}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-bottom:.6rem}.panel-head h2{margin:0;font-size:1.05rem;color:#112737}.pill{border-radius:999px;border:1px solid rgba(19,52,77,.2);background:#13344d14;color:#17415e;padding:.25rem .62rem;font-size:.72rem;font-weight:600}.pill-neutral{border-color:#42576b3b;background:#42576b1f;color:#354c61}.panel-copy{margin:0;color:var(--ink-soft);font-size:.92rem}.upload-tile{margin-top:.9rem;border:1px dashed #4b7b96;border-radius:14px;background:linear-gradient(180deg,#e6f5fabd,#f7fcfdcc);padding:.95rem;display:grid;gap:.3rem;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.upload-tile:hover{transform:translateY(-1px);border-color:#2f6989;box-shadow:0 8px 26px #1f587b33}.upload-tile input{display:none}.upload-title{color:#0f3b55;font-weight:700;font-size:.9rem}.upload-meta{color:#406073;font-size:.83rem;word-break:break-word}.input-block{margin-top:.95rem}.input-block label{display:block;margin-bottom:.4rem;font-size:.88rem;font-weight:600;color:#203848}.input-block textarea{width:100%;border-radius:14px;border:1px solid #c6d5e2;background:#ffffffe6;padding:.76rem .84rem;font-size:.9rem;color:#183246;resize:vertical;min-height:220px;transition:border-color .18s ease,box-shadow .18s ease}.input-block textarea:focus{outline:none;border-color:#3b7ca1;box-shadow:0 0 0 3px #3b7ca12e}.helper-text{margin:.46rem 0 0;color:#28465b;font-size:.8rem}.helper-text-muted{color:#577082}.action-row{margin-top:.95rem;display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}.action-row button{border:0;border-radius:12px;padding:.62rem 1.02rem;background:linear-gradient(130deg,#155477,#1f7ca8 55%,#2598b8);color:#f7fcff;font-size:.86rem;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .16s ease,filter .18s ease}.action-row button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 9px 24px #18638b5c}.action-row button:disabled{opacity:.62;cursor:not-allowed}.error-inline{margin:0;color:#af2f3c;font-size:.84rem}.panel-output{min-height:520px}.empty-state{border:1px solid #c9d6df;border-radius:16px;padding:1.1rem;background:linear-gradient(155deg,#f4f8fbf2,#eff6fae0)}.empty-state p{margin:0;color:#284456}.empty-state p+p{margin-top:.4rem;color:#4a6577}.results-stack{display:grid;gap:.8rem}.overview-block{border:1px solid rgba(62,92,118,.28);border-radius:14px;background:linear-gradient(180deg,#f2f9fbf2,#f8fcfdeb);padding:.82rem}.subhead-row{display:flex;justify-content:space-between;align-items:baseline;gap:.7rem;margin-bottom:.5rem}.subhead-row h3{margin:0;font-size:.95rem;color:#112d3f}.subhead-row p{margin:0;color:#4f687a;font-size:.76rem}.attribute-stack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.attribute-tile{border:1px solid rgba(79,118,145,.25);border-radius:11px;background:#ffffffe0;padding:.6rem .7rem}.attribute-label{margin:0;font-family:var(--font-code);text-transform:uppercase;letter-spacing:.05em;color:#4d6678;font-size:.68rem}.attribute-value{margin:.38rem 0 0;color:#16394f;font-size:.86rem;font-weight:600}.score-banner{border-radius:12px;padding:.72rem .85rem;border:1px solid rgba(25,109,158,.3);background:linear-gradient(135deg,#dbf2fde0,#eaf8fbe6)}.score-banner p{margin:0;color:#194866;font-size:.9rem}.score-banner strong{color:#0f2f45}.escalation-banner{border-radius:12px;padding:.7rem .86rem;border:1px solid transparent}.escalation-banner p{margin:0;font-size:.81rem}.escalation-title{font-weight:700;margin-bottom:.3rem!important}.escalation-clear{border-color:#31816652;background:linear-gradient(120deg,#e5f7ece6,#f1fbf6e0)}.escalation-clear p{color:#245945}.escalation-alert{border-color:#af344957;background:linear-gradient(120deg,#ffe9ecf2,#fff3f5e6)}.escalation-alert p{color:#7a2331}.criteria-grid{display:grid;grid-template-columns:1fr;gap:.68rem}.criterion-card{border:1px solid rgba(77,105,128,.28);border-radius:14px;background:#ffffffe6;padding:.77rem;animation:fadeInUp .42s ease-out both;animation-delay:var(--stagger-delay, 0ms)}.criterion-head{display:flex;justify-content:space-between;gap:.6rem;align-items:flex-start}.criterion-head h4{margin:0;font-size:.92rem;color:#173247}.status-chip{border-radius:999px;padding:.2rem .52rem;font-size:.7rem;font-weight:700;letter-spacing:.01em;white-space:nowrap}.status-pass{background:#d8f2e5;color:#186a49}.status-fail{background:#ffdfe3;color:#982537}.status-warn{background:#fff0cc;color:#815612}.status-info{background:#ddebf8;color:#264f73}.criterion-reason{margin:.58rem 0 0;color:#36566b;font-size:.8rem;line-height:1.48}.criterion-meta{margin:.46rem 0 0;color:#4a677a;font-size:.77rem;line-height:1.4}.criterion-meta strong{color:#1f4057;font-weight:600}.insight-box{margin-top:.58rem;border:1px solid rgba(66,136,111,.32);border-radius:12px;background:#f4fbf7e6;padding:.56rem}.insight-box-neutral{border-color:#566d814d;background:#f4f8fceb}.insight-box-amber{border-color:#b68d4161;background:#fffaf0e6}.insight-box p{margin:0;font-size:.75rem;line-height:1.43;color:#355a4a}.insight-box-neutral p{color:#3d5568}.insight-box-amber p{color:#71531a}.insight-title{font-family:var(--font-code);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem!important;margin-bottom:.36rem!important}.steps-list p+p{margin-top:.24rem}.evidence-list{display:grid;gap:.35rem;margin-top:.32rem}.evidence-item{border:1px solid rgba(76,107,126,.25);border-radius:10px;padding:.45rem;background:#ffffffd1}.evidence-item p+p{margin-top:.2rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes loadingPulse{0%,to{transform:scale(.96);opacity:.7}50%{transform:scale(1.04);opacity:1}}@keyframes loadingCoreGlow{0%,to{transform:scale(.96);filter:saturate(.95)}50%{transform:scale(1.04);filter:saturate(1.08)}}@keyframes loadingSweep{0%{transform:translate(0)}to{transform:translate(360%)}}@keyframes loadingDotPulse{0%,to{opacity:.75;transform:scale(.95)}50%{opacity:1;transform:scale(1.12)}}@media(max-width:1120px){.workspace-grid{grid-template-columns:1fr}.panel-output{min-height:0}}@media(max-width:840px){.dashboard-root{width:min(1260px,calc(100% - 1.2rem));padding-top:1.4rem}.loading-screen__panel{padding:1.2rem 1rem 1rem;border-radius:22px}.loading-screen__signal{width:74px;height:74px}.loading-screen__signal-core{inset:15px}.metric-strip{grid-template-columns:1fr}.criterion-card{padding:.7rem}.subhead-row{flex-direction:column;align-items:flex-start;gap:.2rem}}
