:root{font-family:"Microsoft YaHei","PingFang SC",sans-serif;color:#4a3023;background:#fffaf0;--yellow:#f5b832;--orange:#d88b2f;--green:#62a936;--ink:#4a3023;--muted:#a08b76;--paper:#fffaf0;--surface:#fffdf8;--line:#f0e4cf;--shadow:0 12px 30px #8c622522}*{box-sizing:border-box}html{min-height:100%;background:var(--paper);-webkit-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior-y:none}body{min-height:100%;margin:0;background:var(--paper);color:var(--ink);transition:.25s;overscroll-behavior-y:none}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible{outline:3px solid #5e9d6a66;outline-offset:2px}.screen{min-height:100vh;min-height:100svh;min-height:100dvh;padding-bottom:calc(86px + env(safe-area-inset-bottom, 0px))}.topbar{height:62px;min-height:62px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 max(16px,calc((100vw - 760px)/2),env(safe-area-inset-left, 0px));padding-right:max(16px,calc((100vw - 760px)/2),env(safe-area-inset-right, 0px));background:var(--yellow);color:#50331e;box-shadow:0 2px 12px #8d632033}.topbar-light{background:var(--paper);border-bottom:1px solid var(--line)}.topbar h1{margin:0;font-size:20px;text-align:center;font-weight:800}.topbar-side{display:flex;align-items:center;min-width:0}.topbar-actions{display:flex;justify-content:flex-end;gap:4px}.icon-btn{width:36px;height:36px;border:0;border-radius:50%;background:#ffffff45;color:inherit;font-size:20px;line-height:1}.worker-pill{padding:7px 12px;border:1px solid #eebc54;border-radius:99px;background:#fff6d8;color:#9a6824;font-size:12px;font-weight:700}.home-main,.timer-main,.form-main,.history-main{width:min(680px,100%);margin:auto;padding:28px 18px}.home-main{display:flex;min-height:calc(100vh - 148px);min-height:calc(100svh - 148px);min-height:calc(100dvh - 148px);flex-direction:column;align-items:center;justify-content:center;position:relative}.side-dot{position:fixed;top:47%;z-index:2;width:23px;height:23px;border-radius:50%;background:#706b6030;color:#fff;text-align:center;line-height:21px}.side-dot.left{left:max(0px,env(safe-area-inset-left, 0px))}.side-dot.right{right:max(0px,env(safe-area-inset-right, 0px))}.hero{text-align:center}.poop-hero{font-size:86px;filter:drop-shadow(0 10px 5px #8d582622);animation:float 3s ease-in-out infinite}.hero h2{margin:5px 0 0;color:#d99a1e;font-size:44px;letter-spacing:2px}.hero p{margin:5px 0;color:#dd8425;font-size:15px;font-weight:700}.income-badge{display:inline-flex;gap:6px;margin-top:17px;padding:7px 14px;border:1px solid #f2c760;border-radius:99px;background:#fff7df;color:#b27426;font-size:12px}.start-button{width:min(420px,100%);margin-top:42px;padding:17px;border:0;border-radius:99px;background:linear-gradient(135deg,#ffc743,#f0a91b);color:#fff;font-size:21px;font-weight:800;box-shadow:0 10px 20px #ce8b2e3d;transition:.2s}.start-button:hover{transform:translateY(-2px);box-shadow:0 14px 28px #ce8b2e55}.start-button:active{transform:scale(.98)}.start-button span{font-size:19px}.home-hint{margin-top:18px;color:var(--muted);font-size:12px}.bottom-nav{position:fixed;right:0;bottom:0;left:0;z-index:10;display:flex;justify-content:center;gap:min(30vw,190px);height:calc(76px + env(safe-area-inset-bottom, 0px));padding-bottom:env(safe-area-inset-bottom, 0px);border-top:1px solid var(--line);background:#fffaf0eF;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.tab{width:70px;min-height:48px;border:0;background:transparent;color:#b9ada0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.tab span{font-size:24px;line-height:1}.tab small{font-size:12px}.tab.active{color:#da9920;font-weight:800}.timer-main{text-align:center}.effort-title{margin:4px 0 18px;font-size:17px}.effort-title strong{margin-left:5px}.effort-title small{display:block;margin-top:8px;color:var(--muted);font-size:12px}.taste-button{margin-top:17px;border:1px solid #f0c467;border-radius:99px;padding:7px 15px;background:#fffdf8;color:#d78c2b;font-weight:700}.tip-card{margin:0 auto 28px;padding:11px 14px;border-left:3px solid #f4b832;border-radius:10px;background:#fff0bf;color:#cd8529;font-size:13px;line-height:1.6}.timer-ring{position:relative;width:210px;height:210px;margin:5px auto 28px;border-radius:50%;background:#fff;box-shadow:0 10px 28px #e8ba4426}.timer-ring:before{content:"";position:absolute;inset:-11px;border-radius:50%;background:#ffefc3;z-index:-1}.ring-arc{position:absolute;inset:-11px;border:11px solid transparent;border-top-color:#f7b731;border-right-color:#f7b731;border-radius:50%;transition:transform .3s}.ring-inner{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.ring-inner strong{font-size:42px;letter-spacing:2px}.ring-inner span{margin-top:6px;color:#c7b8a5;font-size:11px}.earnings p{margin:0;color:#a9947e;font-size:14px}.earnings strong{display:block;margin:6px 0;color:#d98c27;font-size:34px}.earnings small{color:#84b15b}.timer-actions{display:flex;gap:12px;margin-top:28px}.finish-button,.cancel-button{flex:1;min-height:54px;border-radius:28px;font-weight:800;font-size:16px}.finish-button{border:0;background:#66ad3c;color:#fff;box-shadow:0 8px 18px #65a33b3d}.cancel-button{border:1px solid #ecdcbf;background:transparent;color:#a18e78}.finish-button:hover{background:#4f9b2d}.cancel-button:hover{background:#fff5df}.value-note{margin-top:56px;color:#b8a28c;font-size:12px}.modal-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top, 0px)) max(16px,env(safe-area-inset-right, 0px)) max(16px,env(safe-area-inset-bottom, 0px)) max(16px,env(safe-area-inset-left, 0px));background:#31261d99;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.modal-card{position:relative;width:min(430px,100%);max-height:92dvh;overflow:auto;border-radius:20px;padding:28px 20px 24px;background:var(--surface);box-shadow:0 20px 60px #2e1d1950;-webkit-overflow-scrolling:touch}.modal-card h2{text-align:center;margin:0 0 20px;font-size:24px}.modal-close{position:absolute;right:12px;top:10px;border:0;background:transparent;color:#bca991;font-size:25px}.summary-row{display:flex;justify-content:space-between;padding:10px 2px;border-bottom:1px solid var(--line);color:#917e68}.summary-row strong{color:#d88b2f}.income-card{display:grid;grid-template-columns:1fr auto;gap:5px;margin-top:13px;padding:16px;border-radius:10px;background:#fff2c9;color:#9b7d50}.income-card strong{color:#dc8e25;font-size:24px}.income-card small{grid-column:2;color:#d2933e;font-size:11px}.complete-card h3{margin:23px 0 12px;text-align:center;font-size:16px}.shape-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.shape-option{min-height:78px;border:1px solid #eee8df;border-radius:10px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#987e67}.shape-option span{font-size:28px}.shape-option.selected{border:2px solid #72b878;background:#effbed;color:#438d4b}.save-button,.celebrate-button{display:block;width:190px;margin:20px auto 0;border:0;border-radius:99px;padding:14px;background:linear-gradient(135deg,#ffc743,#eeaa20);color:#fff;font-weight:800;font-size:16px}.celebration-card{text-align:center;padding:30px 22px}.celebrate-emojis{font-size:55px;letter-spacing:12px}.celebration-card h2{margin:10px 0;color:#4d3125;font-size:25px}.celebration-card p{color:#b7a28a}.celebration-card p strong{color:#dc8b2b;font-size:23px}.celebrate-button{width:120px;background:#f1a653}.form-main{padding-top:16px}.form-section{margin:0 0 20px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 4px 12px #b98d3b0d}.form-section h2{margin:0 0 13px;font-size:17px}.form-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-meta label{display:flex;align-items:center;gap:8px;color:#8c725b;font-size:13px}.form-meta input{min-width:0;flex:1;border:0;border-bottom:1px solid var(--line);padding:8px 2px;background:transparent;color:var(--ink);-webkit-appearance:none;appearance:none;border-radius:0}.horizontal-options{display:flex;gap:8px;overflow-x:auto;padding-bottom:3px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.horizontal-options::-webkit-scrollbar{display:none}.color-option,.form-shape,.amount-option{position:relative;min-width:76px;border:1px solid transparent;border-radius:11px;padding:9px 6px;background:#fffaf1;color:#8f7963}.color-option{min-width:67px}.color-option.selected,.form-shape.selected,.amount-option.selected{border-color:#69b478;background:#edfaea;color:#478e50}.poop-dot{display:block;font-size:26px;filter:saturate(.65)}.color-option em{position:absolute;top:-7px;right:-4px;border-radius:8px;padding:2px 4px;background:#c94747;color:#fff;font-size:9px;font-style:normal}.color-option small,.form-shape small,.amount-option small{display:block;font-size:11px;white-space:nowrap}.status-options{display:flex;gap:8px}.status-option{flex:1;padding:12px 8px;border:1px solid #dfeadf;border-radius:10px;background:#fff;color:#76816d}.status-option.selected{border-color:#69ad73;background:#e6f8e7;color:#438c4b;font-weight:800}.form-submit{width:100%;margin-top:4px;border:0;border-radius:13px;padding:15px;background:#f4b52d;color:#fff;font-size:16px;font-weight:800}.history-main{padding-top:22px}.history-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:18px}.eyebrow{color:#dc982a;font-size:11px;font-weight:800}.history-heading h2{margin:5px 0 0;font-size:23px}.replenish-button{border:1px solid #efbd58;border-radius:99px;padding:9px 13px;background:#fff5d7;color:#c48122;font-weight:800}.calendar-card{padding:15px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.calendar-toolbar button{border:0;border-radius:50%;background:#fff4d1;color:#c17c25;font-size:22px;width:32px;height:32px}.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.weekdays{margin-bottom:6px;color:#b5a18a;text-align:center;font-size:11px}.calendar-day{position:relative;min-height:43px;border:1px solid transparent;border-radius:9px;background:transparent;color:#806c57}.calendar-day:hover{background:#fff5d5}.calendar-day.today{font-weight:800;color:#db9327}.calendar-day.selected{border-color:#f0b535;background:#fff3cb}.calendar-day i{position:absolute;right:3px;bottom:2px;display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:#70ad56;color:#fff;font-size:9px;font-style:normal}.day-detail{margin-top:20px}.detail-heading{display:flex;align-items:center;justify-content:space-between}.detail-heading h3{margin:0;font-size:18px}.detail-heading span{color:#b49f87;font-size:12px}.record-card{display:flex;align-items:center;gap:11px;margin-top:9px;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.record-poop{font-size:27px}.record-card div{flex:1;display:flex;flex-direction:column;gap:4px}.record-card strong{font-size:13px}.record-card small{color:#a18d77;font-size:11px}.record-card b{color:#db8d26;font-size:14px}.empty-day{padding:24px;text-align:center;color:#b09b83}.settings-card{width:min(350px,100%)}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--line)}.setting-row input{display:none}.setting-row i{width:45px;height:25px;border-radius:99px;background:#d9cfbe;position:relative}.setting-row i:after{content:"";position:absolute;top:3px;left:3px;width:19px;height:19px;border-radius:50%;background:#fff;transition:.2s}.setting-row input:checked+i{background:#67ad65}.setting-row input:checked+i:after{left:23px}.setting-button{width:100%;margin-top:12px;border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--surface);color:var(--ink);text-align:left}.setting-button:hover{border-color:#e4ad3a}.setting-button.danger{color:#bd5e4d}.settings-note,.install-card p{color:#a18d78;font-size:12px;line-height:1.7}.install-card{text-align:center}.install-icon{font-size:52px}.toast{position:fixed;bottom:calc(92px + env(safe-area-inset-bottom, 0px));left:50%;z-index:50;transform:translateX(-50%);max-width:calc(100vw - 32px);padding:11px 16px;border-radius:99px;background:#4d392c;color:#fff;font-size:12px;box-shadow:var(--shadow)}
body[data-theme=dark]{--paper:#211c19;--surface:#2c2520;--ink:#f7ead7;--muted:#bba894;--line:#514335;background:#211c19;color:var(--ink)}body[data-theme=dark] .topbar-light,body[data-theme=dark] .bottom-nav{background:#211c19eF}body[data-theme=dark] .shape-option,body[data-theme=dark] .status-option,body[data-theme=dark] .color-option,body[data-theme=dark] .form-shape,body[data-theme=dark] .amount-option{background:#352c25;color:#d8c7b2}body[data-theme=dark] .hero h2,body[data-theme=dark] .history-heading h2{color:#f6c04a}
@keyframes float{50%{transform:translateY(-7px)}}@media(max-width:520px){.home-main{min-height:calc(100vh - 138px)}.poop-hero{font-size:74px}.hero h2{font-size:39px}.timer-ring{width:190px;height:190px}.ring-inner strong{font-size:36px}.form-meta{grid-template-columns:1fr}.history-heading{align-items:start;flex-direction:column}.replenish-button{align-self:stretch}.modal-card{padding:26px 16px 20px}}
button.worker-pill{font:inherit;cursor:pointer;appearance:none}
.form-meta input{font-size:16px}
.salary-save{border:0;border-radius:9px;padding:10px 14px;background:#67ad65;color:#fff;font-weight:800;touch-action:manipulation}.salary-save:hover{background:#4f9b51}.salary-home{width:min(260px,100%);margin-top:17px;padding:9px 12px;border:1px solid #f2c760;border-radius:14px;background:#fff7df;color:#b27426}.salary-home label{display:block;margin-bottom:4px;text-align:left;font-size:11px;font-weight:700}.salary-home-row{display:flex;align-items:center;gap:6px}.salary-home-row>span{font-size:16px;font-weight:800}.salary-home-row input{min-width:0;flex:1;border:1px solid #efd9a3;border-radius:8px;padding:6px 8px;background:#fffdf8;color:var(--ink);font-size:16px;-webkit-appearance:none;appearance:none}.salary-home .salary-save{padding:7px 11px;font-size:12px}.salary-home small{display:block;margin-top:5px;text-align:left;color:#c28a48;font-size:10px}
.calendar-card-v2{padding:16px 15px 13px}.calendar-grid-v2{gap:7px}.calendar-day-v2{min-height:52px;border-radius:13px;background:#fffaf2;border-color:#f2e8d8;font-weight:600}.calendar-day-v2.selected{background:#f99b52;border-color:#f99b52;color:#fff}.calendar-day-v2.today:not(.selected){border-color:#f1b539;color:#db9327}.calendar-day-v2 i{position:absolute;right:5px;bottom:4px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;width:auto;height:auto;border-radius:0;background:transparent;color:inherit;font-size:11px;font-style:normal;line-height:.8}.calendar-day-v2 i b{font-size:12px;line-height:.72}.calendar-day-v2.level-1 i,.calendar-day-v2.level-2 i,.calendar-day-v2.level-3 i{transform:scale(.9)}.calendar-day-v2.level-4,.calendar-day-v2.level-5{background:#ffd08c}.calendar-day-v2.level-5{background:#f36b45;color:#fff}.calendar-legend{display:flex;justify-content:center;gap:12px;margin-top:16px;color:#b39e87;font-size:11px}.calendar-legend span{display:flex;align-items:center;gap:4px}.legend-dot{width:14px;height:14px;border-radius:4px;background:#f8dda4}.legend-dot.level-2{background:#ffd08c}.legend-dot.level-3{background:#ffad5d}.legend-dot.level-4{background:#f68c51}.legend-dot.level-5{background:#f05c3d}.history-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.history-stats div{display:flex;flex-direction:column;align-items:center;gap:5px;padding:15px 8px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 4px 12px #b98d3b0d}.history-stats strong{color:#e3a255;font-size:25px}.history-stats small{color:#b49e87;font-size:11px}@media(max-width:520px){.calendar-grid-v2{gap:5px}.calendar-day-v2{min-height:49px}.calendar-legend{gap:7px}.history-stats{gap:7px}}
.form-meta input{font-size:16px}
@media (orientation: landscape) and (max-height: 520px) { .home-main{min-height:calc(100dvh - 138px);padding-top:16px;padding-bottom:16px}.poop-hero{font-size:54px}.hero h2{font-size:30px}.start-button{margin-top:18px;padding:12px}.timer-main{padding-top:14px}.timer-ring{width:150px;height:150px;margin-bottom:14px}.ring-inner strong{font-size:29px}.tip-card{margin-bottom:14px}.value-note{margin-top:22px}.form-main,.history-main{padding-top:14px}.bottom-nav{height:calc(62px + env(safe-area-inset-bottom, 0px))} }
