@import url('./fonts.css');
:root{color-scheme:dark;--bg:#101211;--surface:#1a1d1b;--surface-2:#202420;--line:#30362f;--text:#f5f6ee;--muted:#969e93;--lime:#d3f77a;--work:#ffad7c;--rest:#8dcde7;--phase:var(--lime);font-family:Arial,Helvetica,sans-serif;font-size:16px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-width:300px;-webkit-tap-highlight-color:transparent}body:has(dialog[open]){overflow:hidden}button,input,a{touch-action:manipulation}button,input{font:inherit}button{cursor:pointer;color:inherit;border:0}button:disabled{opacity:.35;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--lime);outline-offset:5px}button,a,input{ -webkit-tap-highlight-color:transparent}button{transition:background .16s,transform .16s}button:active:not(:disabled){transform:translateY(1px)}button:hover:not(:disabled){filter:brightness(1.08)}button[hidden],[hidden]{display:none!important}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-library{position:absolute;width:0;height:0;overflow:hidden}h1,h2,p{margin:0}a{color:inherit}.topbar{max-width:1280px;margin:auto;padding:30px 64px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;text-decoration:none;font-size:15px;letter-spacing:2px;font-weight:800;gap:8px}.brand-light{font-weight:400;color:#c1c7bb;margin-left:-5px}.brand-icon{display:grid;place-items:center;width:35px;height:35px;border:1px solid var(--lime);border-radius:50%;color:var(--lime);margin-right:8px}.brand-icon svg{width:21px;height:21px}.help-button{display:flex;gap:14px;align-items:center;background:transparent;color:var(--muted);font-size:12px}.help-button>span:last-child{font-size:22px;color:var(--lime)}.mobile-label{display:none}main{max-width:1152px;margin:auto;padding:62px 0 70px}.setup-layout{display:grid;grid-template-columns:1fr 440px;gap:92px}.intro{padding-top:23px}.eyebrow,.micro-label{font-family:'Courier New',monospace;font-size:11px;font-weight:600;letter-spacing:2px;color:var(--muted);line-height:1.6}.intro>.eyebrow{display:flex;align-items:center;gap:12px;color:var(--lime)}.tiny-line{width:25px;height:1px;background:var(--lime)}.intro h1{font-size:clamp(48px,5.6vw,78px);line-height:1.05;letter-spacing:-4px;font-weight:500;margin:29px 0 23px}.intro h1 em{font-style:normal;color:var(--lime)}.intro-copy{font-size:16px;line-height:1.8;color:var(--muted)}.intro-art{height:310px;position:relative;max-width:400px;margin:24px 0 15px;display:flex;flex-direction:column;align-items:center;justify-content:center}.art-orbit{position:absolute;border:1px solid #30382b;border-radius:50%;width:254px;height:254px}.orbit-one{border-right-color:var(--lime);transform:rotate(-35deg)}.orbit-two{width:294px;height:294px;border-style:dashed;opacity:.45}.art-dot{position:absolute;top:45px;right:83px;width:9px;height:9px;border-radius:50%;background:var(--lime);box-shadow:0 0 25px #d3f77a30}.art-time{font-size:62px;letter-spacing:-4px;font-weight:500;font-variant-numeric:tabular-nums}.art-time>span{color:var(--lime)}.art-caption{font-family:'Courier New',monospace;font-size:9px;letter-spacing:2px;color:var(--muted);margin-top:14px}.local-note{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--lime);display:inline-block;flex-shrink:0}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-heading h2{font-size:22px;font-weight:500;letter-spacing:-.6px}.micro-label{font-size:9px;letter-spacing:1.5px}.presets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}.presets button{display:flex;flex-direction:column;text-align:left;gap:7px;background:var(--surface);border:1px solid transparent;border-radius:12px;padding:15px 17px}.presets button[aria-pressed=true]{background:#263020;border-color:#6c803e;color:var(--lime)}.presets span{font-size:14px;font-weight:600}.presets small{font-family:'Courier New',monospace;font-size:11px;letter-spacing:.2px;color:var(--muted)}.presets button[aria-pressed=true] small{color:#adca76}.interval-card{background:var(--surface);border:1px solid #252b24;border-radius:16px;overflow:hidden}.interval-row{display:flex;align-items:center;width:100%;padding:20px 18px;background:transparent;text-align:left;gap:16px;min-height:82px;position:relative}.interval-row+.interval-row:before{content:'';position:absolute;top:0;left:61px;right:18px;height:1px;background:var(--line)}.row-icon{display:grid;place-items:center;width:25px}.row-copy{display:flex;flex-direction:column;gap:6px;flex:1}.row-copy strong{font-size:15px;font-weight:500}.row-copy small{font-size:11px;color:var(--muted)}.row-value{font-size:23px;letter-spacing:-.7px;font-variant-numeric:tabular-nums;font-weight:500}.chevron{font-size:24px;color:#7e8977;font-weight:400;line-height:1}.work-color{color:var(--work)}.rest-color{color:var(--rest)}.lime-color{color:var(--lime)}.round-control{display:flex;align-items:center;gap:3px}.round-control button{background:#2c322a;border-radius:8px;width:32px;height:34px;font-size:21px;color:#cbd3c5}.round-control output{min-width:36px;text-align:center;font-size:21px;font-variant-numeric:tabular-nums}.session-total{display:flex;justify-content:space-between;align-items:center;margin-top:24px}.session-total .eyebrow{font-size:10px}.session-total strong{font-size:24px;font-weight:500;letter-spacing:-.6px}.plan-preview{display:flex;gap:4px;overflow:hidden;height:6px;margin:14px 0 11px}.plan-preview span{min-width:2px;border-radius:3px;flex-basis:0}.plan-preview .work{background:var(--work)}.plan-preview .rest{background:var(--rest)}.plan-preview .prepare{background:var(--lime)}.plan-note{color:var(--muted);font-size:10px;line-height:1.6}.options-card{margin-top:22px;border-top:1px solid var(--line);padding-top:8px}.option-row{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:46px;width:100%;background:transparent;padding:3px 0;font-size:12px}.option-row>span{display:flex;align-items:center;gap:10px}.option-row svg{width:17px;height:17px;color:var(--muted)}.prepare-row strong{font-weight:400;color:var(--muted)}.prepare-row .chevron{font-size:19px}.switch{position:relative;width:36px;height:22px;display:block;cursor:pointer;flex-shrink:0}.switch input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:1}.switch>span{display:block;width:36px;height:22px;background:#3b4336;border-radius:30px;transition:background .2s}.switch>span:after{content:'';display:block;position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#d8ded1;transition:transform .2s}.switch input:checked+span{background:var(--lime)}.switch input:checked+span:after{background:#344025;transform:translateX(14px)}.switch input:focus-visible+span{outline:2px solid var(--lime);outline-offset:4px}.sound-actions{display:flex;align-items:center;gap:18px}.text-button{background:none;font-size:11px;color:var(--lime);text-decoration:underline;text-underline-offset:3px;padding:7px}.fine-print{color:var(--muted);font-size:11px;line-height:1.6}.primary-button{background:var(--phase);color:#172010;border-radius:12px;min-height:57px;padding:15px 22px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:16px;font-weight:600;width:100%}.primary-button svg{width:21px;height:21px;stroke-width:2}.start-button{margin-top:22px;justify-content:space-between;background:var(--lime)}.under-button{font-size:10px;text-align:center;line-height:1.7;color:var(--muted);margin-top:12px}.footer{max-width:1152px;margin:auto;border-top:1px solid var(--line);padding:22px 0 28px;display:flex;justify-content:space-between;font-family:'Courier New',monospace;font-size:9px;letter-spacing:1.6px;color:#7f8979}.session-view{max-width:430px;margin:auto;text-align:center}.session-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.icon-button{display:grid;place-items:center;min-width:40px;height:40px;border-radius:50%;background:var(--surface-2);color:var(--muted)}.icon-button svg{width:19px;height:19px}.session-view h1{color:var(--phase);font-size:40px;letter-spacing:-1.5px;font-weight:500;line-height:1.1;outline:0}.session-view>p:first-of-type{color:var(--muted);font-size:13px;line-height:1.6;margin-top:12px}.timer-face{width:280px;max-width:100%;aspect-ratio:1;position:relative;margin:28px auto}.timer-ring{width:100%;height:100%;transform:rotate(-90deg);stroke-width:8}.ring-track{stroke:#252c23}.ring-fill{stroke:var(--phase);stroke-linecap:round}.timer-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px}.timer-text>span:first-child{font-size:66px;letter-spacing:-3px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1}.timer-text>.eyebrow{font-size:9px}.timer-text>svg{color:var(--phase);width:90px;height:90px;stroke-width:1.4}.session-metrics{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border-radius:14px;padding:20px 8px}.session-metrics>div{display:flex;flex-direction:column;gap:8px}.session-metrics>div+div{border-left:1px solid var(--line)}.session-metrics small{font-size:11px;color:var(--muted)}.session-metrics strong{font-size:16px;font-variant-numeric:tabular-nums;font-weight:500}.progress-wrap{margin-top:23px}.progress-wrap>div{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted)}.progress-wrap .eyebrow{font-size:9px}progress{appearance:none;-webkit-appearance:none;width:100%;height:4px;border:0;border-radius:3px;overflow:hidden;background:var(--surface-2);display:block;margin-top:12px}progress::-webkit-progress-bar{background:var(--surface-2)}progress::-webkit-progress-value{background:var(--phase);border-radius:3px}progress::-moz-progress-bar{background:var(--phase);border-radius:3px}.awake-banner{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;margin-top:12px;font-size:10px;color:var(--muted);line-height:1.5}.awake-banner .status-dot{background:#697160}.awake-banner[data-status=active]{color:var(--lime)}.awake-banner[data-status=active] .status-dot{background:var(--lime)}.awake-banner[data-status=denied],.awake-banner[data-status=released],.awake-banner[data-status=unsupported]{color:var(--work)}.session-controls{margin-top:7px}.secondary-button{background:transparent;min-height:47px;width:100%;font-size:12px;font-weight:500;display:flex;justify-content:center;align-items:center;gap:10px;color:var(--muted)}.secondary-button span{font-size:23px}.completion-note{line-height:1.8;font-size:15px;color:var(--muted);max-width:300px;margin:0 auto 15px}.session-mode main{padding-top:28px;padding-bottom:30px}.session-mode .footer{display:none}.phase-work{--phase:var(--work)}.phase-rest{--phase:var(--rest)}.phase-prepare,.phase-complete{--phase:var(--lime)}.paused #timer-label{color:var(--phase)}dialog{border:1px solid #3c4634;border-radius:20px;background:#1a1e18;color:var(--text);padding:28px;width:min(430px,calc(100% - 32px));box-shadow:0 30px 100px #0009}dialog::backdrop{background:#000a;backdrop-filter:blur(5px)}dialog h2{font-size:24px;font-weight:500;letter-spacing:-.7px}dialog p{font-size:13px;line-height:1.8;color:var(--muted);margin:18px 0}dialog .primary-button{background:var(--lime);margin-top:20px}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:14px}.duration-inputs{display:flex;align-items:center;gap:14px;margin-top:22px}.duration-inputs label{flex:1;font-size:11px;color:var(--muted)}.duration-inputs input{display:block;width:100%;margin-top:8px;background:#262e21;border:1px solid #4e5a42;color:var(--text);border-radius:12px;padding:16px 10px;font-size:36px;text-align:center;appearance:textfield; -moz-appearance:textfield}.duration-inputs input::-webkit-inner-spin-button{appearance:none}.duration-inputs>span{font-size:32px;margin-top:20px;color:var(--lime)}.error{color:var(--work);min-height:18px;font-size:12px}dialog .error{margin:10px 0 0}.install-tip{display:flex;gap:13px;background:#252e1f;border-radius:12px;padding:17px;margin:20px 0}.install-tip svg{color:var(--lime)}.install-tip strong{font-size:13px;font-weight:500}.install-tip p{font-size:12px;margin:7px 0 0}.toast{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translateX(-50%);max-width:calc(100% - 32px);width:max-content;padding:14px 20px;border:1px solid #586b3c;border-radius:12px;background:#263020;color:var(--text);font-size:12px;z-index:10;box-shadow:0 10px 30px #0007}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1400px){main{padding-top:80px;padding-bottom:80px}.intro h1{font-size:82px}.intro-art{margin-top:45px;height:340px}.session-mode main{padding-top:30px}}
@media(max-width:1250px){.topbar{padding-inline:40px}main{margin-inline:64px}.setup-layout{gap:50px;grid-template-columns:1fr 400px}.footer{margin-inline:64px}.intro h1{font-size:65px}.intro-art{max-width:340px}}
@media(max-width:950px){main{margin-inline:32px}.topbar{padding-inline:32px}.setup-layout{gap:35px;grid-template-columns:1fr 365px}.intro h1{font-size:52px;letter-spacing:-2.5px}.intro-copy{font-size:14px}.intro-art{max-width:290px}.footer{margin-inline:32px}.micro-label{font-size:8px}}
@media(max-width:760px){.topbar{padding:18px 22px;padding-top:max(18px,env(safe-area-inset-top));border-bottom:0}.brand{font-size:12px;letter-spacing:1.5px;gap:7px}.brand-icon{width:30px;height:30px;margin-right:4px}.brand-icon svg{width:18px;height:18px}.desktop-label{display:none}.mobile-label{display:inline}.help-button{font-size:11px;gap:8px}main{padding:16px 0 35px;margin-inline:auto;max-width:440px}.setup-layout{display:block}.intro{padding:10px 24px 27px}.intro>.eyebrow{font-size:9px;letter-spacing:1.7px}.intro h1{font-size:49px;letter-spacing:-2.5px;margin:18px 0 15px;line-height:1.07}.intro-copy{font-size:13px;line-height:1.7}.intro-copy br{display:none}.intro-art,.local-note{display:none}.session-builder{padding:0 24px}.section-heading{margin-bottom:15px}.section-heading h2{font-size:18px}.micro-label{font-size:8px;letter-spacing:1px}.presets{gap:8px;margin-bottom:15px}.presets button{padding:13px}.presets span{font-size:13px}.presets small{font-size:10px}.interval-row{padding:18px 15px;gap:12px;min-height:77px}.interval-row+.interval-row:before{left:52px;right:15px}.row-copy strong{font-size:14px}.row-copy small{font-size:10px}.row-value{font-size:23px}.round-control button{width:31px;height:33px}.round-control output{min-width:30px;font-size:20px}.session-total{margin-top:22px}.session-total strong{font-size:23px}.options-card{margin-top:19px}.option-row{font-size:12px;min-height:45px}.option-row svg{width:16px;height:16px}.fine-print{font-size:10px}.primary-button{min-height:56px}.start-button{margin-top:18px}.footer{padding:19px 24px calc(24px + env(safe-area-inset-bottom));margin-inline:24px;gap:15px;font-size:8px;line-height:1.8;letter-spacing:.8px}.footer>span:last-child{text-align:right}.session-mode .topbar{padding-bottom:5px}.session-mode main{padding:12px 24px calc(12px + env(safe-area-inset-bottom));margin:0 auto}.session-top{margin-bottom:12px}.session-view h1{font-size:36px}.session-view>p:first-of-type{font-size:12px;margin-top:8px}.timer-face{width:250px;margin:23px auto}.timer-text>span:first-child{font-size:62px}.session-metrics{padding:17px 5px}.session-metrics strong{font-size:14px}.session-metrics small{font-size:10px}.progress-wrap{margin-top:17px}.awake-banner{margin-top:7px;min-height:36px;font-size:10px}.session-controls{margin-top:4px}.session-view .under-button{font-size:9px;margin-top:3px}.session-mode .help-button{font-size:10px}}
@media(max-height:780px) and (max-width:760px){.session-mode .topbar{padding-top:max(10px,env(safe-area-inset-top));padding-bottom:0}.session-mode main{padding-top:3px}.session-top{margin-bottom:3px}.session-view h1{font-size:30px}.session-view>p:first-of-type{margin-top:5px;font-size:11px}.timer-face{width:205px;margin:15px auto}.timer-text>span:first-child{font-size:53px}.session-metrics{padding:13px 4px}.progress-wrap{margin-top:13px}.awake-banner{margin-top:4px;min-height:30px}.session-controls .primary-button{min-height:50px}.secondary-button{min-height:41px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
