@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;600;800&display=swap";:root{--bg-gradient:linear-gradient(135deg, #e0f2fe 0%, #bae6fd 100%);--primary:#08c;--primary-hover:#0077b3;--secondary:#ffc800;--accent:#58cc02;--duo-green:#58cc02;--duo-green-dark:#46a302;--duo-sky:#1cb0f6;--duo-sky-dark:#1899d6;--duo-card:#fff;--duo-border:#e5e5e5;--duo-text:#3c3c3c;--duo-muted:#777;--duo-path:#dcdcdc;--error:#ff4b4b;--text-main:#2f3337;--white:#fff;--glass:#fff6;--glass-border:#fff9;--shadow:0 8px 32px 0 #1f268726;--font-main:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--ui-radius-sm:10px;--ui-radius-md:14px;--ui-radius-lg:20px;--ui-space-1:8px;--ui-space-2:12px;--ui-space-3:16px;--ui-space-4:20px;--ui-space-5:24px;--ui-panel-dark:#0f172ad1;--ui-panel-dark-border:#ffffff29;--ui-text-muted-on-dark:#ffffffc7;--ui-content-max:980px;--ui-content-narrow:760px;--ui-page-gutter:clamp(12px, 2.4vw, 24px);--ui-type-title-xl:clamp(1.9rem, 1.55rem + 1.2vw, 2.5rem);--ui-type-title-lg:clamp(1.45rem, 1.2rem + .75vw, 1.95rem);--ui-type-subtitle:clamp(.95rem, .9rem + .2vw, 1.05rem);--ui-type-body:.95rem;--ui-type-caption:.8rem}*{box-sizing:border-box;margin:0;padding:0}html{scrollbar-gutter:stable;overflow-y:auto}body{font-family:var(--font-main);background:var(--bg-gradient);color:var(--text-main);-webkit-font-smoothing:antialiased;min-height:100vh;overflow:hidden auto}@media (height<=840px){.startup-wrapper,.mode-select-wrapper,.install-consent-root,.install-screen-root,.privacy-wrapper{justify-content:flex-start!important}}button{cursor:pointer;text-transform:uppercase;border:none;border-radius:16px;font-family:inherit;font-weight:800;transition:all .2s cubic-bezier(.175,.885,.32,1.275)}button:active{transform:translateY(2px)}.glass-card{background:var(--glass);-webkit-backdrop-filter:blur(12px);border:2px solid var(--glass-border);box-shadow:var(--shadow);border-radius:24px}@keyframes shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-4px)}40%,60%{transform:translate(4px)}}.shake{animation:.5s cubic-bezier(.36,.07,.19,.97) both shake}@keyframes pulse-red{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.danger-pulse{animation:1.5s infinite pulse-red}.app-container{flex-direction:column;justify-content:flex-start;align-items:center;width:100%;min-height:100dvh;margin:0 auto;padding:0;display:flex}@media (width>=768px){.app-container{width:100%}}.startup-wrapper{flex-direction:column;justify-content:flex-start;align-items:center;width:100%;min-height:100dvh;margin:0;padding:16px 12px 24px;display:flex}.main-card{flex-direction:column;gap:12px;width:100%;max-width:760px;min-height:auto;padding:24px;display:flex}.header{text-align:center}.header h1{color:var(--primary);margin-bottom:8px;font-size:1.45rem;font-weight:800}.header p{color:#475569;font-size:.92rem;font-weight:500;line-height:1.55}.logo-icon{object-fit:cover;border-radius:14px;width:50px;height:50px;margin:0 auto 4px;display:block;box-shadow:0 4px 12px #08c3}.section{flex-direction:column;align-items:center;gap:6px;width:100%;display:flex}.section label{color:#334155;text-transform:uppercase;font-weight:700;font-size:var(--ui-type-caption);letter-spacing:.05em;text-align:center;justify-content:center;align-items:center;gap:8px;display:flex}.duo-3d-btn{cursor:pointer;background:#fffffff5;border:1px solid #94a3b859;transition:all .2s;position:relative;box-shadow:0 8px 20px #0f172a14}.duo-3d-btn:hover{background:#f8fafcf2}.duo-3d-btn:active{transform:translateY(2px);box-shadow:0 6px 16px #0f172a1f}.duo-3d-btn.active{border-color:var(--primary);background:#0284c714;box-shadow:0 12px 24px #0284c72e}.duo-3d-btn.active:active{box-shadow:0 8px 16px #0284c729}.duo-3d-btn.active .name,.duo-3d-btn.active .duo-flag{color:var(--primary)}.duo-3d-btn:focus-visible{outline-offset:3px;outline:3px solid #0284c759}.duo-flag{object-fit:cover;border:1px solid #fff3;border-radius:4px;flex-shrink:0;width:24px;height:18px;box-shadow:0 3px #0000001a}.lang-grid{flex-direction:column;gap:8px;width:min(100%,360px);margin:0 auto;display:flex}.lang-btn{color:#334155;text-align:center;border-radius:12px;justify-content:center;align-items:center;gap:6px;min-height:52px;padding:6px 10px;font-size:.85rem;font-weight:700;display:flex}.lang-btn .name{text-align:left;min-width:100px}.lang-btn.active{color:var(--primary)}.start-btn{color:#fff;text-transform:uppercase;letter-spacing:.05em;background:#58cc02;border:none;border-radius:12px;width:100%;margin:12px auto 0;padding:14px;font-size:1rem;font-weight:800;transition:all .1s;box-shadow:0 4px #46a302}.start-btn:hover{background:#61e002;transform:none;box-shadow:0 4px #46a302}.start-btn:active{transform:translateY(3px);box-shadow:0 2px #46a302}.footer{justify-content:center;align-items:center;height:36px;margin-top:4px;display:flex}.privacy-link{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-size:.75rem;font-weight:600;transition:all .2s;display:flex}.privacy-link:hover{color:#64748b;background:#f1f5f9}@media (width>=640px){.startup-wrapper{justify-content:center;padding:32px 28px 44px}.main-card{gap:38px;padding:52px 40px}.header h1{font-size:2.8rem}.header p{font-size:1.1rem}.logo-icon{border-radius:28px;width:128px;height:128px;margin-bottom:24px}.section{gap:20px}.lang-grid{flex-direction:column;gap:16px;width:100%;max-width:440px;display:flex}.lang-btn{border-radius:18px;gap:14px;min-height:64px;padding:16px 18px;font-size:1.05rem}.lang-btn .name{min-width:120px}.duo-flag{border-radius:8px;width:32px;height:24px}.start-btn{border-radius:16px;margin-top:24px;padding:20px;font-size:1.05rem;box-shadow:0 5px #46a302}.start-btn:hover{box-shadow:0 5px #46a302}.start-btn:active{box-shadow:0 2px #46a302}}@media (width>=1024px){.startup-wrapper{min-height:100dvh;padding:0}.main-card{gap:48px;width:100%;max-width:760px;margin:0 auto;padding:60px}.header h1{font-size:3.2rem}.logo-icon{width:140px;height:140px}.lang-grid{max-width:440px}}@media (width>=1440px){.main-card{max-width:700px;padding:72px}.header h1{font-size:3.6rem}.lang-grid{gap:20px;max-width:440px}}.hub-container.duo-hub{color:#334155;background:linear-gradient(#ddf4ff 0%,#f7f9fb 28% 100%);width:100%;min-height:100dvh;padding:0 0 48px}.hub-top-band{z-index:100;background:#fff;border-bottom:2px solid #e2e8f0;margin-bottom:16px;padding:10px 12px;position:sticky;top:0;box-shadow:0 4px 12px #00000008}.duo-hub-header{justify-content:space-between;align-items:center;gap:8px;width:100%;max-width:820px;margin:0 auto;display:flex}.duo-hub-back{color:#64748b;cursor:pointer;box-shadow:none;text-transform:uppercase;background:0 0;border:none;border-radius:12px;flex:1;align-items:center;gap:4px;min-width:0;padding:6px 10px;font-size:.8rem;font-weight:800;transition:all .15s;display:flex}.duo-hub-back span{white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.duo-hub-back:hover{color:#0f172a;background:#f1f5f9}.duo-hub-back:active{box-shadow:none;transform:translateY(1px)}.duo-hub-title{color:#0f172a;letter-spacing:-.02em;text-shadow:none;text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:2;margin:0;font-size:1.05rem;font-weight:900;overflow:hidden}.duo-hub-stats{flex:1;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.duo-stat-pill{color:#334155;box-shadow:none;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:4px;padding:4px 8px;font-size:.76rem;font-weight:800;display:flex}.duo-stat-pill--fire{background:#fff7ed;border-color:#ffedd5}.duo-hub-main{max-width:820px;padding:0 var(--ui-page-gutter);width:100%;margin:0 auto}.hub-unit{margin-bottom:24px}.hub-unit-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.hub-unit-badge{color:#fff;background:#38bdf8;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;font-weight:900;display:flex;box-shadow:0 3px #0284c7}.hub-unit-title{color:#1e293b;letter-spacing:-.02em;margin:0;font-size:1.15rem;font-weight:900}.hub-unit-sub{color:#64748b;margin:2px 0 0;font-size:.82rem;font-weight:600}.mission-cards-grid{grid-template-columns:1fr;gap:12px;width:100%;display:grid}.mission-card-item{cursor:pointer;text-transform:none;text-align:left;background:#fff;border:2px solid #e2e8f0;border-radius:16px;align-items:center;gap:12px;padding:12px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative;box-shadow:0 4px #e2e8f0}.mission-card-item:hover:not(.is-locked){border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 6px #cbd5e1}.mission-card-item:active:not(.is-locked){transform:translateY(2px);box-shadow:0 2px #cbd5e1}.mission-card-item.is-locked{opacity:.75;cursor:not-allowed;background:#f1f5f9;border-color:#e2e8f0;box-shadow:0 4px #cbd5e1}.mission-card-left{flex-shrink:0}.mission-card-btn{color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex;box-shadow:0 3px #00000026}.mission-card-btn svg{width:16px;height:16px}.mission-card-item.is-locked .mission-card-btn{color:#64748b;cursor:not-allowed;background:#cbd5e1!important;box-shadow:0 3px #94a3b8!important}.mission-card-right{flex-direction:column;flex-grow:1;gap:4px;min-width:0;display:flex}.mission-card-header-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.mission-card-right h3{color:#1e293b;text-transform:none;letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.98rem;font-weight:800;overflow:hidden}.mission-last-played-tag{color:#0284c7;text-transform:uppercase;letter-spacing:.03em;background:#e0f2fe;border-radius:20px;flex-shrink:0;padding:2px 8px;font-size:.68rem;font-weight:800}.mission-card-right p{color:#64748b;text-transform:none;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 4px;font-size:.82rem;font-weight:600;line-height:1.45;display:-webkit-box;overflow:hidden}.mission-card-footer{justify-content:flex-end;align-items:center;gap:12px;margin-top:4px;display:flex}.mission-card-meta{gap:8px;display:flex}.mission-meta-badge{color:#0284c7;text-transform:uppercase;letter-spacing:.02em;background:#e0f2fe;border-radius:8px;align-items:center;gap:4px;padding:3px 6px;font-size:.68rem;font-weight:800;display:flex}.mission-card-status{font-size:.76rem;font-weight:800}@media (width>=640px){.hub-top-band{margin-bottom:24px;padding:12px 16px}.duo-hub-header{gap:0}.duo-hub-back{padding:8px 12px;font-size:.9rem}.duo-hub-back span{font-size:.9rem}.duo-hub-title{pointer-events:none;flex:none;font-size:1.15rem;position:absolute;left:50%;transform:translate(-50%)}.duo-hub-stats{flex:none}.duo-stat-pill{padding:5px 8px;font-size:.8rem}.hub-unit{margin-bottom:32px}.hub-unit-title{font-size:1.25rem}.hub-unit-sub{font-size:.88rem}.mission-cards-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.mission-card-item{border-radius:20px;gap:16px;padding:16px;box-shadow:0 4px #e2e8f0}.mission-card-btn{width:46px;height:46px}.mission-card-btn svg{width:20px;height:20px}.mission-card-right h3{font-size:1.05rem}.mission-card-right p{-webkit-line-clamp:3;font-size:.88rem}.mission-meta-badge{padding:4px 8px;font-size:.72rem}.mission-card-status{font-size:.8rem}}.level-box{border-radius:var(--ui-radius-md);background:#fff;border:2px solid #e2e8f0;align-items:center;gap:12px;padding:9px 14px;display:flex;box-shadow:0 4px 6px -1px #0000001a}.level-badge{background:var(--primary);color:#fff;border-radius:var(--ui-radius-sm);justify-content:center;align-items:center;width:32px;height:32px;font-weight:800;display:flex;position:relative;box-shadow:0 4px #069}.level-num{z-index:2;font-size:.9rem}.xp-info{flex-direction:column;flex:1;gap:4px;display:flex}.xp-bar-container{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;height:8px;overflow:hidden}.xp-bar-fill{background:linear-gradient(90deg,#3b82f6,#0ea5e9);border-radius:4px;height:100%}.xp-text{color:#64748b;letter-spacing:.03em;font-size:.72rem;font-weight:700}.combo-meter{bottom:max(24px, env(safe-area-inset-bottom,0px));right:max(20px, env(safe-area-inset-right,0px));z-index:40;background:#fff;border:3px solid #e2e8f0;border-radius:20px;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:10px 18px;display:flex;position:fixed;box-shadow:0 12px 28px #0000002e}.combo-meter.high-combo{color:#b45309;background:linear-gradient(135deg,#fff 0%,#fffbeb 100%);border-color:#ffc800}.combo-zap{color:#ffc800;filter:drop-shadow(0 0 8px #ffc80080)}.combo-details{flex-direction:column;display:flex}.combo-number{font-size:2rem;font-weight:900;line-height:1}.combo-label{text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;font-weight:800}.combo-multiplier{color:#fff;background:#58cc02;border-radius:8px;padding:4px 8px;font-size:.8rem;font-weight:800;box-shadow:0 2px #3d8e00}.tutorial-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:500;background:#0f172ab8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.tutorial-card{text-align:center;-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;border:1px solid #fffffff2;border-radius:20px;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:500px;max-height:90vh;padding:24px 16px;display:flex;position:relative;overflow-y:auto;box-shadow:0 24px 64px #00000047}.tutorial-card .close-btn{color:#475569;background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:8px;display:flex;position:absolute;top:20px;right:20px}.tutorial-card .close-btn:hover{color:#0f172a;background:#e2e8f0}.tutorial-card header h1{color:#1e293b;margin-top:8px;font-size:1.5rem;font-weight:950}.tutorial-steps{text-align:left;flex-direction:column;gap:16px;width:100%;display:flex}.step{align-items:center;gap:12px;display:flex}.step-icon{color:#08c;background:#f1f5f9;border-radius:8px;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;display:flex}.step-icon svg{width:18px;height:18px}.step-text h3{color:#0f172a;margin-bottom:2px;font-size:.95rem;font-weight:800}.step-text p{color:#334155;font-size:.82rem;font-weight:500;line-height:1.4}.start-game-btn{background:var(--accent);color:#fff;text-transform:uppercase;width:100%;padding:14px;font-size:1rem;font-weight:900;box-shadow:0 4px #3d8e00}@media (width>=600px){.tutorial-card{border-radius:32px;gap:24px;max-height:none;padding:40px;overflow-y:visible}.tutorial-card header svg{width:auto;height:auto}.tutorial-card header h1{margin-top:12px;font-size:2.2rem}.tutorial-steps{gap:24px}.step{gap:16px}.step-icon{border-radius:12px;width:48px;min-width:48px;height:48px}.step-icon svg{width:auto;height:auto}.step-text h3{margin-bottom:6px;font-size:1.1rem}.step-text p{font-size:.95rem;line-height:1.55}.start-game-btn{border-radius:16px;padding:20px;font-size:1.2rem;box-shadow:0 6px #3d8e00}}.editor-wrapper{color:#fff;flex-direction:column;min-height:100dvh;display:flex;position:relative;overflow:hidden auto}.mission-hud{z-index:10;flex-direction:column;align-items:stretch;gap:14px;width:100%;padding:16px 12px;display:flex}.hud-left{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.back-to-hub-btn{border:1px solid var(--ui-panel-dark-border);border-radius:var(--ui-radius-md);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1f;align-items:center;gap:8px;padding:8px 14px;font-weight:700;transition:all .2s;display:flex}.back-to-hub-btn:hover{background:#ffffff2e;transform:none}.mission-tracker{background:var(--ui-panel-dark);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--ui-panel-dark-border);color:#fff;border-radius:16px;order:-1;width:100%;max-width:none;padding:16px;box-shadow:0 6px 18px #00000029}.quest-step-row{opacity:.95;align-items:center;gap:8px;margin-bottom:8px;font-size:.8rem;font-weight:700;line-height:1.3;display:flex}.quest-step-hint{opacity:.9;color:var(--ui-text-muted-on-dark);margin-bottom:14px;font-size:.78rem;font-weight:500;line-height:1.4}.step-objectives{padding:12px var(--ui-space-3);border-radius:var(--ui-radius-md);background:#00000029;border:1px solid #ffffff17;margin-bottom:0}.simple-step-objectives{flex-direction:column;gap:10px;display:flex}.objective-step-label{opacity:.78;letter-spacing:.02em;font-size:.74rem;font-weight:700;line-height:1.3}.objective-context{color:#ffffffe6;font-size:.84rem;font-weight:500;line-height:1.35}.objective-context-label{color:#ffffffb8;font-weight:700}.objective-context-value{color:#fffffff0;font-weight:600}.objective-main-chip{background:linear-gradient(#38bdf82e 0%,#0ea5e91a 100%);border:1px solid #7dd3fc4d;border-radius:12px;align-items:center;gap:10px;margin-top:2px;padding:10px 12px;display:flex}.objective-main-dot{background:#67e8f9;border-radius:999px;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 0 3px #67e8f938}.objective-main{color:#fff;font-size:1.03rem;font-weight:800;line-height:1.25}.coach-hint-card{background:#0f172a5c;border:1px solid #94a3b859;border-radius:12px;margin-top:10px;padding:10px 12px}.coach-hint-title{text-transform:uppercase;letter-spacing:.06em;color:#e2e8f0db;margin-bottom:6px;font-size:.72rem;font-weight:800}.coach-hint-body{white-space:pre-wrap;color:#f8fafcf2;margin:0;font-family:Outfit,sans-serif;font-size:.88rem;line-height:1.35}.finish-mission-btn{color:#f8fafc;cursor:pointer;background:linear-gradient(#0ea5e959,#0284c747);border:1px solid #38bdf88c;border-radius:12px;width:100%;margin-top:10px;padding:11px 12px;font-weight:800}.side-quests-card{background:#1e293b57;border:1px solid #94a3b852;border-radius:12px;margin-top:10px;padding:10px 12px}.side-quests-title{letter-spacing:.04em;color:#e2e8f0eb;margin-bottom:7px;font-size:.75rem;font-weight:800}.side-quests-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.side-quest-item{color:#f1f5f9eb;align-items:center;gap:8px;font-size:.82rem;display:flex}.side-quest-item.done{color:#86efacfa}.quality-debug-card{background:#0206178c;border:1px solid #94a3b859;border-radius:12px;margin-top:10px;padding:10px 12px}.quality-debug-title{text-transform:uppercase;letter-spacing:.05em;color:#bfdbfef2;margin-bottom:6px;font-size:.74rem;font-weight:800}.quality-debug-body{color:#e2e8f0f2;white-space:pre-wrap;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.72rem;line-height:1.35}.session-overlay{text-align:center;z-index:20;pointer-events:auto;flex-direction:column;justify-content:center;align-items:center;gap:16px;width:calc(100% - 48px);max-width:420px;height:fit-content;max-height:min(70vh,420px);margin:auto;padding:32px 28px;display:flex;position:absolute;inset:0}.session-break-overlay h2{letter-spacing:.04em;font-size:1.75rem;font-weight:800}.session-break-overlay p{opacity:.9;font-size:.95rem;line-height:1.45}.breath-ring{border:3px solid #ffffff73;border-radius:50%;width:88px;height:88px;animation:3s ease-in-out infinite breath-scale}@keyframes breath-scale{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}.tap-pulse-overlay h2{font-size:1.5rem;font-weight:800}.tap-pulse-orb{cursor:pointer;background:#ffffff1f;border:2px solid #ffc80080;border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;margin-top:8px;padding:0;display:flex}.tap-pulse-orb:active{transform:scale(.96)}.tap-pulse-core{background:radial-gradient(circle at 35% 35%,#fff6cc,#ffc800 45%,#e67e22 100%);border-radius:50%;width:64px;height:64px;display:block;box-shadow:0 0 24px #ffc80099}.tap-pulse-count{letter-spacing:.08em;font-family:JetBrains Mono,monospace;font-size:1.1rem;font-weight:800}.level-up-flavor{max-width:280px;font-size:1.05rem;font-weight:600;line-height:1.4}.tracker-header{margin-bottom:var(--ui-space-3);opacity:.95;justify-content:space-between;align-items:center;font-size:.9rem;font-weight:700;display:flex}.tracker-header-left{align-items:center;gap:8px;display:flex}.tracker-toggle-btn{color:#ffffffb3;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex}.tracker-toggle-btn:hover{color:#fff;background:#ffffff1a}.step-objectives-compact{padding:12px var(--ui-space-3);border-radius:var(--ui-radius-md);background:#0003;border:1px solid #ffffff14;flex-direction:column;gap:12px;display:flex}.objective-compact-row{align-items:center;gap:10px;display:flex}.objective-step-badge{color:#38bdf8;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;background:#1cb0f626;border:1px solid #1cb0f659;border-radius:8px;padding:3px 8px;font-size:.72rem;font-weight:800}.objective-compact-main{color:#fffffff2;text-overflow:ellipsis;white-space:nowrap;flex-grow:1;font-size:.88rem;font-weight:700;line-height:1.35;overflow:hidden}.finish-mission-btn.compact-btn{border-radius:8px;align-self:flex-end;width:auto;margin-top:0;padding:6px 12px;font-size:.8rem}.goal-progress-bar{background:#0003;border-radius:999px;height:8px;margin-top:10px;overflow:hidden}.goal-progress-fill{border-radius:999px;height:100%}.editor-main.fluid-editor{flex-direction:column;flex-grow:1;width:100%;padding:0 16px 100px;display:flex;position:relative}.fluid-editor textarea{color:#fff;resize:none;padding:var(--ui-space-4);caret-color:#ffc800;background:0 0;border:none;flex-grow:1;font-family:Outfit,sans-serif;font-size:clamp(1.08rem,1.04rem + .8vw,1.35rem);line-height:1.6}.fluid-editor textarea:focus{outline:none}.fluid-editor textarea::placeholder{color:#ffffff9e}.fluid-editor textarea.dead{color:#fff3;filter:blur(2px)}.glass-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;background:#ffffff1a;border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 32px #0000001a}.health-label{text-transform:uppercase;letter-spacing:.05rem;justify-content:space-between;margin-bottom:6px;font-size:.82rem;font-weight:700;display:flex}.health-bar-container{background:#0003;border-radius:999px;width:180px;height:9px;margin-bottom:12px;overflow:hidden}.health-bar-container.low-focus{animation:1.8s ease-in-out infinite focus-bar-pulse;box-shadow:0 0 #ff4b4b40}.health-bar-fill{background:#08c;height:100%;transition:width .3s}.health-bar-fill.low{background:#ff4b4b;animation:1s infinite pulse-red}@keyframes focus-bar-pulse{0%,to{box-shadow:0 0 #ff4b4b2e}50%{box-shadow:0 0 0 6px #ff4b4b14}}.focus-nudge-text{color:#ffebebe6;letter-spacing:.01em;margin-top:-4px;font-size:.76rem;font-weight:700}.shake-container{animation:none}.flow-state{animation:4.5s ease-in-out infinite alternate flow-glow}@keyframes flow-glow{0%{filter:brightness()}to{filter:brightness(1.06)contrast(1.03)}}.hud-behind-modal{opacity:.38;pointer-events:none;filter:saturate(.85);transition:opacity .25s,filter .25s}.loading-overlay{z-index:300;padding:var(--ui-page-gutter);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a8c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loading-card{border-radius:var(--ui-radius-lg);color:#0f172a;text-align:center;background:#fff;border:1px solid #fffffff2;width:100%;max-width:460px;padding:24px 18px;box-shadow:0 24px 64px #00000040}.loading-card h2{margin:16px 0 12px;font-size:1.1rem;font-weight:800}.loading-card .progress-bar{background:#e2e8f0;border-radius:6px;height:10px;margin:16px 0 8px;overflow:hidden}.loading-card .progress-fill{background:#08c;border-radius:6px;height:100%}.loading-card p{font-size:var(--ui-type-body);color:#64748b;font-weight:600}.loading-error{color:#b91c1c;margin-top:8px;font-size:.86rem;font-weight:700}.loading-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px;display:flex}.loading-action-btn{cursor:pointer;border:none;border-radius:10px;padding:8px 12px;font-size:.82rem;font-weight:800}.loading-action-btn-primary{color:#fff;background:#0284c7}.loading-action-btn-secondary{color:#334155;background:#e2e8f0}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.level-up-toast{z-index:250;text-align:center;color:#0f172a;border-radius:var(--ui-radius-lg);pointer-events:none;background:#fff;border:1px solid #e2e8f0;width:calc(100% - 24px);max-width:380px;padding:24px 18px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 24px 64px #00000047}.level-up-toast h1{font-size:var(--ui-type-title-lg);color:#0f172a;margin:12px 0 8px;font-weight:900}.game-over-scrim{z-index:200;padding:0;padding-bottom:env(safe-area-inset-bottom,0px);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172aa6;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.game-over-panel{color:#0f172a;border-radius:var(--ui-radius-lg) var(--ui-radius-lg) 0 0;text-align:center;background:#fff;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:440px;max-height:min(90vh,640px);padding:28px 24px 32px;display:flex;overflow-y:auto;box-shadow:0 -12px 48px #00000038}.game-over-title{letter-spacing:-.02em;margin:0;font-size:1.65rem;font-weight:900}.game-over-lead{font-size:var(--ui-type-body);color:#475569;margin:-4px 0 0;font-weight:600}.revive-challenge-box{flex-direction:column;align-items:stretch;gap:14px;width:100%;display:flex}.challenge-word{color:#334155;font-size:.95rem;font-weight:600}.challenge-word strong{color:#0f172a;font-weight:800}.revive-form{flex-direction:column;gap:12px;width:100%;display:flex}.revive-input{color:#0f172a;box-sizing:border-box;background:#f8fafc;border:2px solid #e2e8f0;border-radius:14px;width:100%;padding:14px 16px;font-family:inherit;font-size:1rem;font-weight:600}.revive-input:focus{background:#fff;border-color:#08c;outline:none}.revive-btn{color:#fff;cursor:pointer;text-transform:none;letter-spacing:.01em;background:#08c;border:none;border-radius:16px;justify-content:center;align-items:center;gap:10px;width:100%;padding:16px;font-size:1rem;font-weight:800;display:flex;box-shadow:0 4px #069}.revive-btn:active{transform:translateY(2px);box-shadow:0 2px #069}.quit-btn{color:#475569;cursor:pointer;text-transform:none;background:#f8fafc;border:2px solid #e2e8f0;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:4px;padding:14px;font-size:.9rem;font-weight:800;display:flex}.quit-btn:hover{color:#0f172a;background:#f1f5f9}.session-overlay.session-break-overlay,.session-overlay.tap-pulse-overlay{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172aeb;border:1px solid #ffffff24}.session-overlay.session-break-overlay p,.session-overlay.tap-pulse-overlay p{color:#ffffffeb}@media (width>=720px){.mission-hud{justify-content:space-between;align-items:flex-start;gap:var(--ui-space-3);flex-direction:row;max-width:1400px;margin:0 auto;padding:24px 28px}.hud-left{gap:var(--ui-space-2);flex-direction:column}.mission-tracker{border-radius:var(--ui-radius-lg);order:0;width:min(420px,90vw);max-width:none;padding:24px}.editor-main.fluid-editor{max-width:1100px;padding:0 40px 40px}.game-over-scrim{align-items:center;padding:24px}.game-over-panel{border-radius:var(--ui-radius-lg);padding:32px 28px 36px;box-shadow:0 24px 64px #00000047}.loading-card{padding:28px 22px}.loading-card h2{font-size:var(--ui-type-title-lg)}.level-up-toast{width:calc(100% - 40px);max-width:380px;padding:28px 24px}.level-up-toast h1{font-size:var(--ui-type-title-lg)}}@media (width>=1024px){.editor-wrapper{flex-direction:row-reverse;align-items:stretch;height:100dvh;overflow:hidden}.mission-hud{-webkit-backdrop-filter:blur(16px);z-index:10;background:#0f172a59;border-left:1px solid #ffffff1a;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:28px;width:400px;min-width:400px;height:100%;margin:0;padding:40px 28px;overflow-y:auto;box-shadow:-6px 0 32px #0003}.hud-left{gap:20px;width:100%}.health-bar-container{width:100%}.mission-tracker{width:100%;max-width:none;box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:none;padding:0}.tracker-toggle-btn{display:none}.editor-main.fluid-editor{flex-grow:1;max-width:none;height:100%;margin:0;padding:60px 80px;overflow-y:auto}.fluid-editor textarea{padding:0}}@media (width>=1440px){.mission-tracker{width:100%}}.install-consent-root{width:100%;min-height:100dvh;padding:var(--ui-page-gutter);background:var(--bg-gradient);justify-content:center;align-items:center;display:flex}.install-consent-card{border-radius:var(--ui-radius-lg);background:#fff;border:1px solid #fffffff2;width:100%;max-width:100%;padding:24px 18px 20px;box-shadow:0 24px 64px #0000001f}.install-consent-header{text-align:center;margin-bottom:20px;position:relative}.install-consent-close{cursor:pointer;color:#64748b;background:#f1f5f9;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:absolute;top:-8px;right:-8px}.install-consent-close:hover{color:#0f172a;background:#e2e8f0}.install-consent-icon{background:#f0f9ff;border-radius:18px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 16px;display:flex}.install-consent-header h1{color:#0f172a;margin:0 0 12px;font-size:1.4rem;font-weight:800;line-height:1.2}.install-consent-lead{font-size:var(--ui-type-subtitle);color:#334155;margin:0;font-weight:500;line-height:1.55}.install-consent-body{flex-direction:column;gap:16px;width:100%;margin-bottom:24px;display:flex}.install-consent-wifi{color:#0284c7;text-align:center;background:#f0f9ff;border:1px solid #bae6fd;border-radius:16px;justify-content:center;align-items:center;gap:12px;padding:14px 16px;font-size:.95rem;font-weight:700;display:flex}.install-consent-sub{color:#64748b;text-align:center;margin:4px 0 0;font-size:.78rem;line-height:1.5}.install-consent-inline-link{color:#08c;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;font-weight:800;font-size:inherit;background:0 0;border:none;padding:4px 8px;transition:color .15s}.install-consent-inline-link:hover{color:#069}.install-consent-actions{flex-direction:column;gap:12px;width:100%;display:flex}.install-consent-primary{color:#fff;border-radius:var(--ui-radius-md);cursor:pointer;letter-spacing:.04em;background:#08c;border:none;width:100%;padding:18px;font-size:1.05rem;font-weight:800;box-shadow:0 4px #069}.install-consent-primary:active{transform:translateY(2px);box-shadow:0 2px #069}.install-consent-secondary{color:#94a3b8;cursor:pointer;text-align:center;background:0 0;border:none;padding:12px;font-weight:700}.install-consent-secondary:hover{color:#64748b}@keyframes install-pulse-glow{0%{box-shadow:0 4px #069,0 0 #0088cc59}70%{box-shadow:0 4px #069,0 0 0 14px #08c0}to{box-shadow:0 4px #069,0 0 #08c0}}.install-consent-primary.pulse-glow{animation:2s infinite install-pulse-glow}@media (width>=640px){.install-consent-root{padding:32px 28px 44px}.install-consent-card{max-width:760px;padding:52px 40px}.install-consent-icon{width:80px;height:80px}.install-consent-header h1{font-size:2.8rem}.install-consent-lead{max-width:540px;margin:0 auto;font-size:1.1rem}.install-consent-body,.install-consent-actions{max-width:440px;margin:0 auto}.install-consent-primary{border-radius:16px;font-size:1.05rem;box-shadow:0 5px #069}.install-consent-primary:active{box-shadow:0 2px #069}}@media (width>=1024px){.install-consent-card{padding:60px}}.install-screen-root{width:100%;min-height:100dvh;padding:var(--ui-page-gutter);background:var(--bg-gradient);justify-content:center;align-items:center;display:flex}.install-screen-card{border-radius:var(--ui-radius-lg);color:#1e293b;text-align:center;background:#fff;border:1px solid #fffffff2;width:100%;max-width:100%;padding:28px 20px;box-shadow:0 24px 64px #0000001f}.install-screen-icon-container{background:#f0f9ff;border-radius:18px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 20px;display:flex;box-shadow:0 8px 16px #0088cc0f}.install-screen-card h1{font-size:var(--ui-type-title-lg);color:#1e293b;margin:0 0 20px;font-weight:800}.install-screen-stats{justify-content:space-between;align-items:center;width:100%;margin-bottom:8px;font-size:.9rem;font-weight:700;display:flex}.install-screen-stat-label,.install-screen-stat-value{color:#0284c7}.install-screen-bar{background:#e2e8f0;border:none;border-radius:999px;width:100%;height:16px;margin-bottom:8px;overflow:hidden;box-shadow:inset 0 2px 4px #0000000f}.install-screen-fill{background:linear-gradient(90deg,#00cd9c,#08c);border-radius:999px;height:100%;transition:width .25s ease-out}.install-screen-downloaded{color:#64748b;text-align:center;margin:0 0 24px;font-size:.8rem;font-weight:600}.install-screen-error{color:#ef4444;background:#fef2f2;border:1px solid #fee2e2;border-radius:16px;width:100%;margin:-8px 0 20px;padding:12px 16px;font-size:.85rem;font-weight:600;line-height:1.4}.install-screen-actions{flex-direction:column;gap:12px;width:100%;display:flex}.install-screen-btn{cursor:pointer;text-transform:uppercase;letter-spacing:.02em;border:none;border-radius:16px;min-height:48px;padding:12px 22px;font-size:.95rem;font-weight:800;transition:all .15s}.install-screen-btn-primary{color:#fff;background:#08c;box-shadow:0 4px #069}.install-screen-btn-primary:active{transform:translateY(2px);box-shadow:0 2px #069}.install-screen-btn-ghost{color:#64748b;background:#f1f5f9;box-shadow:0 4px #cbd5e1}.install-screen-btn-ghost:hover{color:#0f172a;background:#e2e8f0}.install-screen-btn-ghost:active{transform:translateY(2px);box-shadow:0 2px #cbd5e1}.install-screen-spin{color:#08c;animation:2s linear infinite install-spin}@keyframes install-spin{to{transform:rotate(360deg)}}@media (width>=640px){.install-screen-root{padding:32px 28px 44px}.install-screen-card{max-width:760px;padding:52px 40px}.install-screen-icon-container{width:80px;height:80px;margin-bottom:24px}.install-screen-card h1{font-size:2.8rem}.install-screen-stats,.install-screen-bar,.install-screen-downloaded,.install-screen-error,.install-screen-actions{max-width:440px;margin-left:auto;margin-right:auto}.install-screen-btn{border-radius:16px;min-height:52px}}@media (width>=1024px){.install-screen-card{padding:60px}}.privacy-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;background:#0f172ab8;justify-content:center;align-items:center;padding:10px;display:flex;position:fixed;inset:0}.privacy-card{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;border:1px solid #ffffffe6;border-radius:24px;flex-direction:column;gap:16px;width:100%;max-width:440px;max-height:85vh;padding:20px;display:flex;position:relative;overflow-y:auto;box-shadow:0 24px 64px #00000047}.privacy-card::-webkit-scrollbar{width:6px}.privacy-card::-webkit-scrollbar-track{background:0 0}.privacy-card::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.privacy-header{z-index:10;background:#fff;align-items:center;gap:12px;margin:-8px 0;padding:8px 0;display:flex;position:sticky;top:-20px;box-shadow:0 12px 16px -12px #0f172a1f}.privacy-header h2{color:#1e293b;font-size:1.25rem;font-weight:800}.close-btn{cursor:pointer;color:#64748b;background:#f1f5f9;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}.close-btn:hover{color:#1e293b;background:#e2e8f0}.privacy-content{flex-direction:column;gap:12px;display:flex}.privacy-content section{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:8px;padding:12px;display:flex}.privacy-content h3{color:#0369a1;text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:8px;margin-bottom:4px;font-size:.9rem;font-weight:800;display:flex}.privacy-content p{color:#334155;font-size:.85rem;line-height:1.6}.privacy-content code{color:#1e293b;background:#e2e8f0;border-radius:4px;padding:2px 6px;font-family:inherit;font-weight:700}.privacy-done-btn{color:#fff;cursor:pointer;z-index:10;background:#08c;border:none;border-radius:16px;width:100%;margin-top:8px;padding:12px;font-weight:800;transition:all .1s;position:sticky;bottom:-20px;box-shadow:0 4px #069}.privacy-done-btn:active{transform:translateY(2px);box-shadow:0 2px #069}@media (width>=600px){.privacy-overlay{padding:20px}.privacy-card{border-radius:28px;gap:16px;max-height:85vh;padding:24px}.privacy-header h2{font-size:1.35rem}.privacy-header{top:-24px}.privacy-content{gap:14px}.privacy-content section{padding:12px}.privacy-content p{font-size:.95rem}.privacy-done-btn{padding:14px;bottom:-24px}}.mode-select-wrapper{background:linear-gradient(#ddf4ff 0%,#f7f9fb 40%,#f5f3ff 100%);flex-direction:column;justify-content:flex-start;align-items:center;width:100%;min-height:100dvh;margin:0 auto;padding:24px 16px 32px;display:flex}.mode-select-stats{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:24px;display:flex}.mode-stat-pill{color:#334155;background:#fff;border:2px solid #e2e8f0;border-radius:20px;align-items:center;gap:8px;padding:8px 18px;font-size:.88rem;font-weight:800;display:flex;box-shadow:0 4px #cbd5e1}.mode-select-heading{text-align:center;margin-bottom:24px}.mode-select-heading h1{color:#1e1b4b;letter-spacing:-.03em;margin-bottom:8px;font-size:1.45rem;font-weight:900}.mode-select-heading p{color:#64748b;font-weight:600;font-size:var(--ui-type-subtitle)}.mode-cards{flex-direction:column;gap:20px;width:100%;max-width:380px;display:flex}.mode-card-column{flex-direction:column;gap:14px;width:100%;display:flex}.mode-card{cursor:pointer;text-align:left;color:#fff;isolation:isolate;text-transform:none;border:2px solid #0000;border-radius:24px;flex-direction:column;gap:16px;min-height:220px;padding:22px 20px 20px;font-family:inherit;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s;display:flex;position:relative;overflow:hidden}.mode-card:active{transform:translateY(-2px)}.mode-card:before{content:"";border-radius:inherit;opacity:0;pointer-events:none;z-index:0;background:linear-gradient(120deg,#fff3 0%,#ffffff0a 42%,#fff0 65%);transition:opacity .25s,transform .3s;position:absolute;inset:0;transform:translate(-18%)}.mode-card:after{content:"";border-radius:inherit;opacity:0;pointer-events:none;z-index:2;border:2px solid #0000;transition:opacity .2s,box-shadow .2s;position:absolute;inset:-2px}.mode-card>*{z-index:1;position:relative}.mode-card--flow{background:linear-gradient(135deg,#10b981 0%,#059669 100%);box-shadow:0 8px #047857,0 12px 32px #10b9812e}.mode-card--craft{background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%);box-shadow:0 8px #5b21b6,0 12px 32px #8b5cf62e}.mode-card__badge{color:#fff;letter-spacing:.05em;text-transform:uppercase;background:#fff3;border:1.5px solid #fff6;border-radius:20px;padding:4px 10px;font-size:.72rem;font-weight:900;position:absolute;top:16px;right:16px}.mode-card__icon{background:#ffffff29;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;transition:transform .25s cubic-bezier(.175,.885,.32,1.275);display:flex;box-shadow:inset 0 1px 2px #ffffff40}.mode-card__icon svg{color:#fff;filter:drop-shadow(0 2px 4px #00000014);width:24px;height:24px}.mode-card__title{letter-spacing:-.03em;text-transform:none;margin:0;font-size:1.35rem;font-weight:900}.mode-card__desc{opacity:.95;text-transform:none;flex:1;font-size:.92rem;font-weight:600;line-height:1.5}.mode-card__cta{opacity:.95;text-transform:none;letter-spacing:.01em;align-items:center;gap:6px;margin-top:4px;font-size:.92rem;font-weight:900;display:flex}.mode-card__cta svg{transition:transform .2s}.mode-lang-btn{color:#475569;cursor:pointer;text-transform:uppercase;letter-spacing:.04em;background:#fff;border:2px solid #e2e8f0;border-radius:16px;justify-content:center;align-items:center;gap:8px;margin-top:36px;padding:12px 24px;font-size:.88rem;font-weight:800;transition:all .15s;display:inline-flex;box-shadow:0 4px #cbd5e1}.mode-lang-btn:hover{color:#1e293b;background:#f8fafc;border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 6px #cbd5e1}.mode-lang-btn:active{transform:translateY(2px);box-shadow:0 2px #cbd5e1}.mode-continue-btn{color:#0369a1;text-align:left;cursor:pointer;text-transform:none;background:#fff;border:2px solid #e0f2fe;border-radius:18px;padding:10px 12px;font-size:.8rem;font-weight:700;line-height:1.4;transition:all .15s;box-shadow:0 4px #bae6fd}.mode-continue-btn--craft{color:#6d28d9;background:#fff;border-color:#f3e8ff;box-shadow:0 4px #ddd6fe}.mode-continue-btn:hover{color:#0284c7;background:#f0f9ff;transform:translateY(-2px);box-shadow:0 6px #bae6fd}.mode-continue-btn--craft:hover{color:#5b21b6;background:#faf5ff;transform:translateY(-2px);box-shadow:0 6px #ddd6fe}.mode-continue-btn:active{transform:translateY(2px);box-shadow:0 2px #bae6fd}.mode-continue-btn--craft:active{transform:translateY(2px);box-shadow:0 2px #ddd6fe}.mode-unlocked-chip{letter-spacing:.01em;text-transform:none;white-space:nowrap;text-overflow:ellipsis;text-align:center;border:1.5px solid #0000;border-radius:18px;padding:10px 12px;font-size:.8rem;font-weight:700;overflow:hidden}.mode-unlocked-chip--flow{color:#065f46;background:#ecfdf5;border-color:#a7f3d0}.mode-unlocked-chip--craft{color:#5b21b6;background:#f5f3ff;border-color:#ddd6fe}@media (width>=640px){.mode-select-wrapper{justify-content:center;padding-top:32px;padding-bottom:32px}.mode-cards{grid-template-columns:1fr 1fr;gap:24px;max-width:760px;display:grid}.mode-card{border-radius:28px;min-height:280px;padding:28px 24px 24px}.mode-card__icon{border-radius:16px;width:56px;height:56px}.mode-card__icon svg{width:32px;height:32px}.mode-card__title{font-size:clamp(1.4rem,1.2rem + .5vw,1.65rem)}.mode-select-heading h1{font-size:var(--ui-type-title-lg)}.mode-unlocked-chip,.mode-continue-btn{padding:12px 16px;font-size:.85rem}.mode-continue-btn:hover{box-shadow:0 6px #bae6fd}.mode-continue-btn--craft:hover{box-shadow:0 6px #ddd6fe}.mode-continue-btn:active{box-shadow:0 2px #bae6fd}.mode-continue-btn--craft:active{box-shadow:0 2px #ddd6fe}}@media (hover:hover) and (pointer:fine){.mode-card:hover{transform:translateY(-6px)scale(1.01)}.mode-card:hover:before{opacity:1;transform:translate(0)}.mode-card--flow:hover{box-shadow:0 9px #047857,0 0 0 2px #10b98133,0 16px 36px #10b98166}.mode-card--craft:hover{box-shadow:0 9px #5b21b6,0 0 0 2px #8b5cf633,0 16px 36px #8b5cf666}.mode-card--flow:hover:after,.mode-card--craft:hover:after{opacity:1;border-color:#ffffff73;box-shadow:inset 0 0 14px #ffffff26}.mode-card:hover .mode-card__icon{transform:scale(1.1)rotate(-6deg)}.mode-card:hover .mode-card__cta svg{transform:translate(5px)}}.mode-card:focus-visible{outline:none;transform:translateY(-4px)scale(1.01)}.craft-hub{color:#1e1b4b;background:linear-gradient(#f5f3ff 0%,#fcfbfe 28% 100%);width:100%;min-height:100dvh;padding:0 0 48px}.craft-hub__band{z-index:100;background:#fff;border-bottom:2px solid #e2e8f0;margin-bottom:16px;padding:10px 12px;position:sticky;top:0;box-shadow:0 4px 12px #00000008}.craft-hub__header{justify-content:space-between;align-items:center;gap:8px;width:100%;max-width:820px;margin:0 auto;display:flex}.craft-hub__back{color:#6d28d9;cursor:pointer;box-shadow:none;text-transform:uppercase;background:0 0;border:none;border-radius:12px;flex:1;align-items:center;gap:4px;min-width:0;padding:6px 10px;font-size:.8rem;font-weight:800;transition:all .15s;display:flex}.craft-hub__back span{white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.craft-hub__back:hover{color:#4c1d95;background:#f5f3ff}.craft-hub__back:active{box-shadow:none;transform:translateY(1px)}.craft-hub__title{color:#1e1b4b;letter-spacing:-.02em;text-shadow:none;text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:2;margin:0;font-size:1.05rem;font-weight:900;overflow:hidden}.craft-hub__stats{flex:1;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.craft-stat-pill{color:#4c1d95;box-shadow:none;background:#fcfbfe;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:4px;padding:4px 8px;font-size:.8rem;font-weight:800;display:flex}.craft-stat-pill--fire{color:#c2410c;background:#fff7ed;border-color:#ffedd5}.craft-hub__main{max-width:820px;padding:0 var(--ui-page-gutter);width:100%;margin:0 auto}.craft-campaign{margin-bottom:24px}.craft-campaign__header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.craft-campaign__badge{color:#fff;background:#7c3aed;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;font-weight:900;display:flex;box-shadow:0 3px #5b21b6}.craft-campaign__header h2{color:#1e1b4b;letter-spacing:-.02em;margin:0;font-size:1.15rem;font-weight:900}.craft-campaign__header p{color:#6d28d9;margin:2px 0 0;font-size:.82rem;font-weight:600}.craft-mission-cards-grid{grid-template-columns:1fr;gap:12px;width:100%;display:grid}.craft-mission-card-item{cursor:pointer;text-transform:none;text-align:left;background:#fff;border:2px solid #e2e8f0;border-radius:16px;align-items:center;gap:12px;padding:12px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative;box-shadow:0 4px #e2e8f0}.craft-mission-card-item:hover:not(.is-locked){border-color:#c4b5fd;transform:translateY(-2px);box-shadow:0 6px #ddd6fe}.craft-mission-card-item:active:not(.is-locked){transform:translateY(2px);box-shadow:0 2px #ddd6fe}.craft-mission-card-item.is-locked{opacity:.75;cursor:not-allowed;background:#f1f5f9;border-color:#e2e8f0;box-shadow:0 4px #cbd5e1}.is-locked-content{flex-direction:column;justify-content:center;display:flex;gap:2px!important}.craft-card-left{flex-shrink:0}.craft-card-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 100%);border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex;box-shadow:0 3px #00000026}.craft-card-btn svg{width:18px;height:18px}.craft-mission-card-item.is-locked .craft-card-btn{color:#64748b;cursor:not-allowed;background:#cbd5e1!important;box-shadow:0 3px #94a3b8!important}.craft-mission-card-item.is-completed .craft-card-btn{background:linear-gradient(135deg,#a78bfa 0%,#7c3aed 100%)!important}.craft-card-right{flex-direction:column;flex-grow:1;gap:4px;min-width:0;display:flex}.craft-card-header-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.craft-card-right h3{color:#1e1b4b;text-transform:none;letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.98rem;font-weight:800;overflow:hidden}.craft-last-played-tag{color:#7c3aed;text-transform:uppercase;letter-spacing:.03em;background:#f5f3ff;border-radius:20px;flex-shrink:0;padding:2px 8px;font-size:.68rem;font-weight:800}.craft-card-skill{color:#6d28d9;text-transform:uppercase;letter-spacing:.03em;background:#ede9fe;border-radius:6px;align-self:flex-start;margin-bottom:2px;padding:2px 8px;font-size:.68rem;font-weight:800}.craft-card-right p{color:#4c1d95;text-transform:none;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 4px;font-size:.82rem;font-weight:600;line-height:1.45;display:-webkit-box;overflow:hidden}.craft-card-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.craft-node__stars{gap:4px;display:flex}.craft-star{color:#fbbf24;fill:#fbbf24}.craft-star--empty{color:#d4d4d8;fill:none}.craft-card-status{font-size:.76rem;font-weight:800}.status-locked{color:#ef4444}.status-play{color:#7c3aed}.status-replay{color:#64748b}@media (width>=640px){.craft-hub__band{margin-bottom:24px;padding:12px 16px}.craft-hub__header{gap:0}.craft-hub__back{padding:8px 12px;font-size:.9rem}.craft-hub__back span{font-size:.9rem}.craft-hub__title{pointer-events:none;flex:none;font-size:1.15rem;position:absolute;left:50%;transform:translate(-50%)}.craft-hub__stats{flex:none}.craft-stat-pill{padding:5px 8px;font-size:.8rem}.craft-campaign{margin-bottom:32px}.craft-campaign__badge{border-radius:12px;width:38px;height:38px;font-size:1.05rem;box-shadow:0 3px #5b21b6}.craft-campaign__header h2{font-size:1.25rem}.craft-campaign__header p{font-size:.84rem}.craft-mission-cards-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.craft-mission-card-item{border-radius:20px;gap:16px;padding:16px;box-shadow:0 4px #e2e8f0}.craft-card-btn{width:46px;height:46px}.craft-card-btn svg{width:22px;height:22px}.craft-card-right h3{font-size:1.05rem}.craft-card-right p{-webkit-line-clamp:3;font-size:.88rem}.craft-card-status{font-size:.8rem}}.craft-editor{color:#1e1b4b;background:#fdfcfe;flex-direction:column;min-height:100dvh;display:flex}.craft-editor__header{z-index:10;background:#fff;border-bottom:2px solid #f3f4f6;justify-content:space-between;align-items:center;padding:12px 14px;display:flex;position:sticky;top:0}.craft-editor__header-left{align-items:center;gap:12px;display:flex}.craft-editor__close{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:background .2s,color .2s;display:flex}.craft-editor__close:hover{color:#4b5563;background:#f3f4f6}.craft-editor__title-group h2{color:#1e1b4b;margin:0;font-size:1rem;font-weight:900}.craft-editor__title-group p{color:#7c3aed;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.75rem;font-weight:700}.craft-editor__progress{gap:6px;display:flex}.craft-editor__main{flex-direction:column;gap:12px;width:100%;height:auto;padding:10px 10px 16px;display:flex}.craft-editor__sidebar{flex-direction:column;gap:10px;display:flex}.craft-prompt{background:#fff;border:2px solid #ddd6fe;border-radius:12px;flex-direction:column;gap:6px;padding:10px 12px;display:flex;box-shadow:0 2px #ddd6fe}.craft-prompt__title{display:none}.craft-prompt__instruction{color:#1e1b4b;margin:0;font-size:.84rem;font-weight:600;line-height:1.35}.craft-prompt__topic{background:#f5f3ff;border-left:2.5px solid #7c3aed;border-radius:8px;padding:5px 8px}.craft-prompt__topic span{color:#7c3aed;text-transform:uppercase;margin-bottom:1px;font-size:.62rem;font-weight:800;display:block}.craft-prompt__topic p{color:#4c1d95;margin:0;font-size:.82rem;font-weight:700}.craft-prompt__rubric{border-top:1.5px solid #f3f4f6;margin-top:4px;padding-top:6px}.craft-prompt__rubric h4{display:none}.craft-prompt__rubric-list{flex-flow:wrap;gap:4px 10px;display:flex}.craft-prompt__rubric-item{color:#6b7280;align-items:center;gap:4px;font-size:.74rem;font-weight:700;display:flex}.craft-prompt__rubric-dot{background:#a78bfa;border-radius:50%;width:4px;height:4px}.craft-editor__content{flex-direction:column;gap:24px;display:flex}.writing-area{flex-direction:column;gap:12px;display:flex}.writing-area textarea{border-radius:var(--ui-radius-md);color:#1f2937;resize:none;background:#fff;border:2px solid #e5e7eb;outline:none;width:100%;min-height:200px;padding:16px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1.6;transition:border-color .2s,box-shadow .2s}.writing-area textarea:focus{border-color:#a78bfa;box-shadow:0 0 0 4px #a78bfa1a}.writing-area textarea::placeholder{color:#d1d5db}.writing-footer{flex-direction:column;align-items:stretch;gap:10px;display:flex}.word-count{color:#9ca3af;text-align:center;font-size:.85rem;font-weight:700}.submit-btn{color:#fff;text-transform:uppercase;letter-spacing:.05em;background:#7c3aed;border-radius:16px;width:100%;padding:14px;font-size:1rem;font-weight:800;transition:transform .1s,box-shadow .1s;box-shadow:0 4px #5b21b6}.submit-btn:hover{background:#8b5cf6}.submit-btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px #5b21b6}.submit-btn:disabled{color:#9ca3af;cursor:not-allowed;background:#e5e7eb;box-shadow:0 4px #d1d5db}.feedback-container{border-radius:var(--ui-radius-md);background:#fff;border:2px solid #ddd6fe;flex-direction:column;gap:24px;margin-top:12px;padding:16px;display:flex;box-shadow:0 10px 40px #7c3aed1a}.feedback-stars{justify-content:center;gap:12px;margin-bottom:8px;display:flex}.feedback-comment{text-align:center;color:#1e1b4b;justify-content:center;align-items:center;gap:8px;margin:0;font-size:1.1rem;font-weight:700;line-height:1.4;display:flex}.feedback-sparkle-icon{color:#7c3aed}.feedback-response{text-align:left;background:#f5f3ff;border-left:4px solid #8b5cf6;border-radius:14px;margin:4px 0 16px;padding:16px}.feedback-response h4{color:#7c3aed;text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px;font-size:.8rem;font-weight:800}.feedback-response__text{color:#4c1d95;white-space:pre-wrap;font-size:1rem;font-weight:600;line-height:1.5}.feedback-rubric{gap:12px;display:grid}.feedback-item{background:#f9fafb;border-radius:16px;align-items:flex-start;gap:16px;padding:16px;display:flex}.feedback-item--pass{background:#f0fdf4;border:1px solid #bcf0da}.feedback-item--fail{background:#fef2f2;border:1px solid #fecaca}.feedback-icon{flex-shrink:0;margin-top:2px}.feedback-item--pass .feedback-icon{color:#10b981}.feedback-item--fail .feedback-icon{color:#ef4444}.feedback-text h4{margin:0 0 4px;font-size:.95rem;font-weight:800}.feedback-item--pass .feedback-text h4{color:#065f46}.feedback-item--fail .feedback-text h4{color:#991b1b}.feedback-text p{margin:0;font-size:.85rem;font-weight:600;line-height:1.4}.feedback-item--pass .feedback-text p{color:#047857}.feedback-item--fail .feedback-text p{color:#b91c1c}.feedback-actions{flex-direction:column;gap:10px;display:flex}.action-btn{text-transform:uppercase;letter-spacing:.05em;border-radius:16px;width:100%;padding:14px;font-size:.95rem;font-weight:800}.action-btn--secondary{color:#7c3aed;background:#fff;border:2px solid #ddd6fe;box-shadow:0 4px #ddd6fe}.action-btn--primary{color:#fff;background:#58cc02;box-shadow:0 4px #46a302}@media (width<=1023px){.craft-editor__sidebar.hidden-on-mobile-feedback{display:none}}@media (width>=600px){.craft-editor__main{gap:16px;padding:16px}.craft-editor__sidebar{gap:10px}.craft-prompt{border-radius:16px;gap:10px;padding:16px;box-shadow:0 2px #ddd6fe}.craft-prompt__title{color:#5b21b6;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.9rem;font-weight:900;display:block}.craft-prompt__instruction{font-size:.9rem;line-height:1.4}.craft-prompt__topic{border-left-width:3px;padding:8px 12px}.craft-prompt__topic span{margin-bottom:2px;font-size:.68rem}.craft-prompt__topic p{font-size:.88rem}.craft-prompt__rubric{margin-top:6px;padding-top:8px}.craft-prompt__rubric h4{color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px;font-size:.76rem;font-weight:800;display:block}.craft-prompt__rubric-list{flex-flow:column;gap:8px}.craft-prompt__rubric-item{gap:6px;font-size:.78rem}.craft-prompt__rubric-dot{width:5px;height:5px}.writing-area textarea{min-height:200px}.writing-footer{flex-direction:row;justify-content:space-between;align-items:center}.word-count{text-align:left}.submit-btn{width:auto;padding:14px 32px}.feedback-container{border-radius:24px;padding:32px}.feedback-actions{flex-direction:row;gap:16px}.action-btn{flex:1;width:auto}}@media (width>=1024px){.craft-editor{height:100dvh;overflow:hidden}.craft-editor__header{border-bottom:2px solid #f3f4f6;padding:16px 24px}.craft-editor__title-group h2{font-size:1.1rem}.craft-editor__title-group p{font-size:.8rem}.craft-editor__main{flex:1;grid-template-columns:1fr 320px;gap:32px;width:100%;max-width:1200px;margin:0 auto;padding:32px 24px;display:grid;overflow-y:auto}.craft-editor__sidebar{order:2;gap:20px}.craft-prompt{border-radius:20px;gap:16px;padding:24px;box-shadow:0 4px #ddd6fe}.craft-prompt__title{font-size:.95rem}.craft-prompt__instruction{font-size:1rem;line-height:1.5}.craft-prompt__topic{border-left-width:4px;padding:12px 16px}.craft-prompt__topic span{margin-bottom:4px;font-size:.75rem}.craft-prompt__topic p{font-size:.95rem}.craft-prompt__rubric{margin-top:4px;padding-top:12px}.craft-prompt__rubric h4{margin:0 0 8px;font-size:.8rem}.craft-prompt__rubric-list{gap:8px}.craft-prompt__rubric-item{gap:8px;font-size:.85rem}.craft-prompt__rubric-dot{width:6px;height:6px}.craft-editor__content{flex-direction:column;flex:1;order:1;justify-content:flex-start;display:flex}.writing-area{flex:1}.writing-area textarea{flex:1;min-height:300px;font-size:1.15rem}}
