@import"https://fonts.googleapis.com/css2?family=Playwrite+DE+Grund:wght@100..400&display=swap";.signin-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#0f0f0f;padding:2rem}.signin-content{width:100%;max-width:380px}.signin-wordmark{font-size:12px;font-weight:400;letter-spacing:.15em;text-transform:uppercase;color:#5a5a5a;text-align:center;margin-bottom:40px}.signin-title{font-size:24px;font-weight:500;color:#e8e8e8;text-align:center;margin:0 0 12px;letter-spacing:-.02em}.signin-subtitle{font-size:14px;font-weight:400;color:#8a8a8a;text-align:center;line-height:1.5;max-width:320px;margin:0 auto 48px}.signin-form{display:flex;flex-direction:column;gap:24px}.signin-error{background-color:#2a1a1a;border:1px solid #4a2a2a;color:#d88;padding:12px 16px;border-radius:4px;font-size:14px;text-align:center}.signin-field{display:flex;flex-direction:column;gap:8px}.signin-label{font-size:13px;font-weight:500;color:#b0b0b0;letter-spacing:.01em}.signin-input{background-color:#1a1a1a;border:1px solid #2a2a2a;border-radius:4px;color:#e8e8e8;font-size:15px;padding:12px 14px;font-family:inherit;transition:border-color .2s ease;outline:none}.signin-input:focus{border-color:#4a4a4a}.signin-input:disabled{opacity:.5;cursor:not-allowed}.signin-button{background-color:#2a2a2a;border:1px solid #3a3a3a;border-radius:4px;color:#e8e8e8;font-size:15px;font-weight:500;padding:14px 24px;font-family:inherit;cursor:pointer;transition:background-color .2s ease,border-color .2s ease;margin-top:8px}.signin-button:hover:not(:disabled){background-color:#323232;border-color:#4a4a4a}.signin-button:active:not(:disabled){background-color:#282828}.signin-button:disabled{opacity:.6;cursor:not-allowed}.signin-footer{text-align:center;margin-top:32px;font-size:14px}.signin-footer-text{color:#8a8a8a}.signin-footer-link{color:#b0b0b0;text-decoration:none;transition:color .2s ease}.signin-footer-link:hover{color:#e8e8e8}@media(max-width:480px){.signin-content{max-width:100%}.signin-title{font-size:22px}.signin-subtitle{font-size:13px;margin-bottom:40px}}.home-container-v2{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0a0a10,#0f0f18,#121218);background-image:linear-gradient(135deg,#0a0a10e6,#0f0f18e6,#121218e6),url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="400" height="400"><filter id="concrete"><feTurbulence type="fractalNoise" baseFrequency="0.65" numOctaves="3" seed="2"/><feColorMatrix type="saturate" values="0"/></filter><rect width="400" height="400" filter="url(%23concrete)" opacity="0.04"/></svg>');padding:2rem}.home-content{width:100%;max-width:420px;display:flex;flex-direction:column}.wordmark{font-size:13px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:#5a5a5a;text-align:center;margin-bottom:52px;opacity:0;transform:translateY(-2px);transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1)}.wordmark.visible{opacity:1;transform:translateY(0)}.remark{font-size:15px;font-weight:400;color:#6d6d6d;text-align:center;max-width:280px;margin:0 auto 110px;line-height:1.35;opacity:0;transform:translate(-3px) rotate(-.3deg);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);font-style:italic;letter-spacing:.01em}.remark.visible{opacity:1;transform:translate(0) rotate(0)}.menu-strips{display:flex;flex-direction:column;gap:0}.menu-strips>button:nth-child(1){margin-bottom:72px}.menu-strips>button:nth-child(2){margin-bottom:88px}.menu-strips>button:nth-child(3){margin-bottom:76px}.menu-strip{position:relative;width:100%;background-color:transparent;border:none;padding:20px 0;text-align:left;cursor:pointer;transition:opacity .5s cubic-bezier(.16,1,.3,1),transform 60ms cubic-bezier(.22,1,.36,1);opacity:0;transform:translateY(4px);font-family:inherit;color:inherit;outline:none}.menu-strip.visible{opacity:1;transform:translateY(0)}.menu-strip:before{content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%) rotate(-1deg);width:3px;height:0;background-color:#8b7dd8;opacity:0;transition:height .18s cubic-bezier(.16,1,.3,1),opacity .18s cubic-bezier(.16,1,.3,1)}.menu-strip:hover:before{opacity:.7;height:48px}.menu-strip:hover .strip-title{letter-spacing:-.015em;color:#fafafa}.menu-strip:hover .strip-underline{transform:scaleX(1);opacity:1}.menu-strip:active,.menu-strip.pressed{transform:translateY(1px)}.menu-strip:active .strip-underline,.menu-strip.pressed .strip-underline{transform:scaleX(.96)}.menu-strip:disabled{cursor:not-allowed;opacity:.5}.strip-title{display:block;font-size:28px;font-weight:500;color:#e8e8e8;letter-spacing:-.025em;margin-bottom:6px;transition:letter-spacing .2s cubic-bezier(.16,1,.3,1),color .2s cubic-bezier(.16,1,.3,1)}.strip-description{display:block;font-size:14px;font-weight:400;color:#7a7a7a;line-height:1.45;margin-bottom:14px;letter-spacing:.005em}.strip-underline{position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,#8b7dd8 2%,#8b7dd8 98%,transparent 100%);transform:scaleX(0);transform-origin:left center;opacity:0;transition:transform .3s cubic-bezier(.16,1,.3,1),opacity .3s cubic-bezier(.16,1,.3,1)}.menu-strip:nth-child(1) .strip-underline{transform:scaleX(0) translate(-2px)}.menu-strip:nth-child(2) .strip-underline{transform:scaleX(0) translate(3px)}.menu-strip:nth-child(3) .strip-underline{transform:scaleX(0) translate(-1px)}.menu-strip:nth-child(4) .strip-underline{transform:scaleX(0) translate(2px)}@media(max-width:480px){.home-content{max-width:100%}.menu-strips>button:nth-child(1){margin-bottom:56px}.menu-strips>button:nth-child(2){margin-bottom:68px}.menu-strips>button:nth-child(3){margin-bottom:60px}.strip-title{font-size:24px}.remark{font-size:14px;margin-bottom:88px}.wordmark{margin-bottom:44px}}.menu-strip:focus-visible{outline:2px solid #8b7dd8;outline-offset:4px}.menu-strip.navigating{opacity:1}.menu-strip.fading{opacity:.3;transition:opacity .4s cubic-bezier(.16,1,.3,1)}.cue-nav{position:fixed;top:2rem;left:2rem;display:flex;flex-direction:column;gap:.75rem;z-index:100}.cue-nav-item{background:transparent;border:1px solid rgba(139,125,216,.2);color:#999;font-size:1.125rem;font-weight:500;cursor:pointer;padding:1rem;text-align:left;transition:all .2s ease;border-radius:4px;min-width:120px}.cue-nav-item:hover{color:#f4f4f4;background:#8b7dd80d;border-color:#8b7dd84d}.cue-nav-item.active{color:#8b7dd8;border-color:#8b7dd8;background:#8b7dd81a}.cue-container{min-height:100vh;color:#f4f4f4}.cue-content{max-width:700px;margin:0 auto;padding:4rem 2rem;display:flex;flex-direction:column;align-items:center;text-align:center}.cue-wordmark{font-size:4rem;font-weight:300;color:#8b7dd8;margin-bottom:2rem;letter-spacing:.2em;font-family:Playwrite DE Grund,cursive}.cue-status{display:flex;align-items:center;gap:.75rem;margin-bottom:3rem;padding:1rem 1.5rem;background:#0f0f1466;border-radius:2rem;border:1px solid rgba(139,125,216,.15)}.status-indicator{width:12px;height:12px;border-radius:50%;background-color:#666}.status-indicator.active{background-color:#8b7dd8;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.status-indicator.pulsing{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.status-text{color:#999;font-size:.875rem;font-weight:500}.cue-description{margin-bottom:3rem}.cue-description p{font-size:1.125rem;line-height:1.6;color:#999;margin:.5rem 0}.cue-description p:first-child{font-size:1.5rem;color:#f4f4f4;font-weight:300;font-family:Playwrite DE Grund,cursive;letter-spacing:-.01em}.cue-features{display:flex;flex-direction:column;gap:1.5rem;width:100%;margin-bottom:3rem}.feature-item{display:flex;align-items:flex-start;padding:1.5rem 2rem;background:#0f0f1466;border-radius:8px;text-align:left;border:1px solid rgba(139,125,216,.15);transition:all .2s ease}.feature-item:hover{background:#0f0f1499;border-color:#8b7dd84d}.feature-text{width:100%}.feature-text h3{font-size:1rem;font-weight:400;color:#8b7dd8;margin:0 0 .5rem;letter-spacing:.02em}.feature-text p{font-size:.875rem;color:#999;margin:0;line-height:1.5}.cue-note{color:#8b7dd8;font-size:.875rem;font-style:italic;padding:1rem 1.5rem;background:#8b7dd81a;border-radius:8px;border:1px solid rgba(139,125,216,.2)}.join-queue-button{padding:1rem 3rem;background:#8b7dd8;border:none;border-radius:8px;color:#0a0a10;font-size:1.125rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin:2rem 0}.join-queue-button:hover{background:#9a8de3;transform:translateY(-2px);box-shadow:0 4px 12px #8b7dd866}.join-queue-button:active{transform:translateY(0)}.topic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;width:100%;max-width:800px;margin-top:2rem}.topic-select-card{padding:1.5rem 1rem;background:#0f0f1499;border:1px solid rgba(139,125,216,.15);border-radius:8px;color:#f4f4f4;font-size:.9375rem;cursor:pointer;transition:all .2s ease;text-align:center}.topic-select-card:hover{background:#0f0f14cc;border-color:#8b7dd84d;transform:translateY(-2px)}.topic-select-card:active{transform:translateY(0)}.queue-status{display:flex;flex-direction:column;align-items:center;gap:2rem;margin:3rem 0}.queue-indicator{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center}.pulse-ring{position:absolute;width:100%;height:100%;border:2px solid #8b7dd8;border-radius:50%;animation:pulse-ring 2s cubic-bezier(.4,0,.6,1) infinite;opacity:0}.pulse-ring.delay-1{animation-delay:.4s}.pulse-ring.delay-2{animation-delay:.8s}@keyframes pulse-ring{0%{transform:scale(.5);opacity:1}to{transform:scale(1.2);opacity:0}}.pulse-dot{width:24px;height:24px;background:#8b7dd8;border-radius:50%;animation:pulse-dot 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.1)}}.queue-info{text-align:center}.queue-info h2{font-size:1.5rem;font-weight:300;color:#f4f4f4;margin:0 0 1rem;font-family:Playwrite DE Grund,cursive}.queue-topic{font-size:1.125rem;color:#8b7dd8;margin:.5rem 0}.queue-count{font-size:.875rem;color:#999;margin:.5rem 0}.queue-note{color:#999;font-size:.875rem;text-align:center;max-width:400px;line-height:1.5}@media(max-width:768px){.cue-header{padding:1.5rem}.cue-content{padding:3rem 1.5rem}.cue-wordmark{font-size:3rem}.cue-description p:first-child{font-size:1.25rem}.cue-description p{font-size:1rem}.feature-item{padding:1.25rem 1.5rem}.feature-text h3{font-size:.9375rem}.feature-text p{font-size:.8125rem}.topic-grid{grid-template-columns:1fr;max-width:100%}.join-queue-button{width:100%;padding:1rem 2rem}.queue-indicator{width:100px;height:100px}.queue-info h2{font-size:1.25rem}}.session-start-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#1a1a1a;padding:2rem}.session-start-card{background-color:#262626;border-radius:.75rem;padding:3rem;max-width:500px;width:100%;text-align:center}.topic-title{font-family:Playwrite DE Grund,cursive;color:#e5e5e5;font-size:2rem;font-weight:400;margin-bottom:2rem}.session-info{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-bottom:2.5rem}.card-count{color:#e5e5e5;font-size:1.25rem;margin:0}.phase-label{background-color:#404040;color:#a3a3a3;padding:.375rem .875rem;border-radius:.5rem;font-size:.875rem;text-transform:lowercase}.button-group{display:flex;flex-direction:column;gap:.75rem}.start-button{background-color:#6366f1;color:#fff;border:none;padding:.875rem 2rem;border-radius:.5rem;font-size:1rem;cursor:pointer;transition:background-color .2s;font-weight:500}.start-button:hover{background-color:#818cf8}.start-button:active{background-color:#4f46e5}.back-button{background-color:transparent;color:#a3a3a3;border:1px solid #404040;padding:.875rem 2rem;border-radius:.5rem;font-size:1rem;cursor:pointer;transition:all .2s}.back-button:hover{border-color:#525252;color:#d4d4d4}.back-button:active{background-color:#262626}.loading-text{color:#a3a3a3;font-size:1rem;margin:0}.empty-message{color:#a3a3a3;font-size:1.125rem;line-height:1.6;margin-bottom:2rem}.session-nav{position:fixed;top:2rem;right:3rem;display:flex;flex-direction:column;gap:.75rem;z-index:50}.nav-link{background:transparent;border:1px solid rgba(139,125,216,.2);color:#999;font-size:1.125rem;font-weight:500;cursor:pointer;padding:1rem;text-align:left;transition:all .2s ease;border-radius:4px;min-width:120px}.nav-link:hover{color:#f4f4f4;background:#8b7dd80d;border-color:#8b7dd84d}.nav-link.active{color:#8b7dd8;border-color:#8b7dd8;background:#8b7dd81a}.prompt-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.prompt-header{position:fixed;top:2rem;left:3rem;z-index:10}.prompt-content{width:100%;max-width:700px;display:flex;flex-direction:column;align-items:center;gap:3rem}.flashcard-question{width:100%;background:transparent;border:none;padding:0;margin:0;box-shadow:none;min-height:auto;display:block;text-align:center}.prompt-question{color:#f4f4f4;font-size:1.75rem;font-weight:300;line-height:1.4;text-align:center;font-family:Playwrite DE Grund,cursive;margin:0;letter-spacing:-.01em}.textarea-wrapper{position:relative;width:100%}.prompt-textarea{width:100%;background:#0f0f1466;color:#f4f4f4;border:1px solid rgba(139,125,216,.15);border-radius:8px;padding:1.5rem 4rem 1.5rem 1.5rem;font-size:1rem;font-family:inherit;resize:vertical;min-height:180px;line-height:1.6;transition:all .2s ease}.prompt-textarea:focus{outline:none;border-color:#8b7dd84d;background:#0f0f1499}.prompt-textarea::placeholder{color:#666}.symbol-toggle{position:absolute;top:1rem;right:1rem;background:#8b7dd81a;color:#8b7dd8;border:1px solid rgba(139,125,216,.3);border-radius:6px;padding:.5rem .75rem;font-size:1.25rem;cursor:pointer;transition:all .2s ease}.symbol-toggle:hover{background:#8b7dd833;border-color:#8b7dd880}.symbol-palette{width:100%;background:#0f0f1499;border:1px solid rgba(139,125,216,.15);border-radius:8px;padding:1rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(45px,1fr));gap:.5rem;margin-bottom:1rem}.symbol-button{background:#8b7dd81a;color:#f4f4f4;border:1px solid rgba(139,125,216,.2);border-radius:6px;padding:.75rem;font-size:1.25rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.symbol-button:hover{background:#8b7dd833;border-color:#8b7dd866;transform:scale(1.1)}.symbol-button:active{transform:scale(.95)}.button-group{display:flex;gap:1rem;align-items:center;justify-content:center;width:100%}.submit-button{background-color:#8b7dd8;color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease}.submit-button:hover{background-color:#9d8ee6;transform:translateY(-2px)}.submit-button:active{transform:translateY(0)}.submit-button:disabled{opacity:.3;cursor:not-allowed;transform:none}.skip-button{background:transparent;color:#666;border:1px solid rgba(139,125,216,.3);padding:1rem 2rem;border-radius:8px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease}.skip-button:hover{background:#8b7dd81a;border-color:#8b7dd880;color:#8b7dd8}@media(max-width:768px){.prompt-container{padding:1.5rem}.prompt-header{top:1.5rem;left:1.5rem}.prompt-question{font-size:1.5rem}.symbol-palette{grid-template-columns:repeat(auto-fill,minmax(40px,1fr))}.button-group{flex-direction:column}.submit-button{width:100%}}.personal-card-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.personal-card-modal{background:#1a1a1a;border:1px solid #333;border-radius:8px;width:90%;max-width:480px;padding:24px;animation:slideUp .2s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.personal-card-header{margin-bottom:24px}.personal-card-header h3{font-size:18px;font-weight:600;color:#fff;margin:0 0 4px}.personal-card-header p{font-size:14px;color:#888;margin:0}.personal-card-form{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-size:13px;font-weight:500;color:#aaa;text-transform:uppercase;letter-spacing:.5px}.form-field textarea{background:#0d0d0d;border:1px solid #333;border-radius:4px;padding:12px;font-size:15px;color:#fff;font-family:inherit;resize:none;transition:border-color .2s}.form-field textarea:focus{outline:none;border-color:#555}.form-field textarea::placeholder{color:#555}.personal-card-actions{display:flex;gap:12px;justify-content:flex-end}.action-button{padding:10px 20px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.action-button.secondary{background:transparent;color:#888;border:1px solid #333}.action-button.secondary:hover:not(:disabled){background:#1a1a1a;color:#aaa}.action-button.primary{background:#fff;color:#000}.action-button.primary:hover:not(:disabled){background:#e0e0e0}.action-button:disabled{opacity:.5;cursor:not-allowed}.progress-recognition{position:fixed;top:2rem;right:2rem;max-width:320px;padding:1.25rem 1.5rem;background:#0f0f14f2;border:1px solid rgba(139,125,216,.2);border-radius:4px;opacity:0;transform:translateY(-8px);transition:opacity .3s ease,transform .3s ease;pointer-events:none;z-index:100}.progress-recognition.visible{opacity:1;transform:translateY(0);pointer-events:auto}.progress-message{font-size:15px;line-height:1.5;color:#d0d0d0;margin-bottom:.75rem;font-weight:400;letter-spacing:.01em}.progress-permission{font-size:14px;line-height:1.5;color:#999;opacity:0;animation:fadeInPermission .4s ease forwards;animation-delay:.1s;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(139,125,216,.1)}@keyframes fadeInPermission{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.progress-dismiss{position:absolute;top:.75rem;right:.75rem;width:24px;height:24px;border:none;background:transparent;color:#666;font-size:20px;line-height:1;cursor:pointer;transition:color .15s ease;padding:0;display:flex;align-items:center;justify-content:center}.progress-dismiss:hover{color:#999}.progress-dismiss:focus-visible{outline:2px solid rgba(139,125,216,.4);outline-offset:2px}@media(max-width:480px){.progress-recognition{top:1rem;left:1rem;right:1rem;max-width:none}.progress-message{font-size:14px}.progress-permission{font-size:13px}}.reveal-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.reveal-header{position:fixed;top:2rem;left:3rem;z-index:10}.progress-info{display:flex;align-items:center;gap:1rem;margin-bottom:0}.progress-text{color:#666;font-size:.875rem;letter-spacing:.05em}.phase-badge{display:none}.progress-bar{position:fixed;top:0;left:0;right:0;height:2px;background-color:#8b7dd81a;z-index:100}.progress-fill{height:100%;background-color:#8b7dd8;transition:width .3s ease}.reveal-content{width:100%;max-width:700px;display:flex;flex-direction:column;align-items:center;gap:3rem}.content-card{width:100%;background:transparent;border:none;padding:0;display:flex;flex-direction:column;align-items:center;gap:3rem}.answer-section{width:100%;text-align:center}.section-label{color:#666;font-size:.875rem;font-weight:400;margin-bottom:1rem;text-transform:lowercase}.personal-card-note{color:#666;font-size:.875rem;font-style:italic;margin-bottom:1rem}.answer-text{color:#f4f4f4;font-size:1.5rem;font-weight:300;line-height:1.4;font-family:Playwrite DE Grund,cursive;letter-spacing:-.01em}.rating-section{width:100%;display:flex;flex-direction:column;align-items:center;gap:1.5rem;border:none;padding:0;margin:0}.rating-label{color:#999;font-size:.9375rem;font-weight:400;margin:0}.rating-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.rating-button{background:transparent;color:#f4f4f4;border:1px solid rgba(139,125,216,.3);padding:.875rem 2rem;border-radius:8px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:120px}.rating-button:hover{transform:translateY(-2px);border-color:#8b7dd880}.rating-button:active{transform:translateY(0)}.rating-button:disabled{opacity:.3;cursor:not-allowed;transform:none}.again-button{border-color:#ef444466;color:#ef4444}.again-button:hover{border-color:#ef444499;background:#ef44441a}.hard-button{border-color:#f59e0b66;color:#f59e0b}.hard-button:hover{border-color:#f59e0b99;background:#f59e0b1a}.good-button{border-color:#22c55e66;color:#22c55e}.good-button:hover{border-color:#22c55e99;background:#22c55e1a}.easy-button{border-color:#3b82f666;color:#3b82f6}.easy-button:hover{border-color:#3b82f699;background:#3b82f61a}@media(max-width:768px){.reveal-container{padding:1.5rem}.reveal-header{top:1.5rem;left:1.5rem}.rating-buttons{width:100%;flex-direction:column}.rating-button{width:100%}.answer-text{font-size:1.25rem}}.complete-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#1a1a1a;padding:2rem}.complete-content{text-align:center;max-width:400px}.complete-title{color:#e5e5e5;font-size:2rem;font-weight:300;margin-bottom:1rem}.complete-message{color:#a3a3a3;font-size:1rem;line-height:1.6;margin-bottom:2rem}.return-button{background-color:#262626;color:#e5e5e5;border:none;padding:.875rem 2rem;border-radius:.5rem;font-size:1rem;cursor:pointer;transition:background-color .2s}.return-button:hover{background-color:#404040}.return-button:active{background-color:#525252}.retention-bar-container{width:100%}.retention-bar{position:relative;width:100%;height:16px;display:flex;background:#0a0a0a;border-radius:8px;overflow:hidden}.retention-zone{height:100%;transition:opacity .4s ease}.retention-zone.unknown{background:#1a1a1a}.retention-zone.fragile{background:#4a3a5a}.retention-zone.stable{background:#8b7dd8}.retention-indicator{position:absolute;top:0;bottom:0;width:2px;background:#fff9;transform:translate(-1px);transition:left .4s ease;pointer-events:none}.retention-percentage{margin-top:.75rem;font-size:14px;color:#8b7dd8;letter-spacing:.02em;font-weight:500;text-align:center;opacity:0;animation:fadeInPercentage .3s ease-in-out forwards}@keyframes fadeInPercentage{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.retention-zones-legend{display:flex;justify-content:space-between;margin-top:.75rem;padding:0 .25rem}.zone-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;opacity:.5}.zone-label.unknown-label{color:#666}.zone-label.fragile-label{color:#8b7dd8;opacity:.6}.zone-label.stable-label{color:#8b7dd8}.retention-bar-container.large .retention-bar{height:20px}.progress-view{width:100%;height:100vh;display:flex;overflow:hidden}.loading-pulse{width:8px;height:8px;background:#8b7dd84d;border-radius:50%;animation:pulse 1.5s ease-in-out infinite;margin:auto}@keyframes pulse{0%,to{opacity:.3}50%{opacity:1}}.empty-state{font-size:1.125rem;color:#666;max-width:400px;text-align:center;margin:auto}.domain-sidebar{width:240px;height:100vh;background:#0a0a10cc;border-right:1px solid rgba(139,125,216,.1);padding:2rem 1.5rem;overflow-y:auto;overflow-x:hidden;flex-shrink:0;scrollbar-width:thin;scrollbar-color:rgba(139,125,216,.2) rgba(139,125,216,.05)}.main-nav{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid rgba(139,125,216,.1)}.main-nav-item{background:transparent;border:1px solid rgba(139,125,216,.2);color:#999;font-size:1.125rem;font-weight:500;cursor:pointer;padding:1rem;text-align:left;transition:all .2s ease;border-radius:4px}.main-nav-item:hover{color:#f4f4f4;background:#8b7dd80d;border-color:#8b7dd84d}.main-nav-item.active{color:#8b7dd8;border-color:#8b7dd8;background:#8b7dd81a}.sidebar-title{font-size:.875rem;text-transform:uppercase;letter-spacing:.1em;color:#666;font-weight:500;margin:0 0 1.5rem}.domain-list{display:flex;flex-direction:column;gap:.5rem}.domain-item{background:transparent;border:none;border-left:2px solid transparent;padding:.75rem 1rem;text-align:left;cursor:pointer;color:#999;font-size:.9375rem;transition:all .15s ease;border-radius:0}.domain-item:hover{color:#f4f4f4;background:#8b7dd80d}.domain-item.active{color:#8b7dd8;border-left-color:#8b7dd8;background:#8b7dd81a}.domain-item:focus-visible{outline:2px solid rgba(139,125,216,.5);outline-offset:-2px}.carousel-container{flex:1;height:100vh;overflow-x:auto;overflow-y:hidden;padding:4rem 2rem;display:flex;align-items:center;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:rgba(139,125,216,.2) rgba(139,125,216,.05)}.carousel-track{display:flex;gap:2rem;padding:0 2rem;min-width:min-content}.subject-card{flex-shrink:0;width:320px;background:#0f0f1499;border:1px solid rgba(139,125,216,.15);border-radius:12px;padding:2rem;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:1.5rem;height:200px}.subject-card:hover{background:#0f0f14cc;border-color:#8b7dd84d;transform:translateY(-4px)}.subject-card:focus-visible{outline:2px solid rgba(139,125,216,.5);outline-offset:3px}.subject-name{font-family:Playwrite DE Grund,cursive;font-weight:300;font-size:1.5rem;color:#f4f4f4;margin:0;line-height:1.3;letter-spacing:-.01em}.subject-bar{width:100%;margin-top:auto}.carousel-container::-webkit-scrollbar,.domain-sidebar::-webkit-scrollbar{height:6px;width:6px}.carousel-container::-webkit-scrollbar-track,.domain-sidebar::-webkit-scrollbar-track{background:#8b7dd80d}.carousel-container::-webkit-scrollbar-thumb,.domain-sidebar::-webkit-scrollbar-thumb{background:#8b7dd833;border-radius:3px}.carousel-container::-webkit-scrollbar-thumb:hover,.domain-sidebar::-webkit-scrollbar-thumb:hover{background:#8b7dd84d}@media(max-width:768px){.progress-view{flex-direction:column}.domain-sidebar{width:100%;height:auto;max-height:30vh;border-right:none;border-bottom:1px solid rgba(139,125,216,.1);padding:1.5rem 1rem}.domain-list{flex-direction:row;overflow-x:auto;gap:.75rem}.domain-item{white-space:nowrap;border-left:none;border-bottom:2px solid transparent}.domain-item.active{border-left-color:transparent;border-bottom-color:#8b7dd8}.carousel-container{height:auto;flex:1;padding:2rem 1rem}.carousel-track{gap:1.5rem;padding:0 1rem}.subject-card{width:280px}}.subject-detail-view{width:100%;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;opacity:0;transform:translateY(10px);transition:all .4s ease-in-out}.subject-detail-view.visible{opacity:1;transform:translateY(0)}.detail-loading{display:flex;align-items:center;justify-content:center;width:100%;min-height:100vh}.loading-dot{width:8px;height:8px;background:#8b7dd84d;border-radius:50%;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.detail-error{text-align:center;color:#999}.detail-error p{font-size:1.125rem;margin:0 0 1.5rem}.back-link{position:fixed;top:2rem;left:2rem;background:transparent;border:none;color:#666;font-size:.875rem;cursor:pointer;padding:.5rem 0;transition:color .2s ease;z-index:100}.back-link:hover{color:#8b7dd8}.back-link:focus-visible{outline:2px solid rgba(139,125,216,.5);outline-offset:3px}.detail-content{max-width:500px;width:100%;display:flex;flex-direction:column;align-items:center;gap:2rem}.detail-title{font-family:Playwrite DE Grund,cursive;font-weight:300;font-size:2.5rem;color:#f4f4f4;margin:0;text-align:center;line-height:1.3;letter-spacing:-.01em}.detail-retention{width:100%;max-width:400px}.detail-stats{display:flex;align-items:center;justify-content:center;gap:1.5rem}.stat-item{font-size:.875rem;color:#666;letter-spacing:.02em}.detail-zones{display:flex;gap:2rem;align-items:center;justify-content:center;margin-top:1rem}.zone-item{display:flex;flex-direction:column;align-items:center;gap:.5rem}.zone-count{font-size:2rem;font-weight:600;letter-spacing:-.02em}.zone-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;opacity:.6}.zone-item.stable .zone-count,.zone-item.stable .zone-label{color:#8b7dd8}.zone-item.fragile .zone-count,.zone-item.fragile .zone-label{color:#9b8dd8}.zone-item.unknown .zone-count,.zone-item.unknown .zone-label{color:#666}.study-button{background:#8b7dd8;color:#fff;border:none;padding:1rem 3rem;font-size:1rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s ease;margin-top:1rem}.study-button:hover{background:#9d8ee6;transform:translateY(-2px)}.study-button:focus-visible{outline:2px solid rgba(139,125,216,.5);outline-offset:3px}.detail-note{font-size:.875rem;color:#666;text-align:center;line-height:1.6;margin:1rem 0 0;max-width:360px}@media(max-width:640px){.subject-detail-view{padding:1.5rem 1rem}.back-link{top:1rem;left:1rem}.detail-title{font-size:2rem}.detail-zones{gap:1.5rem}.zone-count{font-size:1.75rem}.study-button{padding:.875rem 2.5rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Playwrite DE Grund,cursive,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#0a0a10,#0f0f18,#121218);min-height:100vh;color:#f4f4f4;overflow-x:hidden}#root{min-height:100vh}button{font-family:inherit;border:none;background:none}*{-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb{background:#3a3a3a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#4a4a4a}::selection{background-color:#6366f1;color:#fff}::-moz-selection{background-color:#6366f1;color:#fff}
