*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--theme-bg: linear-gradient(135deg,#FDDDE6 0%,#F2E8FF 40%,#E8F4FF 70%,#D8F5EC 100%);--theme-orb1: rgba(249,197,209,.55);--theme-orb2: rgba(200,180,248,.45);--theme-accent: #E8758D;--theme-accent2: #C8B4F8;--theme-accent-deep: #C0405A;--theme-glass-base: rgba(255,255,255,.62);--theme-glass-border: rgba(255,255,255,.78);--theme-shadow: rgba(180,120,150,.14);--theme-card-shadow: rgba(160,100,130,.1);--theme-hdr-login: rgba(253,221,230,.72);--theme-hdr-decks: rgba(253,221,230,.72);--theme-hdr-editor: rgba(242,232,255,.72);--theme-hdr-study: rgba(212,245,236,.72);--theme-badge-from: rgba(249,197,209,.55);--theme-badge-to: rgba(200,180,248,.55);--theme-card-back: linear-gradient(145deg,rgba(249,197,209,.6),rgba(200,180,248,.54));--theme-progress-bar: linear-gradient(90deg,#E8758D,#C8B4F8);--theme-input-border: rgba(200,180,220,.38);--theme-input-focus: rgba(240,135,157,.16);--theme-success-bg: rgba(180,235,210,.4);--theme-success-border:rgba(100,200,150,.28);--theme-success-text: #3a7a5a;--ink: #2D1F2B;--ink-muted:#7A6076;--ink-faint:#B8A8B5;--radius-lg: 20px;--radius-xl: 28px;--radius-pill:999px;--font-display: "Inter", system-ui, sans-serif;--font-body: "Source Serif 4", Georgia, serif;--ease-spring: cubic-bezier(.34,1.56,.64,1);--ease-smooth: cubic-bezier(.4,0,.2,1)}html,body,#root{height:100%;width:100%}body{font-family:var(--font-body);color:var(--ink);background:var(--theme-bg);background-attachment:fixed;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .6s var(--ease-smooth)}body:before,body:after{content:"";position:fixed;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0;transition:background .6s var(--ease-smooth)}body:before{width:520px;height:520px;background:radial-gradient(circle,var(--theme-orb1) 0%,transparent 70%);top:-120px;left:-140px}body:after{width:440px;height:440px;background:radial-gradient(circle,var(--theme-orb2) 0%,transparent 70%);bottom:-100px;right:-100px}#root{position:relative;z-index:1}.glass{background:var(--theme-glass-base);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border:1px solid var(--theme-glass-border);box-shadow:0 8px 32px var(--theme-shadow);border-radius:var(--radius-xl);transition:background .4s,border-color .4s,box-shadow .4s}button{font-family:var(--font-body);cursor:pointer;border:none;outline:none;transition:transform .15s var(--ease-spring),box-shadow .2s,opacity .2s}button:active{transform:scale(.96)}button:disabled{opacity:.45;cursor:not-allowed;transform:none}input,textarea{font-family:var(--font-body);font-size:.95rem;color:var(--ink);background:#ffffffb3;border:1.5px solid var(--theme-input-border);border-radius:14px;padding:12px 16px;width:100%;outline:none;transition:border-color .2s,box-shadow .2s,background .2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);resize:vertical}input:focus,textarea:focus{border-color:var(--theme-accent);box-shadow:0 0 0 3px var(--theme-input-focus);background:#ffffffe0}input::placeholder,textarea::placeholder{color:var(--ink-faint)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#96648247;border-radius:99px}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.anim-fade-up{animation:fadeUp .45s var(--ease-smooth) both}.anim-fade-in{animation:fadeIn .35s var(--ease-smooth) both}.anim-scale-in{animation:scaleIn .4s var(--ease-spring) both}.stagger>*:nth-child(1){animation-delay:.04s}.stagger>*:nth-child(2){animation-delay:.1s}.stagger>*:nth-child(3){animation-delay:.16s}.stagger>*:nth-child(4){animation-delay:.22s}.stagger>*:nth-child(5){animation-delay:.28s}.stagger>*:nth-child(6){animation-delay:.34s}.display{font-family:var(--font-display);font-weight:400;letter-spacing:-.01em}@media (max-width: 480px){.hdr-mobile{padding:12px 14px!important;gap:8px!important}.hdr-theme-name{display:none}.hdr-sign-out{padding:6px 9px!important;font-size:0!important}.hdr-sign-out:after{content:"↪";font-size:13px}.hdr-logo-text{display:none}}
