:root{--bg-night:#2a2238;--bg-card:#3a2e4d;--bg-card-hover:#483a5e;--bg-soft:#f5ecde;--ink:#f5ecde;--ink-muted:#c8b8d8;--ink-dark:#2a2238;--accent-warm:#f4a261;--accent-deep:#e76f51;--accent-glow:#ffc857;--accent-cool:#52b788;--error:#e63946;--shadow:0 12px 36px #00000059;color:var(--ink);background:var(--bg-night);font-family:Cairo,system-ui,-apple-system,sans-serif;font-size:18px;line-height:1.5}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{background:radial-gradient(ellipse at top, #4a3a5e 0%, var(--bg-night) 60%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;min-height:100vh}button{font-family:inherit;font-size:inherit;cursor:pointer;background:var(--accent-warm);color:var(--ink-dark);border:none;border-radius:16px;min-height:56px;padding:14px 28px;font-weight:700;transition:transform .12s,background .12s,box-shadow .12s;box-shadow:0 4px 14px #f4a26159}button:hover{background:var(--accent-glow);transform:translateY(-1px)}button:active{transform:translateY(0)}button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}button.ghost{color:var(--ink);box-shadow:none;border:1px solid var(--ink-muted);background:0 0}button.ghost:hover{background:#ffffff0f}button.danger{background:var(--error);color:#fff;box-shadow:0 4px 14px #e6394659}input,select,textarea{font-family:inherit;font-size:inherit;color:var(--ink);background:#ffffff0f;border:1px solid #ffffff2e;border-radius:12px;width:100%;min-height:50px;padding:12px 16px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-warm);outline-offset:2px}a{color:var(--accent-warm);text-decoration:none}a:hover{color:var(--accent-glow)}.app{flex-direction:column;min-height:100%;display:flex}.center-screen{flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.card{background:var(--bg-card);box-shadow:var(--shadow);border-radius:28px;width:100%;max-width:480px;padding:32px}.card h1{margin-top:0;margin-bottom:16px;font-size:1.8rem;font-weight:900}.card p{color:var(--ink-muted);margin:8px 0 16px}.card .field{margin:16px 0}.card .field label{color:var(--ink-muted);margin-bottom:8px;font-weight:600;display:block}.card .actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.error-banner{border:1px solid var(--error);color:#ffd9dc;background:#e6394626;border-radius:12px;margin:12px 0;padding:12px 16px}.muted{color:var(--ink-muted)}.topbar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0003;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:16px 28px;display:flex}.topbar .brand{letter-spacing:.02em;font-size:1.4rem;font-weight:900}.topbar .right{align-items:center;gap:12px;display:flex}.dots:after{content:"...";text-align:start;width:1.5em;animation:1.4s steps(4,end) infinite dots;display:inline-block}@keyframes dots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%,to{content:"..."}}@keyframes lanternBreathe{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes lanternSpeak{0%,to{transform:scale(1)}50%{transform:scale(1.14)}}@keyframes lanternListen{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes lanternThink{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@keyframes spiritArrive{0%{opacity:0}to{opacity:1}}@keyframes spiritSpeak{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-7px)scale(1.03)}}@keyframes spiritListen{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-3px)scale(1.05)}}@keyframes spiritThink{0%,to{transform:translate(-5px)rotate(-2deg)}50%{transform:translate(5px)rotate(2deg)}}.table{border-collapse:collapse;background:var(--bg-card);width:100%;box-shadow:var(--shadow);border-radius:16px;overflow:hidden}.table th,.table td{text-align:start;padding:14px 16px}.table th{color:var(--ink-muted);background:#0003;font-size:.9rem;font-weight:600}.table tr+tr td{border-top:1px solid #ffffff0d}.table tr:hover td{background:#ffffff08}
