:root{
  color-scheme:dark;
  --bg:#070a12;--panel:#0f1525;--panel2:#121a2d;--line:rgba(255,255,255,.10);
  --text:#f8fafc;--muted:#9aa5bc;--lime:#d9ff64;--cyan:#6de8ff;--violet:#a78bfa;
  --orange:#ffb65c;--red:#ff6b72;--green:#7cf2a4;--shadow:0 26px 80px rgba(0,0,0,.34);
  --deep:#7d8cff;--comm:#58d6dc;--admin:#f5bd58;--meeting:#cc7af7;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Sans","Yu Gothic UI","Yu Gothic",sans-serif;-webkit-font-smoothing:antialiased}
button,a{font:inherit}button{color:inherit}.hidden{display:none!important}
.app-shell{min-height:100svh;position:relative;overflow:hidden;background:
 radial-gradient(circle at 12% 12%,rgba(125,140,255,.11),transparent 30%),
 radial-gradient(circle at 88% 75%,rgba(217,255,100,.08),transparent 31%),#070a12}
.screen{min-height:100svh}.title-screen{padding:18px clamp(16px,4vw,56px) 26px;display:flex;flex-direction:column;position:relative;isolation:isolate}
.ambient-grid{position:absolute;inset:0;z-index:-1;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black 30%,transparent)}
.title-nav,.game-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.title-nav{height:48px}.back-link{font-size:12px;font-weight:900;letter-spacing:.16em;color:#b8c1d3;text-decoration:none}.series-badge{font-size:12px;font-weight:900;letter-spacing:.14em;color:var(--lime);border:1px solid rgba(217,255,100,.24);background:rgba(217,255,100,.06);padding:8px 10px;border-radius:999px}
.title-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.92fr);align-items:center;gap:7vw;flex:1;width:min(1160px,100%);margin:auto;padding:36px 0}.kicker,.panel-kicker{font-size:12px;font-weight:950;letter-spacing:.19em;color:var(--lime);margin:0 0 12px}.title-copy h1{font-size:clamp(66px,11vw,132px);line-height:.78;letter-spacing:-.075em;margin:0 0 30px;font-weight:950}.title-copy h1 em,.complete-card h2 em{font-style:normal;color:var(--lime)}.lead{font-size:clamp(17px,2vw,24px);line-height:1.55;color:#d3d9e5;margin:0 0 28px}.micro-copy{font-size:12px;color:#7f8aa0;margin:12px 0 0}
.btn{border:0;border-radius:15px;padding:13px 16px;font-weight:900;cursor:pointer;transition:transform .16s ease,filter .16s ease,background .16s ease}.btn:active{transform:scale(.98)}.btn-primary{background:var(--lime);color:#0a0d12;box-shadow:0 12px 32px rgba(217,255,100,.12)}.btn-primary:hover{filter:brightness(1.05)}.btn-large{min-height:56px;padding:16px 20px;border-radius:18px;font-size:15px;display:inline-flex;align-items:center;justify-content:center;gap:18px}.btn-ghost{background:rgba(255,255,255,.07);border:1px solid var(--line)}.btn-danger{background:rgba(255,107,114,.12);border:1px solid rgba(255,107,114,.28);color:#ff9aa0}.text-btn{border:0;background:none;color:#8f9aae;padding:12px;cursor:pointer;font-size:12px}
.clock-board{border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));padding:24px;box-shadow:var(--shadow);transform:rotate(1deg)}.clock-head{display:flex;justify-content:space-between;color:#6f7a90;font-size:12px;font-weight:850;letter-spacing:.1em}.clock-head b{color:#dce3ee}.demo-grid{height:300px;margin:18px 0;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(8,1fr);gap:6px;background:rgba(0,0,0,.18);padding:8px;border-radius:20px}.demo-block{display:block;border-radius:9px;position:relative;overflow:hidden}.demo-block:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.23),transparent 55%)}.demo-block.deep{background:var(--deep)}.demo-block.comm{background:var(--comm)}.demo-block.admin{background:var(--admin)}.demo-block.buffer{border:1px dashed rgba(217,255,100,.34);background:rgba(217,255,100,.035)}.d1{grid-column:1/3;grid-row:1/4}.d2{grid-column:3/5;grid-row:1/3}.c1{grid-column:3/4;grid-row:3/5}.c2{grid-column:4/5;grid-row:3/5}.a1{grid-column:1/3;grid-row:4/6}.b1{grid-column:1/2;grid-row:6/9}.b2{grid-column:2/4;grid-row:5/9}.b3{grid-column:4/5;grid-row:5/9}.clock-message{display:flex;flex-direction:column;gap:5px}.clock-message strong{font-size:19px}.clock-message span{font-size:12px;color:#8e99ad}.skill-strip{display:flex;flex-wrap:wrap;gap:7px;justify-content:center}.skill-strip span{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:8px 10px;color:#9ea8bb;background:rgba(255,255,255,.025)}
.game-screen{padding:14px max(12px,env(safe-area-inset-left)) calc(92px + env(safe-area-inset-bottom));width:min(1180px,100%);margin:auto}.game-header{height:58px;border-bottom:1px solid var(--line);margin-bottom:14px}.icon-btn{width:40px;height:40px;border-radius:13px;border:1px solid var(--line);background:rgba(255,255,255,.04);font-size:28px;line-height:1;cursor:pointer}.day-label,.skill-level{display:flex;flex-direction:column;gap:2px}.day-label{text-align:center}.skill-level{text-align:right}.day-label small,.skill-level small{font-size:12px;letter-spacing:.15em;color:#6f7b91}.day-label strong,.skill-level strong{font-size:12px;letter-spacing:.04em}.skill-level strong{color:var(--lime)}
.mission-bar{display:flex;align-items:center;gap:20px;padding:16px 18px;margin:0 0 14px;border-radius:20px;background:linear-gradient(90deg,rgba(217,255,100,.10),rgba(217,255,100,.025));border:1px solid rgba(217,255,100,.17)}.mission-bar div{min-width:190px;display:flex;flex-direction:column;gap:4px}.mission-bar span{font-size:12px;font-weight:950;letter-spacing:.17em;color:var(--lime)}.mission-bar strong{font-size:17px}.mission-bar p{margin:0;color:#aeb8ca;font-size:12px;line-height:1.6}
.game-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);gap:14px}.panel{background:linear-gradient(145deg,rgba(18,26,45,.96),rgba(12,17,30,.96));border:1px solid var(--line);border-radius:24px;padding:17px;box-shadow:0 14px 38px rgba(0,0,0,.14)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-head.compact{margin-bottom:10px}.panel-head h2{font-size:20px;letter-spacing:-.03em;margin:2px 0 0}.panel-kicker{display:block;margin:0;color:#6f7b91}.remaining-time{text-align:right;display:flex;flex-direction:column}.remaining-time strong{font-size:25px;line-height:1;color:var(--lime)}.remaining-time span{font-size:12px;color:#7f899d;text-transform:uppercase;letter-spacing:.12em;margin-top:4px}.remaining-time.warning strong{color:var(--red)}
.timeline-wrap{display:grid;grid-template-columns:46px 1fr;gap:8px}.time-axis,.timeline{height:480px;display:grid;grid-template-rows:repeat(16,1fr);gap:2px}.time-axis{font-size:12px;color:#6f7b91;text-align:right;padding-right:4px}.time-label{transform:translateY(-5px)}.timeline{position:relative;background:rgba(0,0,0,.2);border-radius:16px;padding:4px;overflow:hidden;isolation:isolate}.timeline:before{content:"";position:absolute;inset:4px;z-index:-2;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.055) 0 1px,transparent 1px calc(100%/16));border-radius:12px}.slot{min-height:0;border-radius:7px;border:1px dashed transparent;cursor:pointer;transition:background .14s ease,border .14s ease;position:relative}.slot.available{border-color:rgba(217,255,100,.19);background:rgba(217,255,100,.035)}.slot.available:hover{background:rgba(217,255,100,.09)}.task-block{position:absolute;left:5px;right:5px;border-radius:11px;padding:8px 10px;display:flex;align-items:flex-start;justify-content:space-between;gap:9px;overflow:hidden;cursor:pointer;box-shadow:0 8px 18px rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.15);z-index:2}.task-block:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.20),transparent 55%);pointer-events:none}.task-block.deep{background:linear-gradient(135deg,#6877f0,#5865d8)}.task-block.comm{background:linear-gradient(135deg,#33b7c0,#268d98)}.task-block.admin{background:linear-gradient(135deg,#d79a36,#b67822)}.task-block.meeting{background:linear-gradient(135deg,#a65bd1,#8241aa)}.block-copy{position:relative;display:flex;flex-direction:column;min-width:0}.block-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.block-copy span{font-size:12px;opacity:.78;margin-top:3px}.block-icon{position:relative;font-size:15px}.task-block.focus-good{outline:2px solid rgba(217,255,100,.6);box-shadow:0 0 0 4px rgba(217,255,100,.07),0 10px 24px rgba(0,0,0,.28)}.task-block.batch-good{outline:2px solid rgba(109,232,255,.55)}
.timeline-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;color:#7f899c;font-size:12px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:4px}.dot.deep{background:var(--deep)}.dot.comm{background:var(--comm)}.dot.admin{background:var(--admin)}.dot.meeting{background:var(--meeting)}.timeline-hint{margin-top:11px;text-align:center;font-size:12px;color:#738096;padding:9px;background:rgba(255,255,255,.025);border-radius:12px}.timeline-hint.active{color:var(--lime);background:rgba(217,255,100,.06)}
.count-pill{min-width:34px;height:28px;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.06);display:grid;place-items:center;font-weight:900;font-size:12px}.task-list{display:flex;flex-direction:column;gap:8px;max-height:480px;overflow:auto;padding-right:2px}.task-card{width:100%;text-align:left;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.035);padding:12px;cursor:pointer;display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;transition:border .15s ease,transform .15s ease,background .15s ease}.task-card:hover{border-color:rgba(255,255,255,.21)}.task-card.selected{border-color:rgba(217,255,100,.6);background:rgba(217,255,100,.07);transform:translateX(-3px)}.task-card.scheduled{opacity:.58}.task-card.delegated{border-color:rgba(124,242,164,.25);background:rgba(124,242,164,.055)}.task-card.dropped{opacity:.34;filter:saturate(.35)}.task-icon{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.06);display:grid;place-items:center;font-size:18px}.task-main{min-width:0;display:flex;flex-direction:column;gap:5px}.task-main strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-meta{display:flex;flex-wrap:wrap;gap:5px}.chip{font-size:12px;border-radius:999px;padding:4px 6px;background:rgba(255,255,255,.055);color:#9ba6ba}.chip.hot{color:#ff9aa0;background:rgba(255,107,114,.09)}.chip.important{color:#efffb8;background:rgba(217,255,100,.08)}.chip.uncertain{color:#ffd493;background:rgba(255,182,92,.09)}.impact-dots{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.impact-dots b{font-size:12px;color:#e8edf6}.impact-dots span{font-size:12px;color:#717d92}.task-actions{position:sticky;bottom:0;margin-top:10px;padding:11px;border-radius:16px;background:rgba(7,10,18,.94);border:1px solid var(--line);backdrop-filter:blur(10px)}.selected-summary{display:flex;flex-direction:column;gap:3px;margin-bottom:9px}.selected-summary span{font-size:12px;color:var(--lime);letter-spacing:.15em}.selected-summary strong{font-size:12px}.action-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}.action-row .btn{font-size:12px;padding:10px}
.game-footer{position:fixed;left:50%;transform:translateX(-50%);bottom:0;width:min(1180px,100%);display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px max(12px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom));background:rgba(7,10,18,.9);border-top:1px solid var(--line);backdrop-filter:blur(18px);z-index:20}.live-metrics{display:flex;gap:8px}.live-metrics div{min-width:66px;padding:7px 9px;border-radius:12px;background:rgba(255,255,255,.04);display:flex;flex-direction:column;gap:2px}.live-metrics span{font-size:12px;color:#6f7a90}.live-metrics strong{font-size:12px}.run-btn{min-height:48px;min-width:250px}
.result-screen,.complete-screen{display:grid;place-items:center;padding:22px;overflow:auto}.result-card,.complete-card{width:min(620px,100%);border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,#121a2c,#0b101d);padding:clamp(22px,5vw,38px);box-shadow:var(--shadow);text-align:center}.grade-ring{width:104px;height:104px;border-radius:50%;display:grid;place-items:center;margin:6px auto 18px;border:8px solid rgba(217,255,100,.16);box-shadow:inset 0 0 0 2px rgba(217,255,100,.4),0 0 42px rgba(217,255,100,.08)}.grade-ring span{font-size:52px;font-weight:950;color:var(--lime);line-height:1}.result-card h2,.complete-card h2{font-size:clamp(26px,5vw,42px);line-height:1.08;letter-spacing:-.05em;margin:0 0 10px}.result-card>p:not(.kicker),.complete-card>p:not(.kicker){color:#9ba6b9;font-size:12px;line-height:1.7}.result-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:20px 0}.result-metrics div{padding:12px 7px;border-radius:14px;background:rgba(255,255,255,.04)}.result-metrics span{display:block;color:#707c91;font-size:12px;margin-bottom:5px}.result-metrics strong{font-size:15px}.coach-card,.unlock-card{text-align:left;border-radius:17px;padding:15px;margin:10px 0}.coach-card{background:rgba(255,255,255,.035);border:1px solid var(--line)}.unlock-card{background:rgba(217,255,100,.075);border:1px solid rgba(217,255,100,.18)}.coach-card span,.unlock-card span{display:block;font-size:12px;font-weight:950;letter-spacing:.16em;margin-bottom:6px}.coach-card span{color:#8d98ac}.unlock-card span{color:var(--lime)}.coach-card strong,.unlock-card strong{font-size:14px}.coach-card p,.unlock-card p{font-size:12px!important;line-height:1.6;margin:5px 0 0;color:#9ca7b9!important}.result-card .btn-large,.complete-card .btn-large{width:100%;margin-top:13px}
.master-clock{width:112px;height:112px;margin:8px auto 20px;border-radius:28px;background:var(--lime);color:#070a12;display:grid;place-items:center;transform:rotate(-3deg);position:relative;box-shadow:0 18px 50px rgba(217,255,100,.12)}.master-clock span{font-size:62px;font-weight:950;letter-spacing:-.07em}.master-clock i{position:absolute;width:3px;height:30px;background:#070a12;left:55px;top:26px;transform-origin:bottom;transform:rotate(42deg);border-radius:3px}.skill-book{display:grid;grid-template-columns:1fr 1fr;gap:8px;text-align:left;margin:22px 0}.skill-item{border:1px solid var(--line);background:rgba(255,255,255,.03);border-radius:15px;padding:12px}.skill-item small{display:block;color:var(--lime);font-size:12px;letter-spacing:.12em;margin-bottom:5px}.skill-item strong{font-size:12px}.skill-item p{font-size:12px;color:#7f8a9d;line-height:1.45;margin:5px 0 0}.final-stats{display:flex;justify-content:center;align-items:baseline;gap:7px;margin:8px 0 2px}.final-stats span,.final-stats small{font-size:12px;color:#778297}.final-stats strong{font-size:30px;color:var(--lime)}
.toast{position:fixed;left:50%;top:18px;transform:translate(-50%,-20px);padding:10px 14px;border-radius:999px;background:#eefbbd;color:#0a0d12;font-size:12px;font-weight:950;opacity:0;pointer-events:none;z-index:100;transition:.2s ease;box-shadow:0 10px 32px rgba(0,0,0,.28)}.toast.show{opacity:1;transform:translate(-50%,0)}
.shake{animation:shake .24s linear}.pulse{animation:pulse .42s ease}.score-pop{animation:scorepop .42s ease}@keyframes shake{25%{transform:translateX(-5px)}50%{transform:translateX(5px)}75%{transform:translateX(-3px)}}@keyframes pulse{50%{filter:brightness(1.35);transform:scale(1.015)}}@keyframes scorepop{50%{color:var(--lime);transform:scale(1.22)}}
@media(max-width:820px){.title-layout{grid-template-columns:1fr;gap:34px;padding:30px 0}.clock-board{max-width:560px;width:100%;margin:auto}.demo-grid{height:230px}.game-layout{grid-template-columns:1fr}.timeline-wrap{grid-template-columns:40px 1fr}.time-axis,.timeline{height:400px}.task-list{max-height:none}.mission-bar{align-items:flex-start}.game-footer{align-items:stretch}.run-btn{min-width:190px}}
@media(max-width:560px){.title-screen{padding-left:14px;padding-right:14px}.title-copy h1{font-size:76px}.title-layout{padding-top:26px}.clock-board{padding:17px;border-radius:24px}.demo-grid{height:210px}.skill-strip{justify-content:flex-start}.game-screen{padding-top:8px}.mission-bar{display:block;padding:13px 14px}.mission-bar div{min-width:0;margin-bottom:6px}.mission-bar strong{font-size:15px}.mission-bar p{font-size:12px}.panel{padding:13px;border-radius:20px}.panel-head h2{font-size:18px}.time-axis,.timeline{height:260px}.task-block{padding:6px 8px;border-radius:9px}.block-copy strong{font-size:12px}.block-copy span{font-size:12px}.timeline-legend{gap:7px}.task-card{padding:10px;grid-template-columns:34px 1fr auto}.task-icon{width:34px;height:34px}.game-footer{display:grid;grid-template-columns:1fr;gap:8px;padding-top:8px}.live-metrics{justify-content:space-between}.live-metrics div{flex:1}.run-btn{width:100%;min-width:0;min-height:44px}.game-screen{padding-bottom:152px}.result-screen,.complete-screen{padding:12px}.result-card,.complete-card{border-radius:24px;padding:22px 16px}.result-metrics{gap:5px}.result-metrics div{padding:10px 4px}.skill-book{grid-template-columns:1fr}.toast{top:10px;white-space:nowrap}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
