@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid}}}.visible{visibility:visible}.relative{position:relative}.sticky{position:sticky}.container{width:100%}.flex{display:flex}.grid{display:grid}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}:root{--bg:#0d0d0f;--surface:#141418;--surface2:#1c1c22;--border:#2a2a35;--accent:#e8c547;--accent2:#ff6b35;--text:#f0ede8;--text-muted:#7a7a8a;--success:#5dbd7a;--danger:#e05555;--warning:#f0a832;--card-bg:#16161c}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);min-height:100vh;margin:0;padding:0;font-family:DM Sans,sans-serif}h1,h2,h3{font-family:Playfair Display,serif}code,.mono{font-family:DM Mono,monospace}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--surface)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.card-scene{perspective:1000px;width:100%}.card-flipper{width:100%;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.4,0,.2,1);position:relative}.card-flipper.flipped{transform:rotateY(180deg)}.card-face{backface-visibility:hidden;position:absolute;top:0;left:0;right:0}.card-back{transform:rotateY(180deg)}.progress-bar{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent), var(--accent2));border-radius:999px;height:100%;transition:width .4s}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.pulse-dot{animation:1.5s ease-in-out infinite pulse-dot}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:.4s forwards fadeUp}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}.shimmer{background:linear-gradient(90deg, var(--surface) 25%, var(--surface2) 50%, var(--surface) 75%);background-size:200% 100%;animation:1.5s infinite shimmer}.drop-zone{border:2px dashed var(--border);transition:all .2s}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--accent);background:#e8c5470a}.btn-primary{background:var(--accent);color:#0d0d0f;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 24px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:600;transition:all .15s;display:inline-flex}.btn-primary:hover{background:#f0d060;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{background:var(--surface2);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-family:DM Sans,sans-serif;font-size:14px;transition:all .15s;display:inline-flex}.btn-secondary:hover{border-color:var(--text-muted);background:var(--surface)}.badge{letter-spacing:.5px;text-transform:uppercase;border-radius:999px;align-items:center;padding:2px 10px;font-family:DM Mono,monospace;font-size:11px;font-weight:500;display:inline-flex}.badge-new{color:var(--text-muted);background:#7a7a8a33}.badge-learning{color:var(--warning);background:#f0a83226}.badge-review{color:var(--success);background:#5dbd7a26}.badge-mastered{color:var(--success);background:#5dbd7a40}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
