:root{--bg: #0f1419;--surface: #1a222c;--surface-2: #243040;--border: #334155;--text: #e8eef6;--muted: #94a3b8;--accent: #2dd4bf;--accent-dim: #0f766e;--danger: #f87171;--ok: #4ade80;--radius: 14px;--font: "Segoe UI", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:var(--font);color:var(--text);background:radial-gradient(1200px 600px at 10% -10%,#134e4a 0%,transparent 55%),radial-gradient(900px 500px at 100% 0%,#1e3a5f 0%,transparent 50%),var(--bg)}#app{max-width:920px;margin:0 auto;padding:2rem 1.25rem 3rem}header{margin-bottom:1.75rem}header h1{margin:0 0 .35rem;font-size:clamp(1.6rem,3vw,2rem);letter-spacing:-.02em}header p{margin:0;color:var(--muted)}.panel{background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem;margin-bottom:1rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.panel label{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.4rem}.panel input[type=password],.panel input[type=text]{width:100%;padding:.7rem .85rem;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font:inherit}.grid{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:720px){.grid{grid-template-columns:1fr 1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;display:flex;flex-direction:column;gap:.85rem}.card h2{margin:0;font-size:1.05rem}.preview{position:relative;aspect-ratio:4 / 3;border-radius:12px;overflow:hidden;background:var(--surface-2);border:1px dashed var(--border);display:grid;place-items:center}.preview img,.preview video{width:100%;height:100%;object-fit:cover;display:block}.preview .placeholder{color:var(--muted);font-size:.9rem;text-align:center;padding:1rem}.actions{display:flex;flex-wrap:wrap;gap:.5rem}button,.file-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:999px;padding:.55rem .95rem;font:inherit;font-size:.9rem;cursor:pointer}button:hover,.file-btn:hover{border-color:var(--accent)}button.primary{background:linear-gradient(135deg,var(--accent),var(--accent-dim));border-color:transparent;color:#042f2e;font-weight:650}button.primary:disabled{opacity:.55;cursor:not-allowed}button.ghost{background:transparent}.file-btn input{display:none}.hint{margin:0;font-size:.8rem;color:var(--muted)}.result{margin-top:.25rem;padding:1.1rem 1.2rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);min-height:4.5rem}.result .score{font-size:2.4rem;font-weight:700;letter-spacing:-.03em;color:var(--accent)}.result .meta{color:var(--muted);font-size:.9rem;margin-top:.25rem}.result.error{border-color:color-mix(in srgb,var(--danger) 50%,var(--border));color:var(--danger)}.camera-bar{display:flex;gap:.5rem;flex-wrap:wrap}footer{margin-top:1.5rem;color:var(--muted);font-size:.8rem}
