:root{--ink-night: #1b2140;--ink-card: #252c4f;--ink-card-edge: #333b63;--marquee: #f2b441;--marquee-deep: #d99a1f;--ivory: #f5efe2;--ivory-dim: #b9b4a6;--coral: #e86a5c;--font-display: "Fraunces", serif;--font-body: "Karla", sans-serif;--radius: 10px}*{box-sizing:border-box;margin:0}body{background:var(--ink-night);color:var(--ivory);font-family:var(--font-body);font-size:17px;line-height:1.55;min-height:100vh}#root{max-width:640px;margin:0 auto;padding:24px 20px 64px}h1,h2,h3{font-family:var(--font-display);font-weight:650;line-height:1.15}button{font-family:var(--font-body);font-size:16px;cursor:pointer;border:none;border-radius:var(--radius)}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--marquee);outline-offset:2px}input,textarea{font-family:var(--font-body);font-size:16px;width:100%;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--ink-card-edge);background:var(--ink-card);color:var(--ivory)}input::placeholder,textarea::placeholder{color:var(--ivory-dim)}.site-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px}.wordmark{font-family:var(--font-display);font-size:24px;color:var(--marquee);letter-spacing:.01em}.nav-links{display:flex;gap:8px}.nav-btn{background:transparent;color:var(--ivory-dim);padding:8px 12px}.nav-btn.active,.nav-btn:hover{color:var(--ivory)}.nav-btn.signout{color:var(--coral)}.btn-primary{background:var(--marquee);color:var(--ink-night);font-weight:700;padding:13px 22px}.btn-primary:hover{background:var(--marquee-deep)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--ivory-dim);padding:13px 16px}.btn-ghost:hover{color:var(--ivory)}.btn-danger{background:transparent;color:var(--coral);padding:8px 12px}.auth-panel{margin-top:8vh;text-align:center}.auth-panel h1{font-size:42px;margin-bottom:12px}.auth-panel .tagline{color:var(--ivory-dim);margin-bottom:36px}.auth-form{display:flex;flex-direction:column;gap:12px;text-align:left}.auth-toggle{margin-top:20px;color:var(--ivory-dim)}.auth-toggle button{background:none;color:var(--marquee);padding:0 4px;font-size:inherit;text-decoration:underline}.error-note{background:#e86a5c1f;border:1px solid var(--coral);border-radius:var(--radius);color:var(--ivory);padding:10px 14px;font-size:15px}.quiz-progress{color:var(--marquee);font-size:15px;margin-bottom:14px}.quiz-question{font-size:34px;margin-bottom:30px}.quiz-options{display:flex;flex-direction:column;gap:12px}.quiz-option{text-align:left;background:var(--ink-card);border:1px solid var(--ink-card-edge);color:var(--ivory);padding:16px 18px;transition:border-color .12s ease,transform .12s ease}.quiz-option:hover{border-color:var(--marquee);transform:translate(4px)}@media (prefers-reduced-motion: reduce){.quiz-option,.quiz-option:hover{transition:none;transform:none}}.quiz-warning{margin-top:28px;color:var(--ivory-dim);font-size:15px}.panel{background:var(--ink-card);border:1px solid var(--ink-card-edge);border-radius:var(--radius);padding:28px}.intro h1{font-size:40px;margin-bottom:14px}.intro p{color:var(--ivory-dim);margin-bottom:26px;max-width:46ch}.result-mood{color:var(--marquee);font-size:18px;margin-bottom:6px}.result-genre{font-size:52px;margin-bottom:14px}.result-blurb{color:var(--ivory-dim);margin-bottom:22px;max-width:48ch}.result-picks{margin-bottom:26px;padding-left:20px}.result-picks li{margin-bottom:6px}.result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.save-note{margin-bottom:6px}.saved-confirm{color:var(--marquee);margin-top:16px}.history-title{font-size:34px;margin-bottom:8px}.history-sub{color:var(--ivory-dim);margin-bottom:28px}.history-list{display:flex;flex-direction:column;gap:14px}.history-item{background:var(--ink-card);border:1px solid var(--ink-card-edge);border-radius:var(--radius);padding:18px 20px}.history-item-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.history-genre{font-family:var(--font-display);font-size:22px;color:var(--marquee)}.history-date{color:var(--ivory-dim);font-size:14px;white-space:nowrap}.history-mood{margin-top:4px}.history-note{color:var(--ivory-dim);margin-top:8px;font-size:15px}.history-item-actions{display:flex;gap:6px;margin-top:12px}.edit-row{display:flex;flex-direction:column;gap:10px;margin-top:12px}.edit-row-buttons{display:flex;gap:8px}.empty-state{text-align:center;color:var(--ivory-dim);padding:48px 0}.loading{color:var(--ivory-dim);padding:24px 0}@media (max-width: 480px){.quiz-question{font-size:27px}.result-genre{font-size:40px}.auth-panel h1{font-size:34px}}
