/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--spacing:.25rem;--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-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;-webkit-text-decoration:inherit;-webkit-text-decoration: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}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.grid{display:grid}.hidden{display:none}.table{display:table}}:root{--background:#090d0b;--surface:#111713;--surface-raised:#18221b;--line:#ccdacf24;--line-strong:#ccdacf45;--foreground:#f0f2ed;--muted:#909b93;--accent:#c5dd78;--accent-secondary:#78977e;--accent-warm:#c69a6c;--accent-dark:#141a0c;--success:#88c895;--danger:#d98773;--font-geist-sans:"Times New Roman", "Songti SC", STSong, SimSun, serif;--font-geist-mono:"Times New Roman", "Songti SC", STSong, SimSun, serif}*{box-sizing:border-box}html{background:var(--background)}body{background:var(--background);min-height:100vh;color:var(--foreground);text-rendering:optimizelegibility;margin:0;font-family:Times New Roman,Songti SC,STSong,SimSun,serif}button,textarea{font:inherit}button{color:inherit}.app-shell{width:min(1500px,100%);min-height:100vh;margin:0 auto;padding:0 48px;position:relative;overflow:hidden}.topographic-grid{z-index:-1;opacity:.27;background-image:linear-gradient(#d5f35b0b 1px,#0000 1px),linear-gradient(90deg,#d5f35b0b 1px,#0000 1px),radial-gradient(circle at 82% 15%,#d5f35b17,#0000 27%);background-size:46px 46px,46px 46px,100% 100%;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 77%);mask-image:linear-gradient(#000,#0000 77%)}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:104px;display:flex}.brand-lockup{align-items:center;display:flex}.brand-subtitle{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;text-transform:uppercase;font-size:9px}.connection-pill{border:1px solid var(--line);min-height:36px;color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.04em;background:#101614d1;align-items:center;gap:9px;padding:0 14px;font-size:11px;display:flex}.topbar-actions{align-items:center;gap:9px;display:flex}.logout-button{border:1px solid var(--line);color:#7f8d85;cursor:pointer;background:0 0;min-height:36px;padding:0 12px;font-size:10px;transition:border-color .16s,color .16s}.logout-button:hover{border-color:var(--line-strong);color:var(--foreground)}.status-dot{background:#6e7973;border-radius:50%;width:7px;height:7px}.connection-pill.offline .status-dot{background:var(--danger)}.connection-pill.checking .status-dot{animation:1.4s ease-in-out infinite pulse}.eyebrow,.processing-kicker,.empty-kicker{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.2em;margin:0 0 20px;font-size:10px}h1{letter-spacing:-.055em;max-width:760px;margin:0;font-size:clamp(42px,5.5vw,76px);font-weight:540;line-height:1.02}h1 span{color:var(--accent)}.workspace{border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0b0f0ec7;grid-template-columns:minmax(0,.94fr) minmax(420px,1.06fr);min-height:720px;display:grid}.input-column,.result-column{min-width:0;padding:30px}.input-column{border-right:1px solid var(--line)}.section-label{align-items:center;gap:13px;margin-bottom:24px;display:flex}.section-label>span{border:1px solid var(--line-strong);width:30px;height:30px;color:var(--accent);font-family:var(--font-geist-mono), monospace;place-items:center;font-size:9px;display:grid}.section-label strong,.section-label small{display:block}.section-label strong{font-size:13px;font-weight:600}.section-label small{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.15em;margin-top:2px;font-size:8px}.drop-zone,.image-preview{border:1px dashed var(--line-strong);background:linear-gradient(135deg, #d5f35b05, transparent 50%), var(--surface);min-height:320px;position:relative}.drop-zone{cursor:pointer;outline:none;flex-direction:column;justify-content:center;align-items:center;transition:border-color .18s,background .18s,transform .18s;display:flex}.drop-zone:hover,.drop-zone:focus-visible,.drop-zone.dragging{border-color:var(--accent);background:#d5f35b0e}.upload-icon,.button-icon{place-items:center;display:grid}.upload-icon{width:56px;height:56px;color:var(--accent);background:#d5f35b0d;border:1px solid #d5f35b4d;margin-bottom:22px}.upload-icon svg{width:23px}.upload-icon svg,.button-icon svg,.copy-button svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.drop-zone strong{font-size:18px;font-weight:520}.drop-zone p{color:var(--muted);margin:7px 0 24px;font-size:13px}.file-formats{gap:7px;display:flex}.file-formats span{border:1px solid var(--line);color:#7d8b83;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;padding:5px 8px;font-size:8px}.image-preview{overflow:hidden}.image-preview img{object-fit:contain;background:#080b0a;width:100%;height:320px;display:block}.scan-line{background:linear-gradient(90deg, transparent, var(--accent), transparent);opacity:.8;height:1px;animation:3.5s ease-in-out infinite scan;position:absolute;top:0;left:0;right:0;box-shadow:0 0 18px #d5f35bb3}.corner-marker{border-color:var(--accent);opacity:.8;width:20px;height:20px;position:absolute}.top-left{border-top:1px solid;border-left:1px solid;top:14px;left:14px}.top-right{border-top:1px solid;border-right:1px solid;top:14px;right:14px}.bottom-left{border-bottom:1px solid;border-left:1px solid;bottom:14px;left:14px}.bottom-right{border-bottom:1px solid;border-right:1px solid;bottom:14px;right:14px}.replace-button{z-index:2;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050807cc;border:1px solid #ffffff3d;padding:8px 11px;font-size:11px;position:absolute;top:14px;right:14px}.image-meta-overlay{gap:6px;display:flex;position:absolute;bottom:14px;left:14px}.image-meta-overlay span{color:#dfe7e1;font-family:var(--font-geist-mono), monospace;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050807cc;padding:6px 8px;font-size:9px}.prompt-field{margin-top:22px;display:block;position:relative}.prompt-field>span{color:#cbd4ce;margin-bottom:9px;font-size:12px;font-weight:560;display:block}.prompt-field textarea{resize:vertical;border:1px solid var(--line);background:var(--surface);color:#dce4df;border-radius:0;outline:none;width:100%;min-height:128px;padding:15px 16px 30px;font-size:13px;line-height:1.7;transition:border-color .18s}.prompt-field textarea:focus{border-color:#d5f35b8c}.prompt-field small{color:#657169;font-family:var(--font-geist-mono), monospace;font-size:8px;position:absolute;bottom:10px;right:12px}.error-message{color:#ffc0b4;align-items:center;gap:9px;margin-top:13px;font-size:12px;display:flex}.error-message span{width:18px;height:18px;font-family:var(--font-geist-mono), monospace;border:1px solid #ff8d7780;place-items:center;font-size:10px;display:grid}.analyze-button{background:var(--accent);width:100%;height:56px;color:var(--accent-dark);cursor:pointer;border:0;grid-template-columns:30px 1fr 30px;align-items:center;margin-top:16px;font-size:14px;font-weight:670;transition:filter .16s,transform .16s;display:grid}.analyze-button:hover:not(:disabled){filter:brightness(1.08)}.analyze-button:active:not(:disabled){transform:scale(.995)}.analyze-button:disabled{cursor:not-allowed;opacity:.28}.button-icon svg{width:19px}.button-arrow{font-size:18px;font-weight:400}.optimization-note{color:#78867e;font-family:var(--font-geist-mono), monospace;text-align:center;margin:10px 0 0;font-size:9px}.result-panel{border:1px solid var(--line);background:radial-gradient(circle at 50% 50%, #d5f35b06, transparent 40%), var(--surface);min-height:610px;display:flex;position:relative;overflow:hidden}.result-panel:before,.result-panel:after{content:"";pointer-events:none;position:absolute}.result-panel:before{background-image:linear-gradient(#d5f35b06 1px,#0000 1px),linear-gradient(90deg,#d5f35b06 1px,#0000 1px);background-size:32px 32px;inset:0}.result-panel:after{border:1px solid #d5f35b09;inset:14px}.empty-state,.processing-state{z-index:1;text-align:center;width:min(390px,78%);margin:auto;position:relative}.radar{background:radial-gradient(circle,#0000 31%,#d5f35b1f 32%,#0000 33% 63%,#d5f35b1f 64%,#0000 65%),linear-gradient(90deg,#0000 49.6%,#d5f35b1f 50%,#0000 50.4%),linear-gradient(#0000 49.6%,#d5f35b1f 50%,#0000 50.4%);border:1px solid #d5f35b38;border-radius:50%;width:170px;height:170px;margin:0 auto 32px;position:relative}.radar-line{transform-origin:0;background:linear-gradient(90deg, var(--accent), transparent);width:50%;height:1px;animation:4s linear infinite rotate;position:absolute;inset:50% 50% 0}.blip{background:var(--accent);width:5px;height:5px;box-shadow:0 0 9px var(--accent);border-radius:50%;position:absolute}.blip.one{top:30%;left:66%}.blip.two{opacity:.6;top:62%;left:34%}.blip.three{opacity:.35;top:70%;left:73%}.empty-kicker{margin-bottom:13px}.empty-state h2,.processing-state h2{margin:0 0 12px;font-size:22px;font-weight:520}.empty-state>p:last-child,.processing-state>p:not(.processing-kicker){color:var(--muted);margin:0;font-size:12px;line-height:1.8}.orbit{border:1px solid #d5f35b29;border-radius:50%;width:100px;height:100px;margin:0 auto 30px;animation:3s linear infinite rotate;position:relative}.orbit:before,.orbit:after{content:"";border:1px solid #d5f35b21;border-radius:50%;position:absolute;inset:15px}.orbit:after{inset:32px}.orbit span{background:var(--accent);width:7px;height:7px;box-shadow:0 0 14px var(--accent);border-radius:50%;position:absolute}.orbit span:first-child{top:-3px;left:46px}.orbit span:nth-child(2){opacity:.6;bottom:12px;left:8px}.orbit span:nth-child(3){opacity:.3;bottom:4px;right:17px}.progress-track{background:#d5f35b17;width:100%;height:2px;margin-top:28px;overflow:hidden}.progress-track span{background:var(--accent);width:45%;height:100%;animation:1.7s ease-in-out infinite progress;display:block}.result-panel.has-result{min-height:610px;padding:28px;display:block}.result-header{z-index:1;border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding-bottom:21px;display:flex;position:relative}.result-status{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:7px;font-size:9px;display:flex}.result-status i{background:var(--accent);width:5px;height:5px;box-shadow:0 0 8px var(--accent);border-radius:50%}.result-header h2{margin:7px 0 0;font-size:24px;font-weight:520}.copy-button{border:1px solid var(--line);color:#a8b5ad;cursor:pointer;background:0 0;align-items:center;gap:7px;padding:8px 10px;font-size:10px;display:flex}.copy-button:hover{border-color:var(--line-strong);color:var(--foreground)}.copy-button svg{width:14px}.result-text{z-index:1;scrollbar-color:#d5f35b47 transparent;max-height:430px;padding:25px 4px 110px;position:relative;overflow-y:auto}.result-text p,.result-text h3{color:#cbd5cf;margin:0;font-size:13px;line-height:1.85}.result-text h3{color:var(--foreground);margin-top:20px;font-size:14px;font-weight:620}.result-text h3:first-child{margin-top:0}.result-gap{height:11px}.result-list{padding-left:15px;position:relative}.result-list:before{content:"";background:var(--accent);width:4px;height:4px;position:absolute;top:11px;left:1px}.result-metrics{z-index:2;border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0b0f0eeb;grid-template-columns:repeat(3,1fr);display:grid;position:absolute;bottom:26px;left:28px;right:28px}.result-metrics div{padding:13px 15px}.result-metrics div+div{border-left:1px solid var(--line)}.result-metrics span,.result-metrics strong{display:block}.result-metrics span{color:var(--muted);margin-bottom:5px;font-size:9px}.result-metrics strong{font-family:var(--font-geist-mono), monospace;font-size:11px;font-weight:520}footer{color:#65716a;min-height:80px;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;grid-template-columns:1fr auto 1fr;align-items:center;font-size:8px;display:grid}footer div:last-child{text-align:right}.footer-dot{background:var(--accent);border-radius:50%;width:5px;height:5px;margin-right:6px;display:inline-block}.gateway-shell{place-items:center;min-height:100vh;padding:90px 40px;display:grid;position:relative;overflow:hidden}.gateway-brand{align-items:center;display:flex;position:absolute;top:42px;left:48px}.login-card{border:1px solid var(--line);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:linear-gradient(135deg,#d5f35b09,#0000 52%),#101614f0;width:min(780px,100%);padding:62px;position:relative;box-shadow:0 35px 100px #00000057}.login-card:before,.login-card:after{content:"";pointer-events:none;width:26px;height:26px;position:absolute}.login-card:before{border-top:1px solid var(--accent);border-left:1px solid var(--accent);top:-1px;left:-1px}.login-card:after{border-right:1px solid var(--accent);border-bottom:1px solid var(--accent);bottom:-1px;right:-1px}.login-card h1{font-size:clamp(40px,6vw,66px)}.login-copy{color:#99a69f;max-width:540px;margin:26px 0 38px;font-size:13px;line-height:1.8}.login-card form>label{color:#cbd4ce;margin-bottom:10px;font-size:11px;font-weight:560;display:block}.password-row{grid-template-columns:1fr 150px;display:grid}.password-row input{border:1px solid var(--line-strong);min-width:0;height:56px;color:var(--foreground);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;background:#0b100e;border-right:0;border-radius:0;outline:0;padding:0 17px;font-size:15px}.password-row input:focus{border-color:#d5f35ba6}.password-row button{background:var(--accent);height:56px;color:var(--accent-dark);cursor:pointer;border:0;justify-content:space-between;align-items:center;padding:0 16px 0 20px;font-size:12px;font-weight:680;display:flex}.password-row button:disabled{cursor:not-allowed;opacity:.32}.password-row button span{font-size:17px;font-weight:400}.login-error{color:#ffc0b4;margin-top:11px;font-size:11px}.gateway-security{color:#66736b;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;align-items:center;gap:15px;margin-top:31px;font-size:8px;display:flex}.gateway-security span:first-child{background:var(--accent);width:5px;height:5px;box-shadow:0 0 8px var(--accent);border-radius:50%}.gateway-coordinates{color:#566159;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-align:right;font-size:8px;line-height:1.7;position:absolute;bottom:36px;right:48px}.gateway-loader{color:#7e8b83;font-family:var(--font-geist-mono), monospace;letter-spacing:.16em;flex-direction:column;align-items:center;gap:17px;font-size:9px;display:flex}.gateway-loader i{border:1px solid #d5f35b2e;border-top-color:var(--accent);border-radius:50%;width:36px;height:36px;animation:1s linear infinite rotate}button,[role=button],textarea,input{-webkit-tap-highlight-color:transparent}button:focus-visible,[role=button]:focus-visible,textarea:focus-visible,input:focus-visible{outline-offset:3px;outline:2px solid #67e8f9cc}.topbar{border:1px solid var(--line);-webkit-backdrop-filter:blur(22px)saturate(130%);backdrop-filter:blur(22px)saturate(130%);background:#0a0f22b3;border-radius:18px;height:76px;margin-top:18px;padding:0 18px 0 20px;box-shadow:0 18px 60px #0000003d,inset 0 1px #ffffff06}.brand-subtitle{color:#b8c3dc;letter-spacing:.18em;font-size:10px}.connection-pill,.logout-button{background:#131d39b8;border-radius:999px;min-height:38px}.connection-pill{color:#afbdd6;box-shadow:inset 0 1px #ffffff09}.logout-button{color:#9aa8c2;padding:0 15px}.logout-button:hover{color:#dffbff;background:#67e8f914;border-color:#67e8f966}.status-dot{background:#64748b}.eyebrow,.processing-kicker,.empty-kicker{color:var(--accent);letter-spacing:.24em}.workspace{-webkit-backdrop-filter:blur(26px)saturate(135%);backdrop-filter:blur(26px)saturate(135%);background:linear-gradient(145deg,#0d1428e0,#080c1cc2);border-color:#94a3dc33;border-radius:28px;min-height:720px;position:relative;overflow:hidden;box-shadow:0 32px 110px #00000057,inset 0 1px #ffffff09}.workspace:before{content:"";z-index:3;pointer-events:none;background:linear-gradient(90deg,#0000,#67e8f9d9,#a78bfae6,#0000);height:1px;position:absolute;top:0;left:9%;right:9%;box-shadow:0 0 26px #6366f161}.input-column{background:linear-gradient(160deg,#60a5fa06,#0000 48%);border-right-color:#94a3dc26}.section-label{margin-bottom:22px}.section-label>span{color:#bff7ff;background:linear-gradient(145deg,#67e8f933,#60a5fa14);border:0;border-radius:11px;width:34px;height:34px;box-shadow:inset 0 0 0 1px #67e8f938}.result-column .section-label>span{color:#ddd0ff;background:linear-gradient(145deg,#a78bfa3d,#f472b614);box-shadow:inset 0 0 0 1px #a78bfa40}.section-label strong{color:#eef2ff;font-size:14px}.section-label small{color:#7483a2}.input-column .section-label small{color:#67cce5}.result-column .section-label small{color:#a78bfa}.drop-zone,.image-preview{background:radial-gradient(circle at 50% 10%,#67e8f913,#0000 38%),linear-gradient(145deg,#111b35e0,#0a1022e6);border-color:#8ba3d447;border-radius:20px;min-height:320px;box-shadow:inset 0 1px #ffffff06}.upload-icon{color:#dcfbff;background:linear-gradient(145deg,#67e8f933,#a78bfa2e);border:0;border-radius:18px;width:62px;height:62px;box-shadow:inset 0 0 0 1px #9fe6ff33,0 16px 40px #477fff1f}.file-formats span{color:#8795b2;background:#778abb12;border-color:#8e9fcf29;border-radius:999px}.prompt-field textarea{color:#e6eaff;background:#090f22d1;border-color:#8e9fcf2e;border-radius:14px;box-shadow:inset 0 1px #ffffff06}.analyze-button:disabled{opacity:.3;box-shadow:none}.result-panel{background:radial-gradient(circle at 24% 14%,#67e8f913,#0000 30%),radial-gradient(circle at 82% 74%,#a78bfa17,#0000 36%),linear-gradient(145deg,#0f1830eb,#080d1ef0);border-color:#91a1d22e;border-radius:20px;box-shadow:inset 0 1px #ffffff06}.result-panel:after{border:1px solid #8e9fcf0b;border-radius:14px}.blip{background:var(--accent);box-shadow:0 0 12px var(--accent)}.blip.two{background:var(--accent-secondary);box-shadow:0 0 12px var(--accent-secondary)}.orbit{border-color:#67e8f933;box-shadow:0 0 60px #6366f11f}.orbit span:first-child{background:var(--accent);box-shadow:0 0 16px var(--accent)}.orbit span:nth-child(2){background:var(--accent-secondary);box-shadow:0 0 16px var(--accent-secondary)}.orbit span:nth-child(3){background:var(--accent-warm);box-shadow:0 0 16px var(--accent-warm)}.progress-track span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--accent-secondary))}.copy-button{color:#aebbd4;background:#7c8fc30f;border-color:#8e9fcf2e;border-radius:10px}.copy-button:hover{color:#dffbff;background:#67e8f914;border-color:#67e8f96b}.result-metrics{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#080d1edb;border-color:#8e9fcf2e;border-radius:14px;overflow:hidden;box-shadow:0 18px 44px #00000038,inset 0 1px #ffffff09}.login-card:before,.login-card:after{filter:blur(16px);border:0;border-radius:50%;width:220px;height:220px}.login-card:before{background:#67e8f91f;top:-170px;left:auto;right:-60px}.login-card:after{background:#a78bfa24;bottom:-175px;left:-50px;right:auto}.login-card>*{z-index:1;position:relative}.password-row input{color:#f5f7ff;background:#070c1cb8;border-color:#96a7d742;border-radius:14px 0 0 14px}.password-row button{color:#07101c;background:linear-gradient(105deg,#67e8f9,#60a5fa 52%,#a78bfa);border-radius:0 14px 14px 0;box-shadow:0 15px 36px #3b82f62e}body{background-color:#0000;background-image:radial-gradient(circle at 80% 4%,#78977e17,#0000 30%),radial-gradient(circle at 15% 72%,#c5dd780b,#0000 34%),linear-gradient(#090d0b 0%,#0b100d 54%,#070a08 100%);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}.app-shell{width:min(1500px,100%);padding:0 48px}.topographic-grid{opacity:.42;background-image:linear-gradient(#c5dd7808 1px,#0000 1px),linear-gradient(90deg,#78977e08 1px,#0000 1px),radial-gradient(circle at 82% 15%,#c5dd7814,#0000 28%);background-size:48px 48px,48px 48px,100% 100%;-webkit-mask-image:linear-gradient(#000,#000000b8 58%,#0000 92%);mask-image:linear-gradient(#000,#000000b8 58%,#0000 92%)}.topbar{border:0;border-bottom:1px solid var(--line);height:104px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-radius:0;margin-top:0;padding:0}.brand-subtitle{color:#9ca79f;letter-spacing:.16em;font-size:10px;font-weight:600}.connection-pill,.logout-button{min-height:36px;box-shadow:none;background:#111713eb;border-radius:3px}.connection-pill{color:#a3ada6}.logout-button{color:#89948c}.logout-button:hover{border-color:var(--line-strong);color:var(--foreground);background:#151d18}.connection-pill.online .status-dot{background:var(--success);box-shadow:0 0 0 4px #88c89514,0 0 12px #88c8955c}.intro{padding:72px 0 52px}.eyebrow,.processing-kicker,.empty-kicker{color:var(--accent);letter-spacing:.2em;font-weight:600}h1{letter-spacing:-.035em;max-width:960px;font-size:clamp(46px,6vw,84px);font-weight:600;line-height:1.02}h1 span{color:var(--accent);text-shadow:none;background:0 0;-webkit-background-clip:border-box;background-clip:border-box}.workspace{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0d120ff5;border-color:#ccdacf33;border-radius:8px;box-shadow:0 28px 90px #00000061,inset 0 1px #ffffff05}.workspace:before{box-shadow:none;background:linear-gradient(90deg,#0000,#c5dd7894,#0000);left:0;right:0}.input-column,.result-column{padding:32px}.input-column{border-right-color:var(--line);background:#0e14109e}.result-column{background:#0a0f0ca3}.section-label>span,.result-column .section-label>span{border:1px solid var(--line-strong);background:var(--surface-raised);width:32px;height:32px;color:var(--accent);box-shadow:none;border-radius:3px}.section-label strong{color:var(--foreground);font-size:14px;font-weight:600}.section-label small,.input-column .section-label small,.result-column .section-label small{color:#7f8b82}.drop-zone,.image-preview{background:linear-gradient(145deg,#c5dd7806,#0000 50%),#101713;border-color:#ccdacf3b;border-radius:6px;box-shadow:inset 0 1px #ffffff05}.drop-zone:hover,.drop-zone:focus-visible,.drop-zone.dragging{background:#141d17;border-color:#c5dd78b8;transform:none;box-shadow:inset 0 0 0 1px #c5dd780b}.drop-zone.dragging{transform:scale(.994)}.upload-icon{width:58px;height:58px;color:var(--accent);box-shadow:none;background:#c5dd780e;border:1px solid #c5dd7847;border-radius:4px}.drop-zone strong{color:var(--foreground);font-size:18px;font-weight:600}.file-formats{flex-wrap:wrap;justify-content:center}.file-formats span{border-color:var(--line);color:#7f8a82;background:#121a15;border-radius:2px}.image-preview{border-style:solid}.image-preview img{background:#080c09}.scan-line{background:linear-gradient(90deg, transparent, var(--accent), transparent);box-shadow:0 0 16px #c5dd788c}.corner-marker{border-color:var(--accent)}.replace-button,.image-meta-overlay span{background:#080c09db;border-radius:3px;box-shadow:inset 0 0 0 1px #ffffff14}.image-meta-overlay{flex-wrap:wrap;max-width:calc(100% - 28px)}.prompt-field>span{color:#d5dbd6}.prompt-field textarea{border-color:var(--line);color:#e1e5e1;background:#0d1410;border-radius:4px;box-shadow:inset 0 1px #ffffff05}.prompt-field textarea:focus{border-color:#c5dd788c;box-shadow:0 0 0 3px #c5dd780e}.prompt-field small{color:#667168}.error-message{color:#e4a18f}.error-message span{background:#d987730f;border-color:#d987737a;border-radius:2px}.analyze-button{color:#151b0e;background:linear-gradient(#cde488,#b9d269);border-radius:4px;height:58px;box-shadow:0 12px 30px #00000038,inset 0 1px #ffffff59}.analyze-button:hover:not(:disabled){filter:brightness(1.035);transform:translateY(-1px)}.optimization-note{color:#7c887f}.result-panel{border-color:var(--line);background:radial-gradient(circle at 50% 45%,#c5dd7809,#0000 38%),#0e1511;border-radius:6px;box-shadow:inset 0 1px #ffffff05}.result-panel:before{background-image:linear-gradient(#c5dd7806 1px,#0000 1px),linear-gradient(90deg,#78977e06 1px,#0000 1px);background-size:34px 34px}.result-panel:after{border-color:#c5dd7809;border-radius:3px}.radar{background:radial-gradient(circle,#0000 31%,#c5dd781c 32%,#0000 33% 63%,#78977e1f 64%,#0000 65%),linear-gradient(90deg,#0000 49.6%,#c5dd781c 50%,#0000 50.4%),linear-gradient(#0000 49.6%,#78977e1c 50%,#0000 50.4%);border-color:#c5dd7842;box-shadow:inset 0 0 34px #c5dd7806}.radar-line{background:linear-gradient(90deg, var(--accent), transparent)}.blip,.blip.two{background:var(--accent);box-shadow:0 0 9px var(--accent)}.blip.three{background:var(--accent-warm);box-shadow:0 0 9px var(--accent-warm)}.orbit{box-shadow:none;border-color:#c5dd782e}.orbit:before{border-color:#78977e29}.orbit:after{border-color:#c5dd781c}.orbit span:first-child,.orbit span:nth-child(2),.orbit span:nth-child(3){background:var(--accent);box-shadow:0 0 12px var(--accent)}.progress-track{background:#c5dd7814;border-radius:0;height:2px}.progress-track span{background:var(--accent);border-radius:0}.result-status{color:var(--success)}.result-status i{background:var(--success);box-shadow:0 0 8px var(--success)}.copy-button{border-color:var(--line);color:#a6b0a8;background:#121a15;border-radius:3px}.copy-button:hover{border-color:var(--line-strong);color:var(--foreground);background:#17211a}.result-text{scrollbar-color:#c5dd783d transparent}.result-text p,.result-text h3{color:#cbd2cc}.result-list:before{background:var(--accent);border-radius:0}.result-metrics{border-color:var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;background:#090e0bf0;border-radius:4px;box-shadow:0 16px 36px #0000003d}.result-metrics div+div{border-left-color:var(--line)}.result-metrics strong{color:var(--foreground)}footer{color:#657168}.footer-dot{background:var(--success);box-shadow:0 0 8px #88c8956b}.gateway-shell{background:radial-gradient(circle at 18% 12%,#78977e1a,#0000 31%),radial-gradient(circle at 85% 80%,#c5dd780e,#0000 34%)}.login-card{-webkit-backdrop-filter:none;backdrop-filter:none;background:#101713;border-color:#ccdacf33;border-radius:8px;overflow:hidden;box-shadow:0 36px 100px #0006,inset 0 1px #ffffff05}.login-card:before,.login-card:after{filter:none;background:0 0;border-radius:0;width:26px;height:26px}.login-card:before{border-top:1px solid var(--accent);border-left:1px solid var(--accent);top:-1px;left:-1px;right:auto}.login-card:after{border-right:1px solid var(--accent);border-bottom:1px solid var(--accent);bottom:-1px;left:auto;right:-1px}.login-copy{color:#9ca69e}.login-card form>label{color:#cfd5d0}.password-row input{border-color:var(--line-strong);color:var(--foreground);background:#0b100d;border-radius:4px 0 0 4px}.password-row input:focus{border-color:#c5dd7894;box-shadow:0 0 0 3px #c5dd780d}.password-row button{color:#151b0e;box-shadow:none;background:linear-gradient(#cde488,#b9d269);border-radius:0 4px 4px 0}.gateway-security{color:#68736b}.gateway-security span:first-child{background:var(--success);box-shadow:0 0 8px var(--success)}.gateway-coordinates,.gateway-loader{color:#657168}.gateway-loader i{border-color:#c5dd7826;border-top-color:var(--accent);box-shadow:none}button:focus-visible,[role=button]:focus-visible,textarea:focus-visible,input:focus-visible{outline-color:#c5dd78bf}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes scan{0%,to{opacity:.2;top:4%}50%{opacity:.9;top:96%}}@keyframes pulse{50%{opacity:.5}}@keyframes progress{0%{transform:translate(-110%)}to{transform:translate(330%)}}@media (width<=980px){.app-shell{padding:0 24px}.workspace{grid-template-columns:1fr}.input-column{border-right:0;border-bottom:1px solid var(--line)}footer{grid-template-columns:1fr 1fr;gap:12px;padding:22px 0}footer div:nth-child(2){display:none}}@media (width<=620px){.app-shell{padding:0 14px}.topbar{height:84px}.brand-subtitle{display:none}.connection-pill{padding:0 10px;font-size:9px}.logout-button{display:none}.intro{padding:45px 2px 36px}h1{font-size:43px}.input-column,.result-column{padding:18px}.drop-zone,.image-preview{min-height:270px}.image-preview img{height:270px}.result-panel{min-height:520px}.result-panel.has-result{padding:20px}.result-metrics{bottom:20px;left:20px;right:20px}.result-metrics div{padding:11px 9px}footer{font-size:7px}.gateway-shell{padding:90px 16px 55px}.gateway-brand{top:26px;left:20px}.login-card{padding:36px 22px}.login-card h1{font-size:40px}.password-row{grid-template-columns:1fr;gap:9px}.password-row input{border-right:1px solid var(--line-strong);border-radius:4px}.password-row button{border-radius:4px;justify-content:center;gap:10px}.gateway-security{flex-wrap:wrap;gap:9px 12px}.gateway-coordinates{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}
