@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600&display=swap";:root{--bg: #05070c;--panel: #080b12;--card: #0b0f1a;--muted: #7a8ca8;--text: #e5f2ff;--accent: #46e6ff;--accent-2: #7f6bff;--border: #12314a;--glow: 0 0 25px rgba(70, 230, 255, .2);font-family:Manrope,system-ui,-apple-system,sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 15% 10%,rgba(70,230,255,.1),transparent 30%),radial-gradient(circle at 80% 0%,rgba(127,107,255,.14),transparent 26%),linear-gradient(135deg,#05070c,#080b12 60%,#05070c)}.app{max-width:1180px;margin:0 auto;padding:36px 24px 88px;position:relative}.app:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(19,37,58,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(19,37,58,.35) 1px,transparent 1px);background-size:120px 120px;opacity:.45;pointer-events:none}.brand-bar{position:relative;z-index:1;display:inline-flex;align-items:center;gap:12px;padding:10px 14px;margin-bottom:16px;border-radius:14px;border:1px solid var(--border);background:#080b12e6;box-shadow:0 0 12px #46e6ff33}.brand-logo{width:38px;height:38px;filter:drop-shadow(0 0 8px rgba(70,230,255,.25))}.brand-titles{display:flex;flex-direction:column;gap:2px}.brand-text{font-weight:700;letter-spacing:.06em}.brand-subtext{font-size:.85rem;color:var(--muted);letter-spacing:.01em}.auth-area{margin-left:12px;display:flex;align-items:center;gap:8px}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 18px;position:relative;overflow:hidden;background:radial-gradient(circle at 20% 15%,rgba(60,230,210,.18),transparent 38%),radial-gradient(circle at 80% 20%,rgba(64,186,255,.2),transparent 42%),radial-gradient(circle at 40% 80%,rgba(24,179,118,.14),transparent 50%),linear-gradient(180deg,#040912f2,#03070efa),linear-gradient(135deg,#061420f2,#03070ef2)}.auth-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='320' height='320' viewBox='0 0 320 320'><g stroke='%2346e6ff' stroke-width='2' fill='none' opacity='0.08' stroke-linecap='round' stroke-linejoin='round'><circle cx='90' cy='70' r='12'/><circle cx='140' cy='70' r='12'/><path d='M90 82v40c0 24 20 44 44 44s44-20 44-44V82'/><path d='M134 166v36c0 18 14 32 32 32 18 0 32-14 32-32v-10'/><circle cx='198' cy='224' r='10'/><path d='M198 214v-34'/><path d='M198 180c0-10 8-18 18-18h18'/></g></svg>");opacity:.3;background-repeat:repeat;pointer-events:none}.auth-page:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 80%,rgba(24,179,118,.2),transparent 45%),radial-gradient(circle at 10% 70%,rgba(70,230,255,.12),transparent 40%),linear-gradient(120deg,rgba(32,220,200,.08),transparent 60%);pointer-events:none}.monitor-panel{position:absolute;width:520px;height:320px;border-radius:26px;background:linear-gradient(140deg,#0e2032ad,#060e1ad9);border:1px solid rgba(70,230,255,.35);box-shadow:0 0 24px #3ce6d22e,inset 0 0 18px #18b37626;opacity:.55;transform:rotate(-2deg);pointer-events:none;z-index:0}.monitor-panel.secondary{width:420px;height:240px;border-radius:22px;opacity:.4;transform:rotate(3deg);border-color:#46e6ff33;box-shadow:0 0 18px #46e6ff1a,inset 0 0 14px #18b3761f}.monitor-panel.left{top:8%;left:6%}.monitor-panel.right{bottom:10%;right:8%}.auth-page .ecg-wave{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.35;z-index:0}.auth-page .ecg-wave svg{width:100%;height:100%}.auth-page .ecg-path{stroke:#3ce6d2b3;stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:3 12;animation:ecgPulse 4.5s linear infinite;filter:drop-shadow(0 0 8px rgba(60,230,210,.45))}.auth-page .ecg-scan{stroke:#18b3768c;stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:90 720;animation:ecgScan 3.8s linear infinite;filter:drop-shadow(0 0 10px rgba(24,179,118,.6))}.auth-card{width:min(600px,94vw);background:linear-gradient(180deg,#0b0f1ae6,#080b12f5);border-radius:18px;padding:28px;border:1px solid var(--border);box-shadow:0 0 18px #3ce6d240,0 0 42px #18b3762e;position:relative;z-index:1}.auth-card:before{content:"Your work";position:absolute;top:-18px;left:18px;font-size:.7rem;letter-spacing:.32em;text-transform:uppercase;color:#3ce6d273;text-shadow:0 0 10px rgba(60,230,210,.35);pointer-events:none}.auth-card{position:relative}.auth-card:after{content:"Your answers";position:absolute;bottom:-18px;right:18px;font-size:.7rem;letter-spacing:.32em;text-transform:uppercase;color:#18b37673;text-shadow:0 0 10px rgba(24,179,118,.35);pointer-events:none}@keyframes scanline{0%{background-position:0% 0%}to{background-position:0% 200%}}@keyframes ecgScan{0%{stroke-dashoffset:0;opacity:.25}50%{opacity:.6}to{stroke-dashoffset:-810;opacity:.25}}@keyframes ecgPulse{0%{stroke-dashoffset:0;opacity:.2}50%{opacity:.6}to{stroke-dashoffset:-200;opacity:.2}}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px;justify-content:center;text-align:left}.auth-panel{display:flex;flex-direction:column;gap:6px}.auth-toggle{display:flex;gap:6px}.auth-toggle button{border:1px solid var(--border);background:var(--card);color:var(--text);padding:6px 10px;border-radius:10px;cursor:pointer}.auth-toggle button.active{background:linear-gradient(90deg,#4f8ef7,#3f78d6);color:#0b1224;border-color:#4f8ef7}.auth-form{display:grid;gap:6px}.auth-form input{background:var(--card);color:var(--text);border:1px solid var(--border);padding:8px 10px;border-radius:10px}.auth-label{display:grid;gap:6px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.password-field{display:flex;align-items:center;gap:8px}.password-field input{flex:1}.password-toggle{position:static;width:28px;height:28px;border-radius:8px;border:1px solid rgba(154,163,178,.6);background:#9aa3b21f;color:#9aa3b2;display:flex;align-items:center;justify-content:center;cursor:pointer}.password-toggle svg{width:16px;height:16px}.password-toggle:hover{color:#c4cbd6;border-color:#9aa3b2e6;background:#9aa3b233}.auth-form select{background:var(--card);color:var(--text);border:1px solid var(--border);padding:6px 10px;border-radius:10px;font-size:.9rem;height:38px}.auth-form button{background:linear-gradient(90deg,#4f8ef7,#3f78d6);border:none;color:#fff;padding:8px 10px;border-radius:10px;cursor:pointer}.auth-error{color:#f87171;font-size:.9rem}.auth-user{display:flex;align-items:center;gap:8px;color:var(--muted)}.panel{background:linear-gradient(180deg,#0b0f1ae6,#080b12f5);border-radius:18px;padding:24px;border:1px solid var(--border);box-shadow:var(--glow);position:relative;overflow:hidden}.panel:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border:1px solid rgba(70,230,255,.08);border-radius:14px;pointer-events:none}.panel-header{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-bottom:8px;min-height:0}.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:16px}.filter{display:flex;flex-direction:column;gap:6px}label{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}select{padding:12px;border-radius:12px;border:1px solid var(--border);font-size:1rem;background:var(--card);color:var(--text);box-shadow:inset 0 0 0 1px #46e6ff0d}.chat{display:flex;flex-direction:column;gap:14px}.message-list{display:flex;flex-direction:column;gap:12px;min-height:140px}.message{padding:16px 18px;border-radius:14px;background:var(--card);border:1px solid var(--border);box-shadow:0 0 0 1px #46e6ff0a}.message.user{border-color:#46e6ff4d;box-shadow:0 0 0 1px #46e6ff33}.role{text-transform:uppercase;font-size:.75rem;color:var(--muted);letter-spacing:.1em;margin-bottom:6px}.message-content{margin:0;white-space:pre-wrap;line-height:1.6;letter-spacing:.01em}.not-found,.error,.loading{padding:12px 14px;border-radius:10px;background:#7f6bff1f;border:1px solid rgba(127,107,255,.35);color:var(--text)}.loading{background:#46e6ff1a;border-color:#46e6ff66}.chat-actions{display:flex;gap:10px}.attachments{display:flex;flex-wrap:wrap;gap:8px}.attachment-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;border:1px solid rgba(70,230,255,.3);background:#080b12cc;box-shadow:0 0 8px #46e6ff1a}.attachment-name{font-size:.9rem}button{border:1px solid var(--border);background:linear-gradient(90deg,#46e6ff1f,#7f6bff1f);color:var(--text);padding:12px 14px;border-radius:12px;font-weight:600;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease;box-shadow:0 0 10px #46e6ff26}button:hover{border-color:#46e6ff99;background:linear-gradient(90deg,#46e6ff2e,#7f6bff2e)}button:disabled{opacity:.6;cursor:not-allowed}button.ghost{background:transparent;color:var(--text);border:1px dashed rgba(70,230,255,.35)}button.password-toggle{padding:0;background:#9aa3b21f;border:1px solid rgba(154,163,178,.6);box-shadow:none;color:#9aa3b2}button.password-toggle:hover{background:#9aa3b233;border-color:#9aa3b2e6;color:#c4cbd6}.debug-panel{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--card)}.debug-toggle{width:100%;text-align:left;background:transparent;color:var(--text);padding:12px;border:none}.debug-content{margin:0;padding:12px;background:var(--surface);color:var(--text);font-size:.9rem;overflow:auto}.composer{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}textarea{width:100%;min-height:96px;padding:12px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:1rem;resize:vertical;box-shadow:inset 0 0 0 1px #46e6ff0d}.source-panel{border:1px dashed rgba(70,230,255,.3);border-radius:12px;padding:12px;background:#05070c80}.source-title{font-size:.85rem;color:var(--muted);margin-bottom:8px}.source-list{display:grid;gap:8px}.source-item{padding:10px;border-radius:10px;border:1px solid var(--border);background:var(--panel);box-shadow:0 0 0 1px #46e6ff0d}.source-title{font-weight:600;letter-spacing:.01em}.source-meta{color:var(--muted);font-size:.9rem;margin-top:4px}.source-pdf{width:100%;height:420px;margin-top:10px;border:1px solid rgba(70,230,255,.2);border-radius:10px;background:#05070c}.source-preview-actions{display:flex;justify-content:flex-end}.pdf-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#04070ceb;z-index:50;display:flex;flex-direction:column;padding:18px;gap:12px}.pdf-modal-header{display:flex;justify-content:flex-end}.pdf-modal-frame{flex:1;width:100%;border:1px solid rgba(70,230,255,.3);border-radius:12px;background:#05070c}
