@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";:root{--terra-green:#22c55e;--terra-green-light:#86efac;--terra-blue:#3b82f6;--terra-purple:#8b5cf6;--terra-orange:#f97316;--terra-pink:#ec4899;--terra-yellow:#eab308;--terra-red:#ef4444;--terra-cyan:#06b6d4;--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--bg-card:#1e293b;--bg-card-hover:#273548;--border-color:#334155;--border-glow:#22c55e4d;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#64748b;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 24px #00000080;--shadow-glow:0 0 20px #22c55e26;--font-display:"Fredoka", sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.4s ease;font-family:var(--font-body);color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.5}[data-tier=explorer]{--tier-primary:#f97316;--tier-secondary:#fb923c;--tier-accent:#fbbf24;--tier-bg-accent:#f973161a;--tier-glow:#f973164d;--tier-font-size-base:20px;--tier-radius:20px;--tier-spacing:16px;font-family:var(--font-display);font-size:var(--tier-font-size-base)}[data-tier=architect]{--tier-primary:#3b82f6;--tier-secondary:#60a5fa;--tier-accent:#06b6d4;--tier-bg-accent:#3b82f61a;--tier-glow:#3b82f64d;--tier-font-size-base:17px;--tier-radius:14px;--tier-spacing:14px;font-family:var(--font-body);font-size:var(--tier-font-size-base)}[data-tier=engineer]{--tier-primary:#8b5cf6;--tier-secondary:#a78bfa;--tier-accent:#c084fc;--tier-bg-accent:#8b5cf61a;--tier-glow:#8b5cf64d;--tier-font-size-base:15px;--tier-radius:10px;--tier-spacing:12px;font-family:var(--font-body);font-size:var(--tier-font-size-base)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-primary);min-height:100vh;margin:0}#root{min-height:100vh}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{color:var(--text-primary);background:#22c55e4d}:focus-visible{outline:2px solid var(--terra-green);outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes glow{0%,to{box-shadow:0 0 8px var(--tier-glow,var(--border-glow))}50%{box-shadow:0 0 20px var(--tier-glow,var(--border-glow))}}.loading-screen{background:var(--bg-primary);flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;display:flex}.loading-globe{font-size:48px;animation:2s ease-in-out infinite float}.loading-dots{gap:8px;display:flex}.loading-dots span{background:var(--terra-green);border-radius:50%;width:10px;height:10px;animation:1.4s ease-in-out infinite both loadingBounce}.loading-dots span:first-child{animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes loadingBounce{0%,80%,to{opacity:.5;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.sub-expired{background:radial-gradient(ellipse at 50% 30%, #8b5cf614 0%, transparent 60%), var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.sub-expired-card{text-align:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);max-width:420px;padding:48px 32px;animation:.6s fadeIn}.sub-expired-icon{margin-bottom:16px;font-size:64px;display:block}.sub-expired-card h1{font-family:var(--font-display);color:var(--text-primary);margin:0 0 8px;font-size:28px;font-weight:600}.sub-expired-card p{color:var(--text-secondary);font-size:16px;line-height:1.5}.sub-expired-colony{opacity:.6;justify-content:center;gap:16px;margin:24px 0;font-size:40px;display:flex}.sub-expired-note{color:var(--text-muted);font-size:13px;font-style:italic}.pin-gate{background:radial-gradient(ellipse at 50% 30%, #3b82f60f 0%, transparent 60%), var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.pin-card{text-align:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);width:320px;padding:40px 32px;animation:.5s fadeIn}.pin-header{margin-bottom:28px}.pin-icon{margin-bottom:12px;font-size:40px;display:block}.pin-header h2{color:var(--text-primary);margin:0 0 4px;font-size:22px;font-weight:700}.pin-header p{color:var(--text-secondary);font-size:14px}.pin-dots{justify-content:center;gap:14px;margin-bottom:24px;display:flex}.pin-dots.shake{animation:.5s pinShake}@keyframes pinShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.pin-dot{border:2px solid var(--border-color);width:16px;height:16px;transition:all var(--transition-fast);background:0 0;border-radius:50%}.pin-dot.filled{background:var(--terra-green);border-color:var(--terra-green)}.pin-dot.error{background:var(--terra-red);border-color:var(--terra-red)}.pin-error{color:var(--terra-red);margin:-16px 0 16px;font-size:13px}.pin-pad{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px;display:grid}.pin-key{border:1px solid var(--border-color);background:var(--bg-tertiary);width:64px;height:64px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;margin:0 auto;font-family:inherit;font-size:22px;font-weight:600;display:flex}.pin-key:hover{background:var(--bg-card-hover);border-color:var(--terra-blue)}.pin-key:active{transform:scale(.92)}.pin-key.delete{color:var(--text-muted);background:0 0;border-color:#0000;font-size:24px}.pin-hint{color:var(--text-muted);font-size:11px}.pin-pad.disabled{opacity:.5;pointer-events:none}.pin-key:disabled{opacity:.6;cursor:not-allowed}.pin-signin-btn,.pin-forgot{font-family:inherit;text-decoration:none;display:inline-block}.pin-signin-btn{border-radius:var(--radius-md);background:var(--terra-blue);color:#fff;margin-top:20px;padding:12px 28px;font-size:15px;font-weight:600}.pin-signin-btn:hover{opacity:.9}.pin-forgot{color:var(--text-muted);margin-top:18px;font-size:12px}.pin-forgot:hover{color:var(--text-secondary);text-decoration:underline}.error-boundary{background:var(--bg-primary,#17122b);justify-content:center;align-items:center;min-height:100dvh;padding:24px;display:flex}.error-boundary-card{text-align:center;border-radius:var(--radius-lg,18px);background:var(--bg-card,#221a3d);border:1px solid var(--border-color,#ffffff1a);width:100%;max-width:380px;box-shadow:var(--shadow-lg,0 16px 40px #0006);padding:32px 24px;animation:.35s fadeIn}.error-boundary-emoji{margin-bottom:12px;font-size:48px;display:block}.error-boundary-card h1{color:var(--text-primary,#fff6e9);margin:0 0 8px;font-size:20px;font-weight:700}.error-boundary-card p{color:var(--text-secondary,#fff6e9b3);margin:0 0 20px;font-size:14px;line-height:1.5}.error-boundary-card button{border-radius:var(--radius-md,12px);background:var(--terra-orange,#ff8a3d);color:#fff;cursor:pointer;border:none;padding:11px 22px;font-family:inherit;font-size:14px;font-weight:700;transition:opacity .15s}.error-boundary-card button:hover{opacity:.9}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-color);z-index:100;width:240px;min-height:100vh;transition:width var(--transition-normal);flex-direction:column;padding:16px 12px;display:flex;position:fixed;top:0;left:0}[data-tier=explorer] .sidebar{width:260px}.sidebar-header{border-bottom:1px solid var(--border-color);flex-direction:column;gap:12px;margin-bottom:8px;padding-bottom:16px;display:flex}.sidebar-logo{align-items:center;gap:10px;padding:4px 8px;display:flex}.logo-icon{font-size:28px;animation:3s ease-in-out infinite float}.logo-text{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.5px;font-size:24px;font-weight:600}.tier-badge{border-radius:var(--radius-full);color:#fff;justify-content:center;align-items:center;gap:8px;padding:6px 12px;font-size:13px;font-weight:600;display:flex}.learner-badge{border-radius:var(--radius-md);background:var(--bg-tertiary);align-items:center;gap:10px;padding:8px 12px;display:flex}.learner-avatar{font-size:24px}.learner-name{color:var(--text-primary);font-size:14px;font-weight:600}[data-tier=explorer] .learner-name{font-family:var(--font-display);font-size:16px}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:8px 0;display:flex}.nav-item{border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;display:flex}[data-tier=explorer] .nav-item{border-radius:var(--tier-radius);font-size:16px;font-family:var(--font-display);padding:14px}.nav-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.nav-item.active{background:var(--tier-bg-accent,var(--bg-tertiary));color:var(--tier-primary,var(--terra-green));font-weight:600}.sidebar-footer{border-top:1px solid var(--border-color);flex-direction:column;gap:4px;padding-top:12px;display:flex}@media (width<=768px){.sidebar,[data-tier=explorer] .sidebar{width:100%;height:auto;min-height:0;padding:6px 6px calc(6px + env(safe-area-inset-bottom));border-right:none;border-top:1px solid var(--border-color);z-index:200;flex-direction:row;inset:auto 0 0}.sidebar-header,.sidebar-footer{display:none}.sidebar-nav{flex-direction:row;justify-content:space-around;gap:2px;width:100%;padding:0}.nav-item,[data-tier=explorer] .nav-item{text-align:center;border-radius:var(--radius-md);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:6px 2px;font-size:11px}.nav-item span,[data-tier=explorer] .nav-item span{font-size:11px;line-height:1.1}}.topbar{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;min-height:56px;padding:12px 24px;display:flex}.topbar-left{align-items:center;gap:16px;display:flex}.colony-name{color:var(--text-secondary);align-items:center;gap:8px;font-size:14px;font-weight:500;display:flex}[data-tier=explorer] .colony-name{font-size:16px;font-family:var(--font-display)}.topbar-right{align-items:center;gap:12px;display:flex}.stat-pill{border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-primary);align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;display:flex}[data-tier=explorer] .stat-pill{font-size:15px;font-family:var(--font-display);padding:8px 14px}.stat-pill.streak{color:var(--terra-orange)}.stat-pill.xp{color:var(--terra-yellow)}.level-badge{border-radius:var(--radius-full);color:var(--text-primary);border:2px solid;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:700;display:flex;position:relative;overflow:hidden}.level-progress{background:var(--bg-tertiary);height:3px;position:absolute;bottom:0;left:0;right:0}.level-fill{height:100%;transition:width var(--transition-normal);border-radius:2px}.avatar-circle{cursor:pointer;width:36px;height:36px;transition:transform var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.avatar-circle:hover{transform:scale(1.1)}.topbar-parent-btn{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast), color var(--transition-fast);align-items:center;gap:6px;padding:7px 12px;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.topbar-parent-btn:hover{background:var(--bg-card);color:var(--text-primary)}@media (width<=600px){.topbar-parent-label{display:none}}.guest-banner{background:linear-gradient(90deg, var(--terra-purple), var(--terra-blue));color:#fff;align-items:center;gap:10px;padding:10px 16px;font-size:13.5px;font-weight:500;display:flex}.gb-icon{opacity:.95;align-items:center;display:flex}.gb-text{flex:1}.gb-cta{border-radius:var(--radius-full);color:var(--terra-purple);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast);background:#ffffffeb;border:none;align-items:center;gap:6px;padding:6px 14px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.gb-cta:hover{transform:scale(1.04)}@media (width<=600px){.gb-text{font-size:12px}}.dashboard-layout{min-height:100dvh;display:flex}.dashboard-main{flex-direction:column;flex:1;min-height:100dvh;margin-left:240px;display:flex}[data-tier=explorer] .dashboard-main{margin-left:260px}.dashboard-content{background:radial-gradient(ellipse at 8% 12%, var(--tier-glow,#22c55e1a) 0%, transparent 45%), radial-gradient(ellipse at 92% 18%, #ec489912 0%, transparent 45%), radial-gradient(ellipse at 78% 88%, #3b82f612 0%, transparent 50%), radial-gradient(ellipse at 20% 92%, #eab3080f 0%, transparent 45%), var(--bg-primary);flex:1;overflow-y:auto}@media (width<=768px){.dashboard-main,[data-tier=explorer] .dashboard-main{margin-left:0}.dashboard-content{padding-bottom:calc(68px + env(safe-area-inset-bottom))}}.lang-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;max-width:440px;margin:0 auto;display:grid}.lang-tile{border:3px solid var(--border-color);background:var(--bg-card);cursor:pointer;transition:all var(--transition-fast);border-radius:18px;flex-direction:column;align-items:center;gap:8px;padding:18px 12px;font-family:inherit;display:flex}.lang-tile:hover{border-color:var(--terra-orange);transform:translateY(-3px)}.lang-tile.active{border-color:var(--terra-green);background:#22c55e1a}.lang-flag{font-size:40px;line-height:1}.lang-native{color:var(--text-primary);font-size:16px;font-weight:600}.lang-dropdown{position:relative}.lang-toggle{border-radius:var(--radius-full);border:1px solid var(--border-color);background:var(--bg-tertiary);cursor:pointer;height:36px;color:var(--text-secondary);transition:border-color var(--transition-fast), background var(--transition-fast);align-items:center;gap:7px;padding:0 12px;font-family:inherit;display:flex}.lang-toggle:hover{border-color:var(--tier-primary,var(--terra-green));background:var(--bg-card);color:var(--text-primary)}.lang-globe{opacity:.8;flex-shrink:0}.lang-toggle-name{text-overflow:ellipsis;white-space:nowrap;max-width:110px;font-size:13px;font-weight:600;overflow:hidden}.lang-chevron{opacity:.7;flex-shrink:0}.lang-flag-sm{font-size:18px;line-height:1}.lang-menu{top:calc(100% + 8px);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:200;min-width:150px;max-height:60vh;padding:6px;animation:.15s fadeIn;position:absolute;inset-inline-end:0;overflow-y:auto}.lang-menu.up{top:auto;bottom:calc(100% + 8px)}.lang-menu-item{border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--text-secondary);transition:all var(--transition-fast);text-align:start;background:0 0;border:none;align-items:center;gap:10px;padding:8px 12px;font-family:inherit;font-size:14px;font-weight:500;display:flex}.lang-menu-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.lang-menu-item.active{background:var(--tier-bg-accent,#22c55e1a);color:var(--tier-primary,var(--terra-green));font-weight:600}.parent-layout{min-height:100vh;display:flex}.parent-sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-color);z-index:100;flex-direction:column;width:240px;height:100vh;padding:16px 12px;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.parent-sidebar-header{border-bottom:1px solid var(--border-color);align-items:center;gap:10px;margin-bottom:8px;padding:8px 8px 16px;display:flex}.parent-logo-icon{font-size:28px}.parent-logo-text{font-family:var(--font-display);color:var(--text-primary);font-size:20px;font-weight:600;display:block}.parent-badge{color:var(--terra-blue);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600;display:block}.parent-nav{flex-direction:column;flex:1;gap:4px;padding:8px 0;display:flex}.parent-nav-item{border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast);align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.parent-nav-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.parent-nav-item.active{color:var(--terra-blue);background:#3b82f61a;font-weight:600}.parent-sidebar-footer{border-top:1px solid var(--border-color);flex-direction:column;gap:10px;padding-top:12px;display:flex}.parent-lang-row{justify-content:space-between;align-items:center;gap:8px;padding:4px 8px 10px;display:flex}.parent-lang-label{color:var(--text-muted);font-size:12px;font-weight:500}.parent-child-info{border-radius:var(--radius-md);background:var(--bg-tertiary);align-items:center;gap:10px;padding:8px;display:flex}.child-avatar-mini{font-size:24px}.child-name-mini{color:var(--text-primary);font-size:13px;font-weight:600;display:block}.child-tier-mini{color:var(--text-muted);font-size:11px;display:block}.parent-exit-btn{border-radius:var(--radius-md);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;gap:8px;width:100%;padding:8px 12px;font-family:inherit;font-size:13px;display:flex}.parent-exit-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.parent-main{background:var(--bg-primary);flex:1;min-height:100vh;margin-left:240px}@media (width<=768px){.parent-layout{flex-direction:column}.parent-sidebar{border-right:none;border-bottom:1px solid var(--border-color);width:100%;height:auto;position:static}.parent-nav{flex-flow:wrap}.parent-main{margin-left:0}}.welcome{background:radial-gradient(ellipse at 25% 30%, #f9731612 0%, transparent 55%), radial-gradient(ellipse at 75% 70%, #8b5cf612 0%, transparent 55%), var(--bg-primary);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:32px 24px;display:flex;position:relative}.welcome-lang{top:20px;position:absolute;inset-inline-end:24px}.welcome-hero{text-align:center;max-width:480px;animation:.6s fadeIn}.welcome-globe{margin-bottom:8px;font-size:68px;animation:3s ease-in-out infinite float;display:block}.welcome-brand{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-1px;margin:0;font-size:44px;font-weight:700}.welcome-tagline{color:var(--text-secondary);margin:8px 0 24px;font-size:17px;line-height:1.5}.welcome-tiers{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:32px;display:flex}.welcome-tiers span{border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);padding:8px 14px;font-size:13px;font-weight:600}.welcome-cta{border-radius:var(--radius-full);background:var(--terra-orange);color:#fff;font-family:var(--font-display);cursor:pointer;transition:all var(--transition-fast);border:none;align-items:center;gap:10px;padding:14px 36px;font-size:18px;font-weight:600;display:inline-flex}.welcome-cta:hover{transform:scale(1.04);box-shadow:0 8px 24px #f9731659}.welcome-sub{color:var(--text-muted);margin-top:12px;font-size:13px}.welcome-footer-links{color:var(--text-muted);align-items:center;gap:8px;font-size:12px;display:flex;position:absolute;bottom:20px}.welcome-footer-links a{color:var(--text-muted);text-decoration:none}.welcome-footer-links a:hover{color:var(--text-secondary)}.welcome-try{border-radius:var(--radius-full);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);background:0 0;align-items:center;gap:8px;margin-top:16px;padding:10px 22px;font-family:inherit;font-size:14px;font-weight:600;display:inline-flex}.welcome-try:hover{background:var(--bg-card);border-color:var(--terra-purple)}.welcome-try-sub{color:var(--text-muted);margin-top:8px;font-size:12px}.picker{background:radial-gradient(ellipse at 50% 0%, #8b5cf60f 0%, transparent 55%), var(--bg-primary);flex-direction:column;align-items:center;min-height:100vh;padding:24px;display:flex}.picker-top{justify-content:space-between;align-items:center;width:100%;max-width:720px;margin-bottom:32px;display:flex}.picker-manage{border-radius:var(--radius-full);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:500;display:inline-flex}.picker-manage:hover{color:var(--text-primary);border-color:var(--text-muted)}.picker-title{font-family:var(--font-display);color:var(--text-primary);text-align:center;margin:12px 0 32px;font-size:32px;font-weight:600}.picker-error{color:var(--terra-red);margin-bottom:16px;font-size:13px}.picker-grid{flex-wrap:wrap;justify-content:center;gap:28px;max-width:720px;display:flex}.picker-tile-wrap{flex-direction:column;align-items:center;gap:8px;width:120px;animation:.4s both fadeIn;display:flex}.picker-tile{border:3px solid var(--border-color);background:var(--bg-card);cursor:pointer;width:110px;height:110px;transition:all var(--transition-fast);border-radius:24px;justify-content:center;align-items:center;display:flex;position:relative}.picker-tile:not(.locked):not(.add):hover{border-color:var(--tile-color);box-shadow:0 10px 30px color-mix(in srgb, var(--tile-color) 25%, transparent);transform:translateY(-4px)scale(1.04)}.picker-tile.locked{cursor:default;opacity:.6;filter:grayscale(.4)}.picker-tile.add{color:var(--text-muted);border-style:dashed}.picker-tile.add:hover{border-color:var(--terra-blue);color:var(--terra-blue);transform:translateY(-4px)}.picker-avatar{font-size:52px}.picker-lock{background:var(--bg-tertiary);border:1px solid var(--border-color);width:28px;height:28px;color:var(--text-secondary);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:8px;right:8px}.picker-badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.5px;padding:2px 10px;font-size:10px;font-weight:700;position:absolute;top:-8px}.picker-badge.trial{background:var(--terra-green);color:#fff}.picker-name{font-family:var(--font-display);color:var(--text-primary);font-size:16px;font-weight:600}.picker-tier{font-size:12px;font-weight:600}.picker-subscribe{border-radius:var(--radius-full);background:var(--terra-orange);color:#fff;cursor:pointer;border:none;align-items:center;gap:5px;margin-top:2px;padding:5px 14px;font-family:inherit;font-size:12px;font-weight:600;display:inline-flex}.picker-subscribe:hover{opacity:.9}.picker-subscribe:disabled{opacity:.6;cursor:wait}.picker-spin{animation:1s linear infinite pSpin}@keyframes pSpin{to{transform:rotate(360deg)}}.picker-empty{color:var(--text-muted);text-align:center;margin-top:28px;font-size:14px}.parent-login{background:radial-gradient(ellipse at 50% 30%, #3b82f60d 0%, transparent 60%), var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.parent-login-card{text-align:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);width:380px;max-width:100%;padding:40px 32px;animation:.5s fadeIn}.parent-login-icon{margin-bottom:12px;font-size:48px;display:block}.parent-login-card h1{color:var(--text-primary);margin:0 0 6px;font-size:22px;font-weight:700}.parent-login-card>p{color:var(--text-secondary);margin-bottom:24px;font-size:14px}.auth-tabs{background:var(--bg-tertiary);border-radius:var(--radius-md);gap:4px;margin-bottom:18px;padding:4px;display:flex}.auth-tab{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex:1;padding:8px;font-family:inherit;font-size:14px;font-weight:600}.auth-tab.active{background:var(--bg-card);color:var(--terra-blue)}.auth-input{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast);outline:none;margin-bottom:10px;padding:12px 14px;font-family:inherit;font-size:15px}.auth-input:focus{border-color:var(--terra-blue)}.auth-consent{color:var(--text-muted);text-align:left;align-items:flex-start;gap:8px;margin:4px 0;font-size:12px;line-height:1.5;display:flex}.auth-consent input{flex-shrink:0;margin-top:2px}.auth-consent a{color:var(--terra-blue);text-decoration:none}.auth-consent a:hover{text-decoration:underline}.auth-info{color:var(--terra-green);margin:8px 0 0;font-size:13px}.auth-hint{color:var(--text-muted);text-align:left;margin:-4px 0 8px;font-size:12px}.auth-turnstile{justify-content:center;margin:12px 0 4px;display:flex}.auth-spin{animation:1s linear infinite authSpin}@keyframes authSpin{to{transform:rotate(360deg)}}.parent-login-error{color:var(--terra-red);margin:8px 0 0;font-size:13px}.parent-login-btn{border-radius:var(--radius-md);background:var(--terra-blue);color:#fff;cursor:pointer;width:100%;transition:opacity var(--transition-fast);border:none;margin-top:16px;padding:12px;font-family:inherit;font-size:15px;font-weight:600;display:block}.parent-login-btn:hover:not(:disabled){opacity:.9}.parent-login-btn:disabled{opacity:.4;cursor:not-allowed}.auth-link-btn{color:var(--terra-blue);cursor:pointer;background:0 0;border:none;margin-top:14px;font-family:inherit;font-size:13px;font-weight:600;display:inline-block}.auth-link-btn:hover{text-decoration:underline}.parent-back-link{color:var(--text-muted);margin-top:20px;font-size:13px;text-decoration:none;display:block}.parent-back-link:hover{color:var(--text-secondary)}.parent-consent{color:var(--text-muted);margin-top:14px;font-size:11px;line-height:1.5}.parent-consent a{color:var(--terra-blue);text-decoration:none}.parent-consent a:hover{text-decoration:underline}.parent-pin-hint{color:var(--text-muted);margin-top:8px;font-size:11px}.auth-pass-wrap{position:relative}.auth-pass-wrap .auth-input{padding-right:44px}.auth-eye{width:36px;height:46px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;display:flex;position:absolute;top:0;right:4px}.auth-eye:hover{color:var(--text-secondary);background:var(--bg-tertiary)}.auth-remember{color:var(--text-secondary);cursor:pointer;text-align:left;align-items:center;gap:8px;margin:2px 0 4px;font-size:13px;display:flex}.auth-remember input{cursor:pointer;flex:none;width:16px;height:16px}.auth-code{text-align:center;letter-spacing:10px;font-size:22px;font-family:var(--font-mono,monospace)}.guest-setup{background:radial-gradient(ellipse at 50% 25%, #8b5cf614 0%, transparent 60%), var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.gset-lang{top:16px;position:fixed;inset-inline-end:16px}.gset-card{text-align:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);width:460px;max-width:100%;padding:32px 28px;animation:.4s fadeIn}.gset-icon{background:var(--terra-purple);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:10px;display:inline-flex}.gset-card h1{color:var(--text-primary);margin:0 0 6px;font-size:22px;font-weight:700}.gset-intro{color:var(--text-secondary);margin-bottom:20px;font-size:14px}.gset-label{text-align:left;color:var(--text-muted);margin:14px 0 6px;font-size:12px;font-weight:600;display:block}.gset-input{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);width:100%;color:var(--text-primary);outline:none;padding:11px 14px;font-family:inherit;font-size:15px}.gset-input:focus{border-color:var(--terra-purple)}.gset-age-grid{flex-wrap:wrap;gap:6px;display:flex}.gset-age{border:1px solid var(--border-color);background:var(--bg-tertiary);width:38px;height:38px;color:var(--text-primary);cursor:pointer;border-radius:50%;font-family:inherit;font-size:14px;font-weight:600}.gset-age.active{border-color:var(--terra-purple);color:var(--terra-purple);background:#8b5cf626}.gset-tier{border-radius:var(--radius-md);background:var(--bg-tertiary);border-inline-start:3px solid var(--tier,var(--terra-purple));color:var(--text-secondary);text-align:left;align-items:center;gap:8px;margin-top:14px;padding:10px 14px;font-size:13px;display:flex}.gset-tier-icon{font-size:18px}.gset-tier strong{color:var(--text-primary)}.gset-avatar-grid{flex-wrap:wrap;gap:6px;display:flex}.gset-avatar{border:2px solid var(--border-color);background:var(--bg-tertiary);cursor:pointer;border-radius:12px;width:42px;height:42px;font-size:20px}.gset-avatar.active{border-color:var(--terra-purple);background:#8b5cf61f}.gset-start{border-radius:var(--radius-md);background:var(--terra-purple);color:#fff;cursor:pointer;width:100%;transition:opacity var(--transition-fast);border:none;justify-content:center;align-items:center;gap:8px;margin-top:22px;padding:13px;font-family:inherit;font-size:15px;font-weight:700;display:flex}.gset-start:hover{opacity:.9}.gset-note{color:var(--text-muted);margin-top:10px;font-size:11px;line-height:1.5}.gset-back{color:var(--text-muted);margin-top:18px;font-size:13px;text-decoration:none;display:block}.gset-back:hover{color:var(--text-secondary)}.gset-tier-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.gset-tier-card{border-radius:var(--radius-md);border:2px solid var(--border-color);background:var(--bg-tertiary);cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);flex-direction:column;align-items:center;gap:3px;padding:14px 6px;font-family:inherit;display:flex}.gset-tier-card:hover{transform:translateY(-2px)}.gset-tier-card.active{border-color:var(--tier);box-shadow:0 4px 14px #00000040}.gtc-icon{font-size:26px;line-height:1}.gtc-name{color:var(--text-primary);font-size:13px;font-weight:700}.gset-tier-card.active .gtc-name{color:var(--tier)}.gtc-age{color:var(--text-muted);font-size:11px}.dashboard-card{background:linear-gradient(180deg, var(--tier-bg-accent,#ffffff08) 0%, transparent 55%), var(--bg-card);border:1px solid var(--border-color);border-radius:var(--tier-radius,var(--radius-lg));transition:transform var(--transition-normal), box-shadow var(--transition-normal), background var(--transition-normal), border-color var(--transition-normal);padding:20px;animation:.45s cubic-bezier(.22,1,.36,1) backwards cardPop;position:relative}.dashboard-card:before{content:"";border-radius:var(--tier-radius,var(--radius-lg)) var(--tier-radius,var(--radius-lg)) 0 0;background:linear-gradient(90deg, var(--tier-primary,var(--terra-green)), var(--tier-accent,var(--terra-cyan)));height:4px;position:absolute;inset:0 0 auto}@keyframes cardPop{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.dashboard-card:nth-child(2){animation-delay:50ms}.dashboard-card:nth-child(3){animation-delay:.1s}.dashboard-card:nth-child(4){animation-delay:.15s}.dashboard-card:nth-child(5){animation-delay:.2s}.dashboard-card:nth-child(6){animation-delay:.25s}.dashboard-card.glow{animation:3s ease-in-out infinite glow}.dashboard-card[role=button]{cursor:pointer}.dashboard-card[role=button]:hover{box-shadow:0 10px 28px var(--tier-glow,#22c55e40);border-color:var(--tier-primary,var(--terra-green));background:linear-gradient(180deg, var(--tier-bg-accent,#ffffff0d) 0%, transparent 55%), var(--bg-card-hover);transform:translateY(-4px)scale(1.01)}.dashboard-card[role=button]:active{transform:translateY(-1px)scale(.997)}.dashboard-card.span-2{grid-column:span 2}.dashboard-card.span-3{grid-column:span 3}[data-tier=explorer] .dashboard-card{border-radius:22px;padding:24px}[data-tier=explorer] .dashboard-card[role=button]:hover{transform:translateY(-6px)scale(1.025)}.card-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.card-icon{background:var(--tier-bg-accent,#22c55e1f);width:38px;height:38px;color:var(--tier-primary,var(--terra-green));border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;display:flex}[data-tier=explorer] .card-icon{border-radius:16px;width:50px;height:50px;font-size:28px}.card-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0;font-size:14px;font-weight:600}[data-tier=explorer] .card-title{font-size:18px;font-family:var(--font-display);text-transform:none;letter-spacing:0;color:var(--text-primary)}.card-body{color:var(--text-primary)}@media (width<=768px){.dashboard-card.span-2,.dashboard-card.span-3{grid-column:span 1}}@media (prefers-reduced-motion:reduce){.dashboard-card{animation:none}.dashboard-card[role=button]:hover{transform:none}}.progress-ring{justify-content:center;align-items:center;display:inline-flex;position:relative}.progress-ring svg{transform:rotate(-90deg)}.ring-bg{fill:none;stroke:var(--bg-tertiary)}.ring-fill{fill:none;transition:stroke-dashoffset .8s}.ring-content{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring-value{color:var(--text-primary);font-size:18px;font-weight:700}.ring-label{color:var(--text-muted);margin-top:2px;font-size:11px}.leaderboard{flex-direction:column;gap:6px;display:flex}.lb-entry{border-radius:var(--radius-md);background:var(--bg-tertiary);transition:background var(--transition-fast);align-items:center;gap:10px;padding:10px 12px;animation:.4s both slideInRight;display:flex}.lb-entry:hover{background:var(--bg-card-hover)}.lb-entry.is-user{border:1px solid var(--tier-primary,var(--terra-green));background:var(--tier-bg-accent,#22c55e14)}.lb-rank{text-align:center;width:28px;color:var(--text-muted);font-size:14px;font-weight:700}.lb-color{border-radius:50%;flex-shrink:0;width:10px;height:10px}.lb-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;font-weight:500;overflow:hidden}[data-tier=explorer] .lb-name{font-size:15px;font-family:var(--font-display)}.lb-xp{color:var(--terra-yellow);white-space:nowrap;font-size:12px;font-weight:700}.explorer-dashboard{padding:24px}.welcome-banner{cursor:pointer;transition:transform var(--transition-fast);background:linear-gradient(135deg,#f9731626,#fbbf241a);border:1px solid #f973164d;border-radius:24px;justify-content:space-between;align-items:center;margin-bottom:24px;padding:24px 32px;animation:.5s fadeIn;display:flex}.welcome-banner:hover{transform:scale(1.01)}.welcome-content h1{font-family:var(--font-display);color:var(--text-primary);margin:0 0 6px;font-size:28px;font-weight:600}.welcome-content p{font-family:var(--font-display);color:var(--text-secondary);font-size:16px}.welcome-mascot{font-size:56px;animation:2s ease-in-out infinite bounce}.explorer-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.counting-zone{flex-direction:column;gap:16px;display:flex}.counting-items{justify-content:center;gap:12px;display:flex}.count-item{cursor:pointer;transition:transform var(--transition-fast);font-size:40px;animation:.4s both fadeIn}.count-item:hover{animation:.4s bounce;transform:scale(1.2)}.counting-question{text-align:center;cursor:pointer}.counting-question>span{font-family:var(--font-display);color:var(--text-secondary);margin-bottom:12px;font-size:18px;display:block}.number-buttons{justify-content:center;gap:10px;display:flex}.number-btn{border:2px solid var(--border-color);background:var(--bg-tertiary);width:52px;height:52px;color:var(--text-primary);font-family:var(--font-display);cursor:pointer;transition:all var(--transition-fast);border-radius:16px;font-size:22px;font-weight:600}.number-btn:hover{border-color:var(--terra-orange);background:#f9731626;transform:scale(1.1)}.number-btn:active{transform:scale(.95)}.today-progress{flex-direction:column;align-items:center;gap:16px;display:flex}.star-row{gap:6px;display:flex}.star{transition:transform var(--transition-fast);font-size:24px}.star.earned{animation:.4s pulse}.shape-explorer{flex-direction:column;gap:12px;display:flex}.shape-instruction{font-family:var(--font-display);color:var(--text-secondary);text-align:center;font-size:15px}.shape-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.shape-card{border:2px solid var(--border-color);background:var(--bg-tertiary);cursor:pointer;transition:all var(--transition-fast);color:inherit;border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:14px 8px;font-family:inherit;display:flex;position:relative}.shape-card:hover,.shape-card.selected{border-color:var(--terra-orange);background:#f973161a;transform:scale(1.05)}.shape-card.explored{border-color:var(--terra-green)}.shape-check{background:var(--terra-green);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;font-weight:700;display:flex;position:absolute;top:6px;right:8px}.shape-emoji{font-size:32px}.shape-name{font-family:var(--font-display);color:var(--text-primary);font-size:14px}.shape-sides{color:var(--text-muted);font-size:11px}.shape-progress{flex-direction:column;gap:6px;display:flex}.shape-progress-bar{background:var(--bg-tertiary);border-radius:4px;height:8px;overflow:hidden}.shape-progress-fill{background:var(--terra-green);height:100%;transition:width var(--transition-normal);border-radius:4px}.shape-progress-label{font-family:var(--font-display);color:var(--text-secondary);text-align:center;font-size:13px}.drag-zone{flex-direction:column;align-items:center;gap:20px;display:flex}.drag-problem{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.drag-group{background:var(--bg-tertiary);border-radius:16px;flex-direction:column;align-items:center;gap:6px;padding:12px 16px;display:flex}.drag-group span:first-child{font-size:28px}.drag-label{font-family:var(--font-display);color:var(--text-primary);font-size:20px;font-weight:600}.drag-operator{font-family:var(--font-display);color:var(--terra-orange);font-size:28px;font-weight:700}.drag-answer-zone{border:3px dashed var(--border-color);width:64px;height:64px;transition:border-color var(--transition-fast);border-radius:16px;justify-content:center;align-items:center;display:flex}.drag-placeholder{font-family:var(--font-display);color:var(--text-muted);font-size:28px}.drag-result{font-family:var(--font-display);font-size:22px;font-weight:700}.drag-result.correct{color:var(--terra-green)}.drag-result.wrong{color:var(--terra-red)}.drag-options{gap:10px;display:flex}.drag-option{border:2px solid var(--border-color);background:var(--bg-tertiary);width:56px;height:56px;color:var(--text-primary);font-family:var(--font-display);cursor:pointer;transition:all var(--transition-fast);border-radius:50%;font-size:22px;font-weight:600}.drag-option:hover{border-color:var(--terra-orange);background:#f9731626;transform:scale(1.15)}.drag-option:active{transform:scale(.9)}.colony-preview{flex-direction:column;gap:12px;display:flex}.colony-scene{background:linear-gradient(#0000,#22c55e1a);border-radius:12px;height:80px;position:relative;overflow:hidden}.colony-scene span{font-size:28px;position:absolute;bottom:8px}.colony-tree{animation:4s ease-in-out infinite float}.colony-house{font-size:36px!important;bottom:4px!important}.colony-animal{animation:2.5s ease-in-out infinite float}.colony-stats{font-family:var(--font-display);color:var(--text-secondary);justify-content:space-between;font-size:14px;display:flex}@media (width<=768px){.explorer-grid{grid-template-columns:1fr}.welcome-banner{padding:16px 20px}.welcome-content h1{font-size:22px}.welcome-mascot{font-size:40px}}.architect-dashboard{padding:20px 24px}.arch-header{justify-content:space-between;align-items:center;margin-bottom:20px;animation:.4s fadeIn;display:flex}.arch-header h1{color:var(--text-primary);margin:0 0 4px;font-size:24px;font-weight:700}.arch-header p{color:var(--text-secondary);font-size:14px}.arch-stats-row{gap:16px;display:flex}.arch-stat{color:var(--text-secondary);align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex}.architect-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.word-problem{flex-direction:column;gap:12px;display:flex}.wp-text{color:var(--text-primary);font-size:15px;line-height:1.6}.wp-options{flex-wrap:wrap;gap:8px;display:flex}.wp-btn{border-radius:var(--radius-md);border:2px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);padding:8px 20px;font-size:15px;font-weight:600}.wp-btn:hover:not(:disabled){border-color:var(--terra-blue);background:#3b82f61a}.wp-btn.correct{border-color:var(--terra-green);color:var(--terra-green);background:#22c55e26}.wp-btn.wrong{border-color:var(--terra-red);color:var(--terra-red);background:#ef44441a}.wp-result{border-radius:var(--radius-sm);padding:8px 12px;font-size:13px;font-weight:600}.wp-result.correct{color:var(--terra-green);background:#22c55e1a}.wp-result.wrong{color:var(--terra-red);background:#ef444414}.hint-btn{border-radius:var(--radius-full);border:1px solid var(--border-color);color:var(--terra-yellow);cursor:pointer;width:fit-content;transition:background var(--transition-fast);background:0 0;align-items:center;gap:6px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:500;display:inline-flex}.hint-btn:hover{background:#eab3081a}.wp-next{border-radius:var(--radius-full);border:1px solid var(--border-color);background:var(--tier-bg-accent,#3b82f61f);color:var(--tier-primary,var(--terra-blue));cursor:pointer;width:fit-content;transition:background var(--transition-fast), transform var(--transition-fast);align-items:center;gap:6px;padding:7px 14px;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.wp-next:hover{background:var(--bg-card-hover);transform:translateY(-1px)}.hint-text{color:var(--terra-yellow);border-radius:var(--radius-sm);border-left:3px solid var(--terra-yellow);background:#eab30814;padding:8px 12px;font-size:13px}.daily-progress{flex-direction:column;align-items:center;gap:12px;display:flex}.daily-meta{color:var(--text-secondary);flex-direction:column;align-items:center;gap:4px;font-size:13px;display:flex}.daily-reward{color:var(--terra-cyan);font-size:12px}.math-keyboard{flex-direction:column;gap:8px;display:flex}.math-display{background:var(--bg-tertiary);border-radius:var(--radius-md);font-family:var(--font-mono);color:var(--text-primary);text-align:right;word-break:break-all;min-height:44px;padding:10px 14px;font-size:20px;font-weight:600}.mk-grid{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.mk-key{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);padding:10px;font-family:inherit;font-size:16px;font-weight:600}.mk-key:hover{background:var(--bg-card-hover)}.mk-key.op{color:var(--terra-blue);border-color:#3b82f64d}.mk-clear{border-radius:var(--radius-sm);border:1px solid var(--border-color);color:var(--terra-red);cursor:pointer;background:0 0;padding:6px;font-family:inherit;font-size:12px;font-weight:500}.fraction-builder{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.fraction-item{flex-direction:column;align-items:center;gap:8px;display:flex}.fraction-bar{gap:3px;width:100%;display:flex}.fraction-segment{background:var(--bg-tertiary);border:1px solid var(--border-color);height:40px;transition:background var(--transition-normal);border-radius:6px;flex:1}.fraction-segment.filled{background:var(--terra-blue);border-color:var(--terra-blue)}.fraction-label{color:var(--text-primary);font-size:16px;font-weight:700}@media (width<=768px){.architect-grid{grid-template-columns:1fr}.arch-header{flex-direction:column;align-items:flex-start;gap:12px}}.math-lab{flex-direction:column;gap:16px;display:flex}.lab-equation-selector{flex-direction:column;gap:8px;display:flex}.lab-label{color:var(--text-muted);font-size:12px;font-weight:500}.lab-eq-buttons{flex-wrap:wrap;gap:6px;display:flex}.lab-eq-btn{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);font-family:var(--font-mono);cursor:pointer;transition:all var(--transition-fast);padding:6px 12px;font-size:12px}.lab-eq-btn:hover{border-color:var(--terra-purple)}.lab-eq-btn.active{border-color:var(--terra-purple);color:var(--terra-purple);background:#8b5cf61f;font-weight:600}.lab-workspace{flex-direction:column;gap:12px;display:flex}.lab-equation-display{font-family:var(--font-mono);color:var(--terra-purple);text-align:center;border-radius:var(--radius-md);letter-spacing:2px;background:#8b5cf614;padding:14px;font-size:24px;font-weight:700}.lab-solve-row{align-items:center;gap:8px;display:flex}.lab-var{font-family:var(--font-mono);color:var(--text-primary);font-size:16px;font-weight:600}.lab-input{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-mono);transition:border-color var(--transition-fast);outline:none;flex:1;padding:8px 12px;font-size:16px}.lab-input:focus{border-color:var(--terra-purple)}.lab-actions{flex-wrap:wrap;gap:8px;display:flex}.lab-btn{border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--transition-fast);border:none;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600}.lab-btn.primary{background:var(--terra-purple);color:#fff}.lab-btn.secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.lab-btn:hover{opacity:.85}.lab-btn:disabled{opacity:.4;cursor:not-allowed}.lab-result{border-radius:var(--radius-sm);padding:10px 14px;font-size:14px;font-weight:600}.lab-result.correct{color:var(--terra-green);background:#22c55e1a}.lab-result.incorrect{color:var(--terra-red);background:#ef444414}.lab-steps{background:var(--bg-tertiary);border-radius:var(--radius-sm);flex-direction:column;gap:6px;padding:12px;display:flex}.step{color:var(--text-primary);align-items:center;gap:10px;font-size:13px;display:flex}.step-num{width:22px;height:22px;color:var(--terra-purple);background:#8b5cf626;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.rubiks-container{flex-direction:column;gap:12px;display:flex}.rubiks-header{justify-content:space-between;align-items:flex-start;display:flex}.rubiks-header h4{color:var(--text-primary);margin:0 0 2px;font-size:14px;font-weight:700}.rubiks-header p{color:var(--text-muted);margin:0;font-size:11px}.cube-overall{flex-direction:column;align-items:center;display:flex}.cube-pct{color:var(--terra-purple);font-size:22px;font-weight:700;font-family:var(--font-mono)}.cube-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:10px}.cube-viewport{perspective:500px;cursor:pointer;justify-content:center;padding:16px 0;display:flex}.cube-3d{width:120px;height:120px;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.25,.46,.45,.94);position:relative}.cube-3d.spinning{transition:transform .6s cubic-bezier(.25,.46,.45,.94)}.cube-face{backface-visibility:visible;background:#0009;border-radius:6px;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:2px;width:120px;height:120px;padding:3px;display:grid;position:absolute}.cube-face.front{transform:translateZ(60px)}.cube-face.back{transform:rotateY(180deg)translateZ(60px)}.cube-face.right{transform:rotateY(90deg)translateZ(60px)}.cube-face.left{transform:rotateY(-90deg)translateZ(60px)}.cube-face.top{transform:rotateX(90deg)translateZ(60px)}.cube-face.bottom{transform:rotateX(-90deg)translateZ(60px)}.cube-cell{border-radius:3px;transition:background .4s}.cube-cell.solved{box-shadow:inset 0 1px 2px #ffffff4d}.cube-cell.scrambled{opacity:.6}.cube-hint{text-align:center;color:var(--text-muted);margin:0;font-size:11px}.cube-topics{flex-direction:column;gap:6px;display:flex}.cube-topic{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);grid-template-columns:12px 1fr 36px;align-items:center;gap:8px;padding:6px 8px;display:grid}.cube-topic:hover,.cube-topic.selected{background:var(--bg-tertiary)}.topic-color{border-radius:3px;width:12px;height:12px}.topic-name{color:var(--text-primary);font-size:12px;font-weight:500}.topic-progress{color:var(--text-secondary);text-align:right;font-size:11px;font-weight:700;font-family:var(--font-mono)}.topic-bar{background:var(--bg-tertiary);border-radius:2px;grid-column:1/-1;height:3px;overflow:hidden}.topic-bar-fill{border-radius:2px;height:100%;transition:width .6s}.engineer-dashboard{padding:16px 20px}.eng-header{justify-content:space-between;align-items:center;margin-bottom:16px;animation:.3s fadeIn;display:flex}.eng-header h1{color:var(--text-primary);margin:0;font-size:22px;font-weight:700}.eng-subtitle{color:var(--terra-purple);font-size:13px;font-weight:600}.eng-metrics{gap:16px;display:flex}.eng-metric{color:var(--text-secondary);align-items:center;gap:5px;font-size:12px;font-weight:500;display:flex}.engineer-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.discoveries-panel{flex-direction:column;align-items:center;gap:14px;display:flex}.discovery-flask{border:2px solid var(--border-color);background:var(--bg-tertiary);border-top:none;border-radius:0 0 16px 16px;width:60px;height:80px;position:relative;overflow:hidden}.discovery-flask:before{content:"";background:var(--border-color);border-radius:4px 4px 0 0;height:8px;position:absolute;top:-8px;left:25%;right:25%}.flask-fill{background:linear-gradient(to top, var(--terra-purple), #8b5cf666);border-radius:0 0 14px 14px;transition:height .8s;position:absolute;bottom:0;left:0;right:0}.flask-icon{z-index:1;font-size:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.discovery-stats{flex-direction:column;gap:6px;width:100%;display:flex}.disc-row{color:var(--text-secondary);border-bottom:1px solid var(--border-color);justify-content:space-between;padding:4px 0;font-size:12px;display:flex}.disc-val{color:var(--text-primary);font-weight:700}.disc-val.highlight{color:var(--terra-purple)}.geo-formulas{flex-direction:column;gap:8px;display:flex}.geo-row{border-radius:var(--radius-sm);background:var(--bg-tertiary);align-items:center;gap:10px;padding:8px 10px;display:flex}.geo-icon{text-align:center;width:24px;font-size:18px}.geo-shape{color:var(--text-primary);flex:1;font-size:13px;font-weight:500}.geo-formula{font-family:var(--font-mono);color:var(--terra-purple);background:#8b5cf614;border-radius:4px;padding:2px 8px;font-size:12px}.graph-placeholder{flex-direction:column;gap:10px;display:flex}.graph-axes{border-radius:var(--radius-md);background:#8b5cf608;height:160px;padding:16px;position:relative;overflow:hidden}.graph-y-axis{background:var(--border-color);width:1px;position:absolute;top:10px;bottom:30px;left:30px}.graph-x-axis{background:var(--border-color);height:1px;position:absolute;bottom:30px;left:30px;right:10px}.graph-line{position:absolute;inset:10px 10px 30px 30px}.graph-legend{color:var(--text-secondary);font-size:11px;font-family:var(--font-mono);flex-direction:column;gap:4px;display:flex;position:absolute;top:8px;right:12px}.legend-dot{border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.graph-note{color:var(--text-muted);text-align:center;font-size:11px;font-style:italic}@media (width<=768px){.engineer-grid{grid-template-columns:1fr}.eng-header{flex-direction:column;align-items:flex-start;gap:8px}}.quiz-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172abf;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.quiz-modal{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);width:100%;max-width:520px;box-shadow:var(--shadow-lg);overscroll-behavior:contain;max-height:calc(100dvh - 40px);padding:24px;animation:.3s cubic-bezier(.34,1.56,.64,1) quizPop;overflow-y:auto}@keyframes quizPop{0%{opacity:0;transform:scale(.92)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.quiz-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.quiz-title{color:var(--text-primary);align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}[data-tier=explorer] .quiz-title{font-family:var(--font-display);font-size:20px}.quiz-icon{font-size:24px}.quiz-close{background:var(--bg-tertiary);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.quiz-close:hover{background:var(--bg-card-hover);color:var(--text-primary)}.quiz-progress-track{background:var(--bg-tertiary);border-radius:3px;height:6px;margin-bottom:8px;overflow:hidden}.quiz-progress-fill{background:var(--tier-primary,var(--terra-green));height:100%;transition:width var(--transition-normal);border-radius:3px}.quiz-meta{color:var(--text-muted);justify-content:space-between;margin-bottom:16px;font-size:12px;display:flex}.quiz-score-live{color:var(--terra-green);font-weight:700}.quiz-body{text-align:center}.quiz-visual{letter-spacing:2px;word-break:break-word;margin-bottom:12px;font-size:28px;line-height:1.6}[data-tier=explorer] .quiz-visual{font-size:34px}.quiz-prompt{color:var(--text-primary);margin:0 0 20px;font-size:22px;font-weight:700}[data-tier=explorer] .quiz-prompt{font-family:var(--font-display);font-size:26px}[data-tier=engineer] .quiz-prompt{font-family:var(--font-mono);font-size:20px}.quiz-options{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;display:grid}.quiz-option{border-radius:var(--tier-radius,var(--radius-md));border:2px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;gap:6px;padding:16px;font-family:inherit;font-size:18px;font-weight:600;display:flex;position:relative}[data-tier=explorer] .quiz-option{font-size:22px;font-family:var(--font-display);padding:20px}.quiz-option:not(:disabled):hover{border-color:var(--tier-primary,var(--terra-green));background:var(--tier-bg-accent,#22c55e1a);transform:translateY(-2px)}.quiz-option.correct{border-color:var(--terra-green);color:var(--terra-green);background:#22c55e26}.quiz-option.wrong{border-color:var(--terra-red);color:var(--terra-red);background:#ef44441f}.quiz-option.dimmed{opacity:.4}.quiz-option:disabled{cursor:default}.opt-check{color:var(--terra-green)}.quiz-feedback{border-radius:var(--radius-md);padding:12px;font-size:14px;font-weight:600;animation:.3s fadeIn}.quiz-feedback.good{color:var(--terra-green);background:#22c55e1a}.quiz-feedback.bad{color:var(--terra-red);background:#ef444414}.quiz-footer{justify-content:flex-end;margin-top:20px;display:flex}.quiz-next{border-radius:var(--radius-full);background:var(--tier-primary,var(--terra-green));color:#fff;cursor:pointer;transition:all var(--transition-fast);border:none;padding:12px 32px;font-family:inherit;font-size:15px;font-weight:700}[data-tier=explorer] .quiz-next{font-family:var(--font-display)}.quiz-next:not(:disabled):hover{transform:scale(1.05)}.quiz-next:disabled{opacity:.4;cursor:not-allowed}.quiz-results{text-align:center;padding:12px 0;animation:.4s fadeIn}.results-score-ring{background:conic-gradient(var(--tier-primary,var(--terra-green)) var(--p,0%), var(--bg-tertiary) 0);border-radius:50%;justify-content:center;align-items:center;width:100px;height:100px;margin:0 auto 16px;display:flex;position:relative}.results-pct{background:var(--bg-card);width:76px;height:76px;color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;font-size:24px;font-weight:700;display:flex}.quiz-results h2{color:var(--text-primary);margin:0 0 6px;font-size:22px}[data-tier=explorer] .quiz-results h2{font-family:var(--font-display)}.results-detail{color:var(--text-secondary);margin-bottom:16px;font-size:14px}.results-reward{background:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--terra-yellow);flex-direction:column;gap:2px;margin-bottom:20px;padding:12px;font-size:16px;font-weight:700;display:flex}.results-reward-hint{color:var(--text-muted);font-size:11px;font-weight:400}.results-actions{flex-direction:column;gap:8px;display:flex}.results-btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;gap:8px;padding:12px;font-family:inherit;font-size:14px;font-weight:600;display:flex}.results-btn.primary{background:var(--tier-primary,var(--terra-green));color:#fff}.results-btn.secondary{background:var(--bg-tertiary);color:var(--terra-blue);border:1px solid var(--border-color)}.results-btn.ghost{color:var(--text-muted);background:0 0}.results-btn:hover{opacity:.92;transform:translateY(-1px)}@media (width<=480px){.quiz-overlay{padding:0}.quiz-modal{max-width:100%;min-height:100dvh;max-height:100dvh;padding:16px 16px calc(16px + env(safe-area-inset-bottom));border:none;border-radius:0}.quiz-options{grid-template-columns:1fr}.quiz-footer{background:var(--bg-card);margin-top:16px;padding-top:12px;position:sticky;bottom:0}.quiz-next{width:100%;padding:14px}}.placeholder-page{padding:24px;animation:.4s fadeIn}.placeholder-page h1{color:var(--text-primary);margin:0 0 6px;font-size:24px;font-weight:700}[data-tier=explorer] .placeholder-page h1{font-family:var(--font-display);font-size:28px}.page-subtitle{color:var(--text-secondary);margin-bottom:24px;font-size:14px}.topic-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.topic-body{flex-direction:column;align-items:center;gap:12px;display:flex}.topic-count{color:var(--text-muted);font-size:13px}.topic-action{border-radius:var(--radius-full);background:var(--tier-primary,var(--terra-green));color:#fff;padding:6px 24px;font-size:13px;font-weight:600}.achievements-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.achievement-card{text-align:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-normal);flex-direction:column;align-items:center;gap:8px;padding:20px 12px;display:flex;position:relative}.achievement-card.unlocked{border-color:var(--tier-primary,var(--terra-green))}.achievement-card.unlocked:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.achievement-card.locked{opacity:.5}.ach-icon{font-size:36px}.ach-label{color:var(--text-primary);font-size:13px;font-weight:600}.ach-desc{color:var(--text-muted);font-size:11px;line-height:1.4}.ach-lock-overlay{font-size:16px;position:absolute;top:8px;right:8px}.colony-full{flex-direction:column;gap:16px;display:flex}.colony-landscape{border-radius:var(--radius-xl);background:linear-gradient(#1a2744,#1e3a28);height:220px;position:relative;overflow:hidden}.colony-sky{height:60%;position:relative}.sky-element{font-size:28px;animation:5s ease-in-out infinite float;position:absolute}.colony-ground{background:linear-gradient(#0000,#22c55e14);height:50%;position:absolute;bottom:0;left:0;right:0}.colony-ground span{font-size:32px;animation:4s ease-in-out infinite float;position:absolute;bottom:12px}.colony-info-bar{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);justify-content:center;gap:24px;padding:16px;display:flex}.colony-info-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:14px;display:flex}.colony-info-item strong{color:var(--text-primary)}.colony-hint{text-align:center;color:var(--text-muted);font-size:12px;font-style:italic}.progress-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.mastery-overview{align-items:flex-start;gap:24px;display:flex}.mastery-bars{flex-direction:column;flex:1;gap:10px;display:flex}.mastery-bar-row{align-items:center;gap:10px;display:flex}.mastery-label{width:140px;color:var(--text-secondary);flex-shrink:0;font-size:12px}.mastery-bar-track{background:var(--bg-tertiary);border-radius:4px;flex:1;height:8px;overflow:hidden}.mastery-bar-fill{border-radius:4px;height:100%;transition:width .8s}.mastery-pct{text-align:right;width:36px;color:var(--text-primary);font-size:12px;font-weight:700;font-family:var(--font-mono)}@media (width<=768px){.topic-grid,.achievements-grid,.progress-grid{grid-template-columns:1fr}.mastery-overview{flex-direction:column;align-items:center}.colony-info-bar{flex-wrap:wrap;gap:12px}}.guest-lock{text-align:center;border:1px dashed var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card);max-width:460px;margin:24px auto 0;padding:32px 24px}.guest-lock-icon{background:var(--tier-bg-accent,#8b5cf626);width:56px;height:56px;color:var(--tier-primary,var(--terra-purple));border-radius:50%;justify-content:center;align-items:center;margin-bottom:12px;display:inline-flex}.guest-lock h2{color:var(--text-primary);margin:0 0 8px;font-size:18px}.guest-lock p{color:var(--text-secondary);margin-bottom:18px;font-size:14px;line-height:1.5}.guest-lock-cta{border-radius:var(--radius-full);background:var(--terra-purple);color:#fff;cursor:pointer;transition:opacity var(--transition-fast);border:none;align-items:center;gap:8px;padding:11px 22px;font-family:inherit;font-size:14px;font-weight:700;display:inline-flex}.guest-lock-cta:hover{opacity:.9}.colony-container{flex-direction:column;gap:16px;animation:.4s fadeIn;display:flex}.colony-resource-bar{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);align-items:center;gap:20px;padding:12px 20px;display:flex}.colony-res{color:var(--text-secondary);align-items:center;gap:6px;font-size:14px;display:flex}.colony-res strong{color:var(--text-primary);font-size:16px}.res-label{color:var(--text-muted);font-size:11px}.shop-toggle{border-radius:var(--radius-full);background:var(--tier-primary,var(--terra-green));color:#fff;cursor:pointer;transition:transform var(--transition-fast);border:none;margin-left:auto;padding:8px 20px;font-family:inherit;font-size:14px;font-weight:600}.shop-toggle:hover{transform:scale(1.05)}.placing-banner{border:1px solid var(--terra-green);border-radius:var(--radius-md);color:var(--terra-green);background:#22c55e1a;align-items:center;gap:12px;padding:10px 16px;font-size:14px;animation:.3s fadeIn;display:flex}.placing-banner button{border-radius:var(--radius-full);border:1px solid var(--terra-red);color:var(--terra-red);cursor:pointer;background:0 0;margin-left:auto;padding:4px 12px;font-family:inherit;font-size:12px}.colony-grid-wrapper{perspective:800px;justify-content:center;padding:20px 0;display:flex}.colony-grid{transform:rotateX(50deg) rotateZ(calc(45deg + var(--spin,0deg)));transform-style:preserve-3d;gap:3px;width:min(500px,80vw);height:min(500px,80vw);transition:transform .5s;display:grid}.colony-cell{aspect-ratio:1;transition:all var(--transition-fast);border-radius:4px;justify-content:center;align-items:center;display:flex;position:relative}.colony-cell.empty{background:#ffffff08;border:1px solid #ffffff0f}.colony-cell.occupied{background:#22c55e14;border:1px solid #22c55e33}.colony-cell.clickable{cursor:pointer}.colony-cell.clickable.empty:hover{border-color:var(--terra-green);background:#22c55e26;transform:translateZ(4px)}.colony-cell.just-placed{animation:.6s cellBounce}@keyframes cellBounce{0%{transform:translateZ(0)scale(.3)}50%{transform:translateZ(20px)scale(1.15)}70%{transform:translateZ(8px)scale(.95)}to{transform:translateZ(0)scale(1)}}.cell-stack{transform-style:preserve-3d;pointer-events:none;--h:16px;position:absolute;inset:0}.cell-stack[data-cat=buildings]{--h:42px}.cell-stack[data-cat=space]{--h:36px}.cell-stack[data-cat=fun]{--h:30px}.cell-stack[data-cat=nature]{--h:22px}.cell-stack[data-cat=decor]{--h:16px}.cell-stack[data-cat=transport]{--h:6px}.cell-shadow{background:radial-gradient(#0006 0%,#0000 70%);border-radius:50%;width:64%;height:64%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)translateZ(.5px)}.cell-lift{transform-style:preserve-3d;transform:translateZ(var(--h));animation:3.5s ease-in-out infinite itemBob;position:absolute;inset:0}.cell-emoji{transform:rotateZ(calc(-45deg - var(--spin,0deg))) rotateX(-50deg);justify-content:center;align-items:center;font-size:clamp(20px,4.5vw,34px);display:flex;position:absolute;inset:0}@keyframes itemBob{0%,to{transform:translateZ(var(--h))}50%{transform:translateZ(calc(var(--h) + 5px))}}.colony-orbit{justify-content:center;gap:8px;display:flex}.colony-orbit button{border:1px solid var(--border-color);background:var(--bg-card);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;transition:transform var(--transition-fast), background var(--transition-fast);border-radius:50%;font-size:18px}.colony-orbit button:hover{background:var(--bg-tertiary);color:var(--text-primary);transform:scale(1.08)}.build-shop{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:20px;animation:.3s slideInRight}.shop-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.shop-header h3{color:var(--text-primary);margin:0;font-size:18px;font-weight:700}.shop-budget{color:var(--terra-green);font-size:14px;font-weight:600}.shop-categories{gap:6px;margin-bottom:14px;padding-bottom:4px;display:flex;overflow-x:auto}.cat-tab{border-radius:var(--radius-full);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);background:0 0;padding:6px 14px;font-family:inherit;font-size:12px;font-weight:500}.cat-tab:hover{border-color:var(--tier-primary,var(--terra-green))}.cat-tab.active{background:var(--tier-bg-accent,#22c55e1a);border-color:var(--tier-primary,var(--terra-green));color:var(--tier-primary,var(--terra-green));font-weight:600}.shop-items{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.shop-item{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);cursor:pointer;transition:all var(--transition-fast);color:inherit;flex-direction:column;align-items:center;gap:4px;padding:14px 10px;font-family:inherit;display:flex;position:relative}.shop-item:not(.locked):hover{border-color:var(--tier-primary,var(--terra-green));box-shadow:var(--shadow-md);transform:translateY(-2px)}.shop-item.locked{opacity:.4;cursor:not-allowed}.shop-item-emoji{font-size:28px}.shop-item-name{color:var(--text-primary);font-size:12px;font-weight:600}.shop-item-cost{font-size:11px;font-weight:700}.shop-lock{font-size:12px;position:absolute;top:6px;right:6px}.shop-empty{text-align:center;color:var(--text-muted);grid-column:1/-1;padding:20px;font-size:13px}@media (width<=768px){.colony-grid{width:90vw;height:90vw}.colony-resource-bar{flex-wrap:wrap;gap:12px}}.colony-build-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.auto-build-btn{border-radius:var(--radius-full);background:var(--tier-primary,var(--terra-green));color:#fff;cursor:pointer;transition:transform var(--transition-fast), opacity var(--transition-fast);border:none;padding:11px 22px;font-family:inherit;font-size:15px;font-weight:700}.auto-build-btn:hover:not(:disabled){transform:scale(1.05)}.auto-build-btn:disabled{opacity:.45;cursor:not-allowed}.auto-toggle{border-radius:var(--radius-full);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);padding:9px 16px;font-family:inherit;font-size:13px;font-weight:600}.auto-toggle.on{background:var(--tier-bg-accent,#22c55e26);border-color:var(--tier-primary,var(--terra-green));color:var(--tier-primary,var(--terra-green))}.colony-mascot{font-size:30px;line-height:1;animation:3s ease-in-out infinite mascotIdle}.colony-mascot.cheer{animation:.6s mascotCheer}@keyframes mascotIdle{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-4px)rotate(3deg)}}@keyframes mascotCheer{0%{transform:scale(1)}40%{transform:scale(1.35)rotate(-10deg)}70%{transform:scale(1.1)rotate(8deg)}to{transform:scale(1)}}.colony-build-hint{min-width:140px;color:var(--text-muted);flex:1;font-size:12px}@media (prefers-reduced-motion:reduce){.colony-mascot,.colony-mascot.cheer{animation:none}}.activity-chart{width:100%}.chart-bars{align-items:flex-end;gap:8px;height:100%;padding-bottom:24px;display:flex;position:relative}.chart-col{flex-direction:column;flex:1;align-items:center;height:100%;display:flex}.bar-container{flex:1;justify-content:center;align-items:flex-end;width:100%;display:flex}.bar{width:70%;max-width:32px;min-height:4px;transition:opacity var(--transition-fast);border-radius:6px 6px 2px 2px;animation:.6s both barGrow;position:relative}@keyframes barGrow{0%{height:0!important}}.bar-tooltip{color:var(--text-primary);opacity:0;transition:opacity var(--transition-fast);white-space:nowrap;font-size:11px;font-weight:600;position:absolute;top:-24px;left:50%;transform:translate(-50%)}.bar:hover .bar-tooltip{opacity:1}.bar-label{color:var(--text-muted);margin-top:6px;font-size:11px}.tier-progress{animation:.4s fadeIn}.progress-visual-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.progress-item{text-align:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:transform var(--transition-fast);flex-direction:column;align-items:center;gap:6px;padding:16px 12px;display:flex}.progress-item:hover{transform:translateY(-2px)}.progress-emoji{font-size:36px;animation:3s ease-in-out infinite float}.progress-item-label{color:var(--text-primary);font-size:13px;font-weight:600}[data-tier=explorer] .progress-item-label{font-family:var(--font-display);font-size:15px}.progress-stage{color:var(--text-muted);font-size:11px;font-weight:500}.research-pipeline{align-items:center;gap:4px;margin-bottom:4px;display:flex}.pipeline-dot{opacity:.3;transition:opacity var(--transition-normal);font-size:16px}.pipeline-dot.active{opacity:1}.pipeline-line{background:var(--border-color);flex-shrink:0;width:12px;height:2px}@media (width<=768px){.progress-visual-grid{grid-template-columns:repeat(2,1fr)}}.getting-started{border-radius:var(--radius-lg);border:1px solid var(--border-color);background:linear-gradient(135deg, #3b82f61f, #8b5cf614), var(--bg-card);margin-bottom:20px;padding:18px 20px;animation:.4s fadeIn;position:relative}.gs-close{top:12px;width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset-inline-end:12px}.gs-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.gs-head{align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.gs-icon{background:var(--terra-blue);color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.gs-head h2{color:var(--text-primary);margin:0 0 2px;font-size:17px;font-weight:700}.gs-head p{color:var(--text-secondary);font-size:13px}.gs-steps{gap:10px;margin:0;padding:0;list-style:none;display:grid}.gs-steps li{color:var(--text-primary);align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.45;display:flex}.gs-num{background:var(--terra-blue);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:flex}.whats-new{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.wn-card{border-radius:var(--radius-lg);background:linear-gradient(0deg, #2dd4bf14, #2dd4bf14), var(--bg-card);border:1px solid #2dd4bf59;align-items:flex-start;gap:12px;padding:14px 16px;animation:.35s fadeIn;display:flex}.wn-icon{width:32px;height:32px;color:var(--terra-cyan,#2dd4bf);background:#2dd4bf2e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.wn-body{flex:1;min-width:0}.wn-tag{text-transform:uppercase;letter-spacing:.6px;color:var(--terra-cyan,#2dd4bf);margin-bottom:2px;font-size:10px;font-weight:700;display:inline-block}.wn-title{color:var(--text-primary);margin:0 0 3px;font-size:15px;font-weight:700}.wn-text{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.wn-close{color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:4px}.wn-close:hover{color:var(--text-primary);background:var(--bg-tertiary)}.ai-warmup{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.ai-lead{color:var(--text-primary);margin:0 0 14px;font-size:14px;line-height:1.5}.ai-list{flex-direction:column;gap:10px;margin:0 0 12px;padding:0;list-style:none;display:flex}.ai-row{grid-template-columns:minmax(72px,1fr) 2fr auto;align-items:center;gap:12px;display:grid}.ai-topic{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.ai-bar{border-radius:var(--radius-full);background:var(--bg-tertiary);height:8px;overflow:hidden}.ai-bar-fill{border-radius:var(--radius-full);height:100%;transition:width var(--transition-normal);display:block}.ai-bar-fill.soaring{background:var(--terra-green,#22c55e)}.ai-bar-fill.steady{background:var(--terra-blue,#3b82f6)}.ai-bar-fill.support{background:var(--terra-orange,#ff8a3d)}.ai-traj{text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;font-size:11px;font-weight:700}.ai-traj.soaring{color:var(--terra-green,#22c55e)}.ai-traj.steady{color:var(--terra-blue,#3b82f6)}.ai-traj.support{color:var(--terra-orange,#ff8a3d)}.ai-note{color:var(--text-muted);margin:0;font-size:12px;line-height:1.5}@media (width<=480px){.ai-row{grid-template-columns:1fr auto}.ai-bar{display:none}}.parent-dashboard{padding:20px 24px}.parent-header{justify-content:space-between;align-items:center;margin-bottom:20px;animation:.4s fadeIn;display:flex}.parent-header h1{color:var(--text-primary);margin:0 0 4px;font-size:22px;font-weight:700}.parent-header p{color:var(--text-secondary);font-size:14px}.parent-lock{border-radius:var(--radius-full);color:var(--terra-green);background:#22c55e1a;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;display:flex}.parent-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.child-overview{align-items:center;gap:24px;display:flex}.child-avatar{background:var(--bg-tertiary);border:3px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:28px;display:flex}.child-stats{flex:1;grid-template-columns:1fr 1fr;gap:6px 20px;display:grid}.child-stat-row{border-bottom:1px solid var(--border-color);justify-content:space-between;padding:4px 0;font-size:13px;display:flex}.child-stat-row span{color:var(--text-secondary)}.child-stat-row strong{color:var(--text-primary)}.privacy-controls{flex-direction:column;gap:14px;display:flex}.privacy-toggle{justify-content:space-between;align-items:center;gap:12px;display:flex}.toggle-info{flex-direction:column;gap:2px;display:flex}.toggle-label{color:var(--text-primary);font-size:13px;font-weight:600}.toggle-desc{color:var(--text-muted);font-size:11px}.toggle-switch{background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:pointer;width:44px;height:24px;transition:background var(--transition-fast);border-radius:12px;flex-shrink:0;padding:0;position:relative}.toggle-switch.on{background:var(--terra-green);border-color:var(--terra-green)}.toggle-knob{width:18px;height:18px;transition:transform var(--transition-fast);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.toggle-switch.on .toggle-knob{transform:translate(20px)}.privacy-notice{border-radius:var(--radius-sm);border-left:3px solid var(--terra-green);background:#22c55e0f;align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.privacy-notice span{color:var(--text-muted);font-size:11px;line-height:1.5}.privacy-notice svg{color:var(--terra-green);flex-shrink:0;margin-top:1px}.weekly-summary{color:var(--text-secondary);justify-content:space-between;margin-top:12px;font-size:13px;display:flex}.curriculum-selector{flex-direction:column;gap:12px;display:flex}.curr-desc{color:var(--text-secondary);font-size:13px;line-height:1.5}.curr-dropdown-wrap{position:relative}.lang-current-row{align-items:center;gap:8px;display:flex}.curr-dropdown-btn{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);width:100%;color:var(--text-primary);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;padding:10px 14px;font-family:inherit;display:flex}.curr-selected{font-size:13px;font-weight:600;display:block}.curr-region{color:var(--text-muted);font-size:11px;display:block}.curr-dropdown{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);z-index:50;max-height:320px;box-shadow:var(--shadow-lg);position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.curr-option{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;transition:background var(--transition-fast);background:0 0;border:none;justify-content:space-between;align-items:center;padding:10px 14px;font-family:inherit;font-size:13px;display:flex}.curr-option:hover{background:var(--bg-tertiary)}.curr-option.active{background:var(--tier-bg-accent,#22c55e14);font-weight:600}.milestones-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.milestone-card{background:var(--bg-tertiary);border-radius:var(--radius-sm);align-items:center;gap:8px;padding:10px 12px;display:flex}.mc-icon{background:var(--terra-green);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:flex}.mc-label{color:var(--text-primary);flex:1;font-size:12px;font-weight:600}.mc-date{color:var(--text-muted);font-size:11px}.alert-list{flex-direction:column;gap:8px;display:flex}.alert-item{border-radius:var(--radius-sm);border-left:3px solid;justify-content:space-between;align-items:center;padding:10px 12px;font-size:12px;display:flex}.alert-item.info{border-color:var(--terra-blue);color:var(--text-primary);background:#3b82f60f}.alert-item.success{border-color:var(--terra-green);color:var(--text-primary);background:#22c55e0f}.alert-item.warning{border-color:var(--terra-yellow);color:var(--text-primary);background:#eab3080f}.alert-time{color:var(--text-muted);white-space:nowrap;font-size:11px}@media (width<=768px){.parent-grid{grid-template-columns:1fr}.child-overview{text-align:center;flex-direction:column}.child-stats{grid-template-columns:1fr}.parent-header{flex-direction:column;align-items:flex-start;gap:12px}}.subscription-page{max-width:720px;margin:0 auto;padding:32px;animation:.4s fadeIn}.subscription-page h1{color:var(--text-primary);margin:0 0 6px;font-size:24px;font-weight:700}.sub-desc{color:var(--text-secondary);margin-bottom:24px;font-size:14px;line-height:1.5}.sub-error{border:1px solid var(--terra-red);border-radius:var(--radius-md);color:var(--terra-red);background:#ef44441a;margin-bottom:16px;padding:10px 16px;font-size:13px}.sub-empty{text-align:center;color:var(--text-muted);background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--radius-lg);padding:28px;font-size:14px}.sub-learner-list{flex-direction:column;gap:12px;display:flex}.sub-learner-row{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);align-items:center;gap:14px;padding:16px;display:flex}.sub-learner-avatar{background:var(--bg-tertiary);border:2px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;display:flex}.sub-learner-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sub-learner-name{color:var(--text-primary);font-size:16px;font-weight:700}.sub-learner-tier{color:var(--text-muted);font-size:12px}.sub-trial-note{color:var(--terra-blue);margin-top:2px;font-size:12px;font-weight:600}.sub-status{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;padding:4px 10px;font-size:11px;font-weight:700}.sub-status.active{color:var(--terra-green);background:#22c55e26}.sub-status.trial{color:var(--terra-blue);background:#3b82f626}.sub-status.paused{color:var(--terra-yellow);background:#eab30826}.sub-status.expired{color:var(--terra-red);background:#ef44441f}.sub-status.none{background:var(--bg-tertiary);color:var(--text-muted)}.sub-perks{color:var(--terra-green);border-radius:var(--radius-md);background:#22c55e14;border:1px solid #22c55e40;margin:-8px 0 20px;padding:10px 14px;font-size:13px;font-weight:600;line-height:1.5}.sub-price-was{color:var(--text-muted);text-decoration:line-through}.sub-save{color:var(--terra-green);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.4px;background:#22c55e26;margin-left:6px;padding:1px 7px;font-size:10px;font-weight:700;display:inline-block}.sub-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.sub-action.pause{background:var(--bg-tertiary);color:var(--terra-yellow);border:1px solid var(--border-color)}.sub-action.resume{background:var(--terra-green);color:#fff}.sub-classcode{color:var(--text-secondary);cursor:pointer;align-items:center;gap:8px;margin:0 0 16px;font-size:13px;display:flex}.sub-classcode input{cursor:pointer;flex:none;width:15px;height:15px}.sub-classcode-note{color:var(--text-muted);margin:-10px 0 16px;font-size:12px;line-height:1.5}.sub-action{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast);border:none;align-items:center;gap:6px;padding:9px 18px;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.sub-action.subscribe{background:var(--terra-orange);color:#fff}.sub-action.manage{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.sub-action:hover{opacity:.9}.sub-action:disabled{opacity:.6;cursor:wait}.sub-spin{animation:1s linear infinite subSpin}@keyframes subSpin{to{transform:rotate(360deg)}}.sub-note{color:var(--text-muted);text-align:center;margin-top:24px;font-size:12px;line-height:1.6}@media (width<=600px){.sub-learner-row{flex-wrap:wrap}.sub-action{justify-content:center;width:100%}}.account-page{max-width:760px;margin:0 auto;padding:32px;animation:.4s fadeIn}.account-header{margin-bottom:24px}.account-header h1{color:var(--text-primary);margin:0 0 6px;font-size:24px;font-weight:700}.account-header p{color:var(--text-secondary);font-size:14px}.account-error{border:1px solid var(--terra-red);border-radius:var(--radius-md);color:var(--terra-red);background:#ef44441a;margin-bottom:16px;padding:10px 16px;font-size:13px}.account-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);align-items:center;gap:16px;margin-bottom:14px;padding:20px;display:flex}.account-card.danger{border-color:#ef44444d}.account-card-icon{background:var(--bg-tertiary);width:44px;height:44px;color:var(--terra-blue);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.account-card-icon.danger{color:var(--terra-red);background:#ef44441f}.account-card-body{flex:1}.account-card-body h2{color:var(--text-primary);margin:0 0 2px;font-size:15px;font-weight:600}.account-card-body p{color:var(--text-secondary);font-size:13px;line-height:1.4}.account-btn{border-radius:var(--radius-md);background:var(--terra-blue);color:#fff;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast);border:none;align-items:center;gap:8px;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.account-btn:hover{opacity:.9}.account-btn:disabled{opacity:.5;cursor:not-allowed}.account-btn.ghost{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.account-btn.danger{background:var(--terra-red)}.account-btn .spin{animation:1s linear infinite spinAnim}@keyframes spinAnim{to{transform:rotate(360deg)}}.delete-confirm{flex-direction:column;gap:10px;width:100%;max-width:320px;display:flex}.delete-warning{color:var(--terra-red);align-items:flex-start;gap:8px;font-size:12px;line-height:1.4;display:flex}.delete-warning svg{flex-shrink:0;margin-top:1px}.delete-confirm-input{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);outline:none;padding:8px 12px;font-size:14px}.delete-confirm-input:focus{border-color:var(--terra-red)}.delete-confirm-actions{justify-content:flex-end;gap:8px;display:flex}@media (width<=640px){.account-card{flex-direction:column;align-items:flex-start}.delete-confirm{max-width:100%}}.pin-set-badge{color:var(--terra-green);font-size:13px}.pin-set-row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.pin-set-input{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);width:130px;color:var(--text-primary);letter-spacing:4px;outline:none;padding:8px 12px;font-family:inherit;font-size:15px}.pin-set-input:focus{border-color:var(--terra-blue)}.account-pin-msg{margin-top:8px;font-size:12px}.account-pin-msg.err{color:var(--terra-red)}.account-pin-msg.ok{color:var(--terra-green)}.mfa-enroll{flex-direction:column;align-items:flex-start;gap:10px;margin-top:12px;display:flex}.mfa-step{color:var(--text-secondary);font-size:13px}.mfa-qr{background:#fff;border-radius:10px;padding:8px}.mfa-secret{font-family:var(--font-mono,monospace);background:var(--bg-tertiary);color:var(--text-primary);word-break:break-all;border-radius:6px;padding:6px 10px;font-size:13px}.mfa-enroll-actions{gap:10px;display:flex}.privacy-page{background:var(--bg-primary);min-height:100vh;padding:32px 24px 64px;animation:.4s fadeIn}.privacy-inner{max-width:720px;margin:0 auto}.privacy-back{color:var(--text-secondary);font-size:14px;font-family:var(--font-display);align-items:center;gap:6px;margin-bottom:24px;text-decoration:none;display:inline-flex}.privacy-back:hover{color:var(--text-primary)}.privacy-title{color:var(--terra-green);align-items:center;gap:12px;display:flex}.privacy-title h1{color:var(--text-primary);margin:0;font-size:28px;font-weight:700}.privacy-meta{color:var(--text-secondary);margin:4px 0 28px;font-size:14px}.privacy-inner h2{color:var(--text-primary);margin:24px 0 6px;font-size:17px;font-weight:600}.privacy-inner p,.privacy-inner li{color:var(--text-secondary);font-size:14px;line-height:1.6}.privacy-inner ul{flex-direction:column;gap:6px;padding-left:20px;display:flex}.privacy-inner strong{color:var(--text-primary)}.privacy-note{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);margin-top:32px;padding:14px 16px;font-size:12px;font-style:italic}.levels-intro{background:linear-gradient(135deg, #8b5cf60f, #2dd4bf0f), var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:18px;padding:18px 18px 20px;animation:.35s fadeIn;position:relative}.li-close{top:12px;color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;border-radius:6px;padding:4px;position:absolute;inset-inline-end:12px}.li-close:hover{color:var(--text-primary);background:var(--bg-tertiary)}.li-head{align-items:flex-start;gap:12px;margin-bottom:16px;padding-inline-end:28px;display:flex}.li-icon{color:#8b5cf6;background:#8b5cf626;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.li-head h2{color:var(--text-primary);margin:0 0 3px;font-size:16px;font-weight:700}.li-head p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.li-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.li-card{border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid;border-inline-start-width:3px;flex-direction:column;gap:3px;padding:12px;display:flex}.li-emoji{font-size:22px;line-height:1}.li-title{font-size:14px;font-weight:700}.li-ages{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:600}.li-desc{color:var(--text-secondary);margin-top:2px;font-size:12px;line-height:1.45}@media (width<=640px){.li-grid{grid-template-columns:1fr}}.child-profile-page{max-width:760px;margin:0 auto;padding:32px;animation:.4s fadeIn}.cp-header{margin-bottom:24px}.cp-header h1{color:var(--text-primary);margin:0 0 6px;font-size:24px;font-weight:700}.cp-header p{color:var(--text-secondary);font-size:14px}.cp-empty{text-align:center;background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--radius-lg);margin-bottom:16px;padding:32px}.cp-empty-icon{margin-bottom:8px;font-size:40px;display:block}.cp-empty p{color:var(--text-secondary);font-size:14px}.cp-list{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.cp-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);align-items:center;gap:14px;padding:16px;display:flex}.cp-avatar{background:var(--bg-tertiary);border:2px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:26px;display:flex}.cp-info{flex-direction:column;flex:1;align-items:flex-start;gap:3px;min-width:0;display:flex}.cp-name{color:var(--text-primary);font-size:16px;font-weight:700}.cp-meta{color:var(--text-muted);font-size:12px}.cp-sub-chip{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;font-size:10px;font-weight:700}.cp-sub-chip.active{color:var(--terra-green);background:#22c55e26}.cp-sub-chip.trial{color:var(--terra-blue);background:#3b82f626}.cp-sub-chip.paused{color:var(--terra-yellow);background:#eab30826}.cp-sub-chip.expired{color:var(--terra-red);background:#ef44441f}.cp-sub-chip.none{background:var(--bg-tertiary);color:var(--text-muted)}.cp-viewas.locked{background:var(--terra-orange)}.cp-viewas.resume{background:var(--terra-green)}.cp-viewas:disabled{opacity:.6;cursor:wait}.cp-lang{position:relative}.cp-lang-btn{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;align-items:center;gap:6px;padding:7px 10px;font-family:inherit;font-size:12px;display:flex}.cp-lang-menu{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:30;min-width:150px;max-height:50vh;padding:6px;animation:.15s fadeIn;position:absolute;top:calc(100% + 4px);right:0;overflow-y:auto}.cp-lang-item{border-radius:var(--radius-sm);width:100%;color:var(--text-secondary);cursor:pointer;text-align:start;background:0 0;border:none;align-items:center;gap:8px;padding:8px 10px;font-family:inherit;font-size:13px;display:flex}.cp-lang-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.cp-lang-item.active{color:var(--terra-blue);font-weight:600}.cp-viewas{border-radius:var(--radius-md);background:var(--terra-blue);color:#fff;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast);border:none;align-items:center;gap:6px;padding:9px 16px;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.cp-viewas:hover{opacity:.9}.cp-edit{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:color var(--transition-fast), border-color var(--transition-fast);align-items:center;gap:6px;padding:8px 12px;font-family:inherit;font-size:12px;font-weight:600;display:inline-flex}.cp-edit:hover{color:var(--text-primary);border-color:var(--text-muted)}.cp-level-preview{border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid;border-inline-start-width:3px;align-items:center;gap:12px;margin-bottom:16px;padding:12px 14px;display:flex}.cp-lp-emoji{flex-shrink:0;font-size:26px;line-height:1}.cp-lp-text{flex-direction:column;gap:3px;min-width:0;display:flex}.cp-lp-title{font-size:14px;font-weight:700}.cp-lp-desc{color:var(--text-secondary);font-size:12px;line-height:1.45}.cp-keep-note{color:var(--terra-green);border-radius:var(--radius-md);background:#22c55e14;border:1px solid #22c55e38;margin:0 0 12px;padding:9px 12px;font-size:12px;line-height:1.5}.cp-handover{border-radius:var(--radius-lg);color:var(--terra-blue);background:#3b82f60f;border:1px solid #3b82f638;align-items:flex-start;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex}.cp-handover>svg{flex-shrink:0;margin-top:2px}.cp-handover strong{color:var(--text-primary);margin-bottom:3px;font-size:13px;display:block}.cp-handover p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.5}.cp-add-trigger{border-radius:var(--radius-md);border:1px dashed var(--border-color);color:var(--terra-blue);cursor:pointer;background:0 0;align-items:center;gap:8px;padding:12px 20px;font-family:inherit;font-size:14px;font-weight:600;display:inline-flex}.cp-add-trigger:hover{background:var(--bg-card)}.cp-add-form{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px}.cp-add-form h3{color:var(--text-primary);margin:0 0 12px;font-size:16px}.cp-input{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);width:100%;color:var(--text-primary);outline:none;margin-bottom:12px;padding:10px 14px;font-family:inherit;font-size:15px}.cp-input:focus{border-color:var(--terra-blue)}.cp-field-label{color:var(--text-muted);margin-bottom:6px;font-size:12px;display:block}.cp-age-grid{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.cp-age-btn{border:1px solid var(--border-color);background:var(--bg-tertiary);width:40px;height:40px;color:var(--text-primary);cursor:pointer;border-radius:50%;font-family:inherit;font-size:14px;font-weight:600}.cp-age-btn.active{border-color:var(--terra-blue);color:var(--terra-blue);background:#3b82f626}.cp-avatar-grid{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.cp-avatar-opt{border:2px solid var(--border-color);background:var(--bg-tertiary);cursor:pointer;border-radius:12px;width:44px;height:44px;font-size:22px}.cp-avatar-opt.active{border-color:var(--terra-blue);background:#3b82f61f}.cp-add-error{color:var(--terra-red);margin:4px 0 8px;font-size:13px}.cp-add-actions{justify-content:flex-end;gap:8px;display:flex}.cp-btn{border-radius:var(--radius-md);cursor:pointer;border:none;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:600}.cp-btn.primary{background:var(--terra-blue);color:#fff}.cp-btn.primary:disabled{opacity:.5;cursor:not-allowed}.cp-btn.ghost{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}@media (width<=640px){.cp-card{flex-wrap:wrap}.cp-viewas{justify-content:center;width:100%}}.curriculum-page{max-width:680px;margin:0 auto;padding:32px;animation:.4s fadeIn}.curr-page-header{margin-bottom:24px}.curr-page-header h1{color:var(--text-primary);margin:0 0 6px;font-size:24px;font-weight:700}.curr-page-header p{color:var(--text-secondary);font-size:14px;line-height:1.5}.curr-group-head{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);align-items:center;gap:8px;margin:22px 0 10px;font-size:13px;font-weight:700;display:flex}.curr-group-head:first-of-type{margin-top:4px}.curr-options-list{flex-direction:column;gap:10px;display:flex}.curr-option-row{border-radius:var(--radius-lg);border:2px solid var(--border-color);background:var(--bg-card);cursor:pointer;text-align:left;transition:all var(--transition-fast);justify-content:space-between;align-items:center;padding:16px 18px;font-family:inherit;display:flex}.curr-option-row:hover{border-color:var(--terra-blue)}.curr-option-row.active{border-color:var(--terra-blue);background:#3b82f614}.curr-option-text{flex-direction:column;gap:2px;display:flex}.curr-option-label{color:var(--text-primary);font-size:15px;font-weight:600}.curr-option-region{color:var(--text-muted);font-size:12px}.curr-check{color:var(--terra-blue)}.curr-page-note{color:var(--text-muted);margin-top:24px;font-size:12px;line-height:1.6}.commerce-page{background:var(--bg-primary);min-height:100vh;padding:32px 24px 64px;animation:.4s fadeIn}.commerce-inner{max-width:720px;margin:0 auto}.commerce-back{color:var(--text-secondary);font-size:14px;font-family:var(--font-display);align-items:center;gap:6px;margin-bottom:24px;text-decoration:none;display:inline-flex}.commerce-back:hover{color:var(--text-primary)}.commerce-title{color:var(--terra-blue);align-items:center;gap:12px;display:flex}.commerce-title h1{color:var(--text-primary);margin:0;font-size:24px;font-weight:700}.commerce-meta{color:var(--text-muted);margin:4px 0 20px;font-size:13px}.commerce-intro{color:var(--text-secondary);margin-bottom:20px;font-size:14px}.commerce-table{border-collapse:collapse;border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;overflow:hidden}.commerce-table th,.commerce-table td{text-align:start;vertical-align:top;border-bottom:1px solid var(--border-color);padding:12px 14px;font-size:13px;line-height:1.6}.commerce-table th{background:var(--bg-card);width:34%;color:var(--text-primary);font-weight:600}.commerce-table td{color:var(--text-secondary)}.commerce-table tr:last-child th,.commerce-table tr:last-child td{border-bottom:none}.commerce-note{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);margin-top:24px;padding:14px 16px;font-size:12px;line-height:1.7}@media (width<=560px){.commerce-table th{width:40%}}
