:root{--bg:#f6f5ef;--paper:#fffefa;--green:#254d40;--ink:#293f34;--muted:#788474;--line:#dfe3d7;--soft:#e9eee2;--radius:20px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}a{color:inherit;text-decoration:none}button:disabled{cursor:wait;opacity:.55}svg{width:20px;height:20px}h1,h2,h3,p{margin:0}h1{font-size:24px;line-height:1.5;font-weight:600;letter-spacing:-.4px}h2{font-size:17px;font-weight:550;line-height:1.5}h3{font-size:14px;font-weight:550}label{display:block;font-size:13px;line-height:1.6}input,textarea{display:block;width:100%;border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:12px 14px;font-size:16px;line-height:1.65}textarea{resize:vertical;min-height:88px;overflow-wrap:anywhere}input::placeholder,textarea::placeholder{color:#9ba392}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid #b98c57;outline-offset:4px}input:focus,textarea:focus{outline:2px solid #96aa8f;outline-offset:2px}[hidden]{display:none!important}
.app-shell{max-width:660px;margin:0 auto}.topbar{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 28px}.brand{display:flex;gap:10px;align-items:center;font-size:22px;letter-spacing:-.8px;font-weight:650}.brand img{border-radius:9px}.topbar-right{display:flex;align-items:center;gap:15px}#save-status{font-size:11px;color:var(--muted)}.icon-button{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:transparent;color:var(--muted)}.icon-button:hover,.icon-button[aria-current=page]{background:var(--soft);color:var(--green)}.desktop-nav{display:flex;gap:6px;padding:0 28px 15px}.nav-item{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 20px;border-radius:12px;font-size:13px;color:var(--muted)}.nav-item.active{color:var(--green);background:var(--soft)}.mobile-nav{display:none}main{padding:12px 28px 50px;outline:none}.page-intro{margin:4px 0 20px}.today-heading{display:flex;align-items:center;justify-content:space-between;margin:2px 0 20px;font-size:12px;color:var(--muted);gap:12px}.today-heading span{font-size:11px}.today-layout{display:block}.hero{padding:27px;background:var(--green);border-radius:var(--radius);color:#fffdf0}.hero h1{font-size:23px}.hero h1 label{font-size:inherit;font-weight:inherit;line-height:inherit}.challenge-edit{border:0;background:#ffffff0c;color:#fffdf0;margin:20px 0;min-height:94px;border-radius:12px;font-size:19px;line-height:1.6;resize:vertical}.challenge-edit::placeholder{color:#c0d0c0}.challenge-edit:focus{outline-color:#d6dcb6}.start-row{display:flex;align-items:center;gap:16px}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:11px 22px;border-radius:12px;font-size:14px;font-weight:550;line-height:1.45}.primary{background:var(--green);color:#fffdf4}.primary:hover{background:#193d31}.secondary{background:var(--soft);color:var(--green)}.ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}.hero .primary{background:#f3f0dc;color:var(--green);min-width:118px}.hero .ghost{color:#e0e8d7;border-color:#ffffff45}.duration-control select{background:transparent;color:#d7e3d0;border:0;border-radius:8px;padding:11px 2px;font-size:13px;cursor:pointer;max-width:160px}.duration-control option{color:var(--ink);background:var(--paper)}.rest-entry{text-align:right;padding:12px 3px 0;margin-bottom:23px}.text-button{background:transparent;padding:4px 0;display:inline-flex;align-items:center;color:var(--green);font-size:13px;min-height:36px}.rest-entry .text-button{font-size:12px;color:var(--muted)}.card{border:1px solid var(--line);border-radius:var(--radius);padding:24px;background:var(--paper)}.card-header{display:flex;align-items:center;justify-content:space-between;gap:15px}.log-card h2{font-size:17px}.log-card h2 label{font:inherit}.log-card textarea{margin-top:15px;background:#fbfbf6;min-height:84px}.log-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:17px}.autosave,.saved-mark{font-size:11px;color:var(--muted);line-height:1.6}.saved-mark{color:#6e875e}.inline-details{margin-top:15px;color:var(--muted);font-size:12px}.inline-details>summary{cursor:pointer;width:fit-content;min-height:28px;line-height:28px}.optional-fields{display:grid;gap:16px;padding-top:15px}.optional-fields label,.review-form label{margin-bottom:7px}.optional-fields textarea{margin-top:0;min-height:76px}.evidence-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85;font-size:16px;margin-top:16px}.detail-copy{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.9;margin-top:10px}.edit-record{margin-top:12px}.muted{font-size:12px;line-height:1.8;color:var(--muted);margin-top:10px}.overflow-safe{overflow-wrap:anywhere}.button-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:20px}.rest-hero{background:#e9e8dc;color:var(--green)}.rest-hero .primary{background:var(--green);color:var(--paper)}.rest-hero .muted{margin-top:20px}.rest-activity{font-size:19px;line-height:1.7;margin-top:12px}.restart-action{font-size:16px;line-height:1.8;margin-top:5px}.rest-hero+.log-card{margin-top:22px}.timer-hero{text-align:center;padding:32px 24px}.timer-label{font-size:17px;line-height:1.8;overflow-wrap:anywhere}.timer-number{font-size:76px;font-weight:300;font-variant-numeric:tabular-nums;letter-spacing:2px;line-height:1.6;margin-top:14px}.timer-state{font-size:12px;color:#c2d2bb}.timer-buttons{display:flex;justify-content:center;gap:12px;margin-top:27px;flex-wrap:wrap}.session-note{font-size:11px;color:#b9cdb5;margin-top:20px}
.records-toolbar{margin-bottom:20px}.search-field{position:relative;display:block}.search-field svg{position:absolute;left:14px;top:14px;width:17px;height:17px;color:var(--muted)}.search-field input{padding-left:42px}.record-list{display:grid;gap:12px}.record-row{width:100%;display:block;text-align:left;border:1px solid var(--line);border-radius:16px;background:var(--paper);padding:19px 21px}.record-row:hover{border-color:#aeba9f}.record-top{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;margin-bottom:10px}.record-arrow{margin-left:auto}.draft-label{background:#f2e9d8;color:#9a794b;padding:2px 7px;border-radius:6px}.record-row strong{display:block;font-size:15px;line-height:1.6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:550}.record-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;color:var(--muted);line-height:1.8;font-size:13px;margin-top:5px}.empty-state{padding:38px 20px;text-align:center;color:var(--muted);font-size:14px;line-height:1.8}.empty-state a{margin-top:13px}.disclosure{margin-top:18px}.disclosure>summary{font-size:13px;color:var(--muted);cursor:pointer;line-height:1.8}.review-form{display:grid;gap:17px;padding-top:20px}.review-form .muted{margin:0}.review-form .button{justify-self:start}.past-review{padding:17px 0;border-bottom:1px solid var(--line)}.settings-stack{display:grid;gap:17px}.settings-stack>.disclosure{margin:0}.form-grid{display:grid;gap:0}.settings-links{display:flex;gap:24px;flex-wrap:wrap;margin-top:13px}.detail-task{font-size:17px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:15px}dialog .log-card{padding:20px;margin-top:18px;border-radius:14px}
.storage-warning{padding:16px 24px;background:#f7e3d4;color:#8e573a;font-size:12px;line-height:1.8}.storage-warning button{background:transparent;color:inherit;text-decoration:underline;margin-left:8px;padding:4px;font-size:12px}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,15px);max-width:calc(100vw - 40px);padding:12px 20px;background:var(--green);color:var(--paper);border-radius:12px;font-size:13px;line-height:1.6;z-index:100;opacity:0;pointer-events:none;transition:.2s;width:max-content}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:0;border-radius:22px;background:var(--paper);color:var(--ink);width:500px;max-width:calc(100vw - 28px);max-height:85dvh;overflow:auto;padding:25px}dialog::backdrop{background:#183e3266;backdrop-filter:blur(3px)}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.sheet-header h2{font-size:20px}.close-button{background:transparent;font-size:25px;color:var(--muted);width:36px;height:36px;flex-shrink:0}.sheet-copy{font-size:13px;color:var(--muted);line-height:1.9;margin-bottom:19px}.sheet-form{display:grid;gap:17px}.sheet-form label{margin-bottom:7px}.sheet-actions{display:flex;gap:10px;margin-top:15px;flex-wrap:wrap}.sheet-detail{font-size:13px;line-height:1.8;padding:15px;background:var(--soft);border-radius:12px;overflow-wrap:anywhere}.sheet-option{padding:15px;background:var(--soft);border-radius:12px;font-size:14px;margin-bottom:12px}.sheet-option small{display:block;margin-top:8px;font-size:12px;color:var(--muted);line-height:1.8}.source-card{padding:17px 0;border-bottom:1px solid var(--line)}.source-card h3{font-size:14px;line-height:1.8}.source-card p,.source-card a{font-size:12px;line-height:1.9;margin-top:7px;color:var(--muted)}.source-card a{text-decoration:underline}.source-kind{font-size:11px;color:#9a805b;margin-bottom:6px}.skip-link{position:fixed;top:-100px;left:15px;background:var(--green);color:white;padding:12px;z-index:101}.skip-link:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){.topbar{height:76px;padding:0 22px}.brand{font-size:21px}.brand img{width:28px;height:28px}#save-status{font-size:10px}.topbar-right{gap:8px}.desktop-nav{display:none}main{padding:9px 20px calc(100px + env(safe-area-inset-bottom))}.today-heading{margin-bottom:18px;font-size:11px}.hero{padding:23px;border-radius:20px}.hero h1{font-size:22px}.challenge-edit{font-size:18px;min-height:89px;margin:17px 0 19px}.rest-entry{margin-bottom:18px;padding-top:6px}.card{padding:22px;border-radius:18px}.log-card textarea{min-height:82px}.log-bottom{margin-top:15px}.autosave{font-size:10px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;justify-content:center;gap:8px;background:#fbfaf5f5;backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:10px 20px calc(10px + env(safe-area-inset-bottom));z-index:30}.mobile-nav .nav-item{flex:1;max-width:220px;gap:8px;min-height:44px;padding:9px;font-size:13px}.mobile-nav svg{width:19px;height:19px}.toast{bottom:calc(90px + env(safe-area-inset-bottom));font-size:12px}.timer-number{font-size:68px}.record-row{padding:18px}.disclosure{padding:19px 21px}.page-intro{margin:3px 0 20px}dialog{padding:22px}.sheet-header h2{font-size:19px}.sheet-actions .button{flex:1}dialog .log-card{padding:17px}.settings-links{gap:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
