:root{color:#20251c;font-synthesis:none;text-rendering:optimizelegibility;--ink:#20251c;--grass:#397a35;--grass-light:#6aad46;--sky:#5ba7d1;--sand:#fff4cc;--soil:#815331;--lava:#b83b2e;--paper:#fffbea;--muted:#5d624f;background:#e8d9a6;font-family:Microsoft YaHei,PingFang SC,SimHei,monospace}*{box-sizing:border-box}html{min-width:320px}body{background-color:#e8d9a6;background-image:linear-gradient(90deg,#81533114 1px,#0000 1px),linear-gradient(#81533114 1px,#0000 1px);background-size:24px 24px;min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline-offset:3px;outline:4px solid #f0ad22}.pixel-kicker{color:var(--soil);letter-spacing:.15em;text-transform:uppercase;margin:0 0 8px;font-weight:900}.pixel-panel{border:4px solid var(--ink);background:var(--paper);border-radius:0;box-shadow:8px 8px #20251c4d}.pixel-button{border:4px solid var(--ink);min-height:52px;box-shadow:4px 4px 0 var(--ink);color:var(--ink);background:#ddd3b5;border-radius:0;padding:12px 20px;font-weight:900}.pixel-button.primary{color:#fff;background:var(--grass-light)}.pixel-button.danger{color:#fff;background:#d45a48}.text-button,.icon-button{min-width:44px;min-height:44px;color:var(--grass);background:0 0;border:0;font-weight:900;text-decoration:underline}.icon-button.close{width:48px;height:48px;font-size:32px;text-decoration:none;position:absolute;top:12px;right:12px}.muted{color:var(--muted);line-height:1.6}.message{border:3px solid;padding:12px 16px}.message.error{color:#711f17;border-color:var(--lava);background:#ffe2d5}.auth-world{background:linear-gradient(#92d8f5 0 62%,#6aad46 62% 69%,#815331 69%);grid-template-columns:minmax(520px,1.35fr) minmax(420px,.65fr);gap:64px;min-height:100dvh;padding:64px;display:grid}.auth-hero{align-self:center;max-width:850px;padding:32px;position:relative}.auth-hero h1{text-shadow:5px 5px #ffffffa6;margin:12px 0 24px;font-size:clamp(48px,6vw,86px);line-height:1.08}.auth-hero>p:last-of-type{max-width:720px;font-size:20px;line-height:1.8}.block-hills{align-items:flex-end;height:170px;margin-top:48px;display:flex;overflow:hidden}.block-hills i{border:4px solid var(--ink);background:#6aad46;flex:0 112px;height:56px;display:block;box-shadow:inset 0 -20px #815331}.block-hills i:nth-child(2){height:112px}.block-hills i:nth-child(3){height:168px}.block-hills i:nth-child(4){height:96px}.block-hills i:nth-child(5){height:136px}.auth-card{align-self:center;min-width:0;padding:48px}.auth-card h2,.modal h2{overflow-wrap:anywhere;margin:24px 56px 8px 0;font-size:36px}.mode-tabs{border:4px solid var(--ink);grid-template-columns:1fr 1fr;display:grid}.mode-tabs button{background:#d9cca5;border:0;min-height:52px;font-weight:900}.mode-tabs .active{color:#fff;background:var(--grass)}.stack-form{gap:20px;margin-top:28px;display:grid}.stack-form label,.task-form label,.review-box label{gap:8px;min-width:0;font-weight:900;display:grid}.stack-form input,.stack-form textarea,.task-form input,.task-form textarea,.task-form select,.review-box textarea{border:3px solid var(--ink);width:100%;min-width:0;min-height:48px;color:var(--ink);background:#fff;border-radius:0;padding:10px 12px}.dashboard-shell{width:min(1664px,100% - 64px);padding:24px 0 max(64px,env(safe-area-inset-bottom));margin:0 auto}.dashboard-header{justify-content:space-between;align-items:center;gap:24px;display:flex}.dashboard-header h1{margin:0;font-size:30px}.dashboard-header nav{align-items:center;gap:16px;display:flex}.parent-badge{border:3px solid var(--ink);background:var(--paper);overflow-wrap:anywhere;padding:10px 16px;font-weight:900}.dashboard-hero{background:linear-gradient(120deg,#fffbea 65%,#c2ecfa);justify-content:space-between;align-items:center;gap:32px;margin-top:32px;padding:32px 40px;display:flex}.dashboard-hero>div:first-child{min-width:0}.dashboard-hero h2{overflow-wrap:anywhere;margin:4px 0 8px;font-size:clamp(28px,3vw,38px)}.dashboard-hero p{margin-top:0;line-height:1.6}.hero-actions{flex:none;gap:16px;display:flex}.children-strip{scroll-snap-type:x proximity;gap:16px;min-height:92px;margin:32px 0;padding:0 8px 8px 0;display:flex;overflow-x:auto}.child-chip{border:3px solid var(--ink);background:var(--paper);scroll-snap-align:start;align-items:center;gap:12px;min-width:210px;max-width:100%;padding:12px 16px;display:flex;box-shadow:4px 4px #20251c4d}.pixel-avatar{border:3px solid var(--ink);background:#f0ad22;flex:none;place-items:center;width:52px;height:52px;font-size:24px;font-weight:900;display:grid}.child-chip b,.child-chip small{display:block}.child-chip small{color:var(--grass);margin-top:6px}.empty-child{border:3px dashed var(--soil);width:100%;min-height:80px;color:var(--muted);text-align:center;background:#fffbea8c;place-items:center;padding:16px;display:grid}.task-groups{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:20px;display:grid}.task-column{min-width:0}.task-column>header{justify-content:space-between;align-items:center;padding:0 4px;display:flex}.task-column>header h2{font-size:21px}.task-column>header span{border:3px solid var(--ink);background:#fff;place-items:center;width:34px;height:34px;display:grid}.task-card,.empty-card{border:3px solid var(--ink);text-align:left;background:var(--paper);border-radius:0;width:100%;margin-bottom:16px;padding:18px;box-shadow:4px 4px #20251c40}.task-card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #20251c4d}.task-card[data-status=APPROVED]{border-top:12px solid var(--grass)}.task-card-top,.task-card footer{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:13px;display:flex}.task-card h3{overflow-wrap:anywhere;margin:18px 0 8px;font-size:19px}.task-card p{min-height:42px;color:var(--muted);overflow-wrap:anywhere;margin:0 0 16px;line-height:1.5}.empty-card{color:var(--muted);box-shadow:none;border-style:dashed}.loading-block,.app-boot{text-align:center;place-items:center;min-height:240px;padding:24px;font-weight:900;display:grid}.app-boot{min-height:100dvh}.modal-backdrop{z-index:20;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#1c1f18b8;place-items:center;display:grid;position:fixed;inset:0}.modal{overscroll-behavior:contain;width:min(620px,100%);max-height:calc(100dvh - 32px);padding:40px;position:relative;overflow:auto}.task-modal,.detail-modal{width:min(1100px,100%)}.scanner{border:4px solid var(--ink);aspect-ratio:16/9;background:#111;margin:24px 0;position:relative}.scanner video{object-fit:cover;width:100%;height:100%}.scanner span{color:#fff;text-align:center;background:#111;padding:8px 12px;position:absolute;bottom:8px;left:8px;right:8px}.divider{color:var(--muted);align-items:center;gap:12px;margin:20px 0;display:flex}.divider:before,.divider:after{content:"";border-top:2px dashed #9d9271;flex:1}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.form-grid .wide{grid-column:1/-1}.steps-editor{border:3px solid var(--ink);min-width:0;margin:24px 0;padding:20px}.steps-editor legend{padding:0 8px;font-weight:900}.step-row{grid-template-columns:38px minmax(0,1fr) 44px 44px 44px;gap:8px;margin-bottom:10px;display:grid}.step-row b,.step-row button{border:3px solid var(--ink);background:#eee3c0;place-items:center;min-height:44px;font-weight:900;display:grid}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:16px;margin-top:20px;display:flex}.detail-stats{flex-wrap:wrap;gap:12px;margin:20px 0;display:flex}.detail-stats span{border:2px solid var(--ink);background:#eee3c0;padding:8px 12px;font-weight:900}.detail-columns{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:32px;display:grid}.detail-columns h3{border-bottom:4px solid var(--grass);padding-bottom:8px}.check-list{padding-left:32px}.check-list li{border:2px solid var(--ink);background:#fff;margin:12px 0;padding:8px}.check-list li.done{background:#dcedc8;text-decoration:line-through}.timeline{padding:0;list-style:none}.timeline li{border-bottom:2px dashed #b4a983;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px 0;display:grid}.timeline time,.submission-card time{color:var(--muted);font-size:13px}.submission-card{border:3px solid var(--ink);background:#fff;margin-bottom:16px;padding:16px}.submission-card header{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.evidence-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.evidence-grid a{border:3px solid var(--ink);background:#eee;place-items:center;min-height:100px;display:grid}.evidence-grid img{object-fit:cover;width:100%;height:120px}.return-reason{border-left:6px solid var(--lava);background:#ffe2d5;padding:12px}.review-box{background:#fff4cc;border:4px solid #f0ad22;margin-top:24px;padding:18px}.empty-mini{color:var(--muted)}@media (width<=1250px){.task-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-world{grid-template-columns:minmax(0,1fr) minmax(400px,480px);gap:32px;padding:36px}.auth-hero h1{font-size:54px}}@media (width<=900px){.auth-world{background:linear-gradient(#92d8f5 0 54%,#6aad46 54% 61%,#815331 61%);grid-template-columns:1fr;gap:24px;padding:28px}.auth-hero{width:min(720px,100%);margin:auto;padding:16px}.auth-hero h1{font-size:clamp(42px,9vw,64px)}.auth-hero>p:last-of-type{font-size:18px}.block-hills{height:96px;margin-top:24px}.block-hills i:nth-child(2){height:76px}.block-hills i:nth-child(3){height:94px}.block-hills i:nth-child(4){height:68px}.block-hills i:nth-child(5){height:84px}.auth-card{width:min(620px,100%);margin:auto;padding:36px}.dashboard-header{flex-wrap:wrap;align-items:flex-start}.dashboard-hero{flex-direction:column;align-items:stretch}.hero-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.history-filters{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;display:grid!important}.history-filters>b{grid-column:1/-1}.detail-columns{grid-template-columns:1fr}}@media (width<=640px){.dashboard-shell{width:calc(100% - 24px);padding-top:16px}.dashboard-header{grid-template-columns:1fr;display:grid}.dashboard-header nav{justify-content:space-between;gap:8px;width:100%}.parent-badge{min-width:0;padding:8px 10px;font-size:14px}.dashboard-hero{gap:20px;margin-top:20px;padding:22px 18px}.dashboard-hero h2{font-size:28px}.hero-actions{grid-template-columns:1fr}.hero-actions .pixel-button{width:100%}.children-strip{margin:20px 0}.child-chip{min-width:min(280px,100vw - 36px)}.task-groups{grid-template-columns:1fr;gap:8px}.task-column>header{z-index:5;background:#e8d9a6;position:sticky;top:0}.history-filters{grid-template-columns:1fr;padding:16px!important}.history-filters>b{grid-column:auto}.modal-backdrop{place-items:stretch stretch;padding:0}.modal{width:100%;max-height:100dvh;padding:24px 16px max(24px,env(safe-area-inset-bottom));box-shadow:none;border-left:0;border-right:0}.auth-card h2,.modal h2{font-size:28px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.steps-editor{margin:20px 0;padding:12px 8px}.step-row{grid-template-columns:40px repeat(3,minmax(44px,1fr))}.step-row input{grid-area:1/1/auto/-1}.step-row b{grid-area:2/1}.step-row button:first-of-type{grid-area:2/2}.step-row button:nth-of-type(2){grid-area:2/3}.step-row button:nth-of-type(3){grid-area:2/4}.dialog-actions{grid-template-columns:1fr;display:grid}.dialog-actions .pixel-button{width:100%}.detail-stats{grid-template-columns:1fr;display:grid}.timeline li{grid-template-columns:1fr}.evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.submission-card{padding:12px}.check-list{padding-left:24px}}@media (width<=480px){.auth-world{padding:14px}.auth-hero{padding:8px}.auth-hero h1{text-shadow:3px 3px #ffffffa6;margin:8px 0 12px;font-size:36px}.auth-hero>p:last-of-type{font-size:16px;line-height:1.6}.block-hills{height:64px;margin-top:12px}.block-hills i:nth-child(2){height:48px}.block-hills i:nth-child(3){height:62px}.block-hills i:nth-child(4){height:42px}.block-hills i:nth-child(5){height:56px}.auth-card{padding:22px 16px}.pixel-panel{border-width:3px;box-shadow:5px 5px #20251c4d}.pixel-kicker{font-size:12px}.mode-tabs{border-width:3px}.task-card,.empty-card{padding:14px}.evidence-grid{grid-template-columns:1fr}.scanner{margin:16px 0}.message{padding:10px 12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.rewards-shell{width:min(1664px,100% - 64px);padding:24px 0 max(64px,env(safe-area-inset-bottom));margin:0 auto}.rewards-header{margin-bottom:28px}.rewards-overview{background:linear-gradient(120deg,#fffbea 62%,#d8f2d0);grid-template-columns:minmax(0,1fr) minmax(260px,.8fr) auto;align-items:center;gap:24px;margin-bottom:24px;padding:24px 28px;display:grid}.child-picker{gap:8px;max-width:280px;font-weight:900;display:grid}.child-picker select{border:3px solid var(--ink);background:#fff;min-height:48px;padding:8px 12px}.points-balance{text-align:center;gap:2px;display:grid}.points-balance span,.points-balance small{color:var(--muted);font-weight:900}.points-balance strong{color:var(--soil);text-shadow:4px 4px #f5d784;font-size:clamp(48px,6vw,76px);line-height:1}.wallet-actions{flex-wrap:wrap;gap:12px;display:flex}.rewards-tabs{border-bottom:4px solid var(--ink);gap:0;margin:24px 0;display:flex;overflow-x:auto}.rewards-tabs button{white-space:nowrap;background:0 0;border:0;border-top:3px solid #0000;align-items:center;gap:8px;min-height:58px;padding:12px 22px;font-weight:900;display:flex;position:relative}.rewards-tabs button.active{border-color:var(--ink);background:#f0ad22}.rewards-tabs b{border:2px solid var(--ink);min-width:26px;height:26px;color:var(--ink);background:#fff;place-items:center;padding:0 6px;display:grid}.rewards-section-heading{justify-content:space-between;align-items:end;gap:20px;margin:28px 0 18px;display:flex}.rewards-section-heading h2{margin:4px 0 6px;font-size:32px}.reward-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;display:grid}.reward-card{border:3px solid var(--ink);background:var(--paper);min-width:0;box-shadow:5px 5px #20251c40}.reward-card.inactive{opacity:.65;filter:saturate(.55)}.reward-image{aspect-ratio:16/10;border-bottom:3px solid var(--ink);background:linear-gradient(135deg,#c2ecfa,#f5e8ac);place-items:center;display:grid;overflow:hidden}.reward-image img{object-fit:cover;width:100%;height:100%}.reward-image span{border:4px solid var(--ink);background:#f0ad22;place-items:center;width:72px;height:72px;font-size:42px;font-weight:900;display:grid}.reward-card-body{padding:16px}.reward-card-meta{color:var(--grass);justify-content:space-between;gap:8px;font-size:13px;font-weight:900;display:flex}.reward-card-meta b{color:var(--soil);font-size:18px}.reward-card h3{overflow-wrap:anywhere;margin:12px 0 6px;font-size:21px}.reward-card p{min-height:48px;color:var(--muted);overflow-wrap:anywhere;margin:0;line-height:1.6}.reward-card footer{border-top:2px dashed #b4a983;justify-content:space-between;align-items:center;gap:8px;margin-top:16px;padding-top:12px;display:flex}.redemption-list,.ledger-list{gap:12px;display:grid}.redemption-card{border:3px solid var(--ink);background:var(--paper);justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.redemption-card h3{margin:10px 0 6px;font-size:21px}.redemption-card p,.redemption-card small{color:var(--muted);margin:0}.status-chip[data-status=APPROVED]{color:var(--grass)}.status-chip[data-status=REJECTED]{color:var(--lava)}.ledger-row{border:3px solid var(--ink);background:var(--paper);grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 20px;display:grid}.ledger-icon{border:3px solid var(--ink);background:#dcedc8;place-items:center;width:40px;height:40px;font-size:24px;font-weight:900;display:grid}.ledger-row div{gap:5px;display:grid}.ledger-row small{color:var(--muted);font-weight:400;display:block}.ledger-row>strong{color:var(--lava);text-align:right;gap:3px;font-size:24px;display:grid}.ledger-row>strong.positive{color:var(--grass)}.ledger-row>strong small{font-size:12px}.reward-editor{width:min(620px,100%)}.field-hint{color:var(--muted);font-size:13px;font-weight:400}@media (width<=1200px){.reward-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.rewards-overview{grid-template-columns:1fr 1fr}.wallet-actions{grid-column:1/-1}}@media (width<=760px){.rewards-shell{width:min(100% - 32px,680px);padding-top:16px}.rewards-header{align-items:flex-start}.rewards-header nav{flex-wrap:wrap;justify-content:flex-end}.rewards-overview{grid-template-columns:1fr;padding:18px}.points-balance{text-align:left}.wallet-actions{grid-column:auto}.rewards-section-heading{flex-direction:column;align-items:flex-start}.reward-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reward-card-body{padding:12px}.reward-card h3{font-size:18px}.reward-card p{min-height:60px;font-size:13px}.redemption-card{flex-direction:column;align-items:flex-start}.ledger-row{grid-template-columns:40px minmax(0,1fr);gap:10px;padding:14px}.ledger-row>strong{text-align:left;grid-column:2}.rewards-tabs button{padding:10px 14px}}@media (width<=460px){.reward-card-grid{grid-template-columns:1fr}.rewards-header nav{justify-content:flex-start}.rewards-header .parent-badge{max-width:180px}}.history-filters{align-items:end;gap:16px;margin:0 0 28px;padding:16px 20px;display:flex}.history-filters label{gap:6px;font-weight:900;display:grid}.history-filters input,.history-filters select{border:3px solid var(--ink);background:#fff;min-height:42px;padding:6px 10px}.evidence-item{border:3px solid var(--ink);background:#eee3c0;align-content:center;min-width:0;min-height:120px;display:grid}.evidence-item>a{border:0;min-height:0}.media-preview{background:#20251c;border:0;width:100%;min-height:120px;padding:0;display:grid;overflow:hidden}.media-preview img{object-fit:cover;width:100%;height:150px}.media-placeholder{color:#fff;place-items:center;gap:8px;min-height:120px;font-size:32px;display:grid}.media-placeholder b{font-size:16px}.media-lightbox{z-index:100;color:#fff;background:#0c110df5;grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:fixed;inset:0}.media-lightbox header,.media-lightbox footer{min-height:64px;padding:10px max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left));background:#20251c;justify-content:center;align-items:center;gap:10px;display:flex}.media-lightbox header{justify-content:space-between}.media-lightbox header div{gap:4px;min-width:0;display:grid}.media-lightbox header b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.media-lightbox header small{color:#d9cca5}.media-lightbox main{place-items:center;min-height:0;padding:20px;display:grid;overflow:hidden}.media-lightbox main img{max-width:90vw;max-height:calc(100dvh - 180px);transition:transform .18s}.media-lightbox main video{max-width:92vw;max-height:calc(100dvh - 180px)}.media-lightbox main audio{width:min(680px,90vw)}.media-tool{color:#fff;background:#34463a;border:2px solid #fff;place-items:center;min-width:48px;min-height:48px;padding:8px 12px;font-weight:900;text-decoration:none;display:grid}.media-tool.text{min-width:68px}.media-lightbox output{text-align:center;font-variant-numeric:tabular-nums;min-width:58px}.evidence-item video,.evidence-item audio{background:#20251c;width:100%;max-height:260px}.evidence-item audio{background:#fff;min-height:54px}.evidence-item small{text-overflow:ellipsis;white-space:nowrap;padding:8px;overflow:hidden}.media-load{margin:12px}@media (width<=720px){.evidence-grid{grid-template-columns:1fr}.media-lightbox footer{justify-content:flex-start;overflow-x:auto}}@media (prefers-reduced-motion:reduce){.media-lightbox main img{transition:none}}:root{--island-ink:#20304a;--island-navy:#29446f;--island-muted:#627188;--island-grass:#3f9b65;--island-leaf:#79c968;--island-mint:#dff5df;--island-sky:#72c9eb;--island-sky-light:#dff5ff;--island-sun:#f7c84b;--island-coral:#ee765f;--island-cream:#fff8df;--island-paper:#fffdf6;--island-line:#d8e6dd;--island-shadow:0 9px 0 #20304a14;--ink:var(--island-ink);--grass:var(--island-grass);--grass-light:var(--island-leaf);--sky:var(--island-sky);--paper:var(--island-paper);--muted:var(--island-muted)}body{color:var(--island-ink);background:linear-gradient(#eef9ff 0,#f5fbf2 48%,#fff9ed 100%)}body:before{content:"";z-index:-1;opacity:.3;background-image:linear-gradient(90deg,#3f9b6514 1px,#0000 1px),linear-gradient(#3f9b6514 1px,#0000 1px);background-size:32px 32px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 72%);mask-image:linear-gradient(#000,#0000 72%)}.pixel-kicker{color:var(--island-grass);font-family:ui-monospace,Consolas,monospace;font-size:12px}.pixel-panel{border:3px solid var(--island-ink);background:var(--island-paper);box-shadow:var(--island-shadow);border-radius:18px}.pixel-button{border:3px solid var(--island-ink);min-height:52px;box-shadow:0 5px 0 var(--island-ink);border-radius:10px;justify-content:center;align-items:center;gap:10px;transition:transform .18s,box-shadow .18s,filter .18s;display:inline-flex}.pixel-button:hover:not(:disabled){box-shadow:0 7px 0 var(--island-ink);transform:translateY(-2px)}.pixel-button:active:not(:disabled){box-shadow:0 1px 0 var(--island-ink);transform:translateY(4px)}.pixel-button.primary{background:var(--island-grass)}.pixel-button.sky{background:var(--island-sky-light)}.pixel-button.danger{background:var(--island-coral)}.pixel-button.neutral{background:#f4f0df}.button-icon{width:20px;height:20px;display:inline-block;position:relative}.plus-icon:before,.plus-icon:after{content:"";background:currentColor;position:absolute}.plus-icon:before{width:4px;height:16px;top:2px;left:8px}.plus-icon:after{width:16px;height:4px;top:8px;left:2px}.scan-icon{border:3px solid}.scan-icon:after{content:"";border-top:3px solid var(--island-coral);width:22px;position:absolute;top:6px;left:-4px}.soft-action{min-height:44px;color:var(--island-navy);background:#fff;border:2px solid #c9d9d0;border-radius:10px;padding:8px 15px;font-weight:800}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon-button.close{border:2px solid var(--island-line);background:#fff;border-radius:50%}.message{border-width:2px;border-radius:10px}.message.error{background:#fff0e9}.island-scene{position:relative;overflow:hidden}.pixel-cloud{background:#ffffffeb;width:64px;height:22px;position:absolute;box-shadow:16px -14px #ffffffeb,38px -7px #ffffffeb}.cloud-one{top:18%;left:9%}.cloud-two{top:30%;right:13%;transform:scale(.7)}.island-sun{background:var(--island-sun);width:42px;height:42px;position:absolute;top:9%;right:16%;box-shadow:0 0 0 8px #f7c84b33}.floating-island{border:4px solid var(--island-ink);background:var(--island-leaf);height:30%;position:absolute;bottom:10%;left:12%;right:12%;box-shadow:inset 0 -14px #4aa45e,0 12px #b5784b,0 25px #8b5b3e}.floating-island:after{content:"";clip-path:polygon(0 0,100% 0,72% 100%,26% 100%);background:#8b5b3e;width:32%;height:22px;position:absolute;bottom:-47px;right:8%}.island-path{gap:12px;display:flex;position:absolute;bottom:10px;left:18%;transform:rotate(-6deg)}.island-path i{border:2px solid var(--island-ink);background:var(--island-cream);width:23px;height:13px}.island-tree{background:#8b5b3e;width:16px;height:34px;position:absolute;bottom:20px}.island-tree:before{content:"";border:3px solid var(--island-ink);background:#46a969;width:44px;height:36px;position:absolute;top:-27px;left:-15px;box-shadow:0 -15px 0 -3px #79c968}.tree-one{left:13%}.tree-two{left:33%;transform:scale(.78)}.island-lighthouse{border:3px solid var(--island-ink);background:repeating-linear-gradient(to bottom, var(--island-cream) 0 15px, var(--island-coral) 15px 28px);width:28px;height:58px;position:absolute;bottom:17px;right:14%}.island-lighthouse:before{content:"";border:3px solid var(--island-ink);background:var(--island-sun);width:36px;height:14px;position:absolute;top:-15px;left:-7px}.island-lighthouse i{background:#fff;width:7px;height:7px;position:absolute;top:-10px;left:8px}.xiaofang{border:4px solid var(--island-ink);background:#43b6aa;border-radius:16px 16px 12px 12px;width:62px;height:64px;display:block;position:absolute;box-shadow:inset 0 -10px #329589}.xiaofang:before,.xiaofang:after{content:"";border:3px solid var(--island-ink);background:var(--island-sun);width:18px;height:13px;position:absolute;bottom:-13px}.xiaofang:before{left:3px}.xiaofang:after{right:3px}.xiaofang .face{background:var(--island-ink);width:9px;height:9px;box-shadow:25px 0 0 var(--island-ink), 8px 18px 0 -2px var(--island-cream), 17px 18px 0 -2px var(--island-cream);position:absolute;top:18px;left:13px}.xiaofang .scarf{background:var(--island-coral);width:32px;height:9px;position:absolute;bottom:10px;right:-10px;transform:rotate(-8deg)}.xiaofang .arm{border:3px solid var(--island-ink);transform-origin:0;background:#43b6aa;width:20px;height:10px;position:absolute;top:18px;right:-18px;transform:rotate(-35deg)}.xiaofang-mini{border-width:3px;border-radius:12px;width:44px;height:45px;position:relative}.xiaofang-mini .face{width:7px;height:7px;box-shadow:17px 0 0 var(--island-ink), 6px 13px 0 -2px var(--island-cream), 12px 13px 0 -2px var(--island-cream);top:12px;left:9px}.xiaofang-mini:before,.xiaofang-mini:after{display:none}.auth-world{background:linear-gradient(155deg,#cdefff 0 51%,#e9f8d7 51% 66%,#fff7dc 66%);grid-template-columns:minmax(0,1.12fr) minmax(390px,.72fr);gap:clamp(36px,6vw,96px);padding:44px clamp(32px,6vw,104px)}.auth-hero{min-width:0}.auth-hero h1{max-width:820px;color:var(--island-ink);letter-spacing:-.04em;font-size:clamp(48px,5.5vw,84px)}.auth-hero h1 span{color:var(--island-grass)}.auth-lead{color:#465871;max-width:700px;margin:0;font-size:19px;line-height:1.8}.auth-island{background:url(/assets/task-island-hero.webp) 50% 64%/cover no-repeat;border-radius:18px;width:min(760px,100%);height:250px;margin-top:24px;box-shadow:inset 0 0 0 3px #20304a26}.auth-island>.floating-island,.auth-island>.pixel-cloud,.auth-island>.island-sun{display:none}.auth-island .xiaofang{bottom:17%;right:14%}.auth-island .xiaofang,.mini-island .xiaofang{width:118px;height:126px;box-shadow:none;image-rendering:pixelated;background:url(/assets/xiaofang-wave.webp) 50%/contain no-repeat;border:0;border-radius:0}.auth-island .xiaofang:before,.auth-island .xiaofang:after,.mini-island .xiaofang:before,.mini-island .xiaofang:after,.auth-island .xiaofang>i,.mini-island .xiaofang>i{display:none}.auth-card{border-radius:18px;position:relative}.auth-card-mark{border:3px solid var(--island-ink);background:var(--island-sun);border-radius:14px;padding:7px 12px;position:absolute;top:-27px;left:32px}.auth-kicker{margin-top:28px}.auth-card h2{color:var(--island-ink)}.mode-tabs{border:2px solid var(--island-line);background:#edf5ef;border-radius:12px;padding:5px}.mode-tabs button{color:var(--island-muted);background:0 0;border-radius:8px}.mode-tabs button+button{border-left:0}.mode-tabs .active{color:#fff;background:var(--island-navy);box-shadow:0 3px #15243e}.stack-form input,.stack-form textarea,.task-form input,.task-form textarea,.task-form select,.review-box textarea{border:2px solid #c9d8d0;border-radius:10px}.auth-safe-note{color:var(--island-muted);text-align:center;margin:22px 0 0;font-size:13px}.auth-safe-note span{color:var(--island-grass);font-weight:900}.dashboard-shell{width:min(1580px,100% - 64px)}.dashboard-header{min-height:64px}.brand-lockup{align-items:center;gap:14px;display:flex}.brand-lockup h1{margin:0;font-size:24px}.brand-lockup .pixel-kicker{margin-bottom:3px}.brand-cube{border:3px solid var(--island-ink);background:var(--island-leaf);width:44px;height:44px;box-shadow:inset -9px -9px 0 var(--island-grass), 4px 4px 0 #20304a29;border-radius:10px}.parent-badge{border:2px solid var(--island-line);color:var(--island-navy);background:#fff;border-radius:999px;align-items:center;gap:9px;display:flex}.parent-badge i{background:var(--island-leaf);width:10px;height:10px;box-shadow:0 0 0 4px var(--island-mint);border-radius:50%}.primary-view-nav{border:2px solid var(--island-line);background:#ffffffdb;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin:22px 0;padding:10px;display:flex;box-shadow:0 5px #20304a0d}.dashboard-hero{background:linear-gradient(120deg,#fffdf5 0 56%,#e5f7ff 56%);grid-template-columns:minmax(0,1.2fr) minmax(380px,.8fr);gap:30px;padding:clamp(28px,4vw,48px);display:grid;overflow:hidden}.hero-copy{align-self:center}.dashboard-hero h2{letter-spacing:-.03em;margin:5px 0 12px;font-size:clamp(32px,4vw,52px);line-height:1.12}.dashboard-hero h2 span{color:var(--island-grass)}.dashboard-hero p:not(.pixel-kicker){max-width:620px;color:var(--island-muted);font-size:17px}.hero-actions{margin-top:26px}.hero-overview{grid-template-rows:1fr auto;min-width:0;display:grid}.mini-island{background:url(/assets/task-island-hero.webp) 50% 66%/cover no-repeat;border-radius:14px;min-height:190px;position:relative}.mini-island .floating-island,.mini-island .pixel-cloud{display:none}.mini-island .xiaofang{bottom:28%;right:19%;transform:scale(.78)}.summary-grid{z-index:2;grid-template-columns:repeat(3,1fr);gap:8px;display:grid;position:relative}.summary-grid article{text-align:center;background:#ffffffeb;border:2px solid #20304a26;border-radius:10px;padding:11px 8px}.summary-grid b,.summary-grid span{display:block}.summary-grid b{color:var(--island-navy);font-variant-numeric:tabular-nums;font-size:24px}.summary-grid span{color:var(--island-muted);margin-top:2px;font-size:12px}.section-heading,.task-board-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.section-heading h2,.task-board-heading h2{margin:0;font-size:25px}.children-area{margin-top:34px}.children-strip{margin:14px 0 32px}.child-chip{border:2px solid var(--island-line);background:#fff;border-radius:14px;min-width:235px;box-shadow:0 5px #20304a0f}.pixel-avatar{color:var(--island-navy);background:var(--island-sun);border-radius:13px;box-shadow:inset -7px -7px #e6ac35}.child-chip div{flex:1;min-width:0}.child-chip small{color:var(--island-muted);align-items:center;gap:7px;display:flex}.child-chip small i{background:#9ba6ad;border-radius:50%;width:8px;height:8px}.child-chip small.online{color:var(--island-grass)}.child-chip small.online i{background:var(--island-leaf);box-shadow:0 0 0 3px var(--island-mint)}.empty-child{background:#ffffffb3;border:2px dashed #b8cabe;border-radius:14px}.task-board-heading{margin-top:4px}.view-caption{color:var(--island-muted);margin:6px 0 0;font-size:14px}.view-switcher{border:2px solid var(--island-line);background:#eef5ef;border-radius:12px;gap:5px;padding:5px;display:flex}.view-switcher button{min-height:42px;color:var(--island-muted);background:0 0;border:0;border-radius:8px;padding:8px 14px;font-weight:900;transition:color .18s,background .18s,box-shadow .18s}.view-switcher button b{background:#ffffffb3;border-radius:7px;place-items:center;min-width:24px;min-height:24px;margin-left:5px;padding:0 5px;font-size:12px;display:inline-grid}.view-switcher button.active{color:#fff;background:var(--island-navy);box-shadow:0 3px #15243e}.pixel-button.compact{min-height:48px;padding:9px 15px}.history-filters{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:10px;margin:0;padding:0;display:flex}.task-board-heading+.history-filters{margin-top:16px}.history-filters label{min-width:126px;color:var(--island-muted);gap:5px;font-size:12px;font-weight:800;display:grid}.history-filters .filter-search{flex:1;min-width:190px}.history-filters input,.history-filters select{border:2px solid var(--island-line);min-height:42px;color:var(--island-ink);background:#fff;border-radius:9px;padding:6px 10px}.today-task-board{margin-top:18px}.today-status-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 6px;display:grid}.today-status-tabs button{border:2px solid var(--island-line);min-width:0;min-height:78px;color:var(--island-muted);text-align:left;background:#edf5ef;border-bottom:0;border-radius:14px 14px 0 0;align-content:center;padding:12px 42px 12px 16px;transition:color .18s,background .18s,transform .18s,box-shadow .18s;display:grid;position:relative;overflow:visible}.today-status-tabs button:hover{color:var(--island-navy);background:#fff;transform:translateY(-2px)}.today-status-tabs button small{color:var(--island-grass);letter-spacing:.16em;font-family:ui-monospace,Consolas,monospace;font-size:10px;font-weight:900}.today-status-tabs button span{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:17px;font-weight:900;overflow:hidden}.today-status-tabs button>b{z-index:2;border:2px solid var(--island-ink);min-width:34px;height:34px;color:var(--island-navy);background:var(--island-sun);font-variant-numeric:tabular-nums;border-radius:10px;place-items:center;padding:0 7px;font-size:14px;display:grid;position:absolute;top:-9px;right:-6px;box-shadow:0 3px #20304a2e}.today-status-tabs button.active{z-index:1;color:var(--island-ink);background:var(--island-paper);transform:translateY(2px);box-shadow:0 -5px #20304a0f}.today-status-tabs button[data-group=active].active{border-top:6px solid var(--island-sky)}.today-status-tabs button[data-group=review].active{border-top:6px solid var(--island-sun)}.today-status-tabs button[data-group=finished].active{border-top:6px solid var(--island-leaf)}.today-status-tabs button[data-group=draft].active{border-top:6px solid #9aa4b3}.today-tab-panel{border:2px solid var(--island-line);background:#fffdf6f5;border-radius:16px;min-height:260px;padding:22px;position:relative;box-shadow:0 8px #20304a0f}.today-tab-panel:before{content:"";background:var(--island-sky);border-radius:14px 14px 0 0;height:6px;position:absolute;top:0;left:0;right:0}.today-tab-panel[data-group=review]:before{background:var(--island-sun)}.today-tab-panel[data-group=finished]:before{background:var(--island-leaf)}.today-tab-panel[data-group=draft]:before{background:#9aa4b3}.today-tab-panel>header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding-top:4px;display:flex}.today-tab-panel>header h3{margin:2px 0 4px;font-size:23px}.today-tab-panel>header span{color:var(--island-muted);font-size:14px}.today-tab-panel>header>b{border:2px solid var(--island-line);color:var(--island-navy);font-variant-numeric:tabular-nums;background:#fff;border-radius:9px;flex:none;padding:8px 11px;font-size:13px}.task-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.task-card-grid .task-card{grid-template-rows:auto auto minmax(42px,auto) auto auto;height:100%;margin:0;display:grid}.task-card-grid .task-card h3{min-width:0}.today-empty{min-height:150px;margin:0}.task-groups{gap:18px;margin-top:18px}.task-column{background:#dff5df75;border-radius:16px;padding:12px}.task-column[data-group=review]{background:#fff1bc70}.task-column[data-group=finished]{background:#dff5ff80}.task-column[data-group=draft]{background:#e8ebef99}.task-column>header{padding:2px 3px 12px}.task-column>header small{color:var(--island-grass);letter-spacing:.16em;font-family:ui-monospace,Consolas,monospace;font-size:10px;font-weight:900}.task-column>header h2{margin:2px 0 0;font-size:19px}.task-column>header>span{border:2px solid var(--island-line);background:#fff;border-radius:10px}.task-card,.empty-card{background:#fff;border:2px solid #d7e3db;border-radius:13px;margin-bottom:13px;padding:17px;box-shadow:0 5px #20304a0f}.task-card{transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;overflow:hidden}.task-card:before{content:"";background:var(--island-sky);width:6px;position:absolute;top:0;bottom:0;left:0}.task-card:hover{border-color:#a9c7b3;transform:translateY(-3px);box-shadow:0 8px #20304a17}.task-card[data-status=PENDING_REVIEW]{border-top:2px solid #d7e3db}.task-card[data-status=PENDING_REVIEW]:before{background:var(--island-sun)}.task-card[data-status=IN_PROGRESS],.task-card[data-status=APPROVED]{border-top:2px solid #d7e3db}.task-card[data-status=APPROVED]:before{background:var(--island-leaf)}.task-card[data-status=RETURNED]{border-top:2px solid #d7e3db}.task-card[data-status=RETURNED]:before,.task-card[data-status=CANCELED]:before{background:var(--island-coral)}.task-card[data-status=DRAFT]:before{background:#9aa4b3}.status-chip{color:var(--island-navy);background:var(--island-sky-light);border-radius:7px;padding:5px 8px;font-weight:800}.task-card h3{color:var(--island-ink);margin:16px 0 7px}.task-card p{min-height:40px;color:var(--island-muted);margin-bottom:13px}.step-progress{gap:4px;margin-bottom:14px;display:flex}.step-progress i{background:#e3e8e5;border-radius:3px;flex:1;max-width:28px;height:6px}.step-progress i.done{background:var(--island-leaf)}.task-card footer{border-top:1px solid var(--island-line);padding-top:11px}.task-card footer span{align-items:center;gap:5px;display:inline-flex}.task-card footer strong{color:var(--island-grass);font-size:12px}.meta-icon{border:2px solid;width:13px;height:13px;display:inline-block}.clock-icon{border-radius:50%}.clock-icon:after{content:"";border-bottom:2px solid;border-left:2px solid;width:4px;height:4px;margin:2px 0 0 5px;display:block}.step-icon{border-radius:3px;position:relative}.step-icon:after{content:"";border-bottom:2px solid;border-right:2px solid;width:3px;height:6px;position:absolute;top:1px;left:3px;transform:rotate(45deg)}.danger-text{color:#c94d47!important}.empty-card{min-height:105px;color:var(--island-muted);box-shadow:none;text-align:center;border-style:dashed;place-items:center;display:grid}.empty-card i{border:2px solid #aab7b0;border-top:0;width:22px;height:18px;margin-bottom:7px}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#192739b3}.modal{border-radius:18px}.scanner{border-radius:12px;overflow:hidden}.scanner span{background:#111111d9;border-radius:8px}.composer-intro{margin-top:0}.quick-source{border:2px solid var(--island-line);background:linear-gradient(135deg,#f4fbff,#f4fbef);border-radius:14px;margin:22px 0 16px;padding:18px}.quick-source-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.quick-source-heading b{font-size:20px}.quick-source-heading small{color:var(--island-muted);text-align:right}.source-tabs{border:2px solid var(--island-line);background:#fff;border-radius:11px;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:14px;padding:5px;display:grid}.source-tabs button{min-height:44px;color:var(--island-muted);background:0 0;border:0;border-radius:8px;font-weight:900;transition:color .18s,background .18s,box-shadow .18s}.source-tabs button.active{color:#fff;background:var(--island-navy);box-shadow:0 3px #15243e}.source-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:220px;margin-top:12px;padding:2px 2px 5px;display:grid;overflow-y:auto}.source-list button{border:2px solid var(--island-line);min-width:0;min-height:64px;color:var(--island-ink);text-align:left;background:#fff;border-radius:10px;gap:4px;padding:10px 12px;transition:border-color .18s,background .18s;display:grid}.source-list button:hover,.source-list button.selected{border-color:var(--island-grass);background:var(--island-mint)}.source-list button b,.source-list button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.source-list button small,.source-empty{color:var(--island-muted)}.source-empty{border:2px dashed var(--island-line);background:#ffffffb3;border-radius:10px;grid-column:1/-1;margin:0;padding:13px}.template-save-toggle{border:2px solid var(--island-line);background:#f7fbf6;border-radius:12px;gap:10px;margin-top:18px;padding:14px;display:grid}.template-save-toggle>label{align-items:center;gap:8px;font-weight:900;display:flex}.template-save-toggle>label input{width:20px;min-height:20px}.template-save-toggle>input{border:2px solid var(--island-line);background:#fff;border-radius:9px;width:100%;min-height:44px;padding:8px 10px}.composer-section{border:2px solid var(--island-line);background:#fbfdf9;border-radius:14px;margin-top:18px;padding:18px}.composer-section>header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.composer-section>header>span{border:2px solid var(--island-ink);color:#fff;background:var(--island-grass);border-radius:9px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.composer-section>header b,.composer-section>header small{display:block}.composer-section>header small{color:var(--island-muted);margin-top:2px}.steps-editor{border:0;margin:0;padding:0}.step-row b,.step-row button{border:2px solid var(--island-line);color:var(--island-navy);background:#fff;border-radius:9px}.step-row b{border-color:var(--island-ink);background:var(--island-sun)}.detail-stats span,.check-list li,.submission-card{border-width:2px;border-color:var(--island-line);border-radius:10px}.detail-columns h3{border-color:var(--island-leaf)}.review-box{border-color:var(--island-sun);background:var(--island-cream);border-radius:12px}.learning-nav{color:var(--island-navy);align-items:center;gap:8px;display:inline-flex}.book-icon{border:2px solid;border-radius:2px;width:18px;height:16px;position:relative}.book-icon:after{content:"";border-left:2px solid;position:absolute;top:-2px;bottom:-2px;left:7px}.ai-check-panel{border:2px solid var(--island-line);background:#f4fbff;border-radius:14px;margin-top:22px;padding:18px}.ai-check-header,.learning-title,.subsection-heading,.report-toolbar{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.ai-check-header h3,.subsection-heading h3,.report-toolbar h3{margin:2px 0 0}.analysis-status{border:2px solid var(--island-line);color:var(--island-navy);background:#fff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.analysis-status[data-status=SUCCEEDED]{background:#ecf9e8;border-color:#75b982}.analysis-status[data-status=FAILED]{background:#fff0e9;border-color:#d57b70}.analysis-empty,.learning-empty{min-height:96px;color:var(--island-muted);background:#ffffffb8;border:2px dashed #b7c9c0;border-radius:12px;place-items:start;gap:8px;margin:14px 0 0;padding:18px;display:grid}.question-check-list{gap:14px;margin:16px 0 0;padding:0;list-style:none;display:grid}.question-check-card{border:2px solid var(--island-line);background:#fff;border-left:7px solid #9aa8b3;border-radius:12px;padding:16px}.question-check-card[data-outcome=CORRECT],.archive-card[data-outcome=CORRECT]{border-left-color:#4fa66a}.question-check-card[data-outcome=INCORRECT],.archive-card[data-outcome=INCORRECT]{border-left-color:#d45f54}.question-check-card[data-outcome=PARTIAL],.archive-card[data-outcome=PARTIAL]{border-left-color:#d59b2d}.question-check-card>header{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.question-check-card>header>span{border:2px solid var(--island-ink);background:var(--island-sun);border-radius:9px;place-items:center;min-height:34px;padding:0 10px;font-size:14px;font-weight:900;display:grid}.question-check-card>header small{color:var(--island-muted);margin-left:auto}.question-stem,.archive-card>p{overflow-wrap:anywhere;color:var(--island-ink);font-weight:800;line-height:1.7}.question-check-card dl,.archive-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.question-check-card dl div,.archive-card dl div{background:#f2f6f3;border-radius:9px;padding:10px}.question-check-card dt,.archive-card dt{color:var(--island-muted);font-size:12px;font-weight:800}.question-check-card dd,.archive-card dd{overflow-wrap:anywhere;margin:5px 0 0}.question-explanation{border-left:4px solid var(--island-sky);color:#40536a;background:var(--island-sky-light);padding:11px 13px;line-height:1.65}.knowledge-tags{flex-wrap:wrap;gap:7px;display:flex}.knowledge-tags span{color:#2f6f45;background:var(--island-mint);border:1px solid #a8cfb0;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:800}.verification-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.verification-fields label{color:var(--island-muted);gap:6px;font-size:12px;font-weight:900;display:grid}.verification-fields select,.verification-fields input{border:2px solid var(--island-line);min-width:0;min-height:44px;color:var(--island-ink);font:inherit;background:#fff;border-radius:9px;padding:9px 10px}.verified-note{color:#2f6f45;font-weight:800}.question-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:14px;display:flex}.question-actions .pixel-button{min-height:44px;padding:8px 14px}.learning-backdrop{padding:20px}.learning-center{width:min(1360px,100%);max-height:calc(100dvh - 40px);padding:32px;overflow:auto}.learning-title{padding-right:56px}.learning-title h2{margin:3px 0 8px}.learning-title p:not(.pixel-kicker){color:var(--island-muted);margin:0}.learning-filter label,.report-toolbar label,.archive-filters label{color:var(--island-muted);gap:5px;font-size:12px;font-weight:800;display:grid}.learning-filter select,.report-toolbar select,.archive-filters select,.archive-filters input{border:2px solid var(--island-line);min-height:44px;color:var(--island-ink);background:#fff;border-radius:9px;padding:8px 10px}.learning-tabs{border:2px solid var(--island-line);background:#eef5ef;border-radius:12px;gap:7px;margin:22px 0;padding:6px;display:flex}.learning-tabs button{min-height:46px;color:var(--island-muted);background:0 0;border:0;border-radius:8px;flex:1;font-weight:900}.learning-tabs button.active{color:#fff;background:var(--island-navy);box-shadow:0 3px #15243e}.learning-summary,.report-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.learning-summary article,.report-stats article{border:2px solid var(--island-line);text-align:center;background:#fff;border-radius:12px;padding:18px}.learning-summary b,.learning-summary span,.report-stats b,.report-stats span{display:block}.learning-summary b,.report-stats b{color:var(--island-navy);font-size:30px}.learning-summary span,.report-stats span{color:var(--island-muted);margin-top:3px;font-size:13px}.learning-columns{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:20px;margin-top:22px;display:grid}.learning-columns>section,.trend-card,.knowledge-report{border:2px solid var(--island-line);background:#fbfdf9;border-radius:14px;min-width:0;padding:18px}.mastery-card,.review-plan-card,.archive-card{border:2px solid var(--island-line);background:#fff;border-left:7px solid #9aa8b3;border-radius:11px;margin-top:12px;padding:15px}.mastery-card[data-level=WEAK]{border-left-color:#d45f54}.mastery-card[data-level=LEARNING]{border-left-color:#d59b2d}.mastery-card[data-level=BASIC]{border-left-color:#56a6c7}.mastery-card[data-level=STABLE]{border-left-color:#4fa66a}.mastery-card header,.review-plan-card header,.archive-card header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.mastery-card header span,.review-plan-card header span,.archive-card header b{background:var(--island-sky-light);border-radius:7px;padding:5px 8px;font-size:12px}.mastery-card p,.review-plan-card small{color:var(--island-muted)}.mastery-evidence{flex-wrap:wrap;gap:8px;display:flex}.mastery-evidence span{background:#edf3ef;border-radius:7px;padding:6px 8px;font-size:12px}.review-plan-card p{overflow-wrap:anywhere;line-height:1.6}.review-plan-card small{display:block}.review-plan-card .pixel-button{width:100%;margin-top:12px}.archive-filters{flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:16px;display:flex}.archive-filters input{width:min(300px,100%)}.archive-card{border-left-width:7px}.archive-card header span{flex:1;min-width:160px}.archive-card time{color:var(--island-muted);font-size:12px}.report-toolbar{align-items:end;margin-bottom:16px}.trend-card,.knowledge-report{margin-top:18px}.trend-card h4,.knowledge-report h4{margin-top:0}.trend-bars{align-items:end;gap:7px;min-height:190px;padding-top:20px;display:flex;overflow-x:auto}.trend-day{flex:1 0 34px;grid-template-rows:130px auto auto;place-items:end center;gap:4px;display:grid}.trend-day i{border:2px solid var(--island-ink);background:var(--island-leaf);border-radius:5px 5px 2px 2px;width:20px;min-height:8px;max-height:130px}.trend-day small{color:var(--island-muted);white-space:nowrap;font-size:10px}.trend-day span{color:var(--island-navy);font-size:11px;font-weight:900}.knowledge-report article{border-bottom:1px dashed var(--island-line);justify-content:space-between;gap:14px;padding:11px 0;display:flex}.knowledge-report article:last-child{border-bottom:0}.knowledge-report span{color:var(--island-muted);text-align:right}@media (width<=1250px){.auth-world{grid-template-columns:minmax(0,1fr) minmax(380px,470px);gap:36px;padding:36px}.dashboard-hero{grid-template-columns:minmax(0,1fr) 380px}.task-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=960px){.auth-world{grid-template-columns:1fr;padding:32px}.auth-hero{width:min(760px,100%);margin:auto}.auth-island{height:190px}.auth-card{width:min(620px,100%);margin:auto}.dashboard-hero{background:linear-gradient(150deg,#fffdf5,#e5f7ff);grid-template-columns:1fr}.hero-overview{grid-template-columns:minmax(260px,1fr) minmax(260px,.8fr);align-items:end}.task-board-heading{flex-direction:column;align-items:flex-start}.history-filters{justify-content:flex-start}.learning-columns{grid-template-columns:1fr}.learning-summary,.report-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.today-status-tabs{grid-template-columns:repeat(2,minmax(0,1fr));padding:0}.today-status-tabs button{border-bottom:2px solid var(--island-line);border-radius:12px}.today-status-tabs button.active{transform:none}.today-tab-panel{margin-top:12px}}@media (width<=680px){.dashboard-shell{width:calc(100% - 24px)}.dashboard-header{flex-direction:column;align-items:flex-start}.dashboard-header nav{justify-content:space-between;width:100%}.brand-lockup h1{font-size:21px}.dashboard-hero{border-radius:14px;padding:23px 18px}.dashboard-hero h2{font-size:32px}.hero-overview{grid-template-columns:1fr}.mini-island{min-height:160px}.hero-actions{grid-template-columns:1fr;display:grid}.hero-actions .pixel-button{width:100%}.history-filters{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid!important}.primary-view-nav{flex-direction:column;align-items:stretch}.view-switcher{width:100%}.view-switcher button{flex:1}.primary-view-nav .pixel-button{width:100%}.source-tabs,.source-list{grid-template-columns:1fr}.quick-source-heading{flex-direction:column;align-items:flex-start}.quick-source-heading small{text-align:left}.today-status-tabs{gap:10px}.today-status-tabs button{min-height:68px;padding:10px 34px 10px 12px}.today-status-tabs button span{font-size:15px}.today-status-tabs button>b{min-width:30px;height:30px;top:-7px;right:-4px}.today-tab-panel{min-height:220px;padding:16px}.today-tab-panel>header{align-items:flex-start}.today-tab-panel>header span{display:block}.task-card-grid{grid-template-columns:1fr}.history-filters label{min-width:0}.task-column>header{background:#f2faf3}.modal{border-radius:0}.auth-world{gap:24px;padding:20px 16px 32px}.auth-hero h1{font-size:40px}.auth-lead{font-size:16px}.auth-island{height:150px}.auth-card{padding:32px 20px 24px}.composer-section{padding:14px 10px}.dashboard-header nav{flex-wrap:wrap}.learning-nav{order:3;justify-content:center;width:100%}.learning-backdrop{padding:0}.learning-center{width:100%;max-height:100dvh;padding:24px 14px max(24px,env(safe-area-inset-bottom));border-left:0;border-right:0}.learning-title{padding-right:44px;display:grid}.learning-tabs{z-index:3;background:#eef5ef;position:sticky;top:-24px}.question-check-card dl,.archive-card dl,.verification-fields{grid-template-columns:1fr}.question-actions{display:grid}.question-actions button{width:100%}.archive-filters{grid-template-columns:1fr;display:grid}.archive-filters input{width:100%}.report-toolbar{flex-direction:column;align-items:stretch}.knowledge-report article{flex-direction:column;align-items:flex-start}.knowledge-report span{text-align:left}}@media (width<=440px){.pixel-kicker{font-size:10px}.auth-hero h1{font-size:34px}.auth-island{height:128px}.history-filters{grid-template-columns:1fr}.learning-tabs{gap:3px;padding:4px}.learning-tabs button{min-height:44px;padding:5px;font-size:13px}.learning-summary,.report-stats{grid-template-columns:1fr 1fr;gap:7px}.learning-summary article,.report-stats article{padding:12px 7px}.learning-summary b,.report-stats b{font-size:24px}}.release-world{min-height:100dvh;color:var(--island-ink);background:linear-gradient(#dff5ff 0 48%,#dff5df 48% 100%);padding:40px}.release-shell{width:min(1180px,100%);margin:auto}.release-header{border:3px solid var(--island-ink);background:#ffffffeb;border-radius:18px;align-items:center;gap:20px;margin-bottom:28px;padding:18px 22px;display:flex;box-shadow:0 8px #20304a24}.release-header>div:nth-child(2){flex:1}.release-header h1,.publish-form h2,.release-login h2{margin:2px 0 4px}.release-header p:last-child,.release-login>p,.release-helper{color:var(--island-muted);margin:0}.release-brand{border:3px solid var(--island-ink);background:var(--island-sun);border-radius:14px;grid-template-columns:repeat(3,14px);align-items:end;gap:3px;width:60px;height:60px;padding:10px;display:grid}.release-brand span{border:2px solid var(--island-ink);background:var(--island-grass);display:block}.release-brand span:first-child{height:16px}.release-brand span:nth-child(2){height:31px}.release-brand span:nth-child(3){height:23px}.release-login{text-align:center;width:min(520px,100%);margin:64px auto;padding:34px}.release-lock{border:3px solid var(--island-ink);background:var(--island-sun);border-radius:10px;width:62px;height:48px;margin:0 auto 18px;position:relative}.release-lock:before{content:"";border:3px solid var(--island-ink);border-bottom:0;border-radius:18px 18px 0 0;width:30px;height:27px;position:absolute;top:-27px;left:13px}.release-login form,.publish-form{gap:18px;display:grid}.release-login form{text-align:left;margin-top:24px}.release-grid{grid-template-columns:minmax(300px,.8fr) minmax(460px,1.2fr);align-items:start;gap:24px;display:grid}.current-release,.publish-form{padding:28px}.version-chip{color:var(--island-navy);align-items:baseline;gap:10px;margin:18px 0;font-size:34px;font-weight:900;display:flex}.version-chip small{color:var(--island-muted);font-size:13px}.current-release dl{gap:10px;margin:0;display:grid}.current-release dl div{border:2px solid var(--island-line);background:#fff;border-radius:9px;padding:11px 12px}.current-release dt{color:var(--island-muted);font-size:12px;font-weight:900}.current-release dd{overflow-wrap:anywhere;margin:4px 0 0;font-weight:800}.release-notes{border-left:5px solid var(--island-sky);background:var(--island-sky-light);white-space:pre-wrap;padding:14px}.release-empty{border:2px dashed var(--island-line);color:var(--island-muted);background:#fff;border-radius:12px;padding:28px 16px}.release-fields{gap:12px;display:grid}.release-fields.two-columns{grid-template-columns:1fr 1fr}.release-world label{color:var(--island-navy);gap:7px;font-weight:900;display:grid}.release-world input:not([type=checkbox]),.release-world textarea{border:2px solid var(--island-line);width:100%;min-height:48px;color:var(--island-ink);font:inherit;background:#fff;border-radius:10px;padding:11px 13px}.release-world input:focus-visible,.release-world textarea:focus-visible{outline:3px solid var(--island-sun);outline-offset:2px}.apk-picker{border:2px dashed var(--island-grass);cursor:pointer;background:var(--island-mint);text-align:center;border-radius:12px;place-items:center;min-height:82px;padding:16px}.apk-picker input{max-width:100%;min-height:44px}.force-toggle{border:2px solid var(--island-line);background:#fff8df;border-radius:10px;grid-template-columns:28px 1fr;align-items:center;padding:13px}.force-toggle input{width:22px;height:22px}.force-toggle span,.force-toggle b,.force-toggle small{display:block}.force-toggle small{color:var(--island-muted);font-weight:600}.release-progress>div{border:2px solid var(--island-ink);background:#fff;border-radius:999px;height:17px;overflow:hidden}.release-progress span{background:var(--island-leaf);height:100%;transition:width .2s;display:block}.release-progress b{margin-top:6px;font-size:13px;display:block}.release-message{border:2px solid;border-radius:9px;margin:0;padding:11px 13px;font-weight:800}.release-message.error{color:#842f29;background:#fff0e9;border-color:#d57b70}.release-message.success{color:#2f6f45;background:#ecf9e8;border-color:#75b982}.release-helper{font-size:12px;line-height:1.6}@media (width<=860px){.release-world{padding:24px}.release-grid{grid-template-columns:1fr}.release-header{flex-wrap:wrap;align-items:flex-start}.release-header .pixel-button{width:100%}.release-fields.two-columns{grid-template-columns:1fr 1fr}}@media (width<=520px){.release-world{padding:14px}.release-header,.current-release,.publish-form,.release-login{padding:20px 16px}.release-brand{width:52px;height:52px}.release-header h1{font-size:26px}.release-fields.two-columns{grid-template-columns:1fr}.release-login{margin:24px auto}.release-world .pixel-button{width:100%;min-height:48px}}
