.profile-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-xl);cursor:pointer;transition:all .2s ease;min-width:120px}.profile-card:hover{border-color:var(--color-highlight);transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.profile-card:active{transform:translateY(-2px)}.profile-card__avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--color-highlight-soft),var(--color-secondary-soft));display:flex;align-items:center;justify-content:center;font-size:40px;overflow:hidden}.profile-card__avatar img{width:100%;height:100%;object-fit:cover}.profile-card__icon{width:40px;height:40px;color:var(--color-text-secondary)}.profile-card__name{font-size:var(--text-lg);font-weight:600;color:var(--color-text);text-align:center}.profile-card__grade{font-size:var(--text-sm);color:var(--color-text-tertiary)}.profile-card--parent{border-style:dashed}.profile-card--parent .profile-card__avatar{background:var(--color-surface-alt)}.profile-card--young{padding:var(--space-5);gap:var(--space-4);min-width:140px;border-radius:var(--radius-2xl);border-width:3px;background:#fff;box-shadow:0 4px 12px #0000000d}.profile-card--young .profile-card__avatar{width:100px;height:100px;font-size:50px;background:linear-gradient(135deg,#ffe5ec,#e0e7ff);border:3px solid white;box-shadow:0 4px 12px #0000001a}.profile-card--young .profile-card__name{font-size:var(--text-xl);color:var(--color-highlight)}.profile-card--young:hover{transform:translateY(-6px) scale(1.02);border-color:var(--color-highlight);box-shadow:0 12px 32px #6366f133}.profile-card--older{padding:var(--space-3);gap:var(--space-2);min-width:100px;border-radius:var(--radius-lg)}.profile-card--older .profile-card__avatar{width:60px;height:60px;font-size:30px}.profile-card--older .profile-card__name{font-size:var(--text-base)}.profile-card--older:hover{transform:translateY(-2px)}.profiles-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--color-bg)}.profiles-page__content{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);max-width:600px;width:100%}.profiles-page__logo{height:48px;margin-bottom:var(--space-4)}.profiles-page__title{font-size:var(--text-2xl);font-weight:600;color:var(--color-text);text-align:center}.profiles-page__grid{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-4);width:100%}.profiles-page__divider{width:100%;max-width:300px;height:1px;background:var(--color-border);margin:var(--space-2) 0}.profiles-page__error{text-align:center;color:var(--color-error)}.profiles-page__error button{margin-top:var(--space-4);padding:var(--space-2) var(--space-4);background:var(--color-highlight);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer}.profiles-page--young{background:linear-gradient(135deg,#f0f7ff,#fff0f7,#f0fff4)}.profiles-page--young .profiles-page__logo{height:56px}.profiles-page--young .profiles-page__title{font-size:var(--text-3xl);color:var(--color-highlight)}.profiles-page--young .profiles-page__grid{gap:var(--space-5)}.profiles-page--young .profiles-page__divider{background:linear-gradient(90deg,transparent,var(--color-highlight-light),transparent);height:2px}.profiles-page--older .profiles-page__logo{height:40px}.profiles-page--older .profiles-page__title{font-size:var(--text-xl)}.profiles-page--older .profiles-page__grid{gap:var(--space-3)}@media(max-width:480px){.profiles-page__grid{gap:var(--space-3)}}.pin-pad{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);width:100%;max-width:280px;margin:0 auto}.pin-pad--shake{animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-8px)}20%,40%,60%,80%{transform:translate(8px)}}.pin-pad__dots{display:flex;gap:var(--space-3);justify-content:center}.pin-pad__dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--color-border);background:transparent;transition:all .15s ease}.pin-pad__dot--filled{background:var(--color-highlight);border-color:var(--color-highlight)}.pin-pad__error{color:var(--color-error);font-size:var(--text-sm);text-align:center;min-height:20px}.pin-pad__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);width:100%}.pin-pad__btn{aspect-ratio:1;border-radius:var(--radius-lg);border:2px solid var(--color-border);background:var(--color-surface);font-size:var(--text-2xl);font-weight:600;color:var(--color-text);cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.pin-pad__btn:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-highlight)}.pin-pad__btn:active:not(:disabled){transform:scale(.95)}.pin-pad__btn:disabled{opacity:.5;cursor:not-allowed}.pin-pad__btn--action{background:var(--color-surface-alt)}.pin-pad__btn--action svg{width:24px;height:24px}.pin-pad--young .pin-pad__dots{gap:var(--space-4)}.pin-pad--young .pin-pad__dot{width:20px;height:20px;border-width:3px;border-color:var(--color-highlight-light)}.pin-pad--young .pin-pad__dot--filled{background:linear-gradient(135deg,var(--color-highlight),var(--color-accent));border-color:var(--color-highlight);transform:scale(1.1)}.pin-pad--young .pin-pad__grid{gap:var(--space-4)}.pin-pad--young .pin-pad__btn{font-size:var(--text-3xl);border-radius:var(--radius-xl);border-width:3px;background:#fff;box-shadow:0 2px 8px #0000000d}.pin-pad--young .pin-pad__btn:hover:not(:disabled){background:linear-gradient(135deg,#e0e7ff,#ffe5ec);border-color:var(--color-highlight);transform:scale(1.05)}.pin-pad--young .pin-pad__btn:active:not(:disabled){transform:scale(.95)}.pin-pad--young .pin-pad__error{font-size:var(--text-base)}.pin-pad--older{max-width:240px;gap:var(--space-4)}.pin-pad--older .pin-pad__dots{gap:var(--space-2)}.pin-pad--older .pin-pad__dot{width:12px;height:12px}.pin-pad--older .pin-pad__grid{gap:var(--space-2)}.pin-pad--older .pin-pad__btn{font-size:var(--text-xl);border-width:1px}.pin-pad--older .pin-pad__btn--action svg{width:20px;height:20px}.pin-entry-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--color-bg)}.pin-entry-page__content{display:flex;flex-direction:column;align-items:center;gap:var(--space-5);width:100%;max-width:400px}.pin-entry-page__avatar{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,var(--color-highlight-soft),var(--color-secondary-soft));display:flex;align-items:center;justify-content:center;font-size:50px;overflow:hidden}.pin-entry-page__avatar img{width:100%;height:100%;object-fit:cover}.pin-entry-page__icon{width:50px;height:50px;color:var(--color-text-secondary)}.pin-entry-page__name{font-size:var(--text-2xl);font-weight:600;color:var(--color-text);text-align:center}.pin-entry-page__instruction{color:var(--color-text-secondary);text-align:center}.pin-entry-page__back{margin-top:var(--space-4);color:var(--color-text-tertiary);text-decoration:none;font-size:var(--text-sm);transition:color .15s ease}.pin-entry-page__back:hover{color:var(--color-highlight)}.pin-entry-page--young{background:linear-gradient(135deg,#f0f7ff,#fff0f7,#f0fff4)}.pin-entry-page--young .pin-entry-page__avatar{width:120px;height:120px;font-size:60px;border:4px solid white;box-shadow:0 8px 24px #0000001a}.pin-entry-page--young .pin-entry-page__name{font-size:var(--text-3xl);color:var(--color-highlight)}.pin-entry-page--young .pin-entry-page__instruction{font-size:var(--text-lg);color:var(--color-text-secondary)}.pin-entry-page--young .pin-entry-page__back{font-size:var(--text-base);color:var(--color-highlight)}.pin-entry-page--older .pin-entry-page__avatar{width:80px;height:80px;font-size:40px}.pin-entry-page--older .pin-entry-page__name{font-size:var(--text-xl)}.pin-entry-page--older .pin-entry-page__content{gap:var(--space-4)}.set-parent-pin-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--color-bg)}.set-parent-pin-page__content{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);width:100%;max-width:440px}.set-parent-pin-page__logo{height:48px}.set-parent-pin-page__card{width:100%;background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--space-6);display:flex;flex-direction:column;align-items:center;gap:var(--space-5);box-shadow:0 4px 24px #00000014}.set-parent-pin-page__icon{width:64px;height:64px;border-radius:50%;background:var(--color-highlight-soft);display:flex;align-items:center;justify-content:center}.set-parent-pin-page__icon svg{width:32px;height:32px;color:var(--color-highlight)}.set-parent-pin-page__title{font-size:var(--text-xl);font-weight:600;color:var(--color-text);text-align:center}.set-parent-pin-page__description{color:var(--color-text-secondary);text-align:center;font-size:var(--text-sm);max-width:320px;line-height:1.5}.set-parent-pin-page__back-btn{margin-top:var(--space-2)}.set-parent-pin-page__tip{color:var(--color-text-tertiary);font-size:var(--text-sm);text-align:center}@media(max-width:480px){.set-parent-pin-page__card{padding:var(--space-4)}}.profile-switcher{position:relative}.profile-switcher__trigger{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#ffffff1a;border:none;border-radius:var(--radius-full);color:inherit;cursor:pointer;transition:background-color .2s ease}.profile-switcher__trigger:hover{background:#fff3}.profile-switcher__avatar{width:32px;height:32px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;font-size:1.25rem;overflow:hidden}.profile-switcher__avatar img{width:100%;height:100%;object-fit:cover}.profile-switcher__avatar svg{width:18px;height:18px}.profile-switcher__name{font-weight:500;font-size:.875rem}.profile-switcher__chevron{width:16px;height:16px;transition:transform .2s ease}.profile-switcher__chevron--open{transform:rotate(180deg)}.profile-switcher__dropdown{position:absolute;top:calc(100% + var(--space-2));right:0;min-width:220px;background:#fff;border-radius:var(--radius-lg);box-shadow:0 8px 32px #0003;overflow:hidden;z-index:100;animation:profileSwitcherSlideDown .2s ease}@keyframes profileSwitcherSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.profile-switcher__header{padding:var(--space-3) var(--space-4);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);border-bottom:1px solid var(--color-border)}.profile-switcher__profiles{padding:var(--space-2)}.profile-switcher__profile{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);background:none;border:none;border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;text-align:left;transition:background-color .15s ease}.profile-switcher__profile:hover{background:var(--color-bg-hover)}.profile-switcher__profile-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-highlight-light);display:flex;align-items:center;justify-content:center;font-size:1.25rem;overflow:hidden;flex-shrink:0}.profile-switcher__profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-switcher__profile-avatar svg{width:18px;height:18px;color:var(--color-highlight)}.profile-switcher__profile-name{flex:1;font-weight:500}.profile-switcher__profile-grade{font-size:.75rem;color:var(--color-text-tertiary)}.profile-switcher__divider{height:1px;background:var(--color-border);margin:var(--space-2) 0}.profile-switcher__action{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:none;border:none;color:var(--color-text-secondary);cursor:pointer;text-align:left;transition:background-color .15s ease,color .15s ease}.profile-switcher__action:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.profile-switcher__action svg{width:18px;height:18px}.profile-switcher--young .profile-switcher__trigger{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full)}.profile-switcher--young .profile-switcher__avatar{width:36px;height:36px;font-size:1.5rem}.profile-switcher--young .profile-switcher__name{font-size:1rem}.profile-switcher--young .profile-switcher__dropdown{border-radius:var(--radius-xl)}.profile-switcher--young .profile-switcher__profile-avatar{width:44px;height:44px;font-size:1.5rem}.profile-switcher--young .profile-switcher__profile-name{font-size:1rem}.profile-switcher--older .profile-switcher__trigger{padding:var(--space-1) var(--space-2)}.profile-switcher--older .profile-switcher__avatar{width:28px;height:28px;font-size:1rem}.profile-switcher--older .profile-switcher__name{font-size:.8125rem}.profile-switcher--older .profile-switcher__dropdown{min-width:200px}.profile-switcher--older .profile-switcher__profile-avatar{width:32px;height:32px;font-size:1rem}.profile-switcher--older .profile-switcher__profile-name{font-size:.875rem}.manage-children-page{min-height:100vh;background:var(--color-bg-secondary)}.manage-children-page .page-header{background:var(--color-bg-primary);border-bottom:1px solid var(--color-border);padding:var(--space-6) var(--space-4)}.manage-children-page .page-header .container{max-width:800px;margin:0 auto}.manage-children-page .back-btn{display:inline-flex;align-items:center;gap:var(--space-2);background:none;border:none;color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;padding:0;margin-bottom:var(--space-4)}.manage-children-page .back-btn:hover{color:var(--color-primary)}.manage-children-page h1{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-2)}.manage-children-page .subtitle{color:var(--color-text-secondary);margin:0}.manage-children-page main.container{max-width:800px;margin:0 auto;padding:var(--space-6) var(--space-4)}.manage-children-page .error-banner{background:var(--color-error-bg);border:1px solid var(--color-error);border-radius:var(--radius-md);padding:var(--space-4);display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.manage-children-page .error-banner p{color:var(--color-error);margin:0}.manage-children-page .section{margin-bottom:var(--space-8)}.manage-children-page .section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.manage-children-page .section-header h2{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0;display:flex;align-items:center;gap:var(--space-2)}.manage-children-page .section-header.warning h2{color:var(--color-warning)}.manage-children-page .section-description{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0 0 var(--space-4)}.manage-children-page .pending-section{background:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:var(--radius-lg);padding:var(--space-4)}.manage-children-page .student-grid{display:flex;flex-direction:column;gap:var(--space-3)}.manage-children-page .student-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;align-items:center;justify-content:space-between}.manage-children-page .student-card.archived{background:var(--color-bg-tertiary)}.manage-children-page .student-card.pending{background:var(--color-bg-primary)}.manage-children-page .student-info{display:flex;align-items:center;gap:var(--space-3)}.manage-children-page .avatar{width:48px;height:48px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);font-weight:600}.manage-children-page .avatar.archived{background:var(--color-text-tertiary)}.manage-children-page .details h3{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-1)}.manage-children-page .details p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.manage-children-page .details .stats{color:var(--color-text-tertiary)}.manage-children-page .details .archived-date,.manage-children-page .details .deletion-date{color:var(--color-warning);font-weight:500}.manage-children-page .student-actions{display:flex;align-items:center;gap:var(--space-2)}.manage-children-page .icon-btn{width:36px;height:36px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.manage-children-page .icon-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.manage-children-page .icon-btn.danger:hover{border-color:var(--color-error);color:var(--color-error)}.manage-children-page .empty-state{text-align:center;padding:var(--space-8);color:var(--color-text-tertiary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.modal{background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--space-6);max-width:420px;width:100%;max-height:90vh;overflow-y:auto}.modal h2{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-4)}.modal p{color:var(--color-text-secondary);margin:0 0 var(--space-4);line-height:1.5}.modal .form-group{margin-bottom:var(--space-4)}.modal .form-group label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-primary);margin-bottom:var(--space-2)}.modal .form-group select{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-md);background:var(--color-bg-primary);color:var(--color-text-primary)}.modal-error{color:var(--color-error);font-size:var(--font-size-sm);margin:var(--space-3) 0}.modal-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6)}.delete-modal .warning-header{display:flex;align-items:center;gap:var(--space-3);color:var(--color-error);margin-bottom:var(--space-4)}.delete-modal .warning-header h2{color:var(--color-error);margin:0}.delete-modal .warning-content{background:var(--color-error-bg);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.delete-modal .warning-content p{margin:0 0 var(--space-2)}.delete-modal .warning-content ul{margin:var(--space-2) 0;padding-left:var(--space-5)}.delete-modal .warning-content li{color:var(--color-text-secondary);margin-bottom:var(--space-1)}.delete-modal .grace-period{font-weight:600;color:var(--color-error)}.delete-account-page{min-height:100vh;background:var(--color-bg-secondary)}.delete-account-page .page-header{background:var(--color-bg-primary);border-bottom:1px solid var(--color-border);padding:var(--space-6) var(--space-4)}.delete-account-page .page-header .container{max-width:700px;margin:0 auto}.delete-account-page .back-btn{display:inline-flex;align-items:center;gap:var(--space-2);background:none;border:none;color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;padding:0;margin-bottom:var(--space-4)}.delete-account-page .back-btn:hover{color:var(--color-primary)}.delete-account-page h1{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-error);margin:0 0 var(--space-2)}.delete-account-page .subtitle{color:var(--color-text-secondary);margin:0}.delete-account-page main.container{max-width:700px;margin:0 auto;padding:var(--space-6) var(--space-4)}.delete-account-page .error-banner{background:var(--color-error-bg);border:1px solid var(--color-error);border-radius:var(--radius-md);padding:var(--space-4);display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.delete-account-page .error-banner p{color:var(--color-error);margin:0}.delete-account-page .warning-card{background:var(--color-error-bg);border:1px solid var(--color-error);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;gap:var(--space-4);margin-bottom:var(--space-6)}.delete-account-page .warning-icon{color:var(--color-error);flex-shrink:0}.delete-account-page .warning-content h2{font-size:var(--font-size-lg);font-weight:600;color:var(--color-error);margin:0 0 var(--space-3)}.delete-account-page .warning-content p{color:var(--color-text-secondary);margin:0 0 var(--space-3);line-height:1.6}.delete-account-page .warning-content ul{margin:var(--space-3) 0;padding-left:var(--space-5)}.delete-account-page .warning-content li{color:var(--color-text-secondary);margin-bottom:var(--space-2);line-height:1.5}.delete-account-page .warning-content .grace-period{color:var(--color-error);font-weight:500;margin-top:var(--space-4)}.delete-account-page .alternative-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;gap:var(--space-4);margin-bottom:var(--space-6)}.delete-account-page .alternative-card>svg{color:var(--color-primary);flex-shrink:0}.delete-account-page .alternative-card h3{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-2)}.delete-account-page .alternative-card p{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0 0 var(--space-3);line-height:1.5}.delete-account-page .deletion-form{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.delete-account-page .deletion-form h2{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-5);display:flex;align-items:center;gap:var(--space-2)}.delete-account-page .deletion-form h2 svg{color:var(--color-error)}.delete-account-page .form-group{margin-bottom:var(--space-4)}.delete-account-page .form-group label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-primary);margin-bottom:var(--space-2)}.delete-account-page .form-group select{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-md);background:var(--color-bg-primary);color:var(--color-text-primary)}.delete-account-page .form-error{color:var(--color-error);font-size:var(--font-size-sm);margin:var(--space-3) 0}.delete-account-page .form-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6)}.delete-account-page .pending-deletion-card{background:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:var(--radius-lg);padding:var(--space-6)}.delete-account-page .pending-header{display:flex;align-items:center;gap:var(--space-3);color:var(--color-warning);margin-bottom:var(--space-4)}.delete-account-page .pending-header h2{font-size:var(--font-size-lg);font-weight:600;color:var(--color-warning);margin:0}.delete-account-page .pending-deletion-card p{color:var(--color-text-secondary);margin:0 0 var(--space-3);line-height:1.6}.delete-account-page .pending-actions{display:flex;gap:var(--space-3);margin-top:var(--space-5)}@media(max-width:640px){.delete-account-page .warning-card,.delete-account-page .alternative-card{flex-direction:column}.delete-account-page .form-actions{flex-direction:column-reverse}.delete-account-page .form-actions button{width:100%}.delete-account-page .pending-actions{flex-direction:column}.delete-account-page .pending-actions button{width:100%}}.settings-page{min-height:100vh;background:var(--color-bg-secondary)}.settings-page .page-header{background:var(--color-bg-primary);border-bottom:1px solid var(--color-border);padding:var(--space-6) var(--space-4)}.settings-page .page-header .container{max-width:700px;margin:0 auto}.settings-page .back-btn{display:inline-flex;align-items:center;gap:var(--space-2);background:none;border:none;color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;padding:0;margin-bottom:var(--space-4)}.settings-page .back-btn:hover{color:var(--color-primary)}.settings-page h1{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-2)}.settings-page .subtitle{color:var(--color-text-secondary);margin:0}.settings-page main.container{max-width:700px;margin:0 auto;padding:var(--space-6) var(--space-4)}.settings-page .settings-grid{display:flex;flex-direction:column;gap:var(--space-3)}.settings-page .settings-card{display:flex;align-items:center;gap:var(--space-4);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);cursor:pointer;transition:all .15s ease;text-align:left;width:100%}.settings-page .settings-card:hover{border-color:var(--color-primary);background:var(--color-bg-secondary)}.settings-page .settings-card.danger{border-color:var(--color-error-light, var(--color-border))}.settings-page .settings-card.danger:hover{border-color:var(--color-error);background:var(--color-error-bg)}.settings-page .settings-icon{width:48px;height:48px;border-radius:var(--radius-md);background:var(--color-bg-tertiary);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);flex-shrink:0}.settings-page .settings-card:hover .settings-icon{color:var(--color-primary);background:var(--color-primary-light, var(--color-bg-tertiary))}.settings-page .settings-card.danger .settings-icon{color:var(--color-error)}.settings-page .settings-card.danger:hover .settings-icon{background:var(--color-error);color:#fff}.settings-page .settings-content h3{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-1)}.settings-page .settings-card.danger .settings-content h3{color:var(--color-error)}.settings-page .settings-content p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.subscription-page .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--space-4);color:var(--color-text-secondary)}.subscription-page .spinner{animation:spin 1s linear infinite}.subscription-page .success-banner{display:flex;align-items:center;gap:var(--space-2);background:var(--color-success-bg, #dcfce7);border:1px solid var(--color-success, #16a34a);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-6);color:var(--color-success, #16a34a)}.subscription-page .error-banner{display:flex;align-items:center;gap:var(--space-2);background:var(--color-error-bg, #fef2f2);border:1px solid var(--color-error, #ef4444);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-6);color:var(--color-error, #ef4444)}.current-plan-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-8);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.plan-status-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4)}.plan-status-header h2{font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);margin:0 0 var(--space-2);text-transform:uppercase;letter-spacing:.05em}.plan-name{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary)}.plan-name svg{color:var(--color-highlight)}.trial-badge{font-size:var(--text-xs);font-weight:600;background:var(--color-highlight-bg);color:var(--color-highlight);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full)}.plan-status-badge{font-size:var(--text-xs);font-weight:600;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);text-transform:capitalize}.plan-status-badge[data-status=active],.plan-status-badge[data-status=trialing]{background:var(--color-success-bg, #dcfce7);color:var(--color-success, #16a34a)}.plan-status-badge[data-status=canceled]{background:var(--color-warning-bg, #fef3c7);color:var(--color-warning, #d97706)}.plan-status-badge[data-status=past_due],.plan-status-badge[data-status=inactive]{background:var(--color-error-bg, #fef2f2);color:var(--color-error, #ef4444)}.trial-info,.cancel-info{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0 0 var(--space-4)}.plan-details{display:flex;gap:var(--space-6);padding:var(--space-4) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-4)}.detail-item{display:flex;flex-direction:column;gap:var(--space-1)}.detail-label{font-size:var(--text-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.detail-value{font-size:var(--text-base);font-weight:600;color:var(--color-text-primary);text-transform:capitalize}.plan-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.plan-actions button{display:flex;align-items:center;gap:var(--space-2)}.subscription-page .section-header{text-align:center;margin-bottom:var(--space-6)}.subscription-page .section-header h2{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-2)}.subscription-page .section-header p{font-size:var(--text-base);color:var(--color-text-secondary);margin:0}.billing-toggle{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin-bottom:var(--space-6)}.toggle-switch{width:48px;height:24px;background:var(--color-border);border-radius:var(--radius-full);position:relative;cursor:pointer;border:none;transition:background var(--transition-fast)}.save-badge{font-size:var(--text-xs);font-weight:600;background:var(--color-success-bg, #dcfce7);color:var(--color-success, #16a34a);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);margin-left:var(--space-1)}.plans-grid{display:flex;flex-wrap:wrap;gap:var(--space-6);justify-content:center;max-width:800px;margin:0 auto var(--space-6)}.plans-grid .plan-card{width:340px}.plans-grid.single{max-width:400px}.plans-grid.single .plan-card{width:100%}.plan-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);border:2px solid var(--color-border);position:relative;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.plan-card:hover{border-color:var(--color-highlight-light, #a5b4fc)}.plan-card.popular{border-color:var(--color-highlight)}.plan-card.current{opacity:.7}.popular-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--color-highlight);color:#fff;font-size:var(--text-xs);font-weight:600;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);white-space:nowrap}.plan-card h3{font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-3);text-align:center}.plan-price{display:flex;align-items:baseline;justify-content:center;gap:2px;margin-bottom:var(--space-2)}.plan-price .currency{font-size:1.5rem;font-weight:600}.plan-price .amount{font-size:2.5rem;font-weight:800}.plan-price .period{font-size:1rem;color:var(--color-text-secondary)}.annual-note{text-align:center;font-size:var(--text-xs);color:var(--color-text-tertiary);margin:0 0 var(--space-3)}.plan-description{text-align:center;font-size:var(--text-sm);color:var(--color-text-secondary);margin:0 0 var(--space-4)}.plan-features{list-style:none;padding:0;margin:0 0 var(--space-6)}.plan-features li{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;font-size:var(--text-sm);color:var(--color-text-secondary)}.plan-features li svg{color:var(--color-success, #16a34a);flex-shrink:0}.trial-note{text-align:center;font-size:var(--text-sm);color:var(--color-text-tertiary);margin-top:var(--space-4)}.billing-history{background:#fff;border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);overflow-x:auto}.invoices-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.invoices-table th,.invoices-table td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--color-border)}.invoices-table th{font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;font-size:var(--text-xs);letter-spacing:.05em}.invoices-table tbody tr:last-child td{border-bottom:none}.invoices-table tbody tr:hover{background:var(--color-bg-secondary)}.invoice-status{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;text-transform:capitalize}.invoice-status.paid{background:var(--color-success-bg, #dcfce7);color:var(--color-success, #16a34a)}.invoice-status.open{background:var(--color-warning-bg, #fef3c7);color:var(--color-warning, #d97706)}.invoice-status.draft{background:var(--color-bg-secondary);color:var(--color-text-secondary)}.invoice-status.void,.invoice-status.uncollectible{background:var(--color-error-bg, #fef2f2);color:var(--color-error, #ef4444)}.invoice-link{color:var(--color-highlight);text-decoration:none;font-weight:500;margin-right:var(--space-3)}.invoice-link:hover{text-decoration:underline}@media(max-width:768px){.plans-grid{max-width:100%}.plans-grid .plan-card{width:100%}.plan-actions{flex-direction:column}.plan-actions button{width:100%;justify-content:center}.plan-details{flex-direction:column;gap:var(--space-3)}}.timer{display:flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-4);background:var(--color-bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.timer__content{display:flex;align-items:center;gap:var(--space-4);width:100%;max-width:400px}.timer__clock{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-primary);border-radius:var(--radius-md);border:1px solid var(--color-border)}.timer__icon{width:18px;height:18px;color:var(--color-text-secondary)}.timer__time{font-size:var(--text-lg);font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-text-primary);min-width:60px;text-align:center}.timer__mode-label{font-size:var(--text-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.5px}.timer__progress-bar{flex:1;height:8px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);overflow:hidden}.timer__progress-bar-fill{height:100%;background:var(--color-highlight);border-radius:var(--radius-full);transition:width var(--transition-normal)}.timer__counter{display:flex;align-items:baseline;gap:2px;font-variant-numeric:tabular-nums}.timer__current{font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary)}.timer__separator{font-size:var(--text-base);color:var(--color-text-tertiary)}.timer__total{font-size:var(--text-base);color:var(--color-text-secondary)}.timer--warning .timer__clock{background:var(--color-warning-light);border-color:var(--color-warning)}.timer--warning .timer__time{color:var(--color-warning);animation:timer-pulse 1s ease-in-out infinite}.timer--warning .timer__icon{color:var(--color-warning)}.timer--expired .timer__clock{background:var(--color-error-light);border-color:var(--color-error)}.timer--expired .timer__time,.timer--expired .timer__icon{color:var(--color-error)}.timer--young{padding:var(--space-4) var(--space-6);border-radius:var(--radius-lg)}.timer--young .timer__progress{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);width:100%}.timer--young .timer__question-count{font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary)}.timer--young .timer__dots{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.timer__dot{width:12px;height:12px;border-radius:var(--radius-full);background:var(--color-bg-tertiary);border:2px solid var(--color-border);transition:all var(--transition-normal)}.timer__dot--completed{background:var(--color-success);border-color:var(--color-success)}.timer__dot--current{background:var(--color-highlight);border-color:var(--color-highlight);transform:scale(1.2)}@keyframes timer-pulse{0%,to{opacity:1}50%{opacity:.6}}.visual-math{display:flex;justify-content:center;padding:var(--space-6);background:var(--color-bg-secondary);border-radius:var(--radius-lg);margin-bottom:var(--space-6)}.emoji-array{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center;max-width:400px}.emoji-item{font-size:2rem;line-height:1;padding:var(--space-2);background:var(--color-bg-primary);border-radius:var(--radius-md);border:2px solid var(--color-border);transition:all var(--transition-fast)}.emoji-item--highlighted{background:var(--color-highlight-light);border-color:var(--color-highlight);transform:scale(1.1)}.emoji-groups{display:flex;flex-direction:column;gap:var(--space-3);align-items:center}.emoji-groups__row{display:flex;align-items:center;gap:var(--space-3)}.emoji-groups__operator{font-size:2rem;font-weight:700;color:var(--color-highlight);min-width:40px;text-align:center}.emoji-groups__group{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-3);background:var(--color-bg-primary);border:2px dashed var(--color-border);border-radius:var(--radius-lg);min-width:80px;justify-content:center}.number-line{position:relative;width:100%;max-width:500px;padding:var(--space-8) var(--space-4) var(--space-4)}.number-line__line{position:absolute;top:50%;left:var(--space-4);right:var(--space-4);height:4px;background:var(--color-secondary);border-radius:var(--radius-full);transform:translateY(-50%)}.number-line__markers{display:flex;justify-content:space-between;position:relative}.number-line__marker{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.number-line__tick{width:4px;height:16px;background:var(--color-secondary);border-radius:var(--radius-sm)}.number-line__label{font-size:var(--text-lg);font-weight:600;color:var(--color-text-secondary)}.number-line__marker--highlighted .number-line__tick{background:var(--color-highlight);height:24px}.number-line__marker--highlighted .number-line__label{color:var(--color-highlight);font-size:var(--text-xl)}.fraction-circle{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.fraction-circle__svg{width:150px;height:150px}.fraction-circle__label{display:flex;flex-direction:column;align-items:center;font-size:var(--text-2xl);font-weight:700}.fraction-circle__numerator,.fraction-circle__denominator{line-height:1.2;color:var(--color-text-primary)}.fraction-circle__line{width:40px;height:3px;background:var(--color-text-primary);margin:var(--space-1) 0}.bar-model{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);width:100%;max-width:400px}.bar-model__bar{display:flex;width:100%;height:48px;border:2px solid var(--color-secondary);border-radius:var(--radius-md);overflow:hidden}.bar-model__segment{flex:1;background:var(--color-bg-tertiary);border-right:1px solid var(--color-border);transition:background var(--transition-fast)}.bar-model__segment:last-child{border-right:none}.bar-model__segment--highlighted{background:var(--color-highlight)}.bar-model__operation{font-size:var(--text-sm);color:var(--color-text-secondary);font-style:italic}.bar-model__labels{display:flex;justify-content:center;gap:var(--space-4)}.bar-model__label{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary)}[data-age-group=young] .visual-math{padding:var(--space-8)}[data-age-group=young] .emoji-item{font-size:2.5rem;padding:var(--space-3)}[data-age-group=young] .fraction-circle__svg{width:180px;height:180px}[data-age-group=young] .bar-model__bar{height:60px}.multiple-choice{display:flex;flex-direction:column;gap:var(--space-3)}.choice{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:left;font-size:var(--text-base);color:var(--color-text-primary)}.choice:hover:not(:disabled){border-color:var(--color-highlight);background:var(--color-highlight-light)}.choice:focus{outline:none;box-shadow:0 0 0 3px var(--color-highlight-light)}.choice:disabled{cursor:default}.choice__letter{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);font-weight:700;font-size:var(--text-sm);color:var(--color-text-secondary);transition:all var(--transition-fast)}.choice__text{flex:1;line-height:1.4}.choice__icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin-left:auto}.choice__icon svg{width:18px;height:18px}.choice__icon--correct{color:var(--color-success)}.choice__icon--incorrect{color:var(--color-error)}.choice--selected{border-color:var(--color-highlight);background:var(--color-highlight-light)}.choice--selected .choice__letter{background:var(--color-highlight);color:#fff}.choice--correct{border-color:var(--color-success);background:var(--color-success-light)}.choice--correct .choice__letter{background:var(--color-success);color:#fff}.choice--incorrect{border-color:var(--color-error);background:var(--color-error-light)}.choice--incorrect .choice__letter{background:var(--color-error);color:#fff}.choice--animate{animation:choice-pulse .5s ease-out}@keyframes choice-pulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.multiple-choice--young{gap:var(--space-4)}.multiple-choice--young .choice{padding:var(--space-5) var(--space-6);border-radius:var(--radius-lg);font-size:var(--text-lg);min-height:64px}.multiple-choice--young .choice__letter{min-width:44px;height:44px;font-size:var(--text-lg)}.multiple-choice--young .choice__icon svg{width:24px;height:24px}.multiple-choice--middle .choice{padding:var(--space-4)}.multiple-choice--older .choice{padding:var(--space-3) var(--space-4)}.multiple-choice--older .choice__letter{min-width:28px;height:28px;font-size:var(--text-xs)}.multi-select{display:flex;flex-direction:column;gap:var(--space-4)}.multi-select__instruction{font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);margin:0}.multi-select__choices{display:flex;flex-direction:column;gap:var(--space-3)}.multi-choice{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:left;font-size:var(--text-base);color:var(--color-text-primary)}.multi-choice:hover:not(:disabled){border-color:var(--color-highlight);background:var(--color-highlight-light)}.multi-choice:focus{outline:none;box-shadow:0 0 0 3px var(--color-highlight-light)}.multi-choice:disabled{cursor:default}.multi-choice__checkbox{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);transition:all var(--transition-fast);flex-shrink:0}.multi-choice__checkbox svg{width:14px;height:14px}.multi-choice__letter{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);font-weight:700;font-size:var(--text-sm);color:var(--color-text-secondary);transition:all var(--transition-fast)}.multi-choice__text{flex:1;line-height:1.4}.multi-choice--selected{border-color:var(--color-highlight);background:var(--color-highlight-light)}.multi-choice--selected .multi-choice__checkbox{background:var(--color-highlight);border-color:var(--color-highlight);color:#fff}.multi-choice--selected .multi-choice__letter{background:var(--color-highlight);color:#fff}.multi-choice--correct{border-color:var(--color-success);background:var(--color-success-light)}.multi-choice--correct .multi-choice__checkbox{background:var(--color-success);border-color:var(--color-success);color:#fff}.multi-choice--correct .multi-choice__letter{background:var(--color-success);color:#fff}.multi-choice--incorrect{border-color:var(--color-error);background:var(--color-error-light)}.multi-choice--incorrect .multi-choice__checkbox{background:var(--color-error);border-color:var(--color-error);color:#fff}.multi-choice--incorrect .multi-choice__letter{background:var(--color-error);color:#fff}.multi-choice--missed{border-color:var(--color-warning);background:var(--color-warning-light, rgba(245, 158, 11, .1))}.multi-choice--missed .multi-choice__checkbox{background:var(--color-warning);border-color:var(--color-warning);color:#fff}.multi-choice--missed .multi-choice__letter{background:var(--color-warning);color:#fff}.multi-select__submit{align-self:flex-start;padding:var(--space-3) var(--space-6);font-size:var(--text-base);font-weight:600;background:var(--color-highlight);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.multi-select__submit:hover:not(:disabled){background:var(--color-primary)}.multi-select__submit:disabled{opacity:.5;cursor:not-allowed}.multi-select__feedback{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--color-bg-secondary);border-radius:var(--radius-md);font-size:var(--text-sm)}.multi-select__feedback-label{color:var(--color-text-secondary)}.multi-select__feedback-answers{font-weight:600;color:var(--color-success)}.multi-select--young{gap:var(--space-5)}.multi-select--young .multi-select__instruction{font-size:var(--text-base)}.multi-select--young .multi-select__choices{gap:var(--space-4)}.multi-select--young .multi-choice{padding:var(--space-5) var(--space-6);border-radius:var(--radius-lg);font-size:var(--text-lg);min-height:64px}.multi-select--young .multi-choice__checkbox{width:32px;height:32px}.multi-select--young .multi-choice__checkbox svg{width:18px;height:18px}.multi-select--young .multi-choice__letter{min-width:44px;height:44px;font-size:var(--text-lg)}.multi-select--young .multi-select__submit{padding:var(--space-4) var(--space-8);font-size:var(--text-lg);border-radius:var(--radius-lg)}.multi-select--middle .multi-choice{padding:var(--space-4)}.multi-select--older .multi-choice{padding:var(--space-3) var(--space-4)}.multi-select--older .multi-choice__checkbox{width:20px;height:20px}.multi-select--older .multi-choice__checkbox svg{width:12px;height:12px}.multi-select--older .multi-choice__letter{min-width:28px;height:28px;font-size:var(--text-xs)}.multi-select--older .multi-select__submit{padding:var(--space-2) var(--space-5);font-size:var(--text-sm)}.question-display{display:flex;flex-direction:column;gap:var(--space-6)}.question-display__stimulus{padding:var(--space-4);padding-top:var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-left:4px solid var(--color-ela);border-radius:var(--radius-md);font-size:var(--text-base);line-height:1.8;color:var(--color-text-primary)}.question-display__stimulus-label{display:block;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-ela);margin-bottom:var(--space-2)}.question-display__stimulus p{margin:0;font-style:italic}.question-display__passage{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.question-display__passage-header{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,var(--color-ela) 0%,#7C3AED 100%);color:#fff}.question-display__passage-title{font-size:var(--text-lg);font-weight:700}.question-display__passage-author{font-size:var(--text-sm);opacity:.9;font-style:italic}.question-display__passage-content{padding:var(--space-4);font-size:var(--text-base);line-height:1.8;color:var(--color-text-primary);max-height:400px;overflow-y:auto;white-space:pre-line}.question-display__passage-meta{padding:var(--space-2) var(--space-4);font-size:var(--text-xs);color:var(--color-text-tertiary);background:var(--color-bg-tertiary);border-top:1px solid var(--color-border);text-transform:capitalize}.question-display__stem{display:flex;flex-direction:column;gap:var(--space-2)}.question-display__stem-header{display:flex;align-items:flex-start;gap:var(--space-3)}.question-display__question-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary)}.question-display__text{flex:1;font-size:var(--text-lg);font-weight:600;line-height:1.5;color:var(--color-text-primary);margin:0}.question-display__voice-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:var(--color-highlight-light);border:2px solid var(--color-highlight);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.question-display__voice-btn:hover{background:var(--color-highlight)}.question-display__voice-btn:hover svg{color:#fff}.question-display__voice-btn svg{width:24px;height:24px;color:var(--color-highlight);transition:color var(--transition-fast)}.question-display__answers{margin-top:var(--space-2)}.question-display__skill{display:flex;align-items:center;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--color-border);font-size:var(--text-sm)}.question-display__skill-label{color:var(--color-text-tertiary)}.question-display__skill-name{color:var(--color-text-secondary)}.numeric-entry{display:flex;gap:var(--space-3);align-items:stretch}.numeric-entry__input{flex:1;padding:var(--space-4);font-size:var(--text-lg);font-weight:500;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);text-align:center;transition:all var(--transition-fast)}.numeric-entry__input:focus{outline:none;border-color:var(--color-highlight);box-shadow:0 0 0 3px var(--color-highlight-light)}.numeric-entry__input:disabled{background:var(--color-bg-secondary)}.numeric-entry__submit{padding:var(--space-4) var(--space-6);font-size:var(--text-base);font-weight:600;background:var(--color-highlight);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.numeric-entry__submit:hover:not(:disabled){background:var(--color-primary)}.numeric-entry__submit:disabled{opacity:.5;cursor:not-allowed}.numeric-entry--correct .numeric-entry__input{border-color:var(--color-success);background:var(--color-success-light)}.numeric-entry--incorrect .numeric-entry__input{border-color:var(--color-error);background:var(--color-error-light)}.fill-blank{display:flex;flex-direction:column;gap:var(--space-3)}.fill-blank>div:first-child{display:flex;gap:var(--space-3)}.fill-blank__input{flex:1;padding:var(--space-4);font-size:var(--text-lg);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);transition:all var(--transition-fast)}.fill-blank__input:focus{outline:none;border-color:var(--color-highlight);box-shadow:0 0 0 3px var(--color-highlight-light)}.fill-blank__submit{padding:var(--space-4) var(--space-6);font-size:var(--text-base);font-weight:600;background:var(--color-highlight);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.fill-blank__submit:hover:not(:disabled){background:var(--color-primary)}.fill-blank__submit:disabled{opacity:.5;cursor:not-allowed}.fill-blank__correct-answer{font-size:var(--text-sm);color:var(--color-text-secondary);padding:var(--space-2) 0}.fill-blank--correct .fill-blank__input{border-color:var(--color-success);background:var(--color-success-light)}.fill-blank--incorrect .fill-blank__input{border-color:var(--color-error);background:var(--color-error-light)}.question-display--young .question-display__text{font-size:var(--text-xl)}.question-display--young .numeric-entry__input,.question-display--young .fill-blank__input{font-size:var(--text-xl);padding:var(--space-5)}.question-display--young .numeric-entry__submit,.question-display--young .fill-blank__submit{font-size:var(--text-lg);padding:var(--space-5) var(--space-8);border-radius:var(--radius-lg)}.question-display--middle .question-display__text{font-size:var(--text-lg)}.question-display--older .question-display__text{font-size:var(--text-base)}.question-display--older .numeric-entry__input,.question-display--older .fill-blank__input{padding:var(--space-3);font-size:var(--text-base)}.hint-button-container{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.hint-button{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.hint-button:hover:not(:disabled){background:var(--color-warning-light, rgba(245, 158, 11, .1));border-color:var(--color-warning);color:var(--color-warning)}.hint-button:disabled{opacity:.5;cursor:not-allowed}.hint-button svg{width:18px;height:18px}.hint-button--has-hints{background:var(--color-warning-light, rgba(245, 158, 11, .1));border-color:var(--color-warning);color:var(--color-warning)}.hint-button--more{background:transparent;border-style:dashed}.hint-button__expand-icon{margin-left:auto}.hint-button__expand-icon svg{width:16px;height:16px}.hint-button__error{font-size:var(--text-sm);color:var(--color-error);margin:0}.hint-display{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);background:var(--color-warning-light, rgba(245, 158, 11, .05));border:1px solid var(--color-warning);border-radius:var(--radius-md)}.hint-display__item{display:flex;flex-direction:column;gap:var(--space-1)}.hint-display__label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-warning)}.hint-display__text{margin:0;font-size:var(--text-sm);line-height:1.5;color:var(--color-text-primary)}.hint-display__no-more{font-size:var(--text-xs);color:var(--color-text-tertiary);font-style:italic;margin:0;padding-top:var(--space-2);border-top:1px solid var(--color-border)}.hint-button-container--young .hint-button{padding:var(--space-3) var(--space-5);font-size:var(--text-base);border-radius:var(--radius-lg)}.hint-button-container--young .hint-button svg{width:22px;height:22px}.hint-button-container--young .hint-display{padding:var(--space-4);gap:var(--space-4)}.hint-button-container--young .hint-display__label{font-size:var(--text-sm)}.hint-button-container--young .hint-display__text{font-size:var(--text-base);line-height:1.6}.hint-button-container--middle .hint-button{padding:var(--space-2) var(--space-4)}.hint-button-container--older .hint-button{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.hint-button-container--older .hint-button svg{width:14px;height:14px}.hint-button-container--older .hint-display{padding:var(--space-2);gap:var(--space-2)}.hint-button-container--older .hint-display__text{font-size:var(--text-xs)}.feedback-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;animation:overlay-fade-in .2s ease-out}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}.feedback-modal{background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--space-6);max-width:420px;width:90%;text-align:center;animation:modal-pop-in .3s ease-out;box-shadow:0 20px 40px #0003}@keyframes modal-pop-in{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.feedback-modal--correct{border:3px solid var(--color-success)}.feedback-modal--incorrect{border:3px solid var(--color-error)}.feedback-modal__header{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin-bottom:var(--space-4)}.feedback-modal__indicator{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-full)}.feedback-modal__indicator svg{width:28px;height:28px}.feedback-modal__indicator--correct{background:var(--color-success-light);color:var(--color-success)}.feedback-modal__indicator--incorrect{background:var(--color-error-light);color:var(--color-error)}.feedback-modal__title{margin:0;font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary)}.feedback-modal__points-badge{background:var(--color-highlight);color:#fff;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:700}.feedback-modal__content{margin-bottom:var(--space-4)}.feedback-modal__correct-answer{font-size:var(--text-base);color:var(--color-text-secondary);margin:var(--space-2) 0}.feedback-modal__correct-answer strong{color:var(--color-success)}.feedback-modal__explanation{background:var(--color-bg-secondary);padding:var(--space-4);border-radius:var(--radius-md);margin-top:var(--space-3)}.feedback-modal__explanation p{margin:0;font-size:var(--text-sm);line-height:1.6;color:var(--color-text-secondary)}.feedback-modal__speak-btn{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--color-highlight-light);border:1px solid var(--color-highlight);border-radius:var(--radius-md);color:var(--color-highlight);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.feedback-modal__speak-btn:hover{background:var(--color-highlight);color:#fff}.feedback-modal__speak-btn--active{background:var(--color-highlight);color:#fff;animation:speak-pulse 1.5s ease-in-out infinite}@keyframes speak-pulse{0%,to{opacity:1}50%{opacity:.7}}.feedback-modal__speak-btn svg{width:16px;height:16px}.feedback-modal__continue{width:100%;margin-top:var(--space-4)}.feedback-modal--young{padding:var(--space-8);max-width:480px}.feedback-modal--young .feedback-modal__title{font-size:var(--text-3xl)}.feedback-modal--young .feedback-modal__title--correct{color:var(--color-success)}.feedback-modal--young .feedback-modal__title--incorrect{color:var(--color-text-primary)}.feedback-modal__stars{display:flex;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-4)}.feedback-modal__star{font-size:48px;animation:star-pop .5s ease-out forwards}.feedback-modal__star--delay-1{animation-delay:.1s;opacity:0}.feedback-modal__star--delay-2{animation-delay:.2s;opacity:0}@keyframes star-pop{0%{opacity:0;transform:scale(0) rotate(-30deg)}50%{transform:scale(1.3) rotate(10deg)}to{opacity:1;transform:scale(1) rotate(0)}}.feedback-modal__icon{margin-bottom:var(--space-3)}.feedback-modal__emoji{font-size:64px;animation:emoji-wobble .5s ease-out}@keyframes emoji-wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}.feedback-modal__points{font-size:var(--text-2xl);font-weight:700;color:var(--color-highlight);margin:var(--space-2) 0}.feedback-modal--middle{padding:var(--space-6)}.feedback-modal--middle .feedback-modal__title{font-size:var(--text-xl)}.feedback-modal--older{padding:var(--space-5);max-width:380px}.feedback-modal--older .feedback-modal__title{font-size:var(--text-lg)}.feedback-modal--older .feedback-modal__indicator{width:40px;height:40px}.feedback-modal--older .feedback-modal__indicator svg{width:24px;height:24px}.celebration-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;animation:overlay-fade-in .3s ease-out}.celebration-modal{background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--space-8);max-width:480px;width:90%;text-align:center;animation:celebration-pop-in .5s ease-out;box-shadow:0 25px 50px #00000040}@keyframes celebration-pop-in{0%{opacity:0;transform:scale(.8) translateY(40px)}60%{transform:scale(1.05) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.celebration-modal__header{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6)}.celebration-modal__badge{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:var(--radius-full);animation:badge-bounce .6s ease-out .3s both}@keyframes badge-bounce{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.celebration-modal__badge svg{width:32px;height:32px}.celebration-modal__badge--excellent{background:linear-gradient(135deg,var(--color-accent) 0%,#f97316 100%);color:#fff}.celebration-modal__badge--good{background:var(--color-success);color:#fff}.celebration-modal__badge--needs_practice{background:var(--color-highlight);color:#fff}.celebration-modal__title{margin:0;font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary)}.celebration-modal--young{padding:var(--space-10);max-width:520px}.celebration-modal--young .celebration-modal__title{font-size:var(--text-4xl)}.celebration-modal__title--young{background:linear-gradient(135deg,var(--color-highlight) 0%,var(--color-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.celebration-modal__subtitle{font-size:var(--text-lg);color:var(--color-text-secondary);margin:var(--space-2) 0 var(--space-6)}.celebration-modal__emoji{font-size:80px;margin-bottom:var(--space-4);animation:emoji-bounce .8s ease-out}@keyframes emoji-bounce{0%,to{transform:translateY(0)}30%{transform:translateY(-30px)}50%{transform:translateY(-15px)}70%{transform:translateY(-20px)}}.celebration-modal__stars{display:flex;justify-content:center;gap:var(--space-3);margin-bottom:var(--space-6);opacity:0;transform:scale(.5);transition:all .5s ease-out}.celebration-modal__stars--visible{opacity:1;transform:scale(1)}.celebration-modal__star{font-size:48px;opacity:0;animation:star-appear .4s ease-out forwards}.celebration-modal__star--earned{filter:drop-shadow(0 0 8px var(--color-accent))}.celebration-modal__star--empty{opacity:.3;filter:grayscale(100%)}@keyframes star-appear{0%{opacity:0;transform:scale(0) rotate(-180deg)}to{opacity:1;transform:scale(1) rotate(0)}}.celebration-modal__score-circle{display:flex;align-items:baseline;justify-content:center;gap:var(--space-1);margin-bottom:var(--space-4);opacity:0;transform:translateY(20px);transition:all .4s ease-out}.celebration-modal__score-circle--visible{opacity:1;transform:translateY(0)}.celebration-modal__score-number{font-size:var(--text-5xl);font-weight:800;color:var(--color-highlight)}.celebration-modal__score-divider{font-size:var(--text-3xl);color:var(--color-text-tertiary)}.celebration-modal__score-total{font-size:var(--text-3xl);font-weight:600;color:var(--color-text-secondary)}.celebration-modal__xp{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6);opacity:0;transform:translateY(20px);transition:all .4s ease-out}.celebration-modal__xp--visible{opacity:1;transform:translateY(0)}.celebration-modal__xp-icon{font-size:24px;animation:sparkle 1s ease-in-out infinite}@keyframes sparkle{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.2) rotate(15deg)}}.celebration-modal__xp-amount{font-size:var(--text-2xl);font-weight:700;color:var(--color-accent)}.celebration-modal__streak-bonus{font-size:var(--text-sm);color:var(--color-success);font-weight:600}.celebration-modal__results{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.celebration-modal__result-item{display:flex;flex-direction:column;align-items:center;padding:var(--space-4);background:var(--color-bg-secondary);border-radius:var(--radius-lg);opacity:0;transform:translateY(20px);transition:all .4s ease-out}.celebration-modal__result-item--visible{opacity:1;transform:translateY(0)}.celebration-modal__result-label{font-size:var(--text-xs);font-weight:500;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.celebration-modal__result-value{font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary)}.celebration-modal__result-value--score{color:var(--color-highlight)}.celebration-modal__result-value--stars{font-size:var(--text-lg)}.celebration-modal__result-value--xp{color:var(--color-accent)}.celebration-modal__result-value--xp small{font-size:var(--text-sm);color:var(--color-success)}.celebration-modal__message{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--space-6)}.celebration-modal__actions{display:flex;gap:var(--space-3);justify-content:center}.celebration-modal__btn{flex:1;max-width:180px}.celebration-modal__continue{width:100%}.celebration-modal--middle{padding:var(--space-6)}.celebration-modal--middle .celebration-modal__title{font-size:var(--text-xl)}.celebration-modal--older{padding:var(--space-6);max-width:440px}.celebration-modal--older .celebration-modal__badge{width:56px;height:56px}.celebration-modal--older .celebration-modal__badge svg{width:28px;height:28px}.celebration-modal--older .celebration-modal__title{font-size:var(--text-lg)}.celebration-modal--older .celebration-modal__results{gap:var(--space-3)}.celebration-modal--older .celebration-modal__result-item{padding:var(--space-3)}.celebration-modal--older .celebration-modal__result-value{font-size:var(--text-lg)}.confetti{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:101}.confetti__particle{position:absolute;top:-20px;border-radius:2px;animation:confetti-fall linear forwards}@keyframes confetti-fall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.assessment-page{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg-secondary)}.assessment-page__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);background:var(--color-bg-primary);border-bottom:1px solid var(--color-border);gap:var(--space-4)}.assessment-page__header-left{display:flex;align-items:center;gap:var(--space-4);flex:1}.assessment-page__header-right{display:flex;align-items:center;gap:var(--space-4)}.assessment-page__quit-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:none;border-radius:var(--radius-full);color:var(--color-text-tertiary);font-size:var(--text-lg);cursor:pointer;transition:all var(--transition-fast)}.assessment-page__quit-btn:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.assessment-page__progress{flex:1;max-width:300px;height:8px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);overflow:hidden}.assessment-page__progress-bar{height:100%;background:linear-gradient(90deg,var(--color-highlight) 0%,var(--color-accent) 100%);border-radius:var(--radius-full);transition:width .3s ease-out}.assessment-page__progress-text{font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.assessment-page__score{display:flex;align-items:baseline;gap:var(--space-1)}.assessment-page__score-points{font-size:var(--text-xl);font-weight:700;color:var(--color-accent)}.assessment-page__score-label{font-size:var(--text-xs);font-weight:500;color:var(--color-text-tertiary);text-transform:uppercase}.assessment-page__streak{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);background:linear-gradient(135deg,#ff6b35,#f7c52d);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:700;color:#fff;animation:streak-pulse 1s ease-in-out infinite}@keyframes streak-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.assessment-page__content{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:var(--space-6)}.assessment-page__question-wrapper{width:100%;max-width:720px;background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:0 4px 20px #00000014}.assessment-page__loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);color:var(--color-text-secondary)}.assessment-page__spinner{width:48px;height:48px;border:4px solid var(--color-border);border-top-color:var(--color-highlight);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.assessment-page__error{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);text-align:center;padding:var(--space-6)}.assessment-page__error h2{font-size:var(--text-2xl);color:var(--color-text-primary);margin:0}.assessment-page__error p{color:var(--color-text-secondary);max-width:400px}.assessment-page__subject-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);padding:var(--space-6);max-width:800px;margin:0 auto}.assessment-page__subject-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8);background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-fast)}.assessment-page__subject-card:hover{border-color:var(--color-highlight);box-shadow:0 8px 24px #6366f126;transform:translateY(-2px)}.assessment-page__subject-icon{font-size:48px}.assessment-page__subject-name{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary)}.assessment-page--young .assessment-page__header{padding:var(--space-3) var(--space-4)}.assessment-page--young .assessment-page__progress{height:12px}.assessment-page--young .assessment-page__progress-text{font-size:var(--text-base)}.assessment-page--young .assessment-page__quit-btn{width:44px;height:44px;font-size:var(--text-xl)}.assessment-page--young .assessment-page__question-wrapper{padding:var(--space-6);border-radius:var(--radius-2xl)}.assessment-page--young .assessment-page__streak{font-size:var(--text-lg);padding:var(--space-2) var(--space-4)}.assessment-page--young .assessment-page__subject-card{padding:var(--space-10)}.assessment-page--young .assessment-page__subject-icon{font-size:64px}.assessment-page--young .assessment-page__subject-name{font-size:var(--text-xl)}.assessment-page--young .assessment-page__loading p,.assessment-page--young .assessment-page__error p{font-size:var(--text-lg)}.assessment-page--young .assessment-page__spinner{width:64px;height:64px}.assessment-page--middle .assessment-page__question-wrapper{max-width:680px}.assessment-page--older .assessment-page__header{padding:var(--space-3) var(--space-6)}.assessment-page--older .assessment-page__progress{height:6px}.assessment-page--older .assessment-page__question-wrapper{max-width:640px;padding:var(--space-6)}.assessment-page--older .assessment-page__content{padding:var(--space-4)}@media(max-width:640px){.assessment-page__header{flex-wrap:wrap;gap:var(--space-3)}.assessment-page__header-left{order:1;width:100%}.assessment-page__header-right{order:2;width:100%;justify-content:flex-end}.assessment-page__progress{max-width:none}.assessment-page__content{padding:var(--space-3)}.assessment-page__question-wrapper{padding:var(--space-4);border-radius:var(--radius-lg)}.assessment-page__subject-grid{grid-template-columns:1fr}}.homework-page{background:var(--color-bg-secondary)}.homework-header{background:var(--color-bg-primary);border-bottom:1px solid var(--color-border);padding:var(--space-4) 0;position:sticky;top:0;z-index:10}.homework-header-content{display:flex;align-items:center;justify-content:space-between}.back-button{width:40px;height:40px;border-radius:var(--radius-full);border:none;background:var(--color-bg-tertiary);color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast)}.homework-title{font-size:var(--text-xl);font-weight:600;margin:0}[data-age-group=young] .homework-title{font-size:var(--text-2xl)}.homework-content{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-6) 0;min-height:calc(100vh - 80px)}.capture-selection{text-align:center;max-width:400px;margin:0 auto}.capture-icon{font-size:4rem;margin-bottom:var(--space-4)}[data-age-group=young] .capture-icon{font-size:5rem}.capture-title{font-size:var(--text-2xl);margin-bottom:var(--space-2)}[data-age-group=young] .capture-title{font-size:var(--text-3xl)}.capture-description{color:var(--color-text-secondary);margin-bottom:var(--space-4)}[data-age-group=young] .capture-description{font-size:var(--text-lg)}.usage-indicator{margin-bottom:var(--space-6);padding:var(--space-3) var(--space-4);background:var(--color-bg-tertiary);border-radius:var(--radius-lg)}.usage-text{display:block;font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.usage-bar{height:6px;background:var(--color-border);border-radius:var(--radius-full);overflow:hidden}.usage-bar-fill{height:100%;background:var(--color-success);border-radius:var(--radius-full);transition:width var(--transition-base)}.usage-indicator.low .usage-bar-fill{background:var(--color-warning)}.loading-view{text-align:center;padding:var(--space-12) 0}.capture-buttons{display:flex;flex-direction:column;gap:var(--space-3)}.capture-button{width:100%;justify-content:center}.button-icon{margin-right:var(--space-2);font-size:1.25em}.camera-view{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;display:flex;flex-direction:column;z-index:100}.camera-video{flex:1;width:100%;object-fit:cover}.camera-controls{position:absolute;bottom:0;left:0;right:0;padding:var(--space-6);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(transparent,#000000b3)}.camera-controls button{color:#fff}.capture-shutter{width:72px;height:72px;border-radius:50%;border:4px solid white;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast)}.capture-shutter:hover{transform:scale(1.05)}.capture-shutter:active{transform:scale(.95)}.shutter-inner{width:56px;height:56px;border-radius:50%;background:#fff}.preview-view{width:100%;max-width:500px;margin:0 auto}.preview-card{background:var(--color-bg-primary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);margin-bottom:var(--space-6)}.preview-image{width:100%;display:block}.preview-question{text-align:center;margin-bottom:var(--space-6)}.preview-question h3{font-size:var(--text-xl);margin:0}[data-age-group=young] .preview-question h3{font-size:var(--text-2xl)}.preview-buttons{display:flex;gap:var(--space-3)}.preview-buttons button{flex:1}.uploading-view{text-align:center;padding:var(--space-12) 0}.error-view{text-align:center;max-width:400px;margin:0 auto}.error-view h3{font-size:var(--text-xl);margin-bottom:var(--space-2)}.error-text{color:var(--color-text-secondary);margin-bottom:var(--space-6)}.error-buttons{display:flex;flex-direction:column;gap:var(--space-3)}.error-message{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-error-light);color:var(--color-error);border-radius:var(--radius-md);font-size:var(--text-sm)}@media(min-width:640px){.capture-buttons{flex-direction:row}.error-buttons{flex-direction:row;justify-content:center}.error-buttons button{width:auto}}.homework-problem-page{display:flex;flex-direction:column;height:100vh;background:var(--color-bg-secondary)}.problem-header{background:var(--color-bg-primary);border-bottom:1px solid var(--color-border);padding:var(--space-3) 0;flex-shrink:0}.problem-header-content{display:flex;align-items:center;gap:var(--space-3)}.problem-header-info{flex:1}.problem-title{font-size:var(--text-lg);margin:0}[data-age-group=young] .problem-title{font-size:var(--text-xl)}.problem-subject{font-size:var(--text-sm);color:var(--color-text-tertiary)}.hint-counter{font-size:var(--text-sm);color:var(--color-text-secondary);background:var(--color-bg-tertiary);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full)}.problem-preview{background:var(--color-highlight-light);padding:var(--space-4) 0;flex-shrink:0}.problem-text-card{background:var(--color-bg-primary);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:var(--shadow-sm)}.problem-label{font-size:var(--text-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.problem-text{font-size:var(--text-lg);font-weight:500;color:var(--color-text-primary)}[data-age-group=young] .problem-text{font-size:var(--text-xl)}.messages-container{flex:1;overflow-y:auto;padding:var(--space-4) 0}.messages-list{display:flex;flex-direction:column;gap:var(--space-3)}.message{display:flex;gap:var(--space-2);max-width:85%}.message-student{margin-left:auto;flex-direction:row-reverse}.message-assistant{margin-right:auto}.message-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-highlight-light);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}[data-age-group=young] .message-avatar{width:44px;height:44px;font-size:1.5rem}.message-bubble{background:var(--color-bg-primary);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.message-student .message-bubble{background:var(--color-highlight);color:#fff;border-bottom-right-radius:var(--radius-sm)}.message-assistant .message-bubble{border-bottom-left-radius:var(--radius-sm)}.message-content{margin:0;font-size:var(--text-base);line-height:1.5;white-space:pre-wrap}[data-age-group=young] .message-content{font-size:var(--text-lg)}.message-hint-badge{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-text-tertiary);background:var(--color-bg-tertiary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);display:inline-block}.message-voice-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:none;background:var(--color-bg-tertiary);color:var(--color-text-secondary);cursor:pointer;margin-top:var(--space-2);transition:all var(--transition-fast);flex-shrink:0}.message-voice-btn:hover{background:var(--color-highlight-light);color:var(--color-highlight)}.message-voice-btn--playing{background:var(--color-highlight);color:#fff;animation:pulse 1.5s ease-in-out infinite}.message-voice-btn--playing:hover{background:var(--color-primary);color:#fff}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}[data-age-group=young] .message-voice-btn{width:36px;height:36px}[data-age-group=young] .message-voice-btn svg{width:20px;height:20px}.message-typing{display:flex;gap:4px;padding:var(--space-3) var(--space-4)}.typing-dot{width:8px;height:8px;border-radius:50%;background:var(--color-text-tertiary);animation:typing 1.4s infinite ease-in-out}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typing{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.input-area{background:var(--color-bg-primary);border-top:1px solid var(--color-border);padding:var(--space-4) 0;flex-shrink:0}.quick-actions{display:flex;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap}.quick-action-btn{flex:1;min-width:100px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-bg-primary);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}[data-age-group=young] .quick-action-btn{font-size:var(--text-base);padding:var(--space-3) var(--space-4)}.quick-action-btn:hover:not(:disabled){background:var(--color-bg-tertiary);border-color:var(--color-text-tertiary)}.quick-action-btn:disabled{opacity:.5;cursor:not-allowed}.stuck-btn{border-color:var(--color-warning);color:var(--color-warning)}.stuck-btn:hover:not(:disabled){background:var(--color-warning-light)}.hint-btn{border-color:var(--color-highlight);color:var(--color-highlight)}.hint-btn:hover:not(:disabled){background:var(--color-highlight-light)}.gotit-btn{border-color:var(--color-success);color:var(--color-success);background:var(--color-success-light)}.gotit-btn:hover{background:var(--color-success);color:#fff}.message-input-container{display:flex;gap:var(--space-2);align-items:center}.message-input{flex:1;padding:var(--space-3) var(--space-4);border-radius:var(--radius-full);border:1px solid var(--color-border);font-size:var(--text-base);background:var(--color-bg-secondary);transition:border-color var(--transition-fast)}[data-age-group=young] .message-input{font-size:var(--text-lg);padding:var(--space-4)}.message-input:focus{outline:none;border-color:var(--color-highlight)}.send-button{width:44px;height:44px;border-radius:50%;border:none;background:var(--color-highlight);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.send-button:hover:not(:disabled){background:var(--color-primary);transform:scale(1.05)}.send-button:disabled{background:var(--color-text-tertiary);cursor:not-allowed}.give-up-link{display:block;width:100%;text-align:center;margin-top:var(--space-3);padding:var(--space-2);background:none;border:none;color:var(--color-text-tertiary);font-size:var(--text-sm);cursor:pointer;transition:color var(--transition-fast)}.give-up-link:hover{color:var(--color-text-secondary)}.solved-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:var(--space-6);text-align:center}.solved-celebration{font-size:4rem;margin-bottom:var(--space-4);animation:bounce .5s ease infinite alternate}[data-age-group=young] .solved-celebration{font-size:5rem}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-10px)}}.solved-title{font-size:var(--text-3xl);margin-bottom:var(--space-2);color:var(--color-success)}.solved-message{font-size:var(--text-lg);color:var(--color-text-secondary);margin-bottom:var(--space-6);max-width:400px}.solved-stats{display:flex;gap:var(--space-4);margin-bottom:var(--space-6)}.stat-item{font-size:var(--text-sm);color:var(--color-text-secondary);background:var(--color-bg-tertiary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full)}.solved-buttons{display:flex;flex-direction:column;gap:var(--space-3);width:100%;max-width:300px}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:var(--space-6);text-align:center}.error-icon{font-size:4rem;margin-bottom:var(--space-4)}.error-toast{position:fixed;bottom:var(--space-6);left:50%;transform:translate(-50%);background:var(--color-error);color:#fff;padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);font-size:var(--text-sm);box-shadow:var(--shadow-lg);cursor:pointer;z-index:100;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.back-button{width:40px;height:40px;border-radius:var(--radius-full);border:none;background:var(--color-bg-tertiary);color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast);flex-shrink:0}.back-button:hover{background:var(--color-border)}.critter-card{position:relative;display:flex;flex-direction:column;align-items:center;padding:var(--space-4);background:linear-gradient(135deg,color-mix(in srgb,var(--critter-primary) 10%,var(--color-bg-primary)),color-mix(in srgb,var(--critter-secondary) 20%,var(--color-bg-primary)));border:2px solid color-mix(in srgb,var(--critter-primary) 30%,transparent);border-radius:var(--radius-xl);cursor:pointer;transition:all .3s ease;overflow:hidden}.critter-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px color-mix(in srgb,var(--critter-primary) 30%,transparent)}.critter-card:active{transform:translateY(-2px)}.critter-card--locked{filter:grayscale(.5);opacity:.8}.critter-card--locked:hover{filter:grayscale(.3);opacity:.9}.critter-card--selected{border-color:var(--color-success);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-success) 30%,transparent)}.critter-card--owned{background:linear-gradient(135deg,color-mix(in srgb,var(--critter-primary) 15%,var(--color-bg-primary)),color-mix(in srgb,var(--critter-secondary) 25%,var(--color-bg-primary)))}.critter-card--legendary{background:linear-gradient(135deg,color-mix(in srgb,var(--critter-primary) 20%,var(--color-bg-primary)),color-mix(in srgb,gold 10%,var(--color-bg-primary)),color-mix(in srgb,var(--critter-secondary) 20%,var(--color-bg-primary)));animation:legendary-shimmer 3s ease-in-out infinite}@keyframes legendary-shimmer{0%,to{filter:brightness(1)}50%{filter:brightness(1.1)}}.critter-card__rarity{position:absolute;top:var(--space-2);right:var(--space-2);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff;background:var(--rarity-color);border-radius:var(--radius-full)}.critter-card__avatar{position:relative;width:80px;height:80px;margin-bottom:var(--space-3);border-radius:50%;background:linear-gradient(135deg,var(--critter-primary),var(--critter-secondary));display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px color-mix(in srgb,var(--critter-primary) 40%,transparent);animation:critter-float 3s ease-in-out infinite}@keyframes critter-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.critter-card--locked .critter-card__avatar{animation:none}.critter-card__avatar img{width:70%;height:70%;object-fit:contain}.critter-card__emoji{font-size:2.5rem;line-height:1}.critter-card__lock-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0006;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.critter-card__selected-badge{position:absolute;bottom:-4px;right:-4px;width:24px;height:24px;background:var(--color-success);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:700;border:2px solid var(--color-bg-primary)}.critter-card__name{margin:0;font-size:var(--text-lg);font-weight:700;color:var(--color-text-primary);text-align:center}.critter-card__type{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--color-text-tertiary);text-transform:capitalize}.critter-card__unlock{width:100%;margin-top:var(--space-3)}.critter-card__progress-bar{height:6px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);overflow:hidden}.critter-card__progress-fill{height:100%;background:linear-gradient(90deg,var(--critter-primary),var(--critter-secondary));border-radius:var(--radius-full);transition:width .3s ease}.critter-card__unlock-label{display:block;margin-top:var(--space-1);font-size:var(--text-xs);color:var(--color-text-secondary);text-align:center}.critter-card__owned-badge{margin-top:var(--space-2);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:600;color:var(--color-success);background:color-mix(in srgb,var(--color-success) 15%,transparent);border-radius:var(--radius-full)}@media(max-width:480px){.critter-card{padding:var(--space-3)}.critter-card__avatar{width:64px;height:64px}.critter-card__emoji{font-size:2rem}.critter-card__name{font-size:var(--text-base)}}.critter-detail-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:#0009;animation:modal-fade-in .2s ease}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.critter-detail-modal__content{position:relative;width:100%;max-width:400px;max-height:90vh;overflow-y:auto;background:linear-gradient(180deg,color-mix(in srgb,var(--critter-primary) 15%,var(--color-bg-primary)),var(--color-bg-primary) 40%);border-radius:var(--radius-2xl);animation:modal-slide-up .3s ease}@keyframes modal-slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.critter-detail-modal__close{position:absolute;top:var(--space-3);right:var(--space-3);width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--color-text-tertiary);background:var(--color-bg-primary);border:none;border-radius:50%;cursor:pointer;transition:all .2s}.critter-detail-modal__close:hover{color:var(--color-text-primary);background:var(--color-bg-secondary)}.critter-detail-modal__header{position:relative;display:flex;flex-direction:column;align-items:center;padding:var(--space-8) var(--space-6) var(--space-4)}.critter-detail-modal__avatar{position:relative;width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--critter-primary),var(--critter-secondary));display:flex;align-items:center;justify-content:center;font-size:4rem;box-shadow:0 8px 32px color-mix(in srgb,var(--critter-primary) 40%,transparent);animation:avatar-bounce 2s ease-in-out infinite}@keyframes avatar-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.critter-detail-modal__avatar img{width:75%;height:75%;object-fit:contain}.critter-detail-modal__lock{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:2.5rem;background:#00000080;border-radius:50%}.critter-detail-modal__rarity{margin-top:var(--space-3);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-full)}.critter-detail-modal__info{padding:0 var(--space-6) var(--space-4);text-align:center}.critter-detail-modal__name{margin:0;font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary)}.critter-detail-modal__type{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--color-text-tertiary);text-transform:capitalize}.critter-detail-modal__description{margin:var(--space-4) 0;font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.6}.critter-detail-modal__personality{display:flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:var(--text-sm)}.critter-detail-modal__label{color:var(--color-text-tertiary)}.critter-detail-modal__speech{margin-top:var(--space-4);padding:var(--space-4);background:var(--color-bg-secondary);border-radius:var(--radius-xl);position:relative}.critter-detail-modal__speech:before{content:"";position:absolute;top:-8px;left:50%;transform:translate(-50%);width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid var(--color-bg-secondary)}.critter-detail-modal__speech-text{font-style:italic;color:var(--color-text-secondary)}.critter-detail-modal__actions{padding:var(--space-4) var(--space-6) var(--space-6);border-top:1px solid var(--color-border)}.critter-detail-modal__unlock-label{margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--color-text-secondary);text-align:center}.critter-detail-modal__selected-badge{padding:var(--space-3);font-weight:600;color:var(--color-success);background:color-mix(in srgb,var(--color-success) 15%,transparent);border-radius:var(--radius-lg);text-align:center}@media(max-width:480px){.critter-detail-modal__content{max-height:85vh}.critter-detail-modal__avatar{width:100px;height:100px;font-size:3rem}.critter-detail-modal__name{font-size:var(--text-xl)}}.critter-collection{min-height:100vh;padding:var(--space-4);background:linear-gradient(180deg,var(--color-bg-secondary) 0%,var(--color-bg-primary) 100%)}.critter-collection__header{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:2px solid var(--color-border)}.critter-collection__back{padding:var(--space-2) var(--space-3);font-size:var(--text-base);font-weight:500;color:var(--color-text-secondary);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s}.critter-collection__back:hover{color:var(--color-text-primary);border-color:var(--color-text-secondary)}.critter-collection__title{flex:1;display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary)}.critter-collection__title-icon{font-size:1.5em}.critter-collection__stats{display:flex;gap:var(--space-4);font-size:var(--text-base)}.critter-collection__stat{padding:var(--space-2) var(--space-3);background:var(--color-bg-primary);border-radius:var(--radius-lg);color:var(--color-text-secondary)}.critter-collection__stars{padding:var(--space-2) var(--space-3);background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:var(--radius-lg);color:#92400e;font-weight:600}.critter-collection__filters{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-4)}.critter-collection__filter-group{display:flex;align-items:center;gap:var(--space-2)}.critter-collection__filter-label{font-size:var(--text-sm);color:var(--color-text-secondary)}.critter-collection__select{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.critter-collection__legend{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-6)}.critter-collection__legend-item{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-full)}.critter-collection__legend-item--common{background:#f4f4f5;color:#71717a}.critter-collection__legend-item--uncommon{background:#dcfce7;color:#15803d}.critter-collection__legend-item--rare{background:#dbeafe;color:#1d4ed8}.critter-collection__legend-item--legendary{background:#fef3c7;color:#b45309}.critter-collection__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-4)}.critter-collection__empty{grid-column:1 / -1;padding:var(--space-12);text-align:center;color:var(--color-text-tertiary)}.critter-collection__empty-icon{display:block;font-size:4rem;margin-bottom:var(--space-4)}.critter-collection__celebration{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#000000b3;animation:celebration-fade-in .3s ease}@keyframes celebration-fade-in{0%{opacity:0}to{opacity:1}}.critter-collection__celebration-content{max-width:400px;padding:var(--space-8);background:var(--color-bg-primary);border-radius:var(--radius-2xl);text-align:center;animation:celebration-pop-in .5s cubic-bezier(.34,1.56,.64,1)}@keyframes celebration-pop-in{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.critter-collection__celebration-confetti{font-size:3rem;animation:confetti-bounce .5s ease infinite alternate}@keyframes confetti-bounce{0%{transform:translateY(0)}to{transform:translateY(-10px)}}.critter-collection__celebration h2{margin:var(--space-4) 0;font-size:var(--text-2xl);color:var(--color-highlight)}.critter-collection__celebration-critter{margin:var(--space-4) 0;animation:critter-wiggle .5s ease-in-out infinite}@keyframes critter-wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.critter-collection__celebration h3{margin:0;font-size:var(--text-xl);color:var(--color-text-primary)}.critter-collection__celebration p{margin:var(--space-2) 0 var(--space-6);color:var(--color-text-secondary)}@media(max-width:768px){.critter-collection__header{flex-direction:column;align-items:flex-start}.critter-collection__title{font-size:var(--text-xl)}.critter-collection__grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-3)}}@media(max-width:480px){.critter-collection{padding:var(--space-3)}.critter-collection__grid{grid-template-columns:repeat(2,1fr)}.critter-collection__legend{justify-content:center}}.critter-customize{min-height:100vh;padding:var(--space-4);background:linear-gradient(180deg,var(--color-bg-secondary) 0%,var(--color-bg-primary) 100%)}.critter-customize__header{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:2px solid var(--color-border)}.critter-customize__back{padding:var(--space-2) var(--space-3);font-size:var(--text-base);font-weight:500;color:var(--color-text-secondary);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s}.critter-customize__back:hover{color:var(--color-text-primary);border-color:var(--color-text-secondary)}.critter-customize__title{flex:1;display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary)}.critter-customize__stars{padding:var(--space-2) var(--space-4);font-size:var(--text-lg);font-weight:600;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:var(--radius-full);color:#92400e}.critter-customize__message{padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);border-radius:var(--radius-lg);text-align:center;font-weight:500;animation:message-slide-in .3s ease}@keyframes message-slide-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.critter-customize__message--success{background:var(--color-success-light);color:var(--color-success-dark)}.critter-customize__message--error{background:var(--color-error-light);color:var(--color-error-dark)}.critter-customize__content{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-6)}.critter-customize__preview{display:flex;flex-direction:column;gap:var(--space-4)}.critter-customize__critter-selector{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-3);background:var(--color-bg-primary);border-radius:var(--radius-xl)}.critter-customize__critter-btn{width:48px;height:48px;font-size:1.5rem;background:color-mix(in srgb,var(--critter-color) 20%,var(--color-bg-secondary));border:2px solid transparent;border-radius:50%;cursor:pointer;transition:all .2s}.critter-customize__critter-btn:hover{transform:scale(1.1)}.critter-customize__critter-btn--selected{border-color:var(--color-highlight);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-highlight) 30%,transparent)}.critter-customize__preview-display{position:relative;padding:var(--space-8);background:linear-gradient(135deg,color-mix(in srgb,var(--critter-primary) 20%,var(--color-bg-primary)),color-mix(in srgb,var(--bg-color) 30%,var(--color-bg-primary)));border-radius:var(--radius-2xl);text-align:center;overflow:hidden}.critter-customize__equipped-bg{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:8rem;opacity:.2;pointer-events:none}.critter-customize__critter-avatar{position:relative;width:140px;height:140px;margin:0 auto;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--critter-primary),var(--critter-secondary));border-radius:50%;box-shadow:0 8px 32px color-mix(in srgb,var(--critter-primary) 40%,transparent);animation:avatar-float 3s ease-in-out infinite}@keyframes avatar-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.critter-customize__critter-emoji{font-size:5rem}.critter-customize__equipped-hat{position:absolute;top:-20px;left:50%;transform:translate(-50%);font-size:2.5rem;animation:hat-wobble 2s ease-in-out infinite}@keyframes hat-wobble{0%,to{transform:translate(-50%) rotate(-3deg)}50%{transform:translate(-50%) rotate(3deg)}}.critter-customize__equipped-accessory{position:absolute;bottom:10px;right:-5px;font-size:1.8rem}.critter-customize__equipped-outfit{margin-top:var(--space-2);font-size:2rem}.critter-customize__critter-name{margin:var(--space-4) 0 0;font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary)}.critter-customize__equipped{padding:var(--space-4);background:var(--color-bg-primary);border-radius:var(--radius-xl)}.critter-customize__equipped h4{margin:0 0 var(--space-3);font-size:var(--text-base);color:var(--color-text-secondary)}.critter-customize__equipped-list{display:flex;flex-direction:column;gap:var(--space-2)}.critter-customize__equipped-slot{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2);background:var(--color-bg-secondary);border-radius:var(--radius-md)}.critter-customize__equipped-label{font-size:var(--text-sm);color:var(--color-text-tertiary)}.critter-customize__equipped-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:500;color:var(--color-text-primary)}.critter-customize__remove-btn{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);color:var(--color-error);background:color-mix(in srgb,var(--color-error) 15%,transparent);border:none;border-radius:50%;cursor:pointer;transition:all .2s}.critter-customize__remove-btn:hover{background:color-mix(in srgb,var(--color-error) 25%,transparent)}.critter-customize__equipped-empty{font-size:var(--text-sm);color:var(--color-text-tertiary);font-style:italic}.critter-customize__shop{display:flex;flex-direction:column;gap:var(--space-4)}.critter-customize__categories{display:flex;gap:var(--space-2);padding:var(--space-2);background:var(--color-bg-primary);border-radius:var(--radius-xl)}.critter-customize__category{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-3);font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);background:transparent;border:2px solid transparent;border-radius:var(--radius-lg);cursor:pointer;transition:all .2s}.critter-customize__category:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.critter-customize__category--active{background:var(--color-highlight);color:#fff;border-color:var(--color-highlight)}.critter-customize__category-icon{font-size:1.5rem}.critter-customize__category-label{font-size:var(--text-xs)}.critter-customize__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-3)}.critter-customize__item{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-4);background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:var(--radius-xl);transition:all .2s}.critter-customize__item:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.critter-customize__item--owned{border-color:var(--color-success);background:color-mix(in srgb,var(--color-success) 5%,var(--color-bg-primary))}.critter-customize__item--equipped{border-color:var(--color-highlight);background:color-mix(in srgb,var(--color-highlight) 10%,var(--color-bg-primary))}.critter-customize__item-preview{width:60px;height:60px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;background:var(--color-bg-secondary);border-radius:50%}.critter-customize__item-name{font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary);text-align:center}.critter-customize__item-equipped-badge{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:600;color:var(--color-success);background:color-mix(in srgb,var(--color-success) 15%,transparent);border-radius:var(--radius-full)}.critter-customize__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center}.critter-customize__empty-icon{font-size:6rem;margin-bottom:var(--space-4)}.critter-customize__empty h2{margin:0 0 var(--space-2);font-size:var(--text-2xl);color:var(--color-text-primary)}.critter-customize__empty p{margin:0 0 var(--space-6);color:var(--color-text-secondary)}@media(max-width:900px){.critter-customize__content{grid-template-columns:1fr}.critter-customize__preview{order:1}.critter-customize__shop{order:2}}@media(max-width:600px){.critter-customize{padding:var(--space-3)}.critter-customize__header{flex-direction:column;align-items:flex-start}.critter-customize__title{font-size:var(--text-xl)}.critter-customize__categories{flex-wrap:wrap}.critter-customize__category{min-width:70px}.critter-customize__grid{grid-template-columns:repeat(2,1fr)}.critter-customize__critter-avatar{width:100px;height:100px}.critter-customize__critter-emoji{font-size:3.5rem}}.adventure-home{min-height:100vh;padding:var(--space-4);background:linear-gradient(180deg,var(--color-bg-primary) 0%,var(--color-bg-secondary) 100%)}.adventure-home__header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6)}.adventure-home__back{padding:var(--space-2) var(--space-3);background:var(--color-bg-tertiary);border:none;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-sm);transition:background .2s}.adventure-home__back:hover{background:var(--color-bg-secondary)}.adventure-home__title{flex:1;display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary)}.adventure-home__title-icon{font-size:1.5em}.adventure-home__stats{display:flex;gap:var(--space-3);font-size:var(--text-lg);font-weight:600}.adventure-home__intro{text-align:center;color:var(--color-text-secondary);font-size:var(--text-lg);margin-bottom:var(--space-8)}.adventure-home__map{display:flex;flex-direction:column;gap:var(--space-2);max-width:600px;margin:0 auto;padding:var(--space-4)}.adventure-home__world{position:relative;cursor:pointer}.adventure-home__world--locked{cursor:not-allowed;opacity:.6}.adventure-home__path{position:absolute;left:50%;bottom:-20px;width:4px;height:40px;background:var(--color-border);transform:translate(-50%);z-index:0}.adventure-home__world--in-progress .adventure-home__path,.adventure-home__world--completed .adventure-home__path{background:var(--world-color, var(--color-primary))}.adventure-home__world-card{position:relative;padding:var(--space-6);background:var(--color-bg-primary);border-radius:var(--radius-xl);border:3px solid var(--color-border);text-align:center;transition:transform .2s,box-shadow .2s,border-color .2s;z-index:1}.adventure-home__world--unlocked .adventure-home__world-card:hover,.adventure-home__world--in-progress .adventure-home__world-card:hover,.adventure-home__world--completed .adventure-home__world-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a;border-color:var(--world-color, var(--color-primary))}.adventure-home__world--in-progress .adventure-home__world-card,.adventure-home__world--completed .adventure-home__world-card{border-color:var(--world-color, var(--color-primary))}.adventure-home__world-icon{font-size:4rem;margin-bottom:var(--space-3)}.adventure-home__world-name{font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary);margin-bottom:var(--space-2)}.adventure-home__world-desc{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-3)}.adventure-home__world-progress{font-size:var(--text-sm);color:var(--world-color, var(--color-primary));font-weight:600;margin-bottom:var(--space-2)}.adventure-home__progress-bar{height:8px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);overflow:hidden;margin-top:var(--space-2)}.adventure-home__progress-fill{height:100%;background:var(--world-color, var(--color-primary));border-radius:var(--radius-full);transition:width .3s ease}.adventure-home__world-complete{font-size:var(--text-sm);color:var(--color-success);font-weight:600}.adventure-home__world-lock-info{font-size:var(--text-xs);color:var(--color-text-tertiary);text-transform:capitalize}.adventure-home__world-rewards{display:flex;justify-content:center;gap:var(--space-4);margin-top:var(--space-3);font-size:var(--text-sm);color:var(--color-text-tertiary)}.adventure-home__modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:1000;animation:fadeIn .2s ease}.adventure-home__modal{position:relative;width:100%;max-width:450px;max-height:90vh;overflow-y:auto;background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--space-6);text-align:center;animation:scaleIn .2s ease}.adventure-home__modal-close{position:absolute;top:var(--space-3);right:var(--space-3);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);border:none;border-radius:var(--radius-full);font-size:var(--text-xl);color:var(--color-text-secondary);cursor:pointer}.adventure-home__modal-icon{font-size:5rem;margin-bottom:var(--space-3)}.adventure-home__modal-title{font-size:var(--text-2xl);font-weight:700;color:var(--world-color, var(--color-primary));margin-bottom:var(--space-2)}.adventure-home__modal-desc{color:var(--color-text-secondary);margin-bottom:var(--space-4)}.adventure-home__chapters{text-align:left;margin-bottom:var(--space-4)}.adventure-home__chapters h3{font-size:var(--text-sm);font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.adventure-home__chapter-list{list-style:none;padding:0;margin:0}.adventure-home__chapter{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.adventure-home__chapter--complete{background:#22c55e1a}.adventure-home__chapter-order{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--world-color, var(--color-primary));color:#fff;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:700}.adventure-home__chapter-title{flex:1;font-size:var(--text-sm);color:var(--color-text-primary)}.adventure-home__chapter-check{color:var(--color-success);font-weight:700}.adventure-home__modal-rewards{margin-bottom:var(--space-4)}.adventure-home__modal-rewards h3{font-size:var(--text-sm);font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.adventure-home__reward-items{display:flex;justify-content:center;gap:var(--space-4)}.adventure-home__reward{padding:var(--space-2) var(--space-4);background:var(--color-bg-secondary);border-radius:var(--radius-md);font-weight:600;color:var(--color-text-primary)}.adventure-home__modal-btn{width:100%;padding:var(--space-4);background:var(--world-color, var(--color-primary));color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--text-lg);font-weight:700;cursor:pointer;transition:transform .2s,opacity .2s}.adventure-home__modal-btn:hover:not(:disabled){transform:scale(1.02)}.adventure-home__modal-btn:disabled{opacity:.7;cursor:not-allowed}.adventure-home__modal-btn--replay{background:var(--color-bg-tertiary);color:var(--color-text-primary)}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media(max-width:640px){.adventure-home__header{flex-wrap:wrap}.adventure-home__title{order:2;width:100%;justify-content:center;font-size:var(--text-xl)}.adventure-home__world-card{padding:var(--space-4)}.adventure-home__world-icon{font-size:3rem}}.adventure-world{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--color-bg-primary) 0%,var(--color-bg-secondary) 100%)}.adventure-world__header{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--color-bg-primary);border-bottom:2px solid var(--world-color, var(--color-primary))}.adventure-world__back{padding:var(--space-2) var(--space-3);background:var(--color-bg-tertiary);border:none;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-sm);transition:background .2s}.adventure-world__back:hover{background:var(--color-bg-secondary)}.adventure-world__info{flex:1}.adventure-world__world-name{font-size:var(--text-lg);font-weight:700;color:var(--world-color, var(--color-primary))}.adventure-world__chapter-name{font-size:var(--text-sm);color:var(--color-text-secondary)}.adventure-world__progress-badge{padding:var(--space-2) var(--space-4);background:var(--world-color, var(--color-primary));color:#fff;border-radius:var(--radius-full);font-weight:700;font-size:var(--text-sm)}.adventure-world__story{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-6)}.adventure-world__story-card{width:100%;max-width:500px;padding:var(--space-8);background:var(--color-bg-primary);border-radius:var(--radius-xl);text-align:center;box-shadow:0 8px 32px #0000001a;animation:slideUp .3s ease}.adventure-world__story-card--celebration{border:3px solid var(--color-success)}.adventure-world__story-card--world-complete{border:3px solid var(--color-warning);background:linear-gradient(135deg,var(--color-bg-primary) 0%,rgba(255,215,0,.1) 100%)}.adventure-world__story-emoji{font-size:5rem;margin-bottom:var(--space-4);animation:bounce 1s ease infinite}.adventure-world__celebration-confetti{font-size:3rem;margin-bottom:var(--space-4);animation:confetti .5s ease}.adventure-world__story-title{font-size:var(--text-2xl);font-weight:700;color:var(--world-color, var(--color-primary));margin-bottom:var(--space-4)}.adventure-world__story-text{font-size:var(--text-lg);color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--space-6)}.adventure-world__story-btn{background:var(--world-color, var(--color-primary))!important;min-width:200px}.adventure-world__rewards{display:flex;justify-content:center;gap:var(--space-4);margin-bottom:var(--space-6)}.adventure-world__rewards--big .adventure-world__reward{font-size:var(--text-xl);padding:var(--space-3) var(--space-6)}.adventure-world__reward{padding:var(--space-2) var(--space-4);background:var(--color-bg-secondary);border-radius:var(--radius-md);font-weight:700;color:var(--world-color, var(--color-primary))}.adventure-world__play{flex:1;display:flex;flex-direction:column;padding:var(--space-4);gap:var(--space-4)}.adventure-world__play-progress{text-align:center}.adventure-world__play-progress-bar{height:12px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-2)}.adventure-world__play-progress-fill{height:100%;background:var(--world-color, var(--color-primary));border-radius:var(--radius-full);transition:width .3s ease}.adventure-world__play-progress-text{font-size:var(--text-sm);color:var(--color-text-secondary)}.adventure-world__question-area{flex:1;display:flex;align-items:center;justify-content:center}.adventure-world__question-card{width:100%;max-width:500px;padding:var(--space-6);background:var(--color-bg-primary);border-radius:var(--radius-xl);text-align:center;box-shadow:var(--shadow-md)}.adventure-world__question-hint{font-size:var(--text-lg);color:var(--color-text-primary);margin-bottom:var(--space-2)}.adventure-world__question-subject{font-size:var(--text-sm);color:var(--world-color, var(--color-primary));font-weight:600;margin-bottom:var(--space-4)}.adventure-world__question-demo{padding:var(--space-4);background:var(--color-bg-secondary);border-radius:var(--radius-lg)}.adventure-world__question-demo-label{font-size:var(--text-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-3)}.adventure-world__question-demo-btns{display:flex;gap:var(--space-3);justify-content:center}.adventure-world__demo-btn{padding:var(--space-3) var(--space-6);border:none;border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:transform .2s}.adventure-world__demo-btn:hover{transform:scale(1.05)}.adventure-world__demo-btn--correct{background:var(--color-success);color:#fff}.adventure-world__demo-btn--wrong{background:var(--color-error);color:#fff}.adventure-world__stats{display:flex;justify-content:center;gap:var(--space-6)}.adventure-world__stat{text-align:center}.adventure-world__stat-label{display:block;font-size:var(--text-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.adventure-world__stat-value{display:block;font-size:var(--text-2xl);font-weight:700;color:var(--world-color, var(--color-primary))}.adventure-world__complete-btn{background:var(--color-success)!important;animation:pulse 1s ease infinite}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes confetti{0%{transform:scale(0) rotate(-10deg);opacity:0}50%{transform:scale(1.2) rotate(5deg)}to{transform:scale(1) rotate(0);opacity:1}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@media(max-width:640px){.adventure-world__header{flex-wrap:wrap}.adventure-world__story-card{padding:var(--space-6)}.adventure-world__story-emoji{font-size:4rem}.adventure-world__story-title{font-size:var(--text-xl)}}.sticker-book{min-height:100vh;padding:var(--space-4);background:linear-gradient(180deg,#fef3c7,#fde68a)}.sticker-book__header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}.sticker-book__back{padding:var(--space-2) var(--space-3);background:#fffc;border:none;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-sm);transition:background .2s}.sticker-book__back:hover{background:#fff}.sticker-book__title{flex:1;display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-2xl);font-weight:700;color:#92400e}.sticker-book__title-icon{font-size:1.5em}.sticker-book__stats{font-size:var(--text-sm);font-weight:600;color:#92400e}.sticker-book__progress{margin-bottom:var(--space-4)}.sticker-book__progress-bar{height:12px;background:#fff9;border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-1)}.sticker-book__progress-fill{height:100%;background:linear-gradient(90deg,#f59e0b,#eab308);border-radius:var(--radius-full);transition:width .5s ease}.sticker-book__progress-text{font-size:var(--text-xs);color:#92400e;text-align:center;display:block}.sticker-book__tabs{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-2);margin-bottom:var(--space-4);-webkit-overflow-scrolling:touch}.sticker-book__tab{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-3);background:#ffffffb3;border:2px solid transparent;border-radius:var(--radius-lg);cursor:pointer;transition:all .2s;min-width:80px}.sticker-book__tab:hover{background:#ffffffe6}.sticker-book__tab--active{background:#fff;border-color:var(--tab-color, var(--color-primary));box-shadow:0 4px 12px #0000001a}.sticker-book__tab-emoji{font-size:1.5rem}.sticker-book__tab-name{font-size:var(--text-xs);font-weight:600;color:var(--color-text-primary);white-space:nowrap}.sticker-book__tab-count{font-size:var(--text-xs);color:var(--color-text-tertiary)}.sticker-book__page{background:#fff;border-radius:var(--radius-xl);padding:var(--space-4);box-shadow:0 4px 16px #0000001a;margin-bottom:var(--space-4)}.sticker-book__page-header{text-align:center;margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:2px dashed var(--category-color, var(--color-border))}.sticker-book__page-emoji{font-size:3rem}.sticker-book__page-title{font-size:var(--text-xl);font-weight:700;color:var(--category-color, var(--color-text-primary));margin-top:var(--space-2)}.sticker-book__page-desc{font-size:var(--text-sm);color:var(--color-text-secondary);margin-top:var(--space-1)}.sticker-book__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:var(--space-3)}.sticker-book__sticker{aspect-ratio:1;display:flex;align-items:center;justify-content:center;position:relative;background:var(--color-bg-secondary);border:3px dashed var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s}.sticker-book__sticker--collected{background:#fff;border-style:solid;border-color:var(--rarity-color, var(--color-border));box-shadow:0 2px 8px #0000001a}.sticker-book__sticker--collected:hover{transform:scale(1.1);box-shadow:0 4px 16px #00000026}.sticker-book__sticker--locked{cursor:not-allowed;opacity:.6}.sticker-book__sticker-emoji{font-size:2rem}.sticker-book__sticker-rarity{position:absolute;bottom:4px;right:4px;width:8px;height:8px;background:var(--rarity-color, var(--color-border));border-radius:var(--radius-full)}.sticker-book__modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:1000;animation:fadeIn .2s ease}.sticker-book__modal{position:relative;width:100%;max-width:320px;background:#fff;border-radius:var(--radius-xl);padding:var(--space-6);text-align:center;animation:scaleIn .2s ease;border:4px solid var(--rarity-color, var(--color-border))}.sticker-book__modal-close{position:absolute;top:var(--space-3);right:var(--space-3);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);border:none;border-radius:var(--radius-full);font-size:var(--text-xl);color:var(--color-text-secondary);cursor:pointer}.sticker-book__modal-sticker{font-size:6rem;margin-bottom:var(--space-4);animation:bounce 1s ease infinite}.sticker-book__modal-title{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);margin-bottom:var(--space-2)}.sticker-book__modal-desc{font-size:var(--text-base);color:var(--color-text-secondary);margin-bottom:var(--space-4)}.sticker-book__modal-rarity{display:inline-block;padding:var(--space-1) var(--space-3);background:var(--rarity-color, var(--color-bg-secondary));color:#fff;border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:700;letter-spacing:.1em}.sticker-book__legend{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3);font-size:var(--text-xs);color:#92400e}.sticker-book__legend-title,.sticker-book__legend-item{font-weight:600}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media(max-width:640px){.sticker-book__header{flex-wrap:wrap}.sticker-book__title{order:2;width:100%;justify-content:center;font-size:var(--text-xl)}.sticker-book__grid{grid-template-columns:repeat(4,1fr)}}.surprise-box-page{min-height:100vh;background:linear-gradient(180deg,#8b5cf6,#ec4899,#f97316)}.surprise-box-page__header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-6);background:#ffffff26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.surprise-box-page__header h1{color:#fff;font-size:var(--text-2xl);font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.2);margin:0}.surprise-box-page__back{color:#fff;background:#fff3!important}.surprise-box-page__content{padding:var(--space-6);max-width:500px;margin:0 auto}.surprise-box-page__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;color:#fff;text-align:center;gap:var(--space-4)}.surprise-box-page__box-container{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);padding:var(--space-8) 0}.surprise-box-page__box{width:220px;height:220px;position:relative;cursor:default;perspective:1000px}.surprise-box-page__box--closed{cursor:pointer}.surprise-box-page__box-base{position:absolute;bottom:0;left:10px;right:10px;height:140px;background:linear-gradient(145deg,#f97316,#ea580c);border-radius:8px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #0000004d}.surprise-box-page__box-question{font-size:64px;color:#fff;text-shadow:0 4px 12px rgba(0,0,0,.2);animation:bounce-soft 1s ease-in-out infinite}.surprise-box-page__box-lid{position:absolute;top:20px;left:0;right:0;height:70px;background:linear-gradient(145deg,#fb923c,#f97316);border-radius:8px 8px 0 0;z-index:2;transition:transform .5s ease-out;transform-origin:bottom center}.surprise-box-page__box--closed:hover .surprise-box-page__box-lid{transform:rotateX(-15deg)}.surprise-box-page__box-ribbon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:30px;height:100%;background:#ec4899}.surprise-box-page__box-ribbon:before,.surprise-box-page__box-ribbon:after{content:"";position:absolute;top:-15px;width:30px;height:30px;background:#ec4899;border-radius:50%}.surprise-box-page__box-ribbon:before{left:-20px}.surprise-box-page__box-ribbon:after{right:-20px}.surprise-box-page__box-sparkles{position:absolute;top:-30px;right:-30px;bottom:-30px;left:-30px;pointer-events:none}.sparkle{position:absolute;font-size:24px;animation:sparkle 1.5s ease-in-out infinite}.sparkle:nth-child(1){top:0;left:20%;animation-delay:0s}.sparkle:nth-child(2){top:20%;right:0;animation-delay:.3s}.sparkle:nth-child(3){bottom:20%;left:0;animation-delay:.6s}.sparkle:nth-child(4){bottom:0;right:20%;animation-delay:.9s}@keyframes sparkle{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}@keyframes bounce-soft{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.surprise-box-page__box-opening{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.surprise-box-page__box-shake{font-size:120px;animation:box-shake .15s ease-in-out infinite}@keyframes box-shake{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-5px) rotate(-3deg)}75%{transform:translate(5px) rotate(3deg)}}.surprise-box-page__reward{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);animation:reveal .5s ease-out;position:relative}.surprise-box-page__reward-glow{position:absolute;width:150px;height:150px;border-radius:50%;opacity:.3;filter:blur(30px);animation:glow-pulse 2s ease-in-out infinite}@keyframes glow-pulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.2);opacity:.5}}.surprise-box-page__reward-icon{font-size:80px;z-index:1;animation:pop-in .3s ease-out}@keyframes pop-in{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes reveal{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.surprise-box-page__reward-rarity{font-size:var(--text-lg);font-weight:700;z-index:1}.surprise-box-page__reward-text{color:#fff;text-align:center;z-index:1}.surprise-box-page__reward-text .reward-type{font-size:var(--text-lg);opacity:.9}.surprise-box-page__reward-text .reward-name{font-size:var(--text-2xl);font-weight:700}.surprise-box-page__reward-text .reward-amount{font-size:var(--text-4xl);font-weight:800}.surprise-box-page__reward-message{color:#fff;font-size:var(--text-sm);opacity:.8;z-index:1}.surprise-box-page__already-opened{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);color:#fff}.already-opened-icon{font-size:80px;opacity:.7}.already-opened-text{font-size:var(--text-xl);font-weight:700}.already-opened-hint{font-size:var(--text-sm);opacity:.8}.surprise-box-page__action{text-align:center}.surprise-box-page__open-btn{font-size:var(--text-xl)!important;padding:var(--space-4) var(--space-10)!important;background:linear-gradient(135deg,#22c55e,#10b981)!important;border-radius:var(--radius-full)!important;box-shadow:0 6px 20px #10b98166;animation:pulse-button 2s ease-in-out infinite}.surprise-box-page__unavailable{color:#fff;text-align:center}.surprise-box-page__unavailable p{margin:0}.surprise-box-page__unavailable .hint{font-size:var(--text-sm);opacity:.8;margin-top:var(--space-1)}.surprise-box-page__history{margin-top:var(--space-8);background:#fffffff2;border-radius:var(--radius-xl);padding:var(--space-4)}.surprise-box-page__history h2{font-size:var(--text-lg);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-4) 0;text-align:center}.surprise-box-page__history-list{display:flex;flex-direction:column;gap:var(--space-2)}.surprise-box-page__history-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3);background:var(--color-bg-secondary);border-radius:var(--radius-lg);border-left:4px solid}.history-date{color:var(--color-text-secondary);font-size:var(--text-sm)}.history-reward{display:flex;align-items:center;gap:var(--space-2)}.history-emoji{font-size:var(--text-xl)}.history-text{color:var(--color-text-primary);font-weight:500}@media(max-width:480px){.surprise-box-page__box{width:180px;height:180px}.surprise-box-page__box-base{height:110px}.surprise-box-page__box-lid{height:55px}.surprise-box-page__box-question{font-size:48px}.surprise-box-page__reward-icon{font-size:60px}}.games-hub{min-height:100vh;background:linear-gradient(180deg,#8b5cf6,#ec4899)}.games-hub__header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-6);background:#ffffff26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.games-hub__header h1{color:#fff;font-size:var(--text-2xl);font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.2);margin:0}.games-hub__back{color:#fff;background:#fff3!important}.games-hub__content{padding:var(--space-6);max-width:800px;margin:0 auto}.games-hub__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;color:#fff;text-align:center;gap:var(--space-4)}.games-hub__locked-message{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-8);background:#fffffff2;border-radius:var(--radius-2xl);margin-top:var(--space-8)}.locked-icon{font-size:80px;margin-bottom:var(--space-4)}.games-hub__locked-message h2{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-2) 0}.games-hub__locked-message p{font-size:var(--text-lg);color:var(--color-text-secondary);margin:0 0 var(--space-6) 0}.locked-hint{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-bg-secondary);border-radius:var(--radius-lg);margin-bottom:var(--space-6);color:var(--color-text-secondary);font-size:var(--text-sm)}.hint-icon{font-size:var(--text-xl)}.games-hub__intro{text-align:center;margin-bottom:var(--space-6)}.games-hub__intro p{color:#fff;font-size:var(--text-lg);opacity:.9;margin:0}.games-hub__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4)}.games-hub__empty{text-align:center;color:#fff;padding:var(--space-8);opacity:.8}.game-card{background:#fff;border-radius:var(--radius-xl);padding:var(--space-4);cursor:pointer;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;gap:var(--space-3);box-shadow:0 4px 12px #0000001a;border-left:6px solid var(--theme-color, #8B5CF6)}.game-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000026}.game-card__emoji{font-size:48px;text-align:center}.game-card__info{flex:1}.game-card__name{font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-1) 0}.game-card__description{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.4}.game-card__meta{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}.game-card__difficulty{padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:600;text-transform:uppercase}.game-card__difficulty[data-difficulty=easy]{background:#dcfce7;color:#166534}.game-card__difficulty[data-difficulty=medium]{background:#fef3c7;color:#92400e}.game-card__difficulty[data-difficulty=hard]{background:#fee2e2;color:#991b1b}.game-card__high-score{font-size:var(--text-xs);color:var(--color-text-tertiary)}.game-card__rewards{display:flex;justify-content:center;gap:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--color-border)}.game-card__rewards .reward{font-size:var(--text-sm);font-weight:600;color:var(--theme-color, #8B5CF6)}@media(max-width:480px){.games-hub__grid{grid-template-columns:1fr}.game-card__emoji{font-size:36px}}.game-play{min-height:100vh;background:linear-gradient(180deg,var(--theme-color, #8B5CF6) 0%,#EC4899 100%)}.game-play__header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-6);background:#ffffff26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.game-play__header h1{color:#fff;font-size:var(--text-xl);font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.2);margin:0}.game-play__back{color:#fff;background:#fff3!important}.game-play__score{color:#fff;font-size:var(--text-lg);font-weight:700;background:#0003;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg)}.game-play__content{padding:var(--space-6);max-width:600px;margin:0 auto}.game-play__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;color:#fff;text-align:center;gap:var(--space-4)}.game-play__intro{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-8);background:#fffffff2;border-radius:var(--radius-2xl);margin-top:var(--space-6)}.intro-emoji{font-size:80px;margin-bottom:var(--space-4)}.game-play__intro h2{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-2) 0}.game-play__intro p{font-size:var(--text-lg);color:var(--color-text-secondary);margin:0 0 var(--space-4) 0}.intro-rewards{display:flex;flex-direction:column;gap:var(--space-1);color:var(--theme-color, #8B5CF6);font-weight:600;margin-bottom:var(--space-4)}.intro-high-score{color:var(--color-text-tertiary);font-size:var(--text-sm);margin-bottom:var(--space-6)}.game-play__start-btn{font-size:var(--text-xl)!important;padding:var(--space-4) var(--space-10)!important;background:linear-gradient(135deg,var(--theme-color, #8B5CF6),#EC4899)!important;border-radius:var(--radius-full)!important;animation:pulse-button 2s ease-in-out infinite}.game-play__game{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);padding:var(--space-6);background:#fffffff2;border-radius:var(--radius-2xl)}.game-progress{color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:500}.game-question{text-align:center}.question-prompt{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);margin-bottom:var(--space-4)}.question-display{font-size:40px;line-height:1.5;min-height:100px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--space-2)}.game-options{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3);width:100%;max-width:300px}.game-option{padding:var(--space-4);font-size:36px;background:var(--color-bg-secondary);border:3px solid var(--color-border);border-radius:var(--radius-xl);cursor:pointer;transition:all .2s}.game-option:hover:not(:disabled){border-color:var(--theme-color, #8B5CF6);transform:scale(1.05)}.game-option:disabled{cursor:default}.game-option.correct,.game-option.show-correct{background:#dcfce7;border-color:#22c55e;animation:bounce-correct .5s ease}.game-option.incorrect{background:#fee2e2;border-color:#ef4444;animation:shake .5s ease}@keyframes bounce-correct{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.game-feedback{font-size:var(--text-lg);font-weight:600;padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);animation:fade-in .3s ease}.game-feedback.correct{background:#dcfce7;color:#166534}.game-feedback.incorrect{background:#fee2e2;color:#991b1b}@keyframes fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.game-play__finished{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-8);background:#fffffff2;border-radius:var(--radius-2xl);margin-top:var(--space-6)}.finished-emoji{font-size:80px;margin-bottom:var(--space-4);animation:bounce-in .5s ease}@keyframes bounce-in{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.game-play__finished h2{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-6) 0}.finished-stats{display:flex;gap:var(--space-8);margin-bottom:var(--space-6)}.stat{display:flex;flex-direction:column;align-items:center}.stat-value{font-size:var(--text-3xl);font-weight:800;color:var(--theme-color, #8B5CF6)}.stat-label{font-size:var(--text-sm);color:var(--color-text-tertiary)}.finished-rewards{display:flex;gap:var(--space-4);margin-bottom:var(--space-4)}.reward-earned{padding:var(--space-2) var(--space-4);background:linear-gradient(135deg,var(--theme-color, #8B5CF6),#EC4899);color:#fff;font-weight:700;border-radius:var(--radius-full)}.finished-message{color:var(--color-text-secondary);margin-bottom:var(--space-6)}.finished-actions{display:flex;flex-direction:column;gap:var(--space-3);width:100%;max-width:250px}@media(max-width:480px){.intro-emoji,.finished-emoji{font-size:60px}.question-display{font-size:32px}.game-option{font-size:28px;padding:var(--space-3)}}@keyframes pulse-button{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.legal-page{min-height:100vh;background:var(--color-bg-primary)}.legal-page .legal-header{background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);padding:var(--space-8) var(--space-4)}.legal-page .legal-header .container{max-width:800px;margin:0 auto}.legal-page .legal-header h1{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-2)}.legal-page .legal-header .last-updated{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin:0}.legal-page .legal-nav{background:var(--color-bg-primary);border-bottom:1px solid var(--color-border);padding:var(--space-3) var(--space-4);position:sticky;top:0;z-index:10}.legal-page .legal-nav .container{max-width:800px;margin:0 auto;display:flex;gap:var(--space-4);overflow-x:auto}.legal-page .legal-nav a{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-decoration:none;white-space:nowrap;padding:var(--space-2) 0}.legal-page .legal-nav a:hover{color:var(--color-primary)}.legal-page .legal-nav a.active{color:var(--color-primary);font-weight:600}.legal-page .legal-content{max-width:800px;margin:0 auto;padding:var(--space-8) var(--space-4)}.legal-page .legal-content h2{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text-primary);margin:var(--space-8) 0 var(--space-4)}.legal-page .legal-content h2:first-child{margin-top:0}.legal-page .legal-content h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:var(--space-6) 0 var(--space-3)}.legal-page .legal-content p{font-size:var(--font-size-md);color:var(--color-text-secondary);line-height:1.7;margin:0 0 var(--space-4)}.legal-page .legal-content ul,.legal-page .legal-content ol{margin:0 0 var(--space-4);padding-left:var(--space-6)}.legal-page .legal-content li{font-size:var(--font-size-md);color:var(--color-text-secondary);line-height:1.7;margin-bottom:var(--space-2)}.legal-page .legal-content a{color:var(--color-primary);text-decoration:none}.legal-page .legal-content a:hover{text-decoration:underline}.legal-page .legal-content strong{color:var(--color-text-primary)}.legal-page .legal-content .highlight-box{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin:var(--space-4) 0}.legal-page .legal-content .highlight-box p:last-child{margin-bottom:0}.legal-page .legal-content .contact-info{background:var(--color-bg-tertiary);border-radius:var(--radius-md);padding:var(--space-4);margin:var(--space-4) 0}.legal-page .legal-content .contact-info p{margin:0 0 var(--space-2)}.legal-page .legal-content .contact-info p:last-child{margin-bottom:0}.legal-page .back-to-top{position:fixed;bottom:var(--space-6);right:var(--space-6);width:48px;height:48px;border-radius:50%;background:var(--color-primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transition:all .2s ease}.legal-page .back-to-top.visible{opacity:1;visibility:visible}.legal-page .back-to-top:hover{background:var(--color-primary-dark);transform:translateY(-2px)}.legal-page .toc{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-6)}.legal-page .toc h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-3);text-transform:uppercase;letter-spacing:.05em}.legal-page .toc ol{margin:0;padding-left:var(--space-5)}.legal-page .toc li{font-size:var(--font-size-sm);margin-bottom:var(--space-2)}.legal-page .toc a{color:var(--color-text-secondary)}.legal-page .toc a:hover{color:var(--color-primary)}@media(max-width:640px){.legal-page .legal-header{padding:var(--space-6) var(--space-4)}.legal-page .legal-header h1{font-size:var(--font-size-2xl)}.legal-page .legal-content{padding:var(--space-6) var(--space-4)}.legal-page .back-to-top{bottom:var(--space-4);right:var(--space-4)}}.landing-page{min-height:100vh;background:var(--color-bg-primary)}.landing-nav{position:fixed;top:0;left:0;right:0;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);z-index:100;padding:var(--space-3) var(--space-4)}.landing-nav .nav-container{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.landing-nav .nav-logo{height:32px}.landing-nav .nav-links{display:flex;align-items:center;gap:var(--space-6)}.landing-nav .nav-links a{color:var(--color-text-secondary);text-decoration:none;font-size:var(--text-sm);font-weight:500;transition:color var(--transition-fast)}.landing-nav .nav-links a:hover{color:var(--color-primary)}.landing-nav .nav-actions{display:flex;align-items:center;gap:var(--space-3)}.landing-nav .nav-mobile-toggle{display:none;background:none;border:none;cursor:pointer;padding:var(--space-2);color:var(--color-text-primary)}.hero-section{padding:120px var(--space-4) var(--space-12);background:linear-gradient(180deg,var(--color-bg-secondary) 0%,var(--color-bg-primary) 100%)}.hero-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);align-items:center}.hero-content h1{font-size:3.5rem;font-weight:800;line-height:1.1;color:var(--color-text-primary);margin:0 0 var(--space-4)}.hero-content h1 span{color:var(--color-highlight)}.hero-content p{font-size:var(--text-xl);color:var(--color-text-secondary);line-height:1.6;margin:0 0 var(--space-6)}.hero-ctas{display:flex;gap:var(--space-3);margin-bottom:var(--space-6)}.hero-ctas .btn-primary{padding:var(--space-4) var(--space-8);font-size:var(--text-lg)}.hero-badges{display:flex;flex-wrap:wrap;gap:var(--space-4)}.hero-badges .badge{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary)}.hero-badges .badge svg{color:var(--color-success)}.hero-image{position:relative}.hero-image .app-preview{width:100%;max-width:500px;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--color-border)}.value-props-section{padding:var(--space-12) var(--space-4);background:var(--color-bg-primary)}.section-container{max-width:1200px;margin:0 auto}.section-header{text-align:center;margin-bottom:var(--space-12)}.section-header h2{font-size:var(--text-3xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-3)}.section-header p{font-size:var(--text-lg);color:var(--color-text-secondary);margin:0}.value-props-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8)}.value-prop-card{text-align:center;padding:var(--space-6);background:var(--color-bg-secondary);border-radius:var(--radius-lg);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.value-prop-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.value-prop-icon{width:64px;height:64px;margin:0 auto var(--space-4);background:var(--color-highlight-light);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:2rem}.value-prop-card h3{font-size:var(--text-xl);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-3)}.value-prop-card p{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.6;margin:0}.how-it-works-section{padding:var(--space-12) var(--space-4);background:var(--color-bg-secondary)}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6);margin-bottom:var(--space-8)}.step-card{text-align:center;padding:var(--space-6);background:var(--color-bg-primary);border-radius:var(--radius-lg);position:relative}.step-number{width:48px;height:48px;margin:0 auto var(--space-4);background:var(--color-highlight);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);font-weight:700}.step-card h3{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-2)}.step-card p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.how-it-works-cta{text-align:center}.testimonials-section{padding:var(--space-12) var(--space-4);background:var(--color-bg-primary)}.testimonials-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6)}.testimonial-card{padding:var(--space-6);background:var(--color-bg-secondary);border-radius:var(--radius-lg);border-left:4px solid var(--color-highlight)}.testimonial-stars{display:flex;gap:2px;margin-bottom:var(--space-3);color:var(--color-accent)}.testimonial-card blockquote{font-size:var(--text-lg);color:var(--color-text-primary);line-height:1.6;margin:0 0 var(--space-4);font-style:italic}.testimonial-author{font-size:var(--text-sm);color:var(--color-text-secondary)}.testimonial-author strong{color:var(--color-text-primary)}.pricing-section{padding:var(--space-12) var(--space-4);background:var(--color-bg-secondary)}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);margin-bottom:var(--space-6)}.pricing-card{background:var(--color-bg-primary);border-radius:var(--radius-lg);padding:var(--space-6);border:2px solid var(--color-border);text-align:center;transition:transform var(--transition-normal),border-color var(--transition-normal)}.pricing-card:hover{transform:translateY(-4px)}.pricing-card.featured{border-color:var(--color-highlight);position:relative}.pricing-card.featured:before{content:"Most Popular";position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--color-highlight);color:#fff;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600}.pricing-card h3{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-2);text-transform:uppercase;letter-spacing:.05em}.pricing-price{margin-bottom:var(--space-4)}.pricing-price .amount{font-size:var(--text-3xl);font-weight:700;color:var(--color-text-primary)}.pricing-price .period{font-size:var(--text-sm);color:var(--color-text-tertiary)}.pricing-features{list-style:none;padding:0;margin:0 0 var(--space-6);text-align:left}.pricing-features li{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;font-size:var(--text-sm);color:var(--color-text-secondary)}.pricing-features li svg{color:var(--color-success);flex-shrink:0}.pricing-note{text-align:center;font-size:var(--text-sm);color:var(--color-text-tertiary)}.faq-section{padding:var(--space-12) var(--space-4);background:var(--color-bg-primary)}.faq-list{max-width:800px;margin:0 auto}.faq-item{border-bottom:1px solid var(--color-border)}.faq-question{width:100%;background:none;border:none;padding:var(--space-4) 0;display:flex;align-items:center;justify-content:space-between;cursor:pointer;text-align:left}.faq-question h3{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary);margin:0}.faq-question svg{color:var(--color-text-tertiary);transition:transform var(--transition-fast)}.faq-item.open .faq-question svg{transform:rotate(180deg)}.faq-answer{padding:0 0 var(--space-4);display:none}.faq-item.open .faq-answer{display:block}.faq-answer p{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.6;margin:0}.landing-footer{background:var(--color-primary);color:#fff;padding:var(--space-12) var(--space-4) var(--space-6)}.footer-container{max-width:1200px;margin:0 auto}.footer-grid{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:var(--space-8);margin-bottom:var(--space-8)}.footer-brand h4{font-size:var(--text-xl);font-weight:700;margin:0 0 var(--space-2)}.footer-brand p{font-size:var(--text-sm);color:#ffffffb3;margin:0}.footer-column h5{font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--space-3);color:#ffffff80}.footer-column ul{list-style:none;padding:0;margin:0}.footer-column li{margin-bottom:var(--space-2)}.footer-column a{color:#fffc;text-decoration:none;font-size:var(--text-sm);transition:color var(--transition-fast)}.footer-column a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:var(--space-6);display:flex;align-items:center;justify-content:space-between}.footer-copyright{font-size:var(--text-sm);color:#ffffff80}.footer-social{display:flex;gap:var(--space-4)}.footer-social a{color:#ffffffb3;transition:color var(--transition-fast)}.footer-social a:hover{color:#fff}@media(max-width:1024px){.hero-container{grid-template-columns:1fr;text-align:center}.hero-content h1{font-size:2.5rem}.hero-ctas,.hero-badges{justify-content:center}.hero-image{order:-1}.hero-image .app-preview{max-width:400px;margin:0 auto}.value-props-grid{grid-template-columns:1fr;gap:var(--space-4)}.steps-grid{grid-template-columns:repeat(2,1fr)}.testimonials-grid{grid-template-columns:1fr}.pricing-grid{grid-template-columns:1fr;max-width:400px;margin:0 auto var(--space-6)}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.landing-nav .nav-links{display:none}.landing-nav .nav-mobile-toggle{display:block}.hero-section{padding:100px var(--space-4) var(--space-8)}.hero-content h1{font-size:2rem}.hero-content p{font-size:var(--text-base)}.hero-ctas{flex-direction:column}.hero-ctas .btn{width:100%}.section-header h2{font-size:var(--text-2xl)}.steps-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;text-align:center}.footer-bottom{flex-direction:column;gap:var(--space-4);text-align:center}}.cta-section h2{font-size:var(--text-3xl);font-weight:700;margin:0 0 var(--space-3)}.marketing-page{min-height:100vh;background:var(--color-bg-primary)}.marketing-nav{position:fixed;top:0;left:0;right:0;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);z-index:100;padding:var(--space-3) var(--space-4)}.marketing-nav .nav-container{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.marketing-nav .nav-logo{height:32px}.marketing-nav .nav-links{display:flex;align-items:center;gap:var(--space-6)}.marketing-nav .nav-links a{color:var(--color-text-secondary);text-decoration:none;font-size:var(--text-sm);font-weight:500;transition:color var(--transition-fast)}.marketing-nav .nav-links a:hover,.marketing-nav .nav-links a.active{color:var(--color-primary)}.marketing-nav .nav-actions{display:flex;align-items:center;gap:var(--space-3)}.marketing-nav .nav-mobile-toggle{display:none;background:none;border:none;cursor:pointer;padding:var(--space-2);color:var(--color-text-primary)}.page-hero{padding:120px var(--space-4) var(--space-8);background:linear-gradient(180deg,var(--color-bg-secondary) 0%,var(--color-bg-primary) 100%);text-align:center}.page-hero .hero-container{max-width:800px;margin:0 auto}.page-hero h1{font-size:var(--text-3xl);font-weight:800;color:var(--color-text-primary);margin:0 0 var(--space-4)}.page-hero h1 span{color:var(--color-highlight)}.page-hero p{font-size:var(--text-xl);color:var(--color-text-secondary);margin:0;line-height:1.6}.marketing-section{padding:var(--space-12) var(--space-4)}.marketing-section.alt-bg{background:var(--color-bg-secondary)}.marketing-section .section-container{max-width:1200px;margin:0 auto}.marketing-section .section-header{text-align:center;margin-bottom:var(--space-8)}.marketing-section .section-header h2{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-2)}.marketing-section .section-header p{font-size:var(--text-lg);color:var(--color-text-secondary);margin:0}.marketing-footer{background:var(--color-primary);color:#fff;padding:var(--space-12) var(--space-4) var(--space-6)}.marketing-footer .footer-container{max-width:1200px;margin:0 auto}.marketing-footer .footer-grid{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:var(--space-8);margin-bottom:var(--space-8)}.marketing-footer .footer-brand h4{font-size:var(--text-xl);font-weight:700;margin:0 0 var(--space-2)}.marketing-footer .footer-brand p{font-size:var(--text-sm);color:#ffffffb3;margin:0}.marketing-footer .footer-column h5{font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--space-3);color:#ffffff80}.marketing-footer .footer-column ul{list-style:none;padding:0;margin:0}.marketing-footer .footer-column li{margin-bottom:var(--space-2)}.marketing-footer .footer-column a{color:#fffc;text-decoration:none;font-size:var(--text-sm);transition:color var(--transition-fast)}.marketing-footer .footer-column a:hover{color:#fff}.marketing-footer .footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:var(--space-6);display:flex;align-items:center;justify-content:space-between}.marketing-footer .footer-copyright{font-size:var(--text-sm);color:#ffffff80}.marketing-footer .footer-social{display:flex;gap:var(--space-4)}.marketing-footer .footer-social a{color:#ffffffb3;transition:color var(--transition-fast)}.marketing-footer .footer-social a:hover{color:#fff}.cta-section{padding:var(--space-12) var(--space-4);background:linear-gradient(135deg,var(--color-highlight) 0%,var(--color-primary) 100%);text-align:center;color:#fff}.cta-section h2{font-size:var(--text-2xl);font-weight:700;margin:0 0 var(--space-3)}.cta-section p{font-size:var(--text-lg);opacity:.9;margin:0 0 var(--space-6)}.cta-section .btn-white{background:#fff;color:var(--color-primary);padding:var(--space-4) var(--space-8);font-size:var(--text-lg);font-weight:600;border-radius:var(--radius-md);border:none;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.cta-section .btn-white:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}@media(max-width:1024px){.marketing-footer .footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.marketing-nav .nav-links{display:none}.marketing-nav .nav-mobile-toggle{display:block}.page-hero{padding:100px var(--space-4) var(--space-6)}.page-hero h1{font-size:var(--text-2xl)}.marketing-section{padding:var(--space-8) var(--space-4)}.marketing-footer .footer-grid{grid-template-columns:1fr;text-align:center}.marketing-footer .footer-bottom{flex-direction:column;gap:var(--space-4);text-align:center}}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.feature-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.feature-icon{width:48px;height:48px;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-highlight) 0%,var(--color-primary) 100%);display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:var(--space-4)}.feature-card h3{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-2)}.feature-card p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.6}.content-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6)}.content-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-6);text-align:center;box-shadow:var(--shadow-sm)}.content-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;margin:0 auto var(--space-4)}.content-card h3{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-2)}.content-card p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.safety-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6)}.safety-card{display:flex;align-items:flex-start;gap:var(--space-4);background:#fff;border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.safety-icon{width:48px;height:48px;min-width:48px;border-radius:var(--radius-md);background:var(--color-success-bg);display:flex;align-items:center;justify-content:center;color:var(--color-success)}.safety-content h3{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-1)}.safety-content p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.6}.comparison-table-wrapper{overflow-x:auto;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.comparison-table{width:100%;border-collapse:collapse;min-width:500px}.comparison-table th,.comparison-table td{padding:var(--space-4) var(--space-6);text-align:left;border-bottom:1px solid var(--color-border)}.comparison-table th{background:var(--color-bg-secondary);font-weight:600;color:var(--color-text-primary)}.comparison-table th:nth-child(2),.comparison-table td:nth-child(2){text-align:center;background:#6366f10d}.comparison-table th:nth-child(3),.comparison-table td:nth-child(3){text-align:center;color:var(--color-text-secondary)}.comparison-table tbody tr:last-child td{border-bottom:none}.comparison-table .check{color:var(--color-success)}@media(max-width:1024px){.features-grid,.content-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.features-grid,.content-grid,.safety-grid{grid-template-columns:1fr}}.billing-toggle{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin-top:var(--space-6)}.billing-toggle>span{font-size:var(--text-sm);color:var(--color-text-secondary);transition:color var(--transition-fast)}.billing-toggle>span.active{color:var(--color-text-primary);font-weight:600}.toggle-switch{width:48px;height:24px;background:var(--color-border);border-radius:12px;border:none;cursor:pointer;position:relative;transition:background var(--transition-fast)}.toggle-switch.active{background:var(--color-highlight)}.toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform var(--transition-fast);box-shadow:var(--shadow-sm)}.toggle-switch.active .toggle-thumb{transform:translate(24px)}.save-badge{background:var(--color-success-bg);color:var(--color-success);font-size:var(--text-xs);font-weight:600;padding:2px 8px;border-radius:var(--radius-full);margin-left:var(--space-2)}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);max-width:1000px;margin:0 auto}.plan-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-8);text-align:center;box-shadow:var(--shadow-sm);border:2px solid transparent;position:relative;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.plan-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.plan-card.popular{border-color:var(--color-highlight);box-shadow:var(--shadow-md)}.popular-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--color-highlight);color:#fff;font-size:var(--text-xs);font-weight:600;padding:var(--space-1) var(--space-4);border-radius:var(--radius-full);white-space:nowrap}.plan-card h3{font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-4)}.plan-price{display:flex;align-items:flex-start;justify-content:center;gap:2px;margin-bottom:var(--space-2)}.plan-price .currency{font-size:var(--text-lg);font-weight:600;color:var(--color-text-secondary);margin-top:4px}.plan-price .amount{font-size:var(--text-4xl);font-weight:800;color:var(--color-text-primary);line-height:1}.plan-price .period{font-size:var(--text-sm);color:var(--color-text-secondary);align-self:flex-end;margin-bottom:4px}.annual-note{font-size:var(--text-xs);color:var(--color-text-secondary);margin:0 0 var(--space-4)}.plan-description{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0 0 var(--space-6)}.plan-cta{width:100%;padding:var(--space-3) var(--space-6);font-size:var(--text-base);font-weight:600;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast)}.plan-cta.primary{background:var(--color-primary);color:#fff}.plan-cta.primary:hover{background:var(--color-primary-dark)}.plan-cta.secondary{background:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border)}.plan-cta.secondary:hover{background:var(--color-border)}.pricing-comparison-table{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--radius-lg);overflow:hidden}.pricing-comparison-table th,.pricing-comparison-table td{padding:var(--space-4) var(--space-6);text-align:center;border-bottom:1px solid var(--color-border)}.pricing-comparison-table th:first-child,.pricing-comparison-table td:first-child{text-align:left}.pricing-comparison-table th{background:var(--color-bg-secondary);font-weight:600;color:var(--color-text-primary)}.pricing-comparison-table .highlight-col{background:#6366f10d}.pricing-comparison-table th.highlight-col{background:#6366f11a}.pricing-comparison-table tbody tr:last-child td{border-bottom:none}.check-icon{color:var(--color-success)}.x-icon{color:var(--color-text-disabled)}.feature-tooltip{display:inline-flex;align-items:center;margin-left:var(--space-1);color:var(--color-text-secondary);cursor:help}.pricing-faq{max-width:800px;margin:0 auto}.faq-item{background:#fff;border-radius:var(--radius-md);margin-bottom:var(--space-3);overflow:hidden;box-shadow:var(--shadow-sm)}.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);background:none;border:none;cursor:pointer;font-size:var(--text-base);font-weight:500;color:var(--color-text-primary);text-align:left}.faq-question:hover{background:var(--color-bg-secondary)}.faq-question svg{color:var(--color-text-secondary);flex-shrink:0;margin-left:var(--space-4)}.faq-answer{padding:0 var(--space-5) var(--space-4)}.faq-answer p{margin:0;color:var(--color-text-secondary);line-height:1.6}@media(max-width:1024px){.plans-grid{grid-template-columns:1fr;max-width:400px}.plan-card.popular{order:-1}}@media(max-width:768px){.pricing-comparison-table{font-size:var(--text-sm)}.pricing-comparison-table th,.pricing-comparison-table td{padding:var(--space-3) var(--space-2)}}.story-content{display:grid;grid-template-columns:1fr 400px;gap:var(--space-12);align-items:start}.story-text h2{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-6)}.story-text p{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.8;margin:0 0 var(--space-4)}.story-signature{font-weight:600;color:var(--color-text-primary);margin-top:var(--space-6)}.story-image{border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg-secondary);aspect-ratio:4/5}.story-image img{width:100%;height:100%;object-fit:cover}.mission-content{max-width:800px;margin:0 auto;text-align:center}.mission-content h2{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-6)}.mission-statement{font-size:var(--text-xl);color:var(--color-text-secondary);line-height:1.8;margin:0}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6)}.value-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-6);text-align:center;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.value-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.value-icon{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--color-highlight) 0%,var(--color-primary) 100%);display:flex;align-items:center;justify-content:center;color:#fff;margin:0 auto var(--space-4)}.value-card h3{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-2)}.value-card p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.6}.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.contact-card{display:flex;align-items:flex-start;gap:var(--space-3);background:#fff;border-radius:var(--radius-md);padding:var(--space-5);text-decoration:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast);box-shadow:var(--shadow-sm)}.contact-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.contact-icon{width:40px;height:40px;min-width:40px;border-radius:var(--radius-md);background:var(--color-highlight);display:flex;align-items:center;justify-content:center;color:#fff}.contact-info h4{font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-1)}.contact-email{font-size:var(--text-sm);color:var(--color-highlight);margin:0 0 var(--space-1)}.contact-description{font-size:var(--text-xs);color:var(--color-text-secondary);margin:0}@media(max-width:1024px){.story-content{grid-template-columns:1fr;gap:var(--space-8)}.story-image{max-width:400px;margin:0 auto}.values-grid,.contact-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.values-grid,.contact-grid{grid-template-columns:1fr}.mission-statement{font-size:var(--text-lg)}}.contact-options-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-4)}.contact-option-card{display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;border-radius:var(--radius-lg);padding:var(--space-6);text-decoration:none;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.contact-option-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.contact-option-icon{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--color-highlight) 0%,var(--color-primary) 100%);display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:var(--space-4)}.contact-option-content h3{font-size:var(--text-base);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-2)}.contact-option-email{font-size:var(--text-sm);color:var(--color-highlight);margin:0 0 var(--space-1);font-weight:500}.contact-option-description{font-size:var(--text-xs);color:var(--color-text-secondary);margin:0}.contact-option-response{display:flex;align-items:center;justify-content:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-success);margin:var(--space-2) 0 0}.contact-form-wrapper{max-width:600px;margin:0 auto}.contact-form{background:#fff;border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-sm)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.form-group label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--color-text-primary);margin-bottom:var(--space-2)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-base);border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-highlight);box-shadow:0 0 0 3px #6366f11a}.form-group textarea{resize:vertical;min-height:120px}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;background-size:16px;padding-right:var(--space-10)}.submit-btn{width:100%;padding:var(--space-4);font-size:var(--text-base);font-weight:600;color:#fff;background:var(--color-primary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.submit-btn:hover:not(:disabled){background:var(--color-primary-dark)}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.form-error-banner{background:var(--color-error-bg, #fef2f2);border:1px solid var(--color-error, #ef4444);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);color:var(--color-error, #ef4444);font-size:var(--text-sm)}.form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea{border-color:var(--color-error, #ef4444)}.form-group.has-error input:focus,.form-group.has-error select:focus,.form-group.has-error textarea:focus{box-shadow:0 0 0 3px #ef44441a}.field-error{display:block;font-size:var(--text-xs);color:var(--color-error, #ef4444);margin-top:var(--space-1)}.success-message{max-width:500px;margin:0 auto;text-align:center;padding:var(--space-8)}.success-icon{width:80px;height:80px;border-radius:50%;background:var(--color-success-bg);display:flex;align-items:center;justify-content:center;color:var(--color-success);margin:0 auto var(--space-6)}.success-message h2{font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-3)}.success-message p{font-size:var(--text-base);color:var(--color-text-secondary);margin:0 0 var(--space-6);line-height:1.6}.btn-primary{display:inline-block;padding:var(--space-3) var(--space-6);font-size:var(--text-base);font-weight:600;color:#fff;background:var(--color-primary);border-radius:var(--radius-md);text-decoration:none;transition:background var(--transition-fast)}.btn-primary:hover{background:var(--color-primary-dark)}.faq-prompt{max-width:600px;margin:0 auto;text-align:center;background:#fff;border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-sm)}.faq-prompt h3{font-size:var(--text-xl);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-2)}.faq-prompt p{font-size:var(--text-base);color:var(--color-text-secondary);margin:0 0 var(--space-6)}.btn-secondary{display:inline-block;padding:var(--space-3) var(--space-6);font-size:var(--text-base);font-weight:600;color:var(--color-primary);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);text-decoration:none;transition:background var(--transition-fast)}.btn-secondary:hover{background:var(--color-border)}@media(max-width:1024px){.contact-options-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.contact-options-grid,.form-row{grid-template-columns:1fr}.contact-form{padding:var(--space-6)}}.help-page{min-height:100vh;background:var(--color-bg-primary);display:flex;flex-direction:column}.help-header{background:#fff;border-bottom:1px solid var(--color-border);padding:var(--space-3) var(--space-4)}.help-header-container{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:var(--space-6)}.help-logo img{height:28px}.help-search{flex:1;max-width:500px;display:flex;align-items:center;gap:var(--space-2);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.help-search svg{color:var(--color-text-secondary);flex-shrink:0}.help-search input{flex:1;border:none;background:none;font-size:var(--text-sm);color:var(--color-text-primary)}.help-search input:focus{outline:none}.help-search input::placeholder{color:var(--color-text-secondary)}.help-contact-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-primary);color:#fff;font-size:var(--text-sm);font-weight:500;border-radius:var(--radius-md);text-decoration:none;transition:background var(--transition-fast)}.help-contact-btn:hover{background:var(--color-primary-dark)}.help-nav{background:#fff;border-bottom:1px solid var(--color-border)}.help-nav-container{max-width:1200px;margin:0 auto;display:flex;gap:var(--space-1);padding:0 var(--space-4)}.help-nav a{display:block;padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);text-decoration:none;border-bottom:2px solid transparent;transition:color var(--transition-fast),border-color var(--transition-fast)}.help-nav a:hover{color:var(--color-text-primary)}.help-nav a.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.help-page-header{background:linear-gradient(180deg,var(--color-bg-secondary) 0%,var(--color-bg-primary) 100%);padding:var(--space-8) var(--space-4)}.help-page-header-container{max-width:1200px;margin:0 auto}.help-breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);margin-bottom:var(--space-4)}.help-breadcrumb a{color:var(--color-text-secondary);text-decoration:none}.help-breadcrumb a:hover{color:var(--color-primary)}.help-breadcrumb svg{color:var(--color-text-disabled)}.help-breadcrumb span{color:var(--color-text-primary);font-weight:500}.help-page-header h1{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-2)}.help-page-header p{font-size:var(--text-lg);color:var(--color-text-secondary);margin:0}.help-content{flex:1;padding:var(--space-8) var(--space-4)}.help-content-container{max-width:1200px;margin:0 auto}.help-footer{background:var(--color-bg-secondary);border-top:1px solid var(--color-border);padding:var(--space-8) var(--space-4)}.help-footer-container{max-width:1200px;margin:0 auto;text-align:center}.help-footer-cta{margin-bottom:var(--space-6)}.help-footer-cta h3{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-1)}.help-footer-cta p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0 0 var(--space-4)}.help-footer-btn{display:inline-block;padding:var(--space-3) var(--space-6);background:var(--color-primary);color:#fff;font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-md);text-decoration:none;transition:background var(--transition-fast)}.help-footer-btn:hover{background:var(--color-primary-dark)}.help-footer-links{display:flex;justify-content:center;gap:var(--space-6);margin-bottom:var(--space-4)}.help-footer-links a{font-size:var(--text-sm);color:var(--color-text-secondary);text-decoration:none}.help-footer-links a:hover{color:var(--color-primary)}.help-footer-copyright{font-size:var(--text-xs);color:var(--color-text-disabled);margin:0}.help-categories{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.help-category-card{background:#fff;border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);text-decoration:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.help-category-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.help-category-icon{width:48px;height:48px;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-highlight) 0%,var(--color-primary) 100%);display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:var(--space-4)}.help-category-card h3{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--space-2)}.help-category-card p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0 0 var(--space-4);line-height:1.5}.help-category-link{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:500;color:var(--color-primary)}.help-article-list{list-style:none;padding:0;margin:0}.help-article-item{border-bottom:1px solid var(--color-border)}.help-article-item:last-child{border-bottom:none}.help-article-link{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0;text-decoration:none;color:var(--color-text-primary);transition:color var(--transition-fast)}.help-article-link:hover{color:var(--color-primary)}.help-article-link svg{color:var(--color-text-secondary)}.help-guide{display:grid;grid-template-columns:250px 1fr;gap:var(--space-8)}.help-guide-nav{position:sticky;top:var(--space-4);align-self:start}.help-guide-nav h4{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin:0 0 var(--space-3)}.help-guide-nav ul{list-style:none;padding:0;margin:0}.help-guide-nav li{margin-bottom:var(--space-1)}.help-guide-nav a{display:block;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--color-text-secondary);text-decoration:none;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.help-guide-nav a:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.help-guide-nav a.active{background:var(--color-highlight);color:#fff}.help-guide-content{background:#fff;border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-sm)}.help-guide-content h2{font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-4);padding-top:var(--space-6)}.help-guide-content h2:first-child{padding-top:0}.help-guide-content h3{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary);margin:var(--space-6) 0 var(--space-3)}.help-guide-content p{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.7;margin:0 0 var(--space-4)}.help-guide-content ul,.help-guide-content ol{margin:0 0 var(--space-4);padding-left:var(--space-6)}.help-guide-content li{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.7;margin-bottom:var(--space-2)}.help-guide-content .tip{background:var(--color-success-bg);border-left:4px solid var(--color-success);padding:var(--space-4);border-radius:0 var(--radius-md) var(--radius-md) 0;margin:var(--space-4) 0}.help-guide-content .tip p{margin:0;color:var(--color-text-primary)}.help-guide-content .warning{background:var(--color-warning-bg);border-left:4px solid var(--color-warning);padding:var(--space-4);border-radius:0 var(--radius-md) var(--radius-md) 0;margin:var(--space-4) 0}.help-guide-content .warning p{margin:0;color:var(--color-text-primary)}.help-faq-list{max-width:800px}.help-faq-category{margin-bottom:var(--space-8)}.help-faq-category h2{font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-4)}.help-faq-item{background:#fff;border-radius:var(--radius-md);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm);overflow:hidden}.help-faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);background:none;border:none;cursor:pointer;font-size:var(--text-base);font-weight:500;color:var(--color-text-primary);text-align:left;transition:background var(--transition-fast)}.help-faq-question:hover{background:var(--color-bg-secondary)}.help-faq-question svg{color:var(--color-text-secondary);flex-shrink:0;margin-left:var(--space-4);transition:transform var(--transition-fast)}.help-faq-item.open .help-faq-question svg{transform:rotate(180deg)}.help-faq-answer{padding:0 var(--space-5) var(--space-4)}.help-faq-answer p{margin:0;font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.7}.help-popular{margin-top:var(--space-8)}.help-popular h2{font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-4)}.help-popular-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.help-popular-card{display:flex;align-items:center;gap:var(--space-3);background:#fff;border-radius:var(--radius-md);padding:var(--space-4);text-decoration:none;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.help-popular-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.help-popular-icon{width:40px;height:40px;min-width:40px;border-radius:var(--radius-md);background:var(--color-bg-secondary);display:flex;align-items:center;justify-content:center;color:var(--color-primary)}.help-popular-card h4{font-size:var(--text-sm);font-weight:500;color:var(--color-text-primary);margin:0}@media(max-width:1024px){.help-categories{grid-template-columns:repeat(2,1fr)}.help-guide{grid-template-columns:1fr}.help-guide-nav{position:static;display:flex;flex-wrap:wrap;gap:var(--space-2)}.help-guide-nav h4{width:100%}.help-guide-nav ul{display:flex;flex-wrap:wrap;gap:var(--space-2)}.help-guide-nav li{margin:0}}@media(max-width:768px){.help-header-container{flex-wrap:wrap;gap:var(--space-3)}.help-search{order:3;max-width:none;width:100%}.help-contact-btn span{display:none}.help-nav-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.help-nav a{white-space:nowrap}.help-categories,.help-popular-grid{grid-template-columns:1fr}.help-footer-links{flex-wrap:wrap;gap:var(--space-3)}.help-guide-content{padding:var(--space-5)}}:root{--color-primary: #1E293B;--color-primary-dark: #0F172A;--color-secondary: #334155;--color-tertiary: #475569;--color-highlight: #6366F1;--color-highlight-light: #E0E7FF;--color-accent: #F59E0B;--color-accent-light: #FEF3C7;--color-success: #10B981;--color-success-dark: #059669;--color-success-light: #D1FAE5;--color-warning: #F59E0B;--color-warning-light: #FEF3C7;--color-error: #EF4444;--color-error-light: #FEE2E2;--color-bg-primary: #FFFFFF;--color-bg-secondary: #F8FAFC;--color-bg-tertiary: #F1F5F9;--color-text-primary: #1E293B;--color-text-secondary: #475569;--color-text-tertiary: #94A3B8;--color-border: #E2E8F0;--color-math: #2563EB;--color-ela: #059669;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 6px rgba(0,0,0,.1);--shadow-lg: 0 10px 15px rgba(0,0,0,.1);--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}[data-age-group=young]{--text-base: 1.125rem;--text-lg: 1.25rem;--space-4: 1.25rem;--radius-md: .75rem}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{background:none;border:none;cursor:pointer}#root{isolation:isolate;min-height:100vh}body{font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text-primary);background-color:var(--color-bg-secondary)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;color:var(--color-text-primary)}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}h5{font-size:var(--text-base)}h6{font-size:var(--text-sm)}p{color:var(--color-text-secondary)}a{color:var(--color-highlight);transition:color var(--transition-fast)}a:hover{color:var(--color-primary)}:focus-visible{outline:2px solid var(--color-highlight);outline-offset:2px}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-4)}.container-sm{max-width:640px}.container-md{max-width:768px}.container-lg{max-width:1024px}.page{min-height:100vh;display:flex;flex-direction:column}.page-content{flex:1;padding:var(--space-6) 0}.card{background:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.card-header{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-size:var(--text-base);font-weight:500;line-height:1;border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;white-space:nowrap;text-decoration:none;min-height:44px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-dark)}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-secondary{background-color:var(--color-secondary);color:#fff}.btn-secondary:hover:not(:disabled){background-color:var(--color-primary)}.btn-outline{background-color:transparent;border:2px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover:not(:disabled){background-color:var(--color-primary);color:#fff}.btn-ghost{background-color:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background-color:var(--color-bg-tertiary);color:var(--color-text-primary)}.btn-danger{background-color:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--color-error-dark, #c53030)}.btn-danger:active:not(:disabled){transform:scale(.98)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);min-height:36px}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-lg);min-height:52px}.btn-block{width:100%}.btn-icon{padding:var(--space-3);min-width:44px}[data-age-group=young] .btn{min-height:48px;padding:var(--space-4) var(--space-6)}[data-age-group=young] .btn-lg{min-height:56px}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--color-text-primary);margin-bottom:var(--space-2)}.form-input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-base);color:var(--color-text-primary);background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);min-height:44px}.form-input::placeholder{color:var(--color-text-tertiary)}.form-input:hover{border-color:var(--color-secondary)}.form-input:focus{outline:none;border-color:var(--color-highlight);box-shadow:0 0 0 3px var(--color-highlight-light)}.form-input:disabled{background-color:var(--color-bg-tertiary);cursor:not-allowed}.form-input.error{border-color:var(--color-error)}.form-input.error:focus{box-shadow:0 0 0 3px var(--color-error-light)}.form-error{font-size:var(--text-sm);color:var(--color-error);margin-top:var(--space-1)}.form-input.success{border-color:var(--color-success)}.form-input.success:focus{box-shadow:0 0 0 3px var(--color-success-light)}.form-textarea{min-height:100px;resize:vertical}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;background-size:16px;padding-right:var(--space-8)}.form-checkbox,.form-radio{width:20px;height:20px;accent-color:var(--color-primary);cursor:pointer}.form-checkbox-label,.form-radio-label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--text-base)}.form-helper{font-size:var(--text-sm);color:var(--color-text-tertiary);margin-top:var(--space-1)}.form-actions{display:flex;gap:var(--space-3);margin-top:var(--space-6)}.form-actions.stacked{flex-direction:column}[data-age-group=young] .form-input{min-height:48px;font-size:var(--text-lg)}.card{background:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow:hidden}.card-body{padding:var(--space-6)}.card-header{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border);background-color:var(--color-bg-secondary)}.card-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);background-color:var(--color-bg-secondary)}.card-title{font-size:var(--text-lg);font-weight:600;color:var(--color-text-primary);margin:0}.card-subtitle{font-size:var(--text-sm);color:var(--color-text-tertiary);margin-top:var(--space-1)}.card-clickable{cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.card-clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.card-clickable:active{transform:translateY(0)}.card-compact .card-body{padding:var(--space-4)}.card-compact .card-header,.card-compact .card-footer{padding:var(--space-3) var(--space-4)}.card-feature{text-align:center}.card-feature .card-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto var(--space-4);border-radius:var(--radius-full);background-color:var(--color-highlight-light);color:var(--color-highlight)}.card-math{border-left:4px solid var(--color-math)}.card-ela{border-left:4px solid var(--color-ela)}.card-auth{max-width:420px;margin:var(--space-8) auto}.card-auth .card-body{padding:var(--space-8)}.card-auth .card-header{text-align:center;padding:var(--space-6);background-color:transparent;border-bottom:none}.card-auth .card-logo{max-width:180px;margin:0 auto var(--space-4)}
