@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Baloo+2:wght@600;700&family=Lexend:wght@400;500;600;700&family=Nunito:wght@500;600;700&display=swap";.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:root{--play-primary: #3a7bd5;--play-secondary: #ff9f1c;--play-accent: #2ec4b6;--play-ink: #24324a;--play-muted: #667085;--play-card: #ffffff;--play-card-tint: #f2f7ff;--play-reading-font: "Lexend", "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif}html{font-size:16px;height:100%}body{font-family:Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:radial-gradient(circle at 12% 8%,#fff1db,#fff1db00 45%),radial-gradient(circle at 90% 12%,#e4f5ff,#e4f5ff00 50%),linear-gradient(180deg,#fffaf2,#eef6ff 55%,#fff);margin:0;padding:0;min-height:100%;color:var(--play-ink);line-height:1.5}h1,h2,h3{font-family:"Baloo 2",Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;color:var(--play-primary)}.main-container{min-height:calc(100vh - 50px)}.adventure-cover{background:var(--adventure-cover) center/cover no-repeat}.navbar{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;background:#fffffff2;border-bottom:2px solid #e7eef6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:100;height:56px}.navbar .navbar-left{display:flex;align-items:center;gap:.5rem;min-width:100px}.navbar .navbar-brand{flex:1;text-align:center}.navbar .navbar-brand .navbar-brand-link{display:inline-flex;align-items:center;justify-content:center}.navbar .navbar-brand .navbar-logo{height:28px;width:auto;display:block}.navbar .navbar-brand a{font-size:1.5rem;font-weight:700;color:var(--play-primary);text-decoration:none}.navbar .navbar-right{display:flex;align-items:center;gap:.5rem;min-width:100px;justify-content:flex-end}.navbar .menu-selector{position:relative}.navbar .menu-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;background:#f3f7ff;border-radius:8px;color:#666;cursor:pointer;transition:all .15s ease}.navbar .menu-toggle:hover,.navbar .menu-toggle:active{background:#e7efff;color:#2f4a7f}.navbar .menu-toggle svg{width:22px;height:22px}.navbar .menu-dropdown{display:none;position:absolute;top:100%;right:0;margin-top:.5rem;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #00000026;min-width:180px;z-index:1000;overflow:hidden}.navbar .menu-dropdown.show{display:block}.navbar .menu-dropdown a{display:block;padding:.875rem 1rem;color:#333;text-decoration:none;font-size:1rem}.navbar .menu-dropdown a:hover,.navbar .menu-dropdown a:active{background:#f5f5f5}.navbar .navbar-icon-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;background:#f3f7ff;border-radius:8px;color:#666;cursor:pointer;text-decoration:none;transition:all .15s ease}.navbar .navbar-icon-btn:hover,.navbar .navbar-icon-btn:active{background:#e7efff;color:#2f4a7f}.navbar .navbar-icon-btn svg{width:22px;height:22px}.navbar .navbar-icon-form{display:inline-flex;margin:0}.navbar .language-selector{position:relative}.navbar .language-current{display:flex;align-items:center;justify-content:center;gap:.25rem;width:44px;height:44px;padding:0;background:#f3f7ff;border:none;border-radius:8px;cursor:pointer;font-size:1.25rem}.navbar .language-current:hover,.navbar .language-current:active{background:#e7efff}.navbar .language-current .flag{font-size:1.5rem;line-height:1}.navbar .language-current .arrow{display:none}.navbar .language-dropdown{display:none;position:absolute;top:100%;right:0;margin-top:.5rem;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #00000026;min-width:180px;z-index:1000;overflow:hidden}.navbar .language-dropdown.show{display:block}.navbar .language-dropdown a{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;color:#333;text-decoration:none;font-size:1rem}.navbar .language-dropdown a:hover,.navbar .language-dropdown a:active{background:#f5f5f5}.navbar .language-dropdown a.active{background:#e8f4fc;color:#4a90d9}.navbar .language-dropdown a .flag{font-size:1.5rem}.play-login{max-width:400px;margin:4rem auto;padding:2rem;text-align:center}.play-login .login-toggle{display:flex;margin-bottom:2rem;background:#e9ecef;border-radius:8px;padding:4px}.play-login .login-toggle .toggle-btn{flex:1;padding:.75rem 1rem;border:none;background:transparent;cursor:pointer;font-size:.95rem;font-weight:500;color:#666;border-radius:6px;transition:all .2s ease}.play-login .login-toggle .toggle-btn:hover{color:#333}.play-login .login-toggle .toggle-btn.active{background:#fff;color:#333;box-shadow:0 1px 3px #0000001a}.play-login .login-form h2{margin:0 0 .5rem;font-size:1.5rem}.play-login .login-form>p{color:#666;margin-bottom:2rem}.play-login .error-message{background:#fee;border:1px solid #fcc;color:#c00;padding:1rem;border-radius:4px;margin-bottom:1rem}.play-login .form-group{margin-bottom:1.5rem;text-align:left}.play-login .form-group label{display:block;margin-bottom:.5rem;font-weight:500}.play-login .form-group input{width:100%;padding:.75rem;font-size:1rem;border:2px solid #ddd;border-radius:4px}.play-login .form-group input:focus{outline:none;border-color:#4a90d9}.play-login .form-group input[type=text]{font-family:monospace}.play-login button[type=submit]{width:100%;padding:1rem;font-size:1.1rem;background:#4a90d9;color:#fff;border:none;border-radius:4px;cursor:pointer}.play-login button[type=submit]:hover{background:#357abd}.play-login .forgot-link{margin-top:1rem;font-size:.9rem}.play-login .forgot-link a{color:#4a90d9;text-decoration:none}.play-login .forgot-link a:hover{text-decoration:underline}.play-login .success-message{background:#d4edda;border:1px solid #c3e6cb;color:#155724;padding:1rem;border-radius:4px;margin-top:1rem}.play-login .login-footer{margin-top:2rem;font-size:.95rem;color:#666}.play-login .login-footer a{display:inline-block;margin-top:.35rem;color:#4a90d9;text-decoration:none;font-weight:600}.play-login .login-footer a:hover{text-decoration:underline}.play-select-player{display:flex;flex-direction:column;height:calc(100vh - 56px);padding:1.5rem;overflow:hidden}.play-select-player .select-header{text-align:center;flex-shrink:0;margin-bottom:1.5rem}.play-select-player .select-header h1{font-size:2rem;font-weight:700;color:var(--play-primary);margin:0 0 .25rem}.play-select-player .select-header p{font-size:1.25rem;color:var(--play-muted);margin:0}.play-select-player .players-grid{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;align-content:center;justify-items:center;max-width:900px;margin:0 auto;width:100%}.play-select-player .player-card{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:160px;aspect-ratio:1;padding:1rem;background:linear-gradient(155deg,var(--player-color-soft, #f6f8fb),var(--player-color-soft-2, #eef2f7));border:3px solid var(--player-color-border, #e0e0e0);border-radius:16px;text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease,border-radius .2s ease;position:relative}.play-select-player .player-card:hover,.play-select-player .player-card:active{border-color:var(--player-color-border, #e0e0e0);transform:scale(1.15);box-shadow:0 4px 16px #3a7bd533;border-radius:50%}.play-select-player .player-card.has-active{border-color:#66bb6a}.play-select-player .player-card.has-active:hover,.play-select-player .player-card.has-active:active{border-color:#43a047}.play-select-player .player-card .player-avatar{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--player-color, #3a7bd5) 0%,var(--player-color-secondary, #2ec4b6) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:700;text-shadow:0 0 8px rgba(0,0,0,.5);margin-bottom:.75rem;flex-shrink:0}.play-select-player .player-card .player-name{font-weight:600;font-size:1.1rem;text-align:center;line-height:1.2;word-break:break-word}.play-select-player .credits-badge{position:fixed;bottom:1rem;right:1rem;display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:2px solid rgba(255,159,28,.7);border-radius:24px;color:var(--play-secondary);font-weight:600;font-size:1rem;box-shadow:0 2px 8px #0000001a}.play-select-player .credits-badge svg{width:20px;height:20px}@media(min-width:768px)and (max-height:600px){.play-select-player{padding:1rem}.play-select-player .select-header{margin-bottom:1rem}.play-select-player .select-header h1{font-size:1.5rem}.play-select-player .select-header p{font-size:1rem}.play-select-player .players-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem}.play-select-player .player-card{max-width:140px}.play-select-player .player-card .player-avatar{width:48px;height:48px;font-size:1.5rem;margin-bottom:.5rem}.play-select-player .player-card .player-name{font-size:1rem}}@media(min-width:1024px)and (min-height:700px){.play-select-player .players-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1.25rem}.play-select-player .player-card{max-width:180px}.play-select-player .player-card .player-avatar{width:80px;height:80px;font-size:2rem}.play-select-player .player-card .player-name{font-size:1.25rem}}.play-dashboard{display:flex;flex-direction:column;height:calc(100vh - 56px);padding:1.5rem;overflow:hidden}.play-dashboard .dashboard-header{text-align:center;flex-shrink:0;margin-bottom:2rem}.play-dashboard .dashboard-header h1{font-size:2rem;font-weight:700;color:var(--play-primary);margin:0}.play-dashboard .dashboard-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;max-width:980px;margin:0 auto;width:100%}.play-dashboard .adventure-grid{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.play-dashboard .adventure-card{display:flex;flex-direction:column;width:100%;padding:0;background:var(--play-card);border:3px solid #e0e0e0;border-radius:16px;text-decoration:none;color:inherit;transition:all .15s ease;overflow:hidden}.play-dashboard .adventure-card:hover,.play-dashboard .adventure-card:active{border-color:var(--play-primary);transform:scale(1.01);box-shadow:0 4px 16px #4a90d926}.play-dashboard .adventure-card.continue-card{border-color:#66bb6a;background:linear-gradient(to right,#fff,#f1f8e9)}.play-dashboard .adventure-card.continue-card:hover,.play-dashboard .adventure-card.continue-card:active{border-color:#43a047;box-shadow:0 4px 16px #66bb6a33}.play-dashboard .adventure-card.continue-card .adventure-action{color:#43a047}.play-dashboard .adventure-card.new-card .adventure-subtitle{font-size:.9rem;color:var(--play-muted);margin-top:.25rem}.play-dashboard .card-media{width:100%;height:180px;background:#f2f4f8;display:flex;align-items:center;justify-content:center}.play-dashboard .card-media img{width:100%;height:100%;object-fit:cover}.play-dashboard .card-media .card-media-placeholder{width:72px;height:72px;border-radius:16px;background:#e9f2ff;color:var(--play-primary);display:flex;align-items:center;justify-content:center}.play-dashboard .card-media .card-media-placeholder svg{width:36px;height:36px}.play-dashboard .card-body{padding:1rem 1.25rem .75rem;display:flex;flex-direction:column;gap:.5rem}.play-dashboard .adventure-themes{display:flex;gap:.5rem}.play-dashboard .adventure-themes .theme-icon{width:40px;height:40px;border-radius:8px;object-fit:cover;background:#f5f5f5}.play-dashboard .math-tag{display:inline-block;padding:.2rem .5rem;background:#e8f1ff;color:#2e6ac7;border-radius:4px;font-size:.75rem;font-weight:500}.play-dashboard .adventure-progress{display:flex;align-items:center;gap:.25rem;color:var(--play-muted);font-size:.9rem}.play-dashboard .adventure-progress svg{width:16px;height:16px}.play-dashboard .adventure-info{flex:1;min-width:0}.play-dashboard .adventure-info .adventure-title{font-size:1.1rem;font-weight:600;color:var(--play-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.play-dashboard .adventure-info .adventure-themes{margin-top:.5rem}.play-dashboard .adventure-info .adventure-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.5rem}.play-dashboard .adventure-info .math-types{display:flex;flex-wrap:wrap;gap:.25rem}.play-dashboard .adventure-info .adventure-progress{margin-top:.5rem}.play-dashboard .card-tags{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;padding:0 1.25rem 1rem;color:var(--play-muted)}.play-dashboard .card-actions{display:flex;justify-content:flex-end;padding:0 1.25rem 1rem}.play-dashboard .adventure-card-full{max-width:420px;align-self:center}.play-dashboard .cta-row{display:flex;justify-content:center;width:100%;margin-top:.5rem}.play-dashboard .cta-button{display:inline-flex;align-items:center;gap:.6rem;padding:.9rem 1.6rem;border-radius:999px;background:linear-gradient(135deg,#3a7bd5,#2ec4b6);color:#fff;font-weight:700;font-size:1rem;text-decoration:none;box-shadow:0 12px 24px #2ec4b640;transition:transform .15s ease,box-shadow .15s ease}.play-dashboard .cta-button:hover,.play-dashboard .cta-button:active{transform:translateY(-2px);box-shadow:0 16px 30px #2ec4b64d}.play-dashboard .cta-button svg{width:22px;height:22px}.play-dashboard .divider{display:flex;align-items:center;width:100%;margin:.5rem 0}.play-dashboard .divider:before,.play-dashboard .divider:after{content:"";flex:1;height:1px;background:#dde7f6}.play-dashboard .divider span{padding:0 1rem;color:var(--play-muted);font-size:.9rem}.play-dashboard .credits-badge{position:fixed;bottom:1rem;right:1rem;display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:2px solid rgba(255,159,28,.7);border-radius:24px;color:var(--play-secondary);font-weight:600;font-size:1rem;box-shadow:0 2px 8px #0000001a}.play-dashboard .credits-badge svg{width:20px;height:20px}@media(max-width:900px){.play-dashboard .adventure-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.play-dashboard .adventure-grid{grid-template-columns:1fr}.play-dashboard .adventure-card-full{max-width:none}}@media(min-width:768px)and (max-height:600px){.play-dashboard{padding:1rem}.play-dashboard .dashboard-header{margin-bottom:1rem}.play-dashboard .dashboard-header h1{font-size:1.5rem}.play-dashboard .adventure-card{padding:1rem}.play-dashboard .adventure-card .adventure-theme-icon,.play-dashboard .adventure-card .new-adventure-icon{width:48px;height:48px}}.play-new-adventure{display:flex;flex-direction:column;height:calc(100vh - 56px);padding:1rem 1.5rem;overflow-y:auto}.play-new-adventure .adventure-header{text-align:center;flex-shrink:0;margin-bottom:1rem}.play-new-adventure .adventure-header h1{font-size:2.1rem;font-weight:800;color:#fff;letter-spacing:-.02em;background:linear-gradient(135deg,var(--player-color, #3a7bd5) 0%,var(--player-color-secondary, #2ec4b6) 100%);padding:.7rem 1.8rem;border-radius:22px;box-shadow:0 12px 24px #1c5ea947;display:inline-block;margin:0}.play-new-adventure .error-message{background:#fee;border:1px solid #fcc;color:#c00;padding:1rem;border-radius:8px;margin-bottom:1rem;flex-shrink:0}.play-new-adventure .adventure-form{flex:1;display:flex;flex-direction:column;gap:1rem;max-width:800px;margin:0 auto;width:100%}.play-new-adventure .form-section .section-label{font-size:1rem;font-weight:600;color:#555;margin-bottom:.5rem}.play-new-adventure .step-panel{display:none}.play-new-adventure .step-panel.is-active{display:block}.play-new-adventure .step-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.75rem;justify-content:center}.play-new-adventure .step-btn{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1.2rem;border-radius:999px;border:none;background:#4a90d9;color:#fff;font-weight:600;font-size:1.05rem;cursor:pointer;transition:background .2s ease,opacity .2s ease}.play-new-adventure .step-btn.ghost{background:#eef3fb;color:#2f4f7a}.play-new-adventure .step-btn:disabled{opacity:.5;cursor:not-allowed}.play-new-adventure .theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}@media(max-width:600px){.play-new-adventure .theme-grid{grid-template-columns:repeat(2,1fr)}}.play-new-adventure .theme-card{display:flex;flex-direction:column;align-items:center;padding:.75rem .5rem;border:3px solid #e0e0e0;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease,opacity 1.5s ease}.play-new-adventure .theme-card input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.play-new-adventure .theme-card .theme-icon{width:48px;height:48px;background-color:var(--theme-color, #4a90d9);-webkit-mask:var(--theme-icon) center/contain no-repeat;mask:var(--theme-icon) center/contain no-repeat;margin-bottom:.35rem;transition:background-color .2s ease}.play-new-adventure .theme-card .theme-label{font-size:.85rem;font-weight:500;color:#333;text-align:center;transition:color .2s ease}.play-new-adventure .theme-card:hover:not(.disabled){border-color:var(--theme-color, #4a90d9)}.play-new-adventure .theme-card:hover:not(.disabled) .theme-label{color:var(--theme-color, #2a6cb5)}.play-new-adventure .theme-card.selected{border-color:var(--theme-color, #4a90d9);background:var(--theme-soft, #e8f2fc);box-shadow:0 0 0 2px #4a90d933}.play-new-adventure .theme-card.selected .theme-label{color:var(--theme-color, #2a6cb5)}.play-new-adventure .theme-card.disabled{opacity:.25;filter:grayscale(.25);cursor:not-allowed}.play-new-adventure .theme-counter{text-align:center;font-size:.85rem;color:#666;margin:.5rem 0 0}.play-new-adventure .math-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}@media(max-width:600px){.play-new-adventure .math-grid{grid-template-columns:repeat(2,1fr)}}.play-new-adventure .math-card{display:flex;flex-direction:column;align-items:center;padding:.75rem;border:3px solid #e0e0e0;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease,opacity 1.5s ease}.play-new-adventure .math-card input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.play-new-adventure .math-card .math-icon-group{display:inline-flex;align-items:center;justify-content:center;gap:.2rem}.play-new-adventure .math-card .math-icon{width:28px;height:28px;color:#5c6f86;display:inline-flex;align-items:center;justify-content:center}.play-new-adventure .math-card .math-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.play-new-adventure .math-card .math-name{font-size:.8rem;color:#666;margin-top:.25rem}.play-new-adventure .math-card:hover{border-color:#66bb6a}.play-new-adventure .math-card.selected{border-color:#66bb6a;background:#e8f5e9}.play-new-adventure .math-card.selected .math-icon{color:#43a047}.play-new-adventure .math-card.selected .math-name{color:#2e7d32}.play-new-adventure .math-card.disabled{opacity:.25;filter:grayscale(.25);cursor:not-allowed}.play-new-adventure .form-row{display:flex;gap:1rem;flex-wrap:wrap}.play-new-adventure .form-row .form-field{flex:1;min-width:120px}.play-new-adventure .form-row .form-field label{display:block;font-size:.9rem;font-weight:500;color:#555;margin-bottom:.25rem}.play-new-adventure .form-row .form-field input,.play-new-adventure .form-row .form-field select{width:100%;padding:.75rem;font-size:1.1rem;border:2px solid #ddd;border-radius:8px;background:#fff}.play-new-adventure .form-row .form-field input:focus,.play-new-adventure .form-row .form-field select:focus{outline:none;border-color:#4a90d9}.play-new-adventure .form-row .form-field input[type=number]{text-align:center}.play-new-adventure .form-row .form-field .select-field{position:relative}.play-new-adventure .form-row .form-field .select-trigger{width:100%;padding:.75rem;font-size:1.1rem;border:2px solid #ddd;border-radius:8px;background:#fff;text-align:left;cursor:pointer;display:flex;align-items:center;gap:.5rem}.play-new-adventure .form-row .form-field .select-trigger:focus{outline:none;border-color:#4a90d9}.play-new-adventure .form-row .form-field .select-field:after{content:"▾";position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;color:#6b7a90}.play-new-adventure .form-row .form-field .select-dropdown{display:none;position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #ddd;border-radius:10px;box-shadow:0 10px 22px #0000001f;z-index:20;overflow:hidden;max-height:220px;overflow-y:auto}.play-new-adventure .form-row .form-field .select-dropdown button{width:100%;padding:.75rem .9rem;border:none;background:transparent;text-align:left;font-size:1rem;cursor:pointer;display:flex;align-items:center;gap:.5rem}.play-new-adventure .form-row .form-field .select-dropdown button:hover{background:#f2f6ff}.play-new-adventure .form-row .form-field .select-field.open .select-dropdown{display:block}.play-new-adventure .start-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:1rem;font-size:1.25rem;font-weight:600;color:#fff;background:#4a90d9;border:none;border-radius:12px;cursor:pointer;transition:background .15s ease,opacity .2s ease,transform .15s ease;margin-top:auto;-webkit-user-select:none;user-select:none}.play-new-adventure .start-btn:disabled,.play-new-adventure .start-btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;transform:none}.play-new-adventure .start-btn:disabled svg,.play-new-adventure .start-btn[aria-disabled=true] svg{display:none}.play-new-adventure .start-btn:hover,.play-new-adventure .start-btn:active{background:#357abd}.play-new-adventure .start-btn svg{width:28px;height:28px}@media(min-width:768px)and (max-height:600px){.play-new-adventure{padding:.75rem 1rem}.play-new-adventure .adventure-header h1{font-size:1.6rem}.play-new-adventure .adventure-form{gap:.75rem}.play-new-adventure .theme-grid{grid-template-columns:repeat(8,1fr)}.play-new-adventure .theme-card{padding:.5rem .25rem}.play-new-adventure .theme-card img{width:36px;height:36px}.play-new-adventure .theme-card .theme-label{font-size:.7rem}.play-new-adventure .math-grid{grid-template-columns:repeat(4,1fr)}.play-new-adventure .math-card{padding:.5rem;flex-direction:row;gap:.5rem}.play-new-adventure .math-card .math-icon-group{gap:.15rem}.play-new-adventure .math-card .math-icon{width:22px;height:22px}.play-new-adventure .math-card .math-symbol{font-size:1rem}.play-new-adventure .math-card .math-name{margin-top:0}.play-new-adventure .form-row .form-field input,.play-new-adventure .form-row .form-field select{padding:.5rem;font-size:1rem}.play-new-adventure .start-btn{padding:.75rem;font-size:1.1rem}}@media(min-width:1024px)and (min-height:700px){.play-new-adventure .theme-card{padding:1rem .75rem}.play-new-adventure .theme-card img{width:56px;height:56px}.play-new-adventure .theme-card .theme-label{font-size:.9rem}.play-new-adventure .math-card{padding:1rem}.play-new-adventure .math-card .math-icon-group{gap:.3rem}.play-new-adventure .math-card .math-icon{width:34px;height:34px}.play-new-adventure .math-card .math-symbol{font-size:1.25rem}.play-new-adventure .math-card .math-name{font-size:.9rem}}.play-adventure{display:flex;flex-direction:column;min-height:calc(100vh - 56px);padding:0 1.5rem 1.5rem;overflow:visible;justify-content:flex-start;gap:1rem;position:relative}.play-adventure .adventure-hero{position:relative;width:100vw;margin:0 calc(50% - 50vw);border-radius:0;overflow:hidden;padding:2rem 2.5rem;min-height:30vh;display:flex;align-items:flex-end;background:#1f2a3a;box-shadow:0 16px 30px #19284438}.play-adventure .adventure-hero.has-image{background:var(--adventure-hero) center/cover no-repeat}.play-adventure .adventure-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#00000040,#000000b3)}.play-adventure .adventure-hero .adventure-hero-inner{position:relative;z-index:1;width:100%;max-width:980px;margin:0 auto;text-align:center}.play-adventure .adventure-hero .adventure-title{font-size:1.75rem;font-weight:700;color:#fff;margin:0;text-shadow:0 3px 12px rgba(0,0,0,.9)}.play-adventure .adventure-hero .adventure-tool-row{display:flex;justify-content:center;margin-bottom:.5rem}.play-adventure .adventure-hero .tool-indicator{display:inline-flex;align-items:center;justify-content:center;color:#ffffff73;filter:drop-shadow(0 2px 6px rgba(0,0,0,.7))}.play-adventure .adventure-hero .tool-indicator svg{width:22px;height:22px}.play-adventure .error-message{background:#fee;border:1px solid #fcc;color:#c00;padding:1rem;border-radius:8px;margin-bottom:1rem;flex-shrink:0}.play-adventure .story-card{background:transparent;border-radius:0;padding:.5rem .25rem 0;flex-shrink:0;border:none;box-shadow:none}.play-adventure .story-card .story-header{display:flex;justify-content:flex-end;margin-bottom:.25rem}.play-adventure .story-card .story-text{font-family:var(--play-reading-font);font-size:1.45rem;line-height:1.6;letter-spacing:.04em;color:var(--play-ink)}.play-adventure .story-card .story-text .sentence{padding:0 .1em;border-radius:.2em;transition:background .2s ease,color .2s ease}.play-adventure .story-card .story-text .sentence.is-speaking{background:#ffdb7d80}.play-adventure .problem-card{background:transparent;border:none;border-radius:0;padding:.5rem .25rem 0;flex:0 0 auto;display:flex;flex-direction:column;min-height:auto;box-shadow:none}.play-adventure .problem-card .problem-text{font-family:var(--play-reading-font);font-size:1.45rem;font-weight:600;letter-spacing:.04em;color:var(--play-ink);margin-bottom:1rem;display:flex;align-items:center;justify-content:flex-start;gap:1rem}.play-adventure .problem-card .problem-text .problem-copy{flex:1}.play-adventure .problem-card .problem-text .sentence{padding:0 .1em;border-radius:.2em;transition:background .2s ease,color .2s ease}.play-adventure .problem-card .problem-text .sentence.is-speaking{background:#ffdb7d80}.play-adventure .problem-card .problem-expression{font-family:var(--play-reading-font);font-size:1.45rem;font-weight:600;line-height:1.6;letter-spacing:.06em;color:var(--play-primary);margin-bottom:1rem}.play-adventure .problem-card .answer-form{display:flex;gap:.75rem;margin-top:.75rem;align-items:stretch}.play-adventure .problem-card .answer-form .answer-input-wrap{flex:1;position:relative}.play-adventure .problem-card .answer-form input{width:100%;position:relative;padding:1rem;font-size:1.5rem;text-align:center;border:3px solid #ddd;border-radius:12px;min-width:0;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.play-adventure .problem-card .answer-form input:focus{outline:none;border-color:#4a90d9}.play-adventure .problem-card .answer-form input::placeholder{color:#bbb;font-size:1rem}.play-adventure .problem-card .answer-form .is-bouncing{animation:answer-bounce .45s ease-out}.play-adventure .problem-card .answer-form .is-typing{border-color:#2ecc71;box-shadow:0 0 0 3px #2ecc7126}.play-adventure .problem-card .answer-form .is-erasing{border-color:#f39c12;box-shadow:0 0 0 3px #f39c122e}.play-adventure .problem-card .answer-form .submit-btn{align-self:stretch;width:56px;flex-shrink:0;background:#4a90d9;color:#fff;border:none;border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s ease}.play-adventure .problem-card .answer-form .submit-btn:hover,.play-adventure .problem-card .answer-form .submit-btn:active{background:#357abd}.play-adventure .problem-card .answer-form .submit-btn svg{width:20px;height:20px}.play-adventure .problem-card .report-problem{position:fixed;right:1.5rem;bottom:1.5rem;margin:0;z-index:2}.play-adventure .problem-card .report-btn{display:inline-flex;align-items:center;gap:.35rem;background:transparent;border:none;color:#6c757d;font-size:.85rem;cursor:pointer;padding:.25rem .35rem;border-radius:8px;transition:color .15s ease,background .15s ease}.play-adventure .problem-card .report-btn svg{width:16px;height:16px}.play-adventure .problem-card .report-btn:hover{color:#3a7bd5;background:#3a7bd51a}.play-adventure .problem-card .result{padding:1.25rem;border-radius:12px;text-align:center;font-size:1.2rem;font-weight:600;margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:1rem}.play-adventure .problem-card .result p{margin:0}.play-adventure .problem-card .result.correct{background:#d4edda;color:#155724}.play-adventure .problem-card .result.correct .continue-btn{background:#28a745}.play-adventure .problem-card .result.correct .continue-btn:hover,.play-adventure .problem-card .result.correct .continue-btn:active{background:#218838}.play-adventure .problem-card .result.incorrect{background:#f8d7da;color:#721c24}.play-adventure .problem-card .result.incorrect .continue-btn{background:#dc3545}.play-adventure .problem-card .result.incorrect .continue-btn:hover,.play-adventure .problem-card .result.incorrect .continue-btn:active{background:#c82333}.play-adventure .problem-card .result .continue-btn{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;color:#fff;text-decoration:none;transition:all .15s ease}.play-adventure .problem-card .result .continue-btn svg{width:40px;height:40px}.play-adventure .problem-card .clue-section{margin-top:1rem;padding-top:1rem;border-top:1px solid #eee}.play-adventure .problem-card .clue-section .clue-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#fff8e1;border:2px solid #ffc107;border-radius:8px;color:#f57c00;font-weight:500;cursor:pointer;transition:all .15s ease}.play-adventure .problem-card .clue-section .clue-btn:hover,.play-adventure .problem-card .clue-section .clue-btn:active{background:#fff3cd}.play-adventure .problem-card .clue-section .clue-btn svg{width:20px;height:20px}.play-adventure .problem-card .clue-section .clue{background:#fff8e1;border-left:4px solid #ffc107;padding:1rem;margin-top:.75rem;border-radius:0 8px 8px 0;font-size:1rem}.play-adventure .progress-badge{position:fixed;bottom:1rem;left:1rem;z-index:2;display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:2px solid rgba(58,123,213,.7);border-radius:24px;color:var(--play-primary);font-weight:600;font-size:1rem;box-shadow:0 2px 8px #0000001a}.play-adventure .progress-badge svg{width:20px;height:20px}.play-adventure .speech-toggle{width:36px;height:36px;border-radius:999px;border:none;background:#3a7bd514;display:inline-flex;align-items:center;justify-content:center;color:#3a7bd5;cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease}.play-adventure .speech-toggle:hover,.play-adventure .speech-toggle:active{background:#3a7bd529;transform:translateY(-1px)}.play-adventure .speech-toggle.is-speaking{background:#2ecc7133;color:#2ecc71}.play-adventure .speech-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.play-adventure .speech-toggle svg{width:18px;height:18px}.play-adventure.has-keypad{padding-bottom:calc(1.5rem + 220px)}.play-adventure .play-keypad{position:fixed;left:50%;bottom:1.25rem;transform:translate(-50%);z-index:5;width:min(720px,96vw);padding:.5rem .75rem;border-radius:20px;background:#fffffff5;box-shadow:0 16px 30px #14213d2e;border:1px solid rgba(40,60,90,.08)}.play-adventure .play-keypad .keypad-inner{display:flex;align-items:center;justify-content:center;gap:.4rem;flex-wrap:nowrap;overflow:hidden}.play-adventure .play-keypad .keypad-key{border:none;border-radius:16px;padding:.5rem 0;font-size:1.35rem;font-weight:700;color:#1f2a3a;background:#f2f6ff;cursor:pointer;box-shadow:inset 0 0 0 1px #3a7bd514;transition:transform .1s ease,box-shadow .1s ease,background .1s ease;flex:1;min-width:44px}.play-adventure .play-keypad .keypad-key:active{transform:translateY(1px);background:#e6eefc}.play-adventure .play-keypad .keypad-key-action{display:inline-flex;align-items:center;justify-content:center;background:#ffd5d5;color:#a83434}.play-adventure .play-keypad .keypad-key-action svg{width:22px;height:22px}.play-adventure .credits-badge{position:fixed;bottom:1rem;right:1rem;display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:2px solid rgba(255,159,28,.7);border-radius:24px;color:var(--play-secondary);font-weight:600;font-size:1rem;box-shadow:0 2px 8px #0000001a}.play-adventure .credits-badge svg{width:20px;height:20px}@keyframes answer-bounce{0%{transform:translateY(0)}40%{transform:translateY(-6px)}65%{transform:translateY(0)}80%{transform:translateY(-3px)}to{transform:translateY(0)}}.play-adventure input[type=number],.play-new-adventure input[type=number],.play-feedback input[type=number]{-moz-appearance:textfield;appearance:textfield}.play-adventure input[type=number]::-webkit-outer-spin-button,.play-adventure input[type=number]::-webkit-inner-spin-button,.play-new-adventure input[type=number]::-webkit-outer-spin-button,.play-new-adventure input[type=number]::-webkit-inner-spin-button,.play-feedback input[type=number]::-webkit-outer-spin-button,.play-feedback input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.play-adventure-finale .finale-actions{display:flex;justify-content:center;margin-top:1.5rem}.play-adventure-finale .finale-home-btn{width:64px;height:64px;border-radius:50%;background:#2eae60;color:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 12px 24px #2eae6040;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.play-adventure-finale .finale-home-btn svg{width:28px;height:28px}.play-adventure-finale .finale-home-btn:hover{transform:translateY(-1px);background:#279451;box-shadow:0 14px 26px #2eae604d}.play-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:1.5rem;z-index:30}.play-modal .play-modal-backdrop{position:absolute;inset:0;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.play-modal .play-modal-content{position:relative;width:min(420px,90vw);background:#fff;border-radius:16px;padding:1.5rem;text-align:center;box-shadow:0 12px 30px #0003;z-index:1}.play-modal .play-modal-content h3{margin:0 0 .5rem;font-size:1.25rem;color:#333}.play-modal .play-modal-content p{margin:0 0 1.25rem;color:#555;line-height:1.4}.play-modal .report-pin-row{display:flex;gap:.75rem;justify-content:center;margin-bottom:.75rem}.play-modal .report-pin-row input{width:110px;text-align:center;font-size:1.2rem;padding:.5rem .75rem;border:2px solid #ddd;border-radius:10px}.play-modal .report-field{text-align:left;margin-bottom:.85rem}.play-modal .report-field label{display:block;font-size:.85rem;font-weight:600;color:#4a4a4a;margin-bottom:.35rem}.play-modal .report-field select,.play-modal .report-field textarea{width:100%;border:2px solid #e0e0e0;border-radius:10px;padding:.65rem .75rem;font-size:.95rem}.play-modal .report-field textarea{resize:vertical}.play-modal .report-error{margin:0 0 .75rem;color:#c0392b;font-size:.85rem}.play-modal .play-modal-close{position:absolute;top:.75rem;right:.75rem;border:none;background:#f1f3f5;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#555}.play-modal .play-modal-close svg{width:18px;height:18px}.play-modal .play-modal-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.play-modal .play-modal-actions .modal-btn{border:none;padding:.75rem 1.5rem;border-radius:12px;font-weight:600;cursor:pointer;font-size:1rem}.play-modal .play-modal-actions .modal-btn.primary{background:#4a90d9;color:#fff}.play-modal .play-modal-actions .modal-btn.secondary{background:#6c757d;color:#fff}.play-modal .play-modal-actions .modal-btn.link-btn{background:transparent;color:#6c757d;padding:0;border-radius:0;text-decoration:underline;font-weight:500}.play-loading-modal .play-loading-icon{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#3a7bd5,#2ec4b6);color:#fff;display:inline-flex;align-items:center;justify-content:center;margin:0 auto .75rem;animation:loading-bounce 1s ease-in-out infinite}.play-loading-modal .play-loading-icon svg{width:32px;height:32px}.play-loading-modal .play-loading-text{font-weight:600;color:var(--play-ink)}.play-loading-modal.is-static{position:relative;inset:auto;min-height:220px;padding:0}.play-loading-modal.is-static .play-loading-backdrop{display:none}.play-adventure-wait{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 56px);padding:2rem 1.5rem;text-align:center;gap:1.5rem}.play-adventure-wait .wait-header{max-width:520px}.play-adventure-wait .wait-header h1{font-size:2rem;margin-bottom:.35rem}.play-adventure-wait .wait-header p{color:var(--play-muted);font-size:1.1rem;margin:0 0 1rem}.play-adventure-wait .adventure-themes{display:flex;justify-content:center;gap:.5rem;margin-top:.5rem}.play-adventure-wait .adventure-themes .theme-icon{width:40px;height:40px;border-radius:10px;animation:theme-bob 1.8s ease-in-out infinite;animation-delay:calc(var(--theme-index) * .15s)}.play-adventure-wait .wait-actions{margin-top:.5rem}.play-adventure-wait .wait-btn{border:none;padding:.75rem 1.5rem;border-radius:12px;font-weight:600;cursor:pointer;font-size:1rem}.play-adventure-wait .wait-btn.secondary{background:#f1f3f5;color:#495057}@keyframes theme-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes loading-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media(min-width:768px)and (max-height:600px){.play-adventure{padding:1rem;flex-direction:row;flex-wrap:wrap;gap:1rem}.play-adventure .adventure-header{width:100%;margin-bottom:.5rem}.play-adventure .adventure-header h1{font-size:1.25rem}.play-adventure .adventure-header .adventure-themes .theme-icon{width:28px;height:28px}.play-adventure .story-card{flex:1;min-width:45%;margin-bottom:0}.play-adventure .story-card .story-text{font-size:1rem}.play-adventure .problem-card{flex:1;min-width:45%}.play-adventure .problem-card .problem-text{font-size:1.1rem}.play-adventure .problem-card .answer-form input{font-size:1.25rem;padding:.75rem}.play-adventure .problem-card .answer-form .submit-btn{width:52px;height:52px}.play-adventure .problem-card .answer-form .submit-btn svg{width:28px;height:28px}}@media(min-width:1024px){.play-adventure{max-width:900px;margin:0 auto}}.play-feedback{display:flex;flex-direction:column;min-height:calc(100vh - 56px);padding:1.5rem;overflow-y:auto;align-items:center;justify-content:center}.play-feedback.is-correct{background:linear-gradient(135deg,#d4edda,#c3e6cb)}.play-feedback.is-correct .feedback-icon{background:#28a745}.play-feedback.is-correct .feedback-result h1{color:#155724}.play-feedback.is-incorrect{background:linear-gradient(135deg,#f8d7da,#f5c6cb)}.play-feedback.is-incorrect .feedback-icon{background:#dc3545}.play-feedback.is-incorrect .feedback-result h1{color:#721c24}.play-feedback .feedback-result{text-align:center;margin-bottom:1.5rem}.play-feedback .feedback-result .feedback-cover{width:128px;height:128px;border-radius:50%;overflow:visible;margin:0 auto .75rem;border:4px solid #fff;box-shadow:0 10px 20px #18284833;background:#fff;position:relative}.play-feedback .feedback-result .feedback-cover img{width:100%;height:100%;object-fit:cover;border-radius:50%}.play-feedback .feedback-result .feedback-icon{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:absolute;top:-8px;right:-8px;color:#fff;box-shadow:0 8px 16px #18284833;z-index:2}.play-feedback .feedback-result .feedback-icon svg{width:24px;height:24px}.play-feedback .feedback-result h1{font-size:2rem;font-weight:700;margin:0 0 .5rem}.play-feedback .feedback-result .correct-answer{font-size:1.1rem;margin:0;color:#721c24}.play-feedback .feedback-result .correct-answer strong{font-size:1.5rem;display:block;margin-top:.25rem}.play-feedback .problem-recap{background:#fffc;padding:1rem 1.5rem;border-radius:12px;font-family:var(--play-reading-font);font-size:1.3rem;font-weight:500;color:#333;margin-bottom:1.5rem;text-align:center;max-width:500px}.play-feedback .solution-steps{background:#ffffffe6;border-radius:12px;padding:1.25rem;margin-bottom:1.5rem;max-width:500px;width:100%}.play-feedback .solution-steps h2{font-size:1rem;margin:0 0 1rem;color:#495057;text-align:center}.play-feedback .solution-steps .steps-list{display:flex;flex-direction:column;gap:.5rem}.play-feedback .solution-steps .step-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#f8f9fa;border-radius:8px}.play-feedback .solution-steps .step-item .step-number{width:28px;height:28px;background:#4a90d9;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;flex-shrink:0}.play-feedback .solution-steps .step-item .step-text{flex:1;line-height:1.4;padding-top:.2rem}.play-feedback .feedback-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.play-feedback .feedback-actions form{display:contents}.play-feedback .feedback-actions .next-btn{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:#4a90d9;color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all .15s ease;min-width:200px;justify-content:center}.play-feedback .feedback-actions .next-btn:hover:not(:disabled),.play-feedback .feedback-actions .next-btn:active:not(:disabled){background:#357abd;transform:scale(1.02)}.play-feedback .feedback-actions .next-btn:disabled{opacity:.7;cursor:not-allowed}.play-feedback .feedback-actions .next-btn.secondary{background:#6c757d}.play-feedback .feedback-actions .next-btn.secondary:hover:not(:disabled),.play-feedback .feedback-actions .next-btn.secondary:active:not(:disabled){background:#5a6268}.play-feedback .feedback-actions .next-btn .btn-countdown{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#fff3;border-radius:50%;font-size:.9rem}.play-feedback .feedback-actions .next-btn svg{width:28px;height:28px}.play-feedback .progress-badge{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:2px solid #4a90d9;border-radius:24px;color:#4a90d9;font-weight:600;font-size:1rem;box-shadow:0 2px 8px #0000001a}.play-feedback .progress-badge svg{width:20px;height:20px}.play-loading-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:1.5rem;z-index:40}.play-loading-modal .play-loading-backdrop{position:absolute;inset:0;background:#121c2b66;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.play-loading-modal .play-loading-content{position:relative;z-index:1;background:#fff;border-radius:18px;padding:1.5rem 2rem;text-align:center;box-shadow:0 16px 32px #18284833}.play-loading-modal .play-loading-text{font-weight:600;color:#24324a}.play-loading-modal .adventure-themes{display:flex;justify-content:center;gap:.5rem;margin:0 auto .75rem}.play-loading-modal .adventure-themes .theme-icon{width:36px;height:36px;border-radius:10px;animation:theme-bob 1.8s ease-in-out infinite;animation-delay:calc(var(--theme-index) * .15s)}@media(min-width:768px)and (max-height:600px){.play-feedback{padding:1rem}.play-feedback .feedback-result{margin-bottom:1rem}.play-feedback .feedback-result .feedback-icon{width:60px;height:60px}.play-feedback .feedback-result .feedback-icon svg{width:36px;height:36px}.play-feedback .feedback-result h1{font-size:1.5rem}.play-feedback .problem-recap{margin-bottom:1rem;padding:.75rem 1rem}.play-feedback .solution-steps{max-height:150px;overflow-y:auto;margin-bottom:1rem;padding:1rem}.play-feedback .solution-steps .step-item{padding:.5rem}.play-feedback .feedback-actions .next-btn{padding:.75rem 1.5rem}}@media(min-width:1024px){.play-feedback .solution-steps{max-width:600px}}.play-complete{max-width:500px;margin:4rem auto;padding:2rem;text-align:center}.play-complete .celebration{margin-bottom:3rem}.play-complete .celebration h1{font-size:2.5rem;color:#4a90d9;margin-bottom:.5rem}.play-complete .celebration .player-name{font-size:1.2rem;color:#666}.play-complete .stats{display:flex;justify-content:center;gap:2rem;margin-bottom:3rem}.play-complete .stats .stat{display:flex;flex-direction:column;align-items:center;padding:1.5rem 2rem;background:#fff;border:2px solid #eee;border-radius:8px}.play-complete .stats .stat .stat-value{font-size:2rem;font-weight:700;color:#333}.play-complete .stats .stat .stat-label{font-size:.9rem;color:#666;margin-top:.25rem}.play-complete .actions .btn{display:inline-block;padding:1rem 2rem;font-size:1.1rem;text-decoration:none;border-radius:4px;cursor:pointer;border:none}.play-complete .actions .btn.btn-primary{background:#4a90d9;color:#fff}.play-complete .actions .btn.btn-primary:hover{background:#357abd}.pin-page{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 100px);padding:2rem}.pin-card{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 4px 20px #0000001a;text-align:center;max-width:360px;width:100%}.pin-card h1{margin:0 0 .5rem;font-size:1.5rem;color:#333}.pin-card p{color:#666;margin:0 0 2rem;font-size:.95rem}.pin-form .pin-inputs{margin-bottom:1rem}.pin-form .pin-input{width:100%;font-size:2rem;text-align:center;letter-spacing:1rem;padding:1rem;border:2px solid #ddd;border-radius:8px;font-family:monospace}.pin-form .pin-input:focus{outline:none;border-color:#4a90d9;box-shadow:0 0 0 3px #4a90d933}.pin-form .pin-input.error{border-color:#dc3545}.pin-form .pin-input::placeholder{color:#ccc;letter-spacing:1rem}.pin-error{color:#dc3545;font-size:.9rem;margin-bottom:1rem}.pin-submit{width:100%;padding:1rem;background:#4a90d9;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:background .2s}.pin-submit:hover{background:#3a7bc8}*{box-sizing:border-box}html{font-size:14px;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:#f8f9fa;margin:0;padding:0;min-height:100%;color:#212529;line-height:1.5}.admin-navbar{display:flex;justify-content:space-between;align-items:center;padding:0 1.5rem;height:50px;background:#1a1a2e;color:#fff}.admin-navbar .navbar-brand{display:flex;align-items:center;gap:.75rem}.admin-navbar .navbar-brand .navbar-brand-link{display:inline-flex;align-items:center}.admin-navbar .navbar-brand .navbar-logo{height:22px;width:auto;display:block}.admin-navbar .navbar-brand a{font-size:1.1rem;font-weight:600;color:#fff;text-decoration:none}.admin-navbar .navbar-brand .badge{font-size:.7rem;padding:.2rem .5rem;background:#4a90d9;border-radius:3px;text-transform:uppercase;letter-spacing:.5px}.admin-navbar .navbar-actions{display:flex;align-items:center;gap:1rem}.admin-navbar .navbar-actions .admin-name{font-size:.9rem;color:#adb5bd}.admin-navbar .navbar-actions .logout-form{margin:0}.admin-navbar .navbar-actions .btn-logout{background:transparent;border:1px solid #495057;color:#adb5bd;padding:.35rem .75rem;border-radius:4px;cursor:pointer;font-size:.85rem}.admin-navbar .navbar-actions .btn-logout:hover{background:#495057;color:#fff}.admin-navbar .navbar-actions .language-selector{position:relative}.admin-navbar .navbar-actions .language-current{display:flex;align-items:center;justify-content:center;gap:.25rem;width:36px;height:36px;padding:0;background:#202234;border:1px solid #495057;border-radius:6px;cursor:pointer;font-size:1rem;color:#fff}.admin-navbar .navbar-actions .language-current:hover,.admin-navbar .navbar-actions .language-current:active{background:#2b2d44}.admin-navbar .navbar-actions .language-current .flag{font-size:1.15rem;line-height:1}.admin-navbar .navbar-actions .language-current .arrow{display:none}.admin-navbar .navbar-actions .language-dropdown{display:none;position:absolute;top:100%;right:0;margin-top:.5rem;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #00000026;min-width:180px;z-index:1000;overflow:hidden}.admin-navbar .navbar-actions .language-dropdown.show{display:block}.admin-navbar .navbar-actions .language-dropdown a{display:flex;align-items:center;gap:.75rem;padding:.75rem .9rem;color:#333;text-decoration:none;font-size:.9rem}.admin-navbar .navbar-actions .language-dropdown a:hover,.admin-navbar .navbar-actions .language-dropdown a:active{background:#f5f5f5}.admin-navbar .navbar-actions .language-dropdown a.active{background:#e8f4fc;color:#4a90d9}.admin-navbar .navbar-actions .language-dropdown a .flag{font-size:1.2rem}.admin-container{max-width:1200px;margin:0 auto;padding:2rem}.page-header{margin-bottom:2rem;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem}.page-header h1{font-size:1.5rem;font-weight:600;margin:0 0 .25rem;color:#212529}.page-header .page-title-row{display:flex;align-items:center;gap:.75rem}.page-header .page-actions{display:flex;gap:.5rem}.page-header .breadcrumb{width:100%;font-size:.85rem;color:#6c757d}.page-header .breadcrumb a{color:#4a90d9;text-decoration:none}.page-header .breadcrumb a:hover{text-decoration:underline}.page-header .group-actions{margin-top:1rem;display:flex;gap:.5rem}.card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem}.card .card-header{padding:1rem 1.25rem;border-bottom:1px solid #e9ecef;font-weight:600;font-size:.95rem;display:flex;justify-content:space-between;align-items:center}.card .card-body{padding:1.25rem}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e9ecef}.data-table th{font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;color:#6c757d;background:#f8f9fa}.data-table tr:hover td{background:#f8f9fa}.data-table .actions{text-align:right}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:4px;font-size:.875rem;font-weight:500;text-decoration:none;cursor:pointer;border:none;transition:all .15s ease}.btn.btn-primary{background:#4a90d9;color:#fff}.btn.btn-primary:hover{background:#3a7bc8}.btn.btn-secondary{background:#6c757d;color:#fff}.btn.btn-secondary:hover{background:#5a6268}.btn.btn-sm{padding:.35rem .75rem;font-size:.8rem}.btn.btn-danger{background:#dc3545;color:#fff}.btn.btn-danger:hover{background:#c82333}.btn.btn-xs{padding:.2rem .5rem;font-size:.7rem}.active-adventure-info{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.active-adventure-info .adventure-details{flex:1}.active-adventure-info .adventure-actions{display:flex;gap:.5rem;flex-shrink:0}.add-player-row{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #eee}.add-player-row .add-player-form{display:flex;gap:.5rem}.add-player-row .add-player-form input[type=text]{flex:1;padding:.5rem .75rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.add-player-row .add-player-form input[type=text]:focus{outline:none;border-color:#4a90d9}.add-player-row .add-player-form input[type=color]{width:38px;height:38px;padding:0;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer}.add-player-row .add-player-form input[type=color]::-webkit-color-swatch{border:none;border-radius:4px}.add-player-row .add-player-form input[type=color]::-moz-color-swatch{border:none;border-radius:4px}.player-actions{display:flex;gap:.25rem;flex-shrink:0;margin-left:.5rem}.modal .form-group{margin-bottom:1rem}.modal .form-group label{display:block;margin-bottom:.25rem;font-weight:500}.modal .form-group input[type=text]{width:100%;padding:.5rem .75rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.modal .form-group input[type=text]:focus{outline:none;border-color:#4a90d9}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.stats-row .stat-card{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000001a}.stats-row .stat-card .stat-value{font-size:1.75rem;font-weight:700;color:#212529}.stats-row .stat-card .stat-label{font-size:.85rem;color:#6c757d;margin-top:.25rem}.stats-row .stat-card.stat-card-link{text-decoration:none;transition:all .15s ease;cursor:pointer}.stats-row .stat-card.stat-card-link:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.stats-row .stat-card.stat-card-link:hover .stat-value{color:#4a90d9}.groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.group-card{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000001a;text-decoration:none;color:inherit;transition:all .15s ease;display:block}.group-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.group-card .group-name{font-weight:600;font-size:1rem;margin-bottom:.5rem;color:#212529}.group-card .group-meta{font-size:.85rem;color:#6c757d;display:flex;gap:1rem}.group-card .group-meta span{display:flex;align-items:center;gap:.25rem}.group-card .group-token{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e9ecef;font-family:monospace;font-size:.75rem;color:#adb5bd;word-break:break-all}.bulk-language-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#e3f2fd;border-radius:6px;margin-bottom:1rem}.bulk-language-row label{font-size:.9rem;font-weight:500;color:#1565c0}.bulk-language-row select{padding:.4rem .6rem;border:1px solid #90caf9;border-radius:4px;font-size:.875rem;background:#fff}.bulk-language-row select:focus{outline:none;border-color:#1565c0}.players-list{display:flex;flex-direction:column;gap:.5rem}.players-list.players-list-with-language .player-row-container{display:flex;align-items:center;gap:.75rem}.players-list.players-list-with-language .player-row{flex:1}.players-list.players-list-with-language .player-row.no-link{pointer-events:none}.players-list.players-list-with-language .player-language,.players-list.players-list-with-language .player-sound{flex-shrink:0}.players-list.players-list-with-language .player-sound-label{display:flex;align-items:center;gap:.35rem;font-size:.85rem;color:#6c757d}.players-list.players-list-with-language .player-sound-toggle{width:16px;height:16px}.players-list.players-list-with-language .player-language-select{padding:.4rem .5rem;border:1px solid #dee2e6;border-radius:4px;font-size:.85rem;background:#fff;min-width:140px}.players-list.players-list-with-language .player-language-select:focus{outline:none;border-color:#4a90d9}.players-list.players-list-with-language .player-language-display{font-size:.85rem;color:#6c757d;padding:.4rem .75rem;background:#f8f9fa;border-radius:4px}.players-list.players-list-with-language .player-color{flex-shrink:0}.players-list.players-list-with-language .player-color-input{width:34px;height:34px;padding:0;border:1px solid #dee2e6;border-radius:6px;background:#fff;cursor:pointer}.players-list.players-list-with-language .player-color-input::-webkit-color-swatch{border:none;border-radius:4px}.players-list.players-list-with-language .player-color-input::-moz-color-swatch{border:none;border-radius:4px}.players-list .player-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#f8f9fa;border-radius:6px;text-decoration:none;color:inherit;transition:background .15s ease}.players-list .player-row:hover{background:#e9ecef}.players-list .player-row .player-info{display:flex;align-items:center;gap:.75rem}.players-list .player-row .player-info .player-avatar{width:36px;height:36px;border-radius:50%;background:#4a90d9;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem}.players-list .player-row .player-info .player-name{font-weight:500}.players-list .player-row .player-stats{font-size:.85rem;color:#6c757d}.empty-state{text-align:center;padding:3rem 1rem;color:#6c757d}.empty-state p{margin:0 0 1rem}.text-muted{color:#6c757d}.text-sm{font-size:.85rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.skill-tag{display:inline-block;padding:.25rem .5rem;background:#e9ecef;border-radius:4px;font-size:.8rem;margin-right:.25rem;margin-bottom:.25rem}.skill-tag-sm{display:inline-block;padding:.15rem .4rem;background:#e9ecef;border-radius:3px;font-size:.7rem;margin-right:.2rem}.filter-form{display:flex;flex-direction:column;gap:.75rem}.skills-filter{display:flex;flex-wrap:wrap;gap:.5rem}.skills-filter .filter-checkbox{display:inline-flex;align-items:center;padding:.4rem .75rem;background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all .15s ease}.skills-filter .filter-checkbox input{margin-right:.4rem}.skills-filter .filter-checkbox:hover{background:#e9ecef}.skills-filter .filter-checkbox.active{background:#4a90d9;border-color:#4a90d9;color:#fff}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.settings-grid .full-width{grid-column:1/-1}.problems-list{display:flex;flex-direction:column;gap:1.5rem}.problem-item{border:1px solid #e9ecef;border-radius:8px;overflow:hidden}.problem-item.correct{border-left:4px solid #28a745}.problem-item.incorrect{border-left:4px solid #dc3545}.problem-item.pending{border-left:4px solid #ffc107}.problem-item .problem-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f8f9fa;border-bottom:1px solid #e9ecef}.problem-item .problem-header .problem-number{font-weight:600}.problem-item .problem-story{padding:1rem;background:#fafbfc;border-bottom:1px solid #e9ecef;font-size:.95rem;line-height:1.6;color:#495057}.problem-item .problem-question{padding:1rem;border-bottom:1px solid #e9ecef}.problem-item .problem-answer-row{display:flex;gap:1rem;padding:1rem;background:#fff}.problem-item .problem-answer-row .answer-box{display:flex;flex-direction:column;padding:.75rem 1rem;background:#f8f9fa;border-radius:6px;min-width:120px}.problem-item .problem-answer-row .answer-box .label{font-size:.75rem;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.problem-item .problem-answer-row .answer-box .value{font-size:1.25rem;font-weight:600;color:#212529}.problem-item .problem-answer-row .answer-box .answer-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.problem-item .problem-answer-row .answer-box .answer-chip{display:inline-flex;align-items:center;padding:.25rem .6rem;border-radius:999px;font-size:.95rem;background:#e9ecef;color:#495057}.problem-item .problem-answer-row .answer-box .answer-chip.correct{background:#d4edda;color:#155724}.problem-item .problem-answer-row .answer-box .answer-chip.incorrect{background:#f8d7da;color:#721c24}.problem-item .problem-answer-row .answer-box.correct{background:#d4edda}.problem-item .problem-answer-row .answer-box.correct .value{color:#28a745}.problem-item .problem-answer-row .answer-box.incorrect{background:#f8d7da}.problem-item .problem-answer-row .answer-box.incorrect .value{color:#dc3545}.problem-item .clues-section{padding:1rem;background:#f8f9fa;border-top:1px solid #e9ecef}.problem-item .clues-section .clues-header{font-weight:600;font-size:.85rem;margin-bottom:.75rem;color:#495057}.problem-item .clues-section .clues-list{display:flex;flex-direction:column;gap:.5rem}.problem-item .clues-section .clue-item{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem .75rem;background:#fff;border-radius:4px;border:1px solid #e9ecef}.problem-item .clues-section .clue-item .clue-number{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#e9ecef;border-radius:50%;font-size:.75rem;font-weight:600;flex-shrink:0}.problem-item .clues-section .clue-item .clue-text{flex:1;font-size:.9rem;color:#495057}.problem-item .clues-section .clue-item .clue-badge{font-size:.7rem;padding:.15rem .4rem;background:#4a90d9;color:#fff;border-radius:3px;text-transform:uppercase}.problem-item .clues-section .clue-item.used .clue-number{background:#4a90d9;color:#fff}.problem-item .clues-section .clue-item.unused{opacity:.6}.problem-item .clues-section .clue-item.unused .clue-text{color:#adb5bd}.status-badge{display:inline-block;padding:.2rem .5rem;border-radius:3px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.correct{background:#d4edda;color:#28a745}.status-badge.incorrect{background:#f8d7da;color:#dc3545}.status-badge.pending{background:#fff3cd;color:#856404}.data-table.clickable-rows tbody tr:hover{background:#e9ecef}.status-cell{display:flex;align-items:center;gap:.5rem}.status-cell .status-active{color:#28a745}.status-cell .status-completed{color:#6c757d}.status-cell .close-form{display:inline}.badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.badge.badge-success{background:#d4edda;color:#28a745}.badge.badge-info{background:#d1ecf1;color:#0c5460}.badge.badge-secondary{background:#e9ecef;color:#6c757d}.badge.badge-danger{background:#f8d7da;color:#dc3545}.badge .text-muted{margin-left:.25rem;font-weight:400}.text-danger{color:#dc3545}.alert{padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.alert.alert-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.alert.alert-danger{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.batch-usage span[title]{border-bottom:1px dotted #6c757d;cursor:help}.credentials-section .credential-row{padding:1rem 0;border-bottom:1px solid #e9ecef}.credentials-section .credential-row:last-child{border-bottom:none;padding-bottom:0}.credentials-section .credential-row:first-child{padding-top:0}.credentials-section .credential-label{font-weight:600;font-size:.85rem;color:#495057;margin-bottom:.5rem}.credentials-section .credential-value{display:flex;align-items:center;gap:.5rem}.credentials-section .credential-value code{font-size:1rem;background:#f8f9fa;padding:.4rem .75rem;border-radius:4px;font-family:monospace}.credentials-section .credential-value code.obscured{cursor:pointer;letter-spacing:.2rem}.credentials-section .credential-value code.obscured:hover{background:#e9ecef}.credentials-section .credential-value code.text-muted{color:#6c757d;font-style:italic}.credentials-section .credential-hint{font-size:.8rem;color:#6c757d;margin-top:.35rem}.credentials-section .credential-actions{margin-top:.35rem}.btn-icon{background:none;border:1px solid #dee2e6;border-radius:4px;padding:.35rem;cursor:pointer;color:#6c757d;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.btn-icon:hover{background:#f8f9fa;color:#495057}.btn-icon.btn-danger-hover:hover{background:#fff5f5;border-color:#dc3545;color:#dc3545}.btn-icon.copied{background:#d4edda;border-color:#28a745;color:#28a745}.modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-backdrop{position:absolute;inset:0;background:#00000080}.modal-content{position:relative;background:#fff;border-radius:8px;padding:1.5rem;max-width:400px;width:90%;box-shadow:0 10px 40px #0003}.modal-content h3{margin:0 0 .75rem;font-size:1.1rem}.modal-content p{color:#6c757d;margin:0 0 1.5rem;font-size:.95rem;line-height:1.5}.modal-actions{display:flex;justify-content:flex-end;gap:.5rem}.card-header-collapsible{cursor:pointer;-webkit-user-select:none;user-select:none}.card-header-collapsible:hover{background:#f8f9fa}.card-header-collapsible .toggle-icon{font-size:1.25rem;font-weight:400;color:#6c757d;width:24px;text-align:center}.performance-chart-section .performance-filters{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e9ecef}.performance-chart-section .filter-row{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem}.performance-chart-section .filter-row:last-of-type{margin-bottom:1.25rem}.performance-chart-section .filter-group{display:flex;flex-direction:column;gap:.5rem}.performance-chart-section .filter-group label{font-weight:500;font-size:.85rem;color:#495057;display:flex;align-items:center;gap:.75rem}.performance-chart-section .filter-group.filter-group-wide{flex:1;min-width:100%}.performance-chart-section .date-inputs{display:flex;align-items:center;gap:.5rem}.performance-chart-section .date-inputs input[type=date]{padding:.4rem .6rem;border:1px solid #dee2e6;border-radius:4px;font-size:.875rem;color:#495057}.performance-chart-section .date-inputs input[type=date]:focus{outline:none;border-color:#4a90d9;box-shadow:0 0 0 2px #4a90d933}.performance-chart-section .date-inputs span{color:#6c757d}.performance-chart-section select{padding:.4rem .6rem;border:1px solid #dee2e6;border-radius:4px;font-size:.875rem;color:#495057;background:#fff;min-width:120px}.performance-chart-section select:focus{outline:none;border-color:#4a90d9;box-shadow:0 0 0 2px #4a90d933}.performance-chart-section .checkbox-group{display:flex;flex-wrap:wrap;gap:.5rem}.performance-chart-section .checkbox-group.checkbox-group-wrap{max-height:120px;overflow-y:auto;padding:.5rem;background:#f8f9fa;border-radius:4px}.performance-chart-section .checkbox-label{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;background:#fff;border:1px solid #dee2e6;border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .15s ease}.performance-chart-section .checkbox-label:hover{background:#e9ecef}.performance-chart-section .checkbox-label input[type=checkbox]{margin:0}.performance-chart-section .select-actions{font-weight:400;font-size:.8rem}.performance-chart-section .select-actions a{color:#4a90d9;text-decoration:none}.performance-chart-section .select-actions a:hover{text-decoration:underline}.performance-chart-section .chart-container{height:400px;position:relative}.performance-chart-section .chart-empty{text-align:center;padding:3rem 1rem;color:#6c757d;background:#f8f9fa;border-radius:6px}.landing{font-family:Nunito,sans-serif;background:radial-gradient(circle at 15% 10%,#fff2d9,#fff2d900 55%),radial-gradient(circle at 80% 0%,#e1f7ff,#e1f7ff00 48%),radial-gradient(circle at 90% 60%,#f5e6ff,#f5e6ff00 42%),#fcfbf7;color:#1f2a3b}.landing-page{max-width:1200px;margin:0 auto;padding:2.5rem 1.5rem 4rem;display:flex;flex-direction:column;gap:4rem}.landing-header{display:flex;align-items:center;justify-content:space-between;gap:2rem}.landing-left{display:flex;align-items:center;gap:2rem}.landing-right{display:flex;align-items:center;gap:1rem}.landing-brand{display:inline-flex;align-items:center;font-weight:700;font-size:1.2rem;color:#1f2a3b}.landing-brand img{height:72px;width:auto;display:block}.landing-nav{display:flex;justify-content:center;gap:1.5rem;font-weight:600;color:#526079}.landing-nav a{color:inherit}.landing-menu{position:relative}.landing-menu .menu-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;background:#f3f7ff;border-radius:8px;color:#2a3852;cursor:pointer;transition:all .15s ease}.landing-menu .menu-toggle:hover,.landing-menu .menu-toggle:active{background:#e7efff;color:#1f2a3b}.landing-menu .menu-toggle svg{width:22px;height:22px}.landing-menu .menu-dropdown{display:none;position:absolute;top:100%;right:0;margin-top:.5rem;background:#fff;border:1px solid #ddd;border-radius:10px;box-shadow:0 4px 16px #0000001f;min-width:180px;z-index:1000;overflow:hidden}.landing-menu .menu-dropdown.show{display:block}.landing-menu .menu-dropdown a{display:block;padding:.875rem 1rem;color:#333;text-decoration:none;font-size:1rem}.landing-menu .menu-dropdown a:hover,.landing-menu .menu-dropdown a:active{background:#f5f5f5}.landing-cta{display:flex;gap:.75rem}.landing-hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:3rem;align-items:center}.landing-page-plain{max-width:600px;width:min(100% - 20px,600px);margin:0 auto}.landing-page-plain h1{font-size:2.6rem;margin-bottom:1rem;color:#1f2a3b}.landing-markdown{color:#2b374a;font-size:1.05rem;line-height:1.7}.landing-markdown h2,.landing-markdown h3{margin-top:1.5rem;color:#1f2a3b}.landing-markdown p{margin:0 0 1rem}.landing-markdown ul,.landing-markdown ol{padding-left:1.5rem}.landing-markdown a{color:#2f6fed}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;font-weight:700;color:#ff7a59}.hero-copy h1{font-size:clamp(2.4rem,4vw,3.6rem);color:#16324f;margin:.5rem 0 1rem}.hero-copy .lead{font-size:1.1rem;color:#3a4a63;max-width:520px}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.hero-meta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;font-weight:600;color:#526079}.hero-meta span{background:#fff;border-radius:999px;padding:.35rem .8rem;box-shadow:0 6px 14px #141e3c14}.hero-card{background:linear-gradient(160deg,#fff,#f1f7ff);border-radius:24px;padding:2rem;box-shadow:0 20px 40px #1824401f;display:flex;flex-direction:column;gap:1.5rem}.hero-scene{background:linear-gradient(160deg,#0f3d63,#184f7a 70%);border-radius:18px;padding:1.5rem;color:#f4f8ff;position:relative}.scene-badge{position:absolute;top:1rem;right:1rem;background:#fff3;padding:.25rem .6rem;border-radius:999px;font-size:.7rem;letter-spacing:.08em}.hero-scene h3{margin-top:2rem;color:#fff6d4}.scene-problem{margin-top:1rem;display:flex;align-items:center;justify-content:space-between;background:#ffffff1f;padding:.75rem 1rem;border-radius:12px;font-weight:600}.scene-problem button{background:#ffcb6b;border:none;border-radius:999px;padding:.4rem 1rem;font-weight:700;color:#2a1d0f}.hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.hero-metrics strong{font-size:1.1rem;display:block;color:#16324f}.hero-metrics span{font-size:.85rem;color:#6a7a95}.landing-section{display:flex;flex-direction:column;gap:2rem}.landing-section h2{font-size:2rem;color:#16324f}.feature-grid,.story-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.feature-grid article,.story-grid article{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 12px 24px #14203c14}.landing-section.highlight{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem;align-items:center;background:linear-gradient(135deg,#f5f2ff,#fff6e9);border-radius:24px;padding:2.5rem}.section-copy ul{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:.6rem}.section-copy li:before{content:"•";color:#ff7a59;font-weight:700;margin-right:.5rem}.section-panel{background:#101828;color:#f8f9ff;border-radius:18px;padding:1.5rem;display:grid;gap:1rem}.section-panel .panel-row{display:flex;justify-content:space-between;font-weight:600;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.5rem}.landing-cta-panel{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;background:#1a3b5d;color:#f3f8ff;border-radius:24px;padding:2rem 2.5rem}.landing .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.4rem;border-radius:999px;font-weight:700;text-decoration:none}.landing .btn-primary{background:#ff7a59;color:#fff;box-shadow:0 12px 24px #ff7a594d}.landing .btn-ghost{border:1px solid #d9e2f0;color:#2b3b4f;background:#fff}@media(max-width:900px){.landing-header{flex-direction:column;align-items:center;text-align:center}.landing-left,.landing-right{flex-direction:column}.landing-nav{flex-wrap:wrap}.landing-cta{flex-direction:column;width:100%}.landing-cta .btn{width:100%}.landing-cta-panel{flex-direction:column;align-items:flex-start}}.account{background:#f5f6fb}.account-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;background:#fff;border-bottom:1px solid #e6ebf2}.account-header-actions{display:flex;align-items:center;gap:1rem}.account-brand{display:inline-flex;align-items:center;text-decoration:none}.account-brand img{height:28px;width:auto;display:block}.account-nav{display:flex;gap:1.5rem;font-weight:600}.account-nav a{color:#4a607b;text-decoration:none}.language-selector{position:relative}.language-current{display:flex;align-items:center;justify-content:center;gap:.25rem;width:44px;height:44px;padding:0;background:#f3f7ff;border:none;border-radius:8px;cursor:pointer;font-size:1.25rem}.language-current:hover,.language-current:active{background:#e7efff}.language-current .flag{font-size:1.5rem;line-height:1}.language-current .arrow{display:none}.language-dropdown{display:none;position:absolute;top:100%;right:0;margin-top:.5rem;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #00000026;min-width:180px;z-index:1000;overflow:hidden}.language-dropdown.show{display:block}.language-dropdown a{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;color:#333;text-decoration:none;font-size:1rem}.language-dropdown a:hover,.language-dropdown a:active{background:#f5f5f5}.language-dropdown a.active{background:#e8f4fc;color:#4a90d9}.language-dropdown a .flag{font-size:1.5rem}.account-main{padding:2rem 1.5rem 4rem}.account-card{max-width:420px;margin:2rem auto;background:#fff;border-radius:16px;padding:2rem;box-shadow:0 14px 30px #18244014}.account-card .error-message{background:#fee;border:1px solid #fcc;color:#c00;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem}.account-card .success-message{background:#d4edda;border:1px solid #c3e6cb;color:#155724;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem}.account-card h1{margin:0 0 .5rem;color:#16324f}.account-card p{margin:0 0 1.5rem;color:#5d6b84}.account-card .form-group{margin-bottom:1.2rem}.account-card label{display:block;margin-bottom:.4rem;font-weight:600;color:#3a4a63}.account-card input{width:100%;padding:.75rem;border-radius:10px;border:1px solid #d6deea;font-size:1rem}.account-card button[type=submit]{width:100%;padding:.85rem;border-radius:999px;border:none;background:#3a7bd5;color:#fff;font-weight:700;cursor:pointer}.account-card .helper-links{margin-top:1rem;text-align:center;font-size:.9rem}.account-card .helper-links a{color:#3a7bd5;text-decoration:none;font-weight:600}.account-card .oauth-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem;border-radius:999px;border:1px solid #d6deea;background:#fff;color:#3a4a63;font-weight:600;margin-top:1rem}.account-card .oauth-button.is-disabled{opacity:.6;cursor:not-allowed}@media(max-width:720px){.account-header{flex-direction:column;gap:.75rem}}
