:root{color-scheme:light;--paper:#f7f7ef;--surface:#fffefa;--ink:#233a32;--green:#225749;--green-2:#397263;--muted:#64726a;--line:#d6dfd3;--mint:#e7eee2;--sand:#f1dfbd;--danger:#a6463a;--shadow:0 18px 50px rgb(42 74 60/.09);font-family:"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:300px;background:var(--paper);color:var(--ink)}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}button,input,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #bd7a20;outline-offset:3px}button{transition:background .18s,transform .18s,border-color .18s}button:active:not(:disabled){transform:translateY(2px)}button:disabled{cursor:default;opacity:.55}.wrap{width:min(1180px,calc(100% - 72px));margin-inline:auto}.skip{position:fixed;left:18px;top:-80px;background:var(--surface);padding:12px 16px;z-index:20;color:var(--ink)}.skip:focus{top:12px}.topbar{min-height:92px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:36px;border-bottom:1px solid var(--line)}.brand{border:0;background:none;display:flex;align-items:center;gap:11px;padding:0;text-align:left;font-weight:780;font-size:19px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--green);color:#fff;font-size:26px;transform:rotate(-7deg)}.brand small{display:block;font-size:7px;letter-spacing:1.7px;margin-top:4px}.topbar nav{display:flex;justify-content:center;gap:8px}.nav-link,.game-tab,.duration-picker button,.background-picker button{border:1px solid transparent;background:none;border-radius:8px;padding:10px 14px;font-size:13px}.nav-link:hover,.nav-link.active,.game-tab:hover,.game-tab.active,.duration-picker button:hover,.duration-picker button.active,.background-picker button:hover,.background-picker button.active{background:var(--mint);border-color:var(--line)}.boss-button{border:1px solid var(--line);background:transparent;border-radius:8px;padding:10px 13px;font-size:12px}kbd{font:10px ui-monospace,monospace;background:var(--mint);padding:3px 5px;border-radius:4px;margin-left:6px}.page{min-height:calc(100dvh - 170px)}.page.active{animation:page-in .35s ease-out}.eyebrow{display:block;color:var(--muted);font-size:11px;letter-spacing:1.2px}.primary,.secondary{border-radius:9px;padding:13px 19px;font-weight:700;font-size:13px;border:1px solid transparent;min-height:44px}.primary{background:var(--green);color:#fff}.primary:hover{background:#183f35}.secondary{background:transparent;border-color:#aebdab}.secondary:hover{background:var(--mint)}.text-button{border:0;background:none;padding:8px;color:var(--green);font-size:12px}.actions,.quick-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.status{min-height:1.4em;color:var(--muted);font-size:12px}.error{min-height:1.3em;color:var(--danger);font-size:12px}

.dashboard{display:grid;grid-template-columns:1.08fr 1fr;gap:22px;padding-block:60px}.welcome{padding:35px 22px 20px 0;align-self:center}.welcome h1,.page-heading h1{font-size:clamp(38px,5.6vw,68px);letter-spacing:-3px;line-height:1.12;margin:18px 0 22px}.welcome>p,.page-heading>p{font-size:15px;line-height:1.8;color:var(--muted);max-width:560px}.quick-actions{margin-top:28px}.clock-card,.rest-day-card,.home-fortune,.compact-card,.game-panel,.fish-panel,.rest-timer-card,.bubble-card{border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.clock-card{padding:28px 30px 25px;background:var(--mint);transform:rotate(.45deg)}.card-top{display:flex;justify-content:space-between;align-items:center;gap:16px}.current-time{display:block;font:650 20px ui-monospace,monospace;margin:22px 0 30px}.clock-card>p{font-size:13px;color:var(--muted);margin:0 0 12px}.countdown{display:flex;align-items:center;justify-content:space-between;font:700 clamp(42px,5.8vw,70px)/1 ui-monospace,monospace;font-variant-numeric:tabular-nums;letter-spacing:-4px}.countdown span{width:28%;text-align:center}.countdown b{font-size:28px;color:#90a68e;font-weight:400}.clock-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:9px;letter-spacing:3px;margin-top:8px}.clock-labels span{width:28%;text-align:center}.progress-line{height:8px;border-radius:10px;background:#cad6c6;overflow:hidden;margin-top:30px}.progress-line span{display:block;height:100%;width:0;background:var(--green);transition:width .5s ease}.progress-meta{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:10px}.rest-day-card{padding:28px;display:flex;flex-direction:column;justify-content:center;background:var(--sand)}.rest-day-card strong{font-size:33px;margin:14px 0 7px}.rest-day-card>span:not(.eyebrow){font-size:13px}.rest-day-card p{font-size:11px;color:#6d6658;line-height:1.7;margin:22px 0 0}.home-fortune{padding:28px;background:#edf0e4}.home-fortune h2{font-size:31px;margin:28px 0 9px}.home-fortune>p{line-height:1.8}.fortune-do{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.fortune-do>span{background:rgb(255 255 255/.55);border-radius:12px;padding:16px}.fortune-do small{display:block;color:var(--muted);margin-bottom:8px}.fortune-do strong{font-size:15px}.compact-card{padding:25px 28px;display:grid;grid-template-columns:1fr auto;gap:14px 25px;align-items:center}.compact-card h2{font-size:21px;margin:8px 0}.compact-card p{font-size:11px;color:var(--muted)}.compact-card small{grid-column:1/-1;color:var(--muted)}.compact-earnings{font-size:20px}.compact-earnings output{font-size:38px;font-weight:700;font-variant-numeric:tabular-nums}

.page-heading{padding-top:58px;padding-bottom:30px}.page-heading h1{margin-block:12px 13px}.game-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);padding-bottom:15px}.game-stage{padding-block:26px 70px}.game-panel{padding:30px;min-height:510px}.game-head{display:flex;justify-content:space-between;align-items:start;gap:22px;margin-bottom:28px}.game-head h2{font-size:28px;margin:0 0 8px}.game-head p{font-size:12px;color:var(--muted);line-height:1.7;margin:0}.reaction-zone{display:flex;width:100%;height:290px;border:0;border-radius:16px;background:#e6e8df;align-items:center;justify-content:center;flex-direction:column;gap:12px}.reaction-zone strong{font-size:42px}.reaction-zone span{color:var(--muted)}.reaction-zone.waiting{background:#eadfca}.reaction-zone.ready{background:#7dbb8f;color:#163d2c}.reaction-zone.false-start{background:#e8c4bd}.reaction-zone.result,.reaction-zone.done{background:var(--mint)}.game-meta,.memory-meta{color:var(--muted);font-size:12px;margin:18px 0;display:flex;gap:24px;flex-wrap:wrap}.memory-board{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:590px}.memory-card{aspect-ratio:1;border:1px solid var(--line);border-radius:13px;background:var(--mint);font-size:28px;font-weight:750;box-shadow:0 5px 0 #d5ded0}.memory-card.open{background:var(--sand);transform:translateY(3px);box-shadow:0 2px 0 #d6c59e}.memory-card.matched{background:#bad7c5;color:#193e30}.wheel-layout{display:grid;grid-template-columns:minmax(290px,470px) 1fr;align-items:center;gap:65px}.wheel-wrap{position:relative;aspect-ratio:1;max-width:470px}.wheel{position:absolute;inset:0;border-radius:50%;border:12px solid var(--surface);outline:1px solid var(--line);box-shadow:var(--shadow);transition:transform 3s cubic-bezier(.15,.76,.12,1);overflow:hidden}.wheel:after{content:"";position:absolute;inset:43%;border-radius:50%;background:var(--green);border:6px solid var(--surface)}.wheel span{position:absolute;left:calc(50% - 55px);top:50%;width:110px;height:50%;transform-origin:50% 0;text-align:center;padding-top:26px;font-size:11px;font-weight:700}.wheel-pointer{position:absolute;z-index:2;left:50%;top:-5px;transform:translateX(-50%);width:0;height:0;border-left:16px solid transparent;border-right:16px solid transparent;border-top:30px solid var(--green)}.wheel-controls p{font-size:25px;line-height:1.5;min-height:80px}.wheel-controls button{display:block;margin-top:10px;min-width:150px}

.aquarium-layout{display:grid;grid-template-columns:1.6fr .7fr;gap:24px;padding-bottom:70px}.aquarium{position:relative;min-height:520px;border-radius:24px;overflow:hidden;border:1px solid #a9c9c6;box-shadow:var(--shadow);isolation:isolate;transition:background .3s}.bg-reef{background:linear-gradient(#bbdfda,#e2eee0 68%,#e6d7ae 68%)}.bg-night{background:linear-gradient(#173f55,#315f69 68%,#203f3d 68%)}.bg-pond{background:linear-gradient(#9ec8aa,#cbdcaa 68%,#8b9e6e 68%)}.water-light{position:absolute;inset:0;background:repeating-linear-gradient(110deg,transparent 0 44px,rgb(255 255 255/.16) 45px 50px,transparent 51px 86px);transform:skewX(-12deg);opacity:.65}.gravel{position:absolute;bottom:0;width:100%;height:32%;background:radial-gradient(circle at 20% 30%,#d6c392 0 5px,transparent 6px),radial-gradient(circle at 70% 60%,#bda87b 0 6px,transparent 7px);background-size:46px 35px}.plant{position:absolute;bottom:22%;width:18px;height:145px;border-radius:80% 0;background:#538d68;transform-origin:bottom;z-index:1}.plant:after{content:"";position:absolute;width:18px;height:110px;left:25px;bottom:0;border-radius:0 80%;background:#6fa47a}.plant-a{left:12%;transform:rotate(-8deg)}.plant-b{right:16%;height:110px;transform:rotate(10deg)}.pet-fish{position:absolute;z-index:3;left:20%;top:35%;width:126px;height:76px;border:0;background:none;animation:swim 9s ease-in-out infinite;filter:drop-shadow(0 8px 5px rgb(20 70 60/.2))}.fish-body{position:absolute;left:25px;top:9px;width:82px;height:55px;border-radius:55% 47% 48% 55%;background:var(--fish,#df9347)}.fish-tail{position:absolute;left:4px;top:15px;width:0;height:0;border-top:24px solid transparent;border-bottom:24px solid transparent;border-right:38px solid var(--fish,#df9347)}.fish-eye{position:absolute;right:15px;top:13px;width:8px;height:8px;border-radius:50%;background:#15362e;box-shadow:inset 2px 2px #fff}.fish-blue{--fish:#4c94ad}.fish-ink{--fish:#326b5c}.pet-fish.boop{animation:boop .55s ease,swim 9s ease-in-out infinite}.pet-fish.feeding{animation:feed 2.3s ease-in-out}.fish-food{position:absolute;z-index:2;left:65%;top:55%;width:10px;height:10px;border-radius:50%;background:#a66b37;box-shadow:8px 5px #bf8247}.fish-panel{padding:32px}.fish-panel h2{font-size:34px;margin:13px 0 5px}.fish-panel>p{color:var(--muted);line-height:1.7}.fish-panel>button{width:100%;margin-top:10px}.fish-reaction{min-height:52px}.background-picker,.fish-picker,.weekday-picker{border:0;padding:0;margin:28px 0 0}.background-picker legend,.fish-picker legend,.weekday-picker legend{font-size:12px;color:var(--muted);margin-bottom:10px}.background-picker{display:flex;gap:6px;flex-wrap:wrap}.fish-food{animation:food-fall 2s ease-in forwards}

.rest-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;padding-bottom:70px}.rest-timer-card,.bubble-card{padding:30px}.duration-picker{display:flex;gap:8px;justify-content:center}.rest-circle{width:min(330px,80vw);aspect-ratio:1;border-radius:50%;margin:35px auto;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--green);color:#fff;outline:1px solid #759b8c;outline-offset:12px}.rest-circle time{font:300 63px ui-monospace,monospace}.rest-circle span{font-size:11px;color:#d5e6da;margin-top:8px}.rest-circle.running{animation:breathe 8s ease-in-out infinite}.rest-timer-card .actions{justify-content:center}.rest-options{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:24px}.rest-options label{display:flex;align-items:center;gap:6px}.rest-options input{width:auto}.bubble-heading{display:flex;justify-content:space-between;align-items:start;gap:15px}.bubble-heading h2{font-size:28px;margin:8px 0}.bubble-board{display:grid;grid-template-columns:repeat(6,1fr);gap:15px;background:var(--mint);padding:22px;border-radius:14px;margin:28px 0 20px}.bubble{aspect-ratio:1;min-width:0;border-radius:50%;border:1px solid #d4decf;background:radial-gradient(circle at 35% 25%,#fff 0,#f5faf1 25%,#dce6d5 65%,#bdcbb5 100%);box-shadow:2px 4px 5px #c0cbb9,inset 0 2px 2px #fff}.bubble:hover:not(:disabled){transform:scale(1.08)}.bubble.popped{background:#d5dfce;box-shadow:inset 1px 3px 5px #aebba7;transform:scale(.88)}.bubble-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px;color:var(--muted)}

footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:27px 34px;color:var(--muted);font-size:10px}dialog{width:min(540px,calc(100% - 30px));max-height:90dvh;overflow:auto;border:1px solid var(--line);border-radius:18px;padding:30px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:rgb(20 42 34/.72)}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:18px}.dialog-top h2{margin:0;font-size:23px}dialog form>p,dialog label{font-size:12px;line-height:1.7;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}dialog label{display:flex;flex-direction:column;gap:7px}input,textarea{width:100%;border:1px solid #aab9a4;background:var(--surface);border-radius:8px;padding:12px;color:var(--ink)}.weekday-picker{display:flex;gap:7px;flex-wrap:wrap}.weekday-picker legend{width:100%}.weekday-picker label{position:relative}.weekday-picker input,.fish-picker input{position:absolute;opacity:0;pointer-events:none}.weekday-picker label{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink)}.weekday-picker label:has(input:checked){background:var(--green);color:#fff}.fish-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.fish-picker label{align-items:center;border:1px solid var(--line);padding:12px;border-radius:10px;color:var(--ink)}.fish-picker label:has(input:checked){background:var(--mint);border-color:var(--green)}.mini-fish{display:grid;place-items:center;width:50px;height:35px;border-radius:50%;color:#fff;background:#df9347}.mini-fish.blue{background:#4c94ad}.mini-fish.ink{background:#326b5c}#work-screen{min-height:100dvh;background:#f4f6f8;color:#333;font:14px Arial,"Microsoft YaHei",sans-serif;padding:50px 24px}.work-wrap{max-width:1000px;margin:auto}.work-logo{font-size:17px}.work-wrap>button{float:right}.work-wrap h1{font-size:30px;margin-top:70px}.work-wrap table{border-collapse:collapse;width:100%;background:#fff;margin-top:30px;text-align:left}.work-wrap td,.work-wrap th{padding:18px 15px;border-bottom:1px solid #ddd}.work-wrap th{background:#e8edf1}[hidden]{display:none!important}.paused *,.page-hidden *{animation-play-state:paused!important}

@keyframes page-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes swim{0%,100%{transform:translate(0,0)}45%{transform:translate(360px,80px)}50%{transform:translate(360px,80px) scaleX(-1)}95%{transform:translate(0,0) scaleX(-1)}}@keyframes boop{50%{scale:1.12}}@keyframes feed{0%{transform:none}70%{transform:translate(320px,130px)}100%{transform:translate(300px,120px) rotate(-7deg)}}@keyframes food-fall{to{transform:translateY(70px)}}@keyframes breathe{50%{transform:scale(1.06)}}

@media(prefers-color-scheme:dark){:root{color-scheme:dark;--paper:#18241f;--surface:#202e28;--ink:#e8eee9;--green:#72aa91;--green-2:#8abba5;--muted:#acbbb2;--line:#3b4c43;--mint:#293a32;--sand:#493f2d;--danger:#ef9c91;--shadow:0 18px 50px rgb(0 0 0/.22)}.primary{background:#4e876f;color:#fff}.primary:hover{background:#5d9a80}.clock-card{background:#293a32}.rest-day-card p{color:#c8bfae}.fortune-do>span{background:rgb(0 0 0/.12)}.reaction-zone{background:#303c35}.reaction-zone.waiting{background:#4b3f30}.reaction-zone.ready{background:#477b59}.reaction-zone.false-start{background:#654039}.memory-card{box-shadow:0 5px 0 #17211c}.memory-card.open{color:#2c342f}.bg-reef{background:linear-gradient(#315b59,#46665c 68%,#615841 68%)}input,textarea{background:var(--surface)}.bubble{background:radial-gradient(circle at 35% 25%,#53675b 0,#3e5146 30%,#2d4036 70%);box-shadow:2px 4px 5px #17251e,inset 0 2px 2px #6d8275}.wheel{border-color:var(--surface)}}
@media(max-width:900px){.wrap{width:min(100% - 40px,720px)}.topbar{grid-template-columns:auto auto;gap:18px;padding-block:18px}.topbar nav{grid-row:2;grid-column:1/-1;justify-content:space-between}.dashboard{grid-template-columns:1fr}.welcome{padding-top:10px}.clock-card{transform:none}.aquarium-layout,.rest-layout,.wheel-layout{grid-template-columns:1fr}.aquarium{min-height:450px}.wheel-wrap{width:min(100%,430px);margin:auto}.wheel-controls{text-align:center}.wheel-controls button{display:inline-flex;margin-inline:5px}.pet-fish{animation-name:swim-tablet}@keyframes swim-tablet{0%,100%{transform:translate(0,0)}45%{transform:translate(260px,70px)}50%{transform:translate(260px,70px) scaleX(-1)}95%{transform:translate(0,0) scaleX(-1)}}
@media(max-width:600px){.wrap{width:calc(100% - 28px)}.topbar{grid-template-columns:1fr auto}.brand{font-size:16px}.brand-mark{width:36px;height:36px;font-size:22px}.topbar nav{position:sticky;overflow:auto;justify-content:flex-start;gap:3px}.nav-link{padding:10px 11px;white-space:nowrap}.boss-button{font-size:0;padding:10px}.boss-button:before{content:"工作视图";font-size:11px}kbd{display:none}.dashboard{padding-block:35px}.welcome h1,.page-heading h1{font-size:42px;letter-spacing:-2px}.quick-actions .primary,.quick-actions .secondary{flex:1}.clock-card,.rest-day-card,.home-fortune,.compact-card,.game-panel,.fish-panel,.rest-timer-card,.bubble-card{padding:22px}.countdown{font-size:53px}.compact-card{grid-template-columns:1fr}.compact-card .actions,.compact-card small{grid-column:1}.page-heading{padding-top:38px}.game-tabs{overflow:auto}.game-tab{white-space:nowrap}.game-panel{min-height:540px}.game-head{display:block}.game-head>.secondary{margin-top:15px}.reaction-zone{height:270px}.reaction-zone strong{font-size:34px}.memory-board{gap:8px}.memory-card{font-size:22px;border-radius:10px}.wheel-layout{gap:30px}.aquarium{min-height:380px}.pet-fish{transform:scale(.85);transform-origin:left;animation-name:swim-mobile}.plant{height:100px}.fortune-do{grid-template-columns:1fr}.rest-circle{width:240px}.rest-circle time{font-size:50px}.bubble-board{gap:10px;padding:16px}.bubble-bottom{align-items:flex-start}.form-grid,.fish-picker{grid-template-columns:1fr}.work-wrap>button{float:none;margin-top:20px}.work-wrap h1{margin-top:35px}.work-wrap td,.work-wrap th{padding:14px 8px;font-size:12px}footer{flex-direction:column}.current-time{margin-bottom:23px}@keyframes swim-mobile{0%,100%{transform:translate(0,0) scale(.85)}45%{transform:translate(155px,55px) scale(.85)}50%{transform:translate(155px,55px) scale(-.85,.85)}95%{transform:translate(0,0) scale(-.85,.85)}}
@media(max-width:360px){.countdown{font-size:44px}.bubble-board{gap:7px;padding:12px}.rest-circle{width:210px}.nav-link{padding-inline:8px}.wheel span{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}.pet-fish{left:38%;top:38%}.rest-circle.running{outline-width:3px}}

@media(max-width:600px){.pet-fish{--feed-x:150px}}
@keyframes feed{0%{transform:none}70%{transform:translate(var(--feed-x,320px),130px)}100%{transform:translate(var(--feed-x,300px),120px) rotate(-7deg)}}
dialog{overflow-x:hidden}
