:root{color-scheme:dark}*{box-sizing:border-box}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Helvetica Neue,Arial,"Apple Color Emoji","Segoe UI Emoji";line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(1200px 600px at 20% -10%,#0b1220 0%,transparent 60%),radial-gradient(900px 480px at 100% 0%,#111827 0%,transparent 60%),#0a0f1c;color:#e5e7eb}.app{max-width:880px;margin:32px auto;padding:0 16px 64px}.app>header{margin-bottom:24px;background:linear-gradient(180deg,#0f172ad9,#0f172af2);border:1px solid #1f2937;border-radius:16px;padding:18px 20px;box-shadow:0 10px 30px #00000059;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.app>header h1{margin:0;text-align:center;letter-spacing:-.02em;font-size:1.9rem;background:linear-gradient(90deg,#60a5fa,#a5b4fc);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 8px 24px rgba(96,165,250,.35)}.app>header p{margin:8px 0 0;color:#94a3b8;text-align:center}.dropzone{border:1px dashed #334155;background:#0f172a;border-radius:16px;padding:28px;text-align:center;transition:border-color .2s,box-shadow .2s,background .2s;box-shadow:0 8px 24px #00000059}.dropzone:hover,.dropzone:focus-within{border-color:#60a5fa;box-shadow:0 12px 32px #00000073;background:#0b1220}.dropzone p{margin:0;color:#cbd5e1;font-weight:600}.dropzone input[type=file]{margin-top:12px}.preview,.actions{margin-top:16px}button{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(180deg,#1d4ed8,#1e40af);color:#e5e7eb;border:1px solid #1e3a8a;border-radius:10px;padding:10px 18px;font-weight:700;font-size:.95rem;letter-spacing:.01em;cursor:pointer;transition:box-shadow .2s,transform .1s,background .2s,opacity .2s;box-shadow:0 8px 22px #1d4ed859}button.btn-reactive{position:relative;overflow:hidden;--mx: 50%;--my: 50%;background:radial-gradient(120px circle at var(--mx) var(--my),rgba(96,165,250,.35),transparent 60%),linear-gradient(180deg,#1d4ed8,#1e40af)}button.btn-reactive:hover{box-shadow:0 14px 36px #1d4ed88c}button:hover{box-shadow:0 10px 28px #1d4ed873}button:active{transform:translateY(1px)}button:focus-visible{outline:none;box-shadow:0 0 0 3px #60a5fa59}button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.results{margin-top:24px;background:#0f172a;border:1px solid #1f2937;border-radius:14px;padding:16px;box-shadow:0 8px 24px #00000059}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.tag{background:#0b1220;color:#e5e7eb;border:1px solid #1f2937;border-radius:999px;padding:6px 12px;font-size:.85rem}.error{color:#fecaca;background:#7f1d1d;border:1px solid #b91c1c;padding:8px 10px;border-radius:8px}
