@font-face{font-family:Manrope;src:url(/fonts/manrope.woff2)format("woff2");font-weight:200 800;font-display:swap}:root{color-scheme:light dark;--brand-red:#d32920;--page:#f4f5fb;--header:#fff;--surface:#fff;--subtle:#f6f7fd;--ink:#1b2452;--muted:#586383;--line:#dce0ef;--accent:#3b46e2;--accent-hover:#2933c6;--accent-text:#fff;--wash:#ecedff;--warning:#8b4e10;--danger:#ac2b45;--shadow:0 10px 30px #1b245208;background:var(--page);color:var(--ink);font-synthesis:none;font:500 15px/1.55 Manrope,Arial,sans-serif}:root[data-theme=light]{color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark}}:root[data-theme=dark]{color-scheme:dark}:root{--page:light-dark(#fff,#211916);--header:light-dark(#fff,#291e1a);--surface:light-dark(#fff,#30241f);--subtle:light-dark(#fff5f0,#422c26);--ink:light-dark(#302622,#fff2e9);--muted:light-dark(#665650,#e1cdc1);--line:light-dark(#eddbd5,#68483d);--accent:light-dark(var(--brand-red),#ff9e8b);--accent-hover:light-dark(#a8211a,#ffbcab);--accent-text:light-dark(#fff,#3b1d15);--wash:light-dark(#ffece7,#582b25);--warning:light-dark(#874000,#ffd78a);--danger:light-dark(#a22a1f,#ff9e8b);--shadow:0 12px 28px light-dark(#762e2014,#1c0d084d);--paper:light-dark(#fffdfb,#332722);--paper-edge:light-dark(#e9d5ca,#6e5045);--paper-rule:light-dark(#eee2d9,#51413a);--paper-margin:light-dark(#ef9b81,#824f40);--paper-accent:light-dark(#91412e,#ffc3aa);--paper-leaf:light-dark(#176b55,#aadfc9);--paper-pencil:light-dark(#efb789,#ffbd96)}*{box-sizing:border-box}body{min-width:0;margin:0}a{color:inherit;text-underline-offset:.2em}p,h1,h2,dl,dd{margin:0}h1,h2{letter-spacing:-.045em;line-height:1.12}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{opacity:.55;cursor:default}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}.sr-only,.skip-link:not(:focus){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link:focus{z-index:2;background:var(--surface);padding:10px;position:absolute;top:12px;left:12px}.wrap{width:min(1120px,100% - 64px);margin-inline:auto}.site-header{background:var(--header);border-bottom:1px solid var(--line)}.header-inner{justify-content:space-between;align-items:center;gap:16px;min-height:68px;display:flex}.brand{letter-spacing:-.04em;align-items:center;gap:11px;font-size:1.12rem;font-weight:800;text-decoration:none;display:inline-flex}.brand strong{color:var(--accent)}.brand-symbol{background:var(--brand-red);border-radius:10px;flex:none;place-items:center;width:40px;height:40px;display:grid}.brand-symbol img{width:55%;height:auto;display:block}.header-actions,.timer-actions,.dialog-actions,.data-actions{align-items:center;gap:10px;display:flex}.button,.icon-button,.text-button{border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:44px;font-weight:750;display:inline-flex}.button{padding:9px 14px}.icon-button{background:var(--surface);border-color:var(--line);flex:none;width:44px}.quiet{background:var(--surface);border-color:var(--line)}.quiet:hover,.icon-button:hover,.icon-button[aria-pressed=true]{border-color:var(--accent);color:var(--accent);background:var(--wash)}.primary{color:var(--accent-text);background:var(--accent)}.primary:hover{background:var(--accent-hover)}.primary svg{display:block}.text-button{color:var(--muted);text-align:left;background:0 0;padding:6px 0}.text-button:hover{color:var(--accent)}.danger{color:var(--danger);border-color:var(--line);background:var(--surface)}.danger:hover{border-color:var(--danger)}.intro h1{color:var(--ink);font-size:clamp(2rem,4.8vw,3.65rem);font-weight:800;line-height:.98}.intro p{color:var(--muted);margin-top:12px}.warning{color:var(--warning);background:var(--surface);border:1px solid var(--line);border-radius:10px;margin-bottom:18px;padding:12px 16px}.workspace{grid-template-columns:minmax(0,1.64fr) minmax(0,1fr);align-items:start;gap:22px;display:grid}.surface{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:21px}.timer-card{flex-direction:column;align-items:center;padding:24px 20px 21px;display:flex;overflow:hidden}.phases{background:var(--subtle);border:1px solid var(--line);border-radius:12px;gap:4px;max-width:100%;padding:4px;display:flex}.phases button{min-height:44px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:8px;padding:5px clamp(8px,1.6vw,20px);font-size:.89rem;font-weight:750;line-height:1.2}.phases button[aria-pressed=true]{background:var(--surface);color:var(--accent);border-color:var(--line);box-shadow:0 2px 4px #6c362213}.phases button:hover{color:var(--accent)}#toggle{min-width:min(160px,46vw);min-height:50px}.tasks-card{min-height:100%;padding:21px}.card-heading{align-items:center;gap:12px;display:flex}.card-heading h2{font-size:1.45rem;font-weight:800}.card-heading p{color:var(--muted);margin-top:3px;font-size:.8rem}.card-heading button{margin-left:auto}.card-icon{color:var(--accent);background:var(--wash);border-radius:11px;flex:none;place-items:center;width:42px;height:42px;display:grid}.task-context{background:var(--subtle);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:11px;align-items:start;gap:9px;margin-block:18px 13px;padding:10px 12px;display:flex}.task-context svg{color:var(--accent);flex:none;margin-top:2px}.task-context strong,.task-context span{display:block}.task-context strong{font-size:.78rem}.task-context span{color:var(--muted);font-size:.8rem}.task-empty{text-align:center;min-height:224px;color:var(--muted);border:1px dashed var(--line);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:15px;display:flex}.task-empty p{color:var(--ink);margin-top:4px;font-weight:800}.task-empty span{max-width:235px;font-size:.86rem}.task-empty button{color:var(--accent);margin-top:7px}.tasks{max-height:340px;margin:0;padding:1px 4px 4px;list-style:none;overflow:auto}.task{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) repeat(3,auto);align-items:center;gap:3px;padding-block:8px;display:grid}.task .icon-button{border-color:#0000;width:36px}.task .icon-button:hover{border-color:var(--accent)}.task .task-check{width:33px}.task-check[aria-pressed=false] svg{opacity:.45}.task-info{overflow-wrap:anywhere;padding:0 2px}.task-info strong,.task-info span{display:block}.task-info span{color:var(--muted);font-size:.74rem}.task.is-done strong{color:var(--muted);text-decoration:line-through}.stats-card{grid-column:1/-1;padding:17px 20px}.metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px;display:grid}.metrics>div{background:var(--wash);color:var(--accent);border-radius:12px;padding:10px 14px}.metrics>div:nth-child(2){color:light-dark(#743607,#ffcf79);background:light-dark(#fff1cf,#49341d)}.metrics>div:nth-child(3){color:var(--paper-leaf);background:light-dark(#dff4ea,#253d38)}.metrics dt,.metrics dd span{color:inherit}.metrics dt{font-size:.81rem}.metrics>div:first-child dt{color:light-dark(#a8211a,#ffc1b3)}.metrics dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:1.8rem;font-weight:800;line-height:1.25}.metrics dd span{font-size:.88rem}.footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;margin-block:18px 16px;padding-top:4px;font-size:.84rem;display:flex}.footer a{color:var(--accent);align-items:center;gap:3px;font-weight:800;display:inline-flex}dialog{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-top:5px solid var(--accent);border-radius:17px;width:min(530px,100% - 26px);max-height:90dvh;padding:22px;box-shadow:0 18px 70px #381b1555}dialog::backdrop{background:#2d1812c0}.dialog-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.dialog-heading h2{font-size:1.45rem}.dialog-actions{flex-wrap:wrap;justify-content:end;margin-top:16px}fieldset{border:1px solid var(--line);border-radius:10px;min-inline-size:0;margin:0 0 14px;padding:10px 12px 12px}legend{font-weight:800}label{gap:4px;margin-block:5px 9px;font-size:.87rem;font-weight:700;display:grid}input:not([type=checkbox],[type=range]),select{background:var(--surface);width:100%;min-height:44px;color:var(--ink);border:1px solid var(--line);border-radius:7px;padding:6px 9px}input{accent-color:var(--accent)}.check{align-items:center;gap:9px;min-height:36px;display:flex}.check input{width:18px;height:18px;margin:0}.form-grid{grid-template-columns:1fr 1fr;gap:0 10px;display:grid}.sound-options{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sound-options label{flex:1}.hint,.privacy-copy{color:var(--muted);font-size:.86rem}fieldset .hint+button,button+.hint,.privacy-copy p+p,#history-empty{margin-top:9px}.form-error{color:var(--danger);margin-top:10px;font-size:.88rem}.form-error:empty{margin:0}.data-actions{flex-wrap:wrap;margin-top:18px}table{border-collapse:collapse;text-align:left;width:100%;margin-top:12px;font-size:.86rem}th,td{border-bottom:1px solid var(--line);padding:6px 4px}.history-pages{justify-content:space-between;align-items:center;gap:6px;margin-top:12px;font-size:.8rem;display:flex}body.focus-only .intro,body.focus-only .tasks-card,body.focus-only .stats-card,body.focus-only .footer{display:none}body.focus-only .workspace{max-width:650px;margin:35px auto;display:block}@media (width<=820px){.wrap{width:calc(100% - 38px)}.workspace{grid-template-columns:minmax(0,1fr)}.tasks-card{min-height:0}}@media (width<=440px){.wrap{width:calc(100% - 24px)}.header-inner{gap:8px;min-height:58px}.brand{gap:7px;font-size:.97rem}.brand-symbol{width:33px;height:33px}.header-actions{gap:5px}#open-settings{width:44px;padding:0}#open-settings span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.timer-card,.tasks-card,.stats-card{padding-inline:13px}.metrics{gap:6px}.metrics>div{padding:8px}.metrics dt{font-size:.72rem}.stats-card .button{padding-inline:8px;font-size:.77rem}dialog{padding:15px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.intro{margin-block:30px 23px}.intro h1{letter-spacing:-.062em}.timer-card{--dial-ink:#35271f;--dial-muted:#74554a;--dial-color:var(--brand-red);--track:#f9dcd4;--guide:light-dark(#f4e4de,#583b32);isolation:isolate;background-color:var(--surface);background-image:radial-gradient(circle at 50% 45%, light-dark(#fff6f1,#41291f), transparent 58%), linear-gradient(90deg, transparent calc(50% - .5px), var(--guide) 50%, transparent calc(50% + .5px)), linear-gradient(0deg, transparent calc(56% - .5px), var(--guide) 56%, transparent calc(56% + .5px));border-color:var(--line);border-radius:24px;padding-block:21px 19px;position:relative}.timer-card[data-mode=short]{--dial-color:#278071;--track:#dbefe9}.timer-card[data-mode=long]{--dial-color:#7955a0;--track:#eee5f7}.timer-card:before{z-index:-1;content:"";aspect-ratio:1;border:1px dashed var(--guide);width:min(60%,349px);box-shadow:0 0 0 10px light-dark(#fff9f580,#512d2128), 0 0 0 11px var(--guide);border-radius:50%;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)}.phases{border-color:var(--line);background:var(--subtle)}.phases button[aria-pressed=true]{color:var(--accent);background:var(--surface);border-color:var(--line);box-shadow:0 2px 4px #652b1b12}.timer-actions #toggle{min-width:min(185px,46vw);box-shadow:0 3px light-dark(#862c1c25,#230d0788)}.dial{aspect-ratio:360/320;width:min(100%,370px);margin:-4px 0 -1px;position:relative;container-type:inline-size}.clock-art{filter:drop-shadow(0 5px 5px #41201222);width:100%;height:100%;display:block;position:absolute;inset:0}.clock-guides{fill:none;stroke:var(--guide);stroke-width:1.5px;stroke-linecap:round}.brand-clock-trim{stop-color:var(--brand-red)}.clock-shadow{fill:#773b2a;opacity:.13}.clock-ticks{stroke:#dc987e;stroke-width:1.25px}.clock-ticks .major{stroke:#b4553d;stroke-width:2px}.ring-track,.ring-progress{fill:none;stroke-width:5px;stroke-linecap:round}.ring-track{stroke:var(--track)}.ring-progress{stroke:var(--dial-color)}.clock-indicator{fill:#e2ab65}.timer-card[data-timer-status=running] .clock-indicator{fill:#168568}.timer-card[data-timer-status=paused] .clock-indicator{fill:#c17426}.dial-text{text-align:center;width:47%;color:var(--dial-ink);position:absolute;top:54.0625%;left:50%;transform:translate(-50%,-50%)}#stage-label{letter-spacing:.09em;text-transform:uppercase;color:var(--dial-muted);font-size:clamp(.62rem,3.2cqw,.77rem);font-weight:850}#time{font-variant-numeric:tabular-nums;letter-spacing:-.065em;font-size:clamp(1.85rem,16.2cqw,4.15rem);font-weight:800;line-height:1.07;display:block}#time.wide{font-size:clamp(1.58rem,12.5cqw,3.3rem)}#timer-status{color:var(--dial-muted);margin-top:4px;font-size:clamp(.55rem,3.2cqw,.75rem);line-height:1.25}.cycle{background:var(--surface);border:1px solid var(--line);border-radius:12px;gap:4px;width:min(100%,431px);margin-top:16px;padding:9px 15px 7px;display:grid}.cycle-title{justify-content:space-between;align-items:center;gap:6px;display:flex}.cycle-title strong{font-size:.8rem}.cycle-title span{color:var(--muted);font-size:.74rem}.cycle-marks{grid-template-columns:repeat(4,1fr);display:grid}.cycle-marks>span{isolation:isolate;place-items:center;display:grid;position:relative}.cycle-marks>span:not(:last-child):after{z-index:-1;content:"";border-top:2px dashed var(--line);position:absolute;top:53%;left:calc(50% + 17px);right:calc(17px - 50%)}.cycle-marks>.filled:has(+.filled):after{border-top-style:solid;border-color:var(--accent)}.cycle-dot{fill:var(--wash);stroke:var(--accent)}.cycle-dot-check{stroke:var(--accent);opacity:0}.filled .cycle-dot{fill:#d32920;stroke:#d32920}.filled .cycle-dot-check{stroke:#fff;opacity:1}.tasks-card{--margin-line:33px;isolation:isolate;min-height:0;padding:26px 21px 19px calc(var(--margin-line) + 14px);background-color:var(--paper);background-image:linear-gradient(90deg, transparent var(--margin-line), var(--paper-margin) var(--margin-line) calc(var(--margin-line) + 1px), transparent calc(var(--margin-line) + 1px)), repeating-linear-gradient(180deg, transparent 0 31px, var(--paper-rule) 31px 32px);border-color:var(--paper-edge);box-shadow:0 4px 0 -1px var(--paper), 0 5px 0 0 var(--paper-edge), 0 8px 0 -2px var(--paper), 0 9px 0 -1px var(--paper-edge), var(--shadow);background-position:0 0,0 9px;border-radius:15px;align-self:stretch;margin-block:10px 6px;position:relative}.binding{pointer-events:none;grid-template-columns:repeat(7,1fr);justify-items:center;display:grid;position:absolute;inset:-11px 22px auto}.binding i{border:2px solid var(--paper-accent);border-left-color:var(--paper-edge);background:var(--surface);width:10px;height:24px;box-shadow:1px 2px 0 var(--paper-edge);border-radius:10px;display:block;transform:rotate(8deg)}#add-task{background:var(--paper);border-color:var(--paper-accent)}#add-task:hover{background:var(--wash)}.task-context{background:light-dark(#e4f6ed,#25473a);border-color:light-dark(#bfdfd1,#54816a)}.task-context svg{color:var(--paper-leaf)}.task-empty{background:var(--paper);border:0;border-block:1px dashed var(--paper-edge);text-align:left;border-radius:0;grid-template-columns:minmax(0,1fr) min(28%,104px);align-content:center;column-gap:9px;min-height:224px;margin-top:15px;padding:16px 0;display:grid}.task-empty .notebook-art{grid-area:1/2/4;width:100%}.task-empty p{grid-area:1/1}.task-empty span{grid-area:2/1}.task-empty .button{color:#fffdf7;background:#d32920;border-color:#d32920;grid-area:3/1;justify-self:start}.task-empty .button:hover{background:#a8211a}.tasks{background:var(--paper);border-radius:8px;padding-inline:0 4px}.task{border-color:var(--paper-edge)}.task .icon-button{background:var(--paper)}.metrics #metric-goal{font:inherit;color:inherit}.goal-progress{appearance:none;background:var(--wash);width:min(100%,135px);height:8px;color:var(--paper-leaf);border:0;border-radius:12px;margin-top:7px;display:block;overflow:hidden}.goal-progress::-webkit-progress-bar{background:var(--wash)}.goal-progress::-webkit-progress-value{background:var(--paper-leaf);border-radius:12px}.goal-progress::-moz-progress-bar{background:var(--paper-leaf);border-radius:12px}@media (width<=820px){.tasks-card{min-height:0}}@media (width<=600px){.intro{margin-block:18px 13px}.intro h1{font-size:clamp(1.8rem,5.7vw,2.35rem)}.intro p{margin-top:6px;font-size:.89rem}.timer-card{padding-block:13px}.dial{width:min(100%,clamp(240px,43svh,330px))}.cycle{margin-top:12px}.tasks-card{--margin-line:24px;padding-right:16px}}@media (width<=440px){.timer-card{padding-inline:12px}.tasks-card{--margin-line:15px;padding-right:13px}.task-empty{column-gap:4px}.task-empty .button{padding-inline:9px}.cycle{padding-inline:10px}.cycle-marks svg{width:26px;height:26px}}@media (forced-colors:active){.phases button[aria-pressed=true]{border:2px solid selecteditem}.clock-art{forced-color-adjust:none}.dial-text{color:canvastext;background:canvas;border-radius:8px}.cycle-dot{stroke:canvastext}.filled .cycle-dot{fill:highlight;stroke:highlight}.filled .cycle-dot-check{stroke:highlighttext}}
