.focus-control-link svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:22px;height:22px}.focus-control-input:focus-visible,.focus-control-checkbox input:focus-visible,.focus-control-disclosure summary:focus-visible,.focus-control-link:focus-visible{outline:2px solid var(--app-accent-300);outline-offset:4px;box-shadow:none}.focus-control-input{box-sizing:border-box;border:1px solid var(--focus-field-border);background:var(--focus-field-bg);width:100%;min-width:0;min-height:44px;color:var(--app-primary-50);font:inherit;border-radius:12px;padding:9px 10px}.focus-control-input::placeholder{color:var(--focus-field-text);opacity:1}.focus-control-input[aria-invalid=true]{border-color:#ef7d89}.focus-control-input:disabled{opacity:.6;cursor:not-allowed}.focus-control-input--embedded{background:0 0;border:0;border-radius:0;min-height:0;padding:0}.focus-control-input--embedded:focus-visible{outline:none}.focus-control-checkbox{min-height:44px;color:var(--app-accent-100);cursor:pointer;align-items:center;gap:10px;display:flex}.focus-control-checkbox input{width:18px;height:18px;accent-color:var(--app-accent-500);cursor:inherit;flex-shrink:0}.focus-control-checkbox:has(input:disabled){opacity:.6;cursor:not-allowed}.focus-control-link{color:var(--app-accent-200);align-items:center;gap:9px;text-decoration:none;display:inline-flex}.focus-control-link:hover{color:var(--app-primary-50)}.focus-control-disclosure{color:var(--app-accent-100);font-size:15px;line-height:1.5}.focus-control-disclosure summary{cursor:pointer;width:fit-content;padding-block:10px}.focus-control-disclosure summary:hover{color:var(--app-primary-50)}.focus-control-disclosure p{color:var(--app-accent-200)}:root{background:#020b20}.focus-timer-page{min-width:320px;min-height:100vh;color:var(--app-primary-50);background:radial-gradient(circle at 28% 23%,#0852e52e,#0000 29rem),linear-gradient(150deg,#000d30 0%,#001039 48%,#020719 100%);margin:0;font-family:Ubuntu Sans,sans-serif}.focus-timer-main{min-height:100vh;overflow-x:hidden}.focus-timer{--button-primary-bg:#193760;--button-primary-hover:#264874;--button-primary-text:#d9e7f8;--button-secondary-border:#527eb7;--button-secondary-text:#a9c0df;--button-secondary-hover:#102b50;--focus-field-bg:#061838;--focus-field-border:#395f91;--focus-field-text:#b9cfee;--focus-timer-wave-offset:clamp(18px, 2.2vw, 32px);--focus-timer-hero-height:max(400px, calc(100vw * 500 / 1536));--focus-timer-session-top:calc(110px + var(--focus-timer-hero-height));grid-template-rows:94px 16px var(--focus-timer-hero-height) auto;isolation:isolate;min-height:100vh;display:grid;position:relative}.focus-timer:fullscreen{background:radial-gradient(circle at 28% 23%,#0852e52e,#0000 29rem),linear-gradient(150deg,#000d30 0%,#001039 48%,#020719 100%);width:100%;height:100%;overflow:hidden auto}.focus-timer__header-controls{gap:8px;display:flex}.focus-timer__fullscreen-error{max-width:260px;font-size:14px;position:absolute;top:75px;right:28px}.focus-timer__header{z-index:3;grid-row:1;justify-content:space-between;align-items:flex-start;padding:33px clamp(28px,3vw,48px) 0;display:flex;position:relative}.focus-timer__brand{gap:6px;display:grid}.focus-timer__site-link{width:max-content;font-size:18px;line-height:1.3}.focus-timer h1{letter-spacing:-.02em;margin:0;font-size:27px;font-weight:500;line-height:1.2}.focus-timer__mode-group{z-index:3;grid-row:2;justify-content:center;gap:12px;margin-top:-33px;padding:0 20px;display:flex;position:relative}.focus-timer__hero{grid-row:3;min-height:400px;margin-top:-10px;position:relative}.focus-timer__wave{--wave-rim:#a8dcff;--wave-rim-dim:#5c8ac159;--wave-glow-opacity:.09;--wave-reveal-fade:clamp(48px, 8vw, 144px);pointer-events:none;transform:translateY(var(--focus-timer-wave-offset));clip-path:inset(calc(-1 * var(--focus-timer-wave-offset)) 0 -100%);position:absolute;inset:0;overflow:visible}.focus-timer__wave:before{content:"";background:radial-gradient(ellipse 65% 40% at 50% 50%, rgb(84 147 231/var(--wave-glow-opacity)), transparent 100%);position:absolute;inset:-20% 0}.focus-timer__wave svg{width:100%;height:100%;display:block;overflow:visible}.focus-timer__wave-rim{fill:none;stroke:var(--wave-rim);stroke-linecap:round;stroke-width:1px}.focus-timer__wave-rim--dim{stroke:var(--wave-rim-dim);filter:none}.focus-timer__wave-reveal{width:100%;height:300%;mask-image:linear-gradient(to right, #000 calc(100% - var(--wave-reveal-fade)), #000000d9 calc(100% - var(--wave-reveal-fade) * .72), #0006 calc(100% - var(--wave-reveal-fade) * .35), transparent 100%);position:absolute;top:-100%;left:0;overflow:hidden;transform:translate(0%)}.focus-timer__wave-counter-motion{position:absolute;inset:0;transform:translate(0%)}.focus-timer__wave-counter-motion>svg{height:33.3333%;position:absolute;top:33.3333%}.focus-timer__currents{position:absolute;inset:0}.focus-timer__ambient-region{mask-image:radial-gradient(190px 95px at 50% calc(50% + 20px),#0000 45%,#000 100%)}.focus-timer__current{stroke-linecap:round}.focus-timer__current-reveal,.focus-timer__current-artwork{animation-duration:var(--current-duration);animation-delay:var(--current-delay);animation-timing-function:linear;animation-iteration-count:infinite;animation-play-state:paused;position:absolute;inset:0}.focus-timer__current-reveal{animation-name:focus-timer-current-reveal;mask-image:linear-gradient(90deg,#0000 35%,#000 43% 57%,#0000 65%)}.focus-timer__current-artwork{animation-name:focus-timer-current-counter}.focus-timer__wave.is-ambient-motion .focus-timer__current-reveal,.focus-timer__wave.is-ambient-motion .focus-timer__current-artwork{animation-play-state:running}@keyframes focus-timer-current-reveal{0%{transform:translate(-70%)}to{transform:translate(70%)}}@keyframes focus-timer-current-counter{0%{transform:translate(70%)}to{transform:translate(-70%)}}.focus-timer[data-reduced-effects=true] .focus-timer__currents,.focus-timer[data-reduced-effects=true] .focus-timer__particles{display:none}.focus-timer[data-reduced-effects=true] .focus-timer__settings::backdrop{backdrop-filter:none}.focus-timer__effects-hint{color:var(--app-primary-300);margin-top:4px;font-size:12px;line-height:1.5;display:block}.focus-timer__particles{position:absolute;inset:0;container-type:size}.focus-timer__particle-artwork{--particle-unit:max(calc(100cqw / 1536), calc(100cqh / 500));width:calc(1536 * var(--particle-unit));height:calc(500 * var(--particle-unit));position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.focus-timer__particle{opacity:0;background:radial-gradient(circle,#daf7ff 0%,#c5efffe6 22%,#a8dcff33 45%,#a8dcff00 75%);border-radius:50%;position:absolute;top:0;left:0}.focus-timer__clock-wrap{z-index:1;transform:translateY(var(--focus-timer-wave-offset));text-shadow:0 2px 18px #000c2db3;align-content:center;place-items:center;gap:4px;padding-top:40px;display:grid;position:absolute;inset:0}.focus-timer__clock{font-variant-numeric:tabular-nums;letter-spacing:-.045em;font-size:clamp(58px,5vw,76px);font-weight:400;line-height:1}.focus-timer__status{color:var(--app-primary-300);letter-spacing:.08em;margin:0;font-size:18px;line-height:1.4}.focus-timer__content{box-sizing:border-box;min-height:calc(100vh - var(--focus-timer-session-top));z-index:2;grid-row:4;align-content:space-between;justify-items:center;gap:40px;padding:38px 20px 34px;display:grid;position:relative}.focus-timer__prepare-overlay{box-sizing:border-box;z-index:2;place-items:start center;padding:24px 20px;display:grid;position:fixed;inset:0;overflow-y:auto}.focus-timer__prepare-overlay:before{content:none}.focus-timer__preparation{box-sizing:border-box;border:1px solid var(--focus-field-border);z-index:1;background:#031234f0;border-radius:22px;gap:14px;width:min(620px,100%);margin-block-start:max(0px, calc((100dvh - 48px - var(--planning-base-height,0px)) / 2));padding:clamp(22px,3vw,30px);display:grid;position:relative}.focus-timer__preparation:not([style*=--planning-base-height]){align-self:center;margin-block-start:0}.focus-timer__preparation .focus-timer__outcome{width:100%;min-height:88px;margin:0}.focus-timer__prep-error{color:#ffbac0;margin:-8px 0 0}.focus-timer__previous,.focus-timer__completion-note{color:var(--app-primary-200);border:0;padding:0}.focus-timer__previous span{color:var(--app-primary-400);letter-spacing:.12em;text-transform:uppercase;font-size:12px}.focus-timer__previous p{margin:5px 0 10px}.focus-timer__session-plan{justify-items:center;gap:10px;width:min(710px,100vw - 40px);display:grid}.focus-timer__session-plan .focus-timer__outcome{text-align:center;width:100%;height:64px;min-height:64px;margin-top:0;padding-block:10px;padding-inline:28px}.focus-timer__session-plan .focus-timer__outcome>label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.focus-timer__session-plan .focus-timer__outcome input{text-align:center;padding-right:0}.focus-timer__first-action{box-sizing:border-box;width:auto;max-width:620px;color:var(--app-primary-400);padding:0 20px;font-size:14px;line-height:1.45}.focus-timer__first-action.is-done span{color:var(--app-primary-300);text-decoration:line-through}.focus-timer__first-action.is-done{opacity:.5}.focus-timer__session-controls{justify-items:center;gap:14px;display:grid}.focus-timer__blocks{align-items:center;gap:12px;min-height:18px;margin-top:4px;display:flex}.focus-timer__block{box-sizing:border-box;border:1px solid var(--app-accent-600);background:#031c4cb8;border-radius:5px;width:14px;height:14px}.focus-timer__block.is-current{border-color:var(--app-accent-400);background:var(--app-accent-800);box-shadow:none}.focus-timer__block.is-complete{background:var(--app-accent-700);border-color:var(--app-accent-500);box-shadow:none}.focus-timer__block.is-current.is-pulsing{animation:3.5s ease-in-out infinite focus-timer-current-block}.focus-timer__outcome{box-sizing:border-box;border:1px solid var(--focus-field-border);background:#051c49c7;border-radius:22px;gap:7px;width:min(710px,100vw - 40px);min-height:94px;margin-top:16px;padding:17px 17px 13px 28px;transition:border-color .24s,background-color .24s,box-shadow .24s;display:grid;position:relative;box-shadow:inset 0 1px #6dabff0f}.focus-timer__outcome:focus-within{border-color:var(--app-accent-300);box-shadow:none}.focus-timer__outcome>label{color:var(--app-primary-400);letter-spacing:.22em;text-transform:uppercase;font-size:12px;font-weight:400;line-height:1.3;transition:opacity .24s}.focus-timer__outcome>div{align-items:center;min-width:0;display:flex}.focus-timer__outcome input{text-overflow:clip;font-size:27px;line-height:1.3}.focus-timer__outcome[data-expanded=false]{box-shadow:none;background:0 0;border-color:#0000}.focus-timer__outcome[data-expanded=false]>label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.focus-timer__session-plan .focus-timer__outcome[data-expanded=false]{height:64px;min-height:64px;padding-block:10px}.focus-timer__outcome[data-expanded=false]:hover{border-color:var(--focus-field-border)}.focus-timer__outcome[data-expanded=false] input{text-overflow:ellipsis;cursor:text}.focus-timer__outcome[data-expanded=false][data-empty=true] input{color:#0000;background:0 0}.focus-timer__outcome[data-expanded=false][data-empty=true]>div:after{content:"Add an outcome";color:var(--app-primary-300);pointer-events:none;font-size:16px;position:absolute}.focus-timer__outcome[data-expanded=false][data-empty=true] input::placeholder{color:#0000}.focus-timer:is([data-status=running],[data-status=paused]) .focus-timer__block{box-shadow:none;border-color:var(--app-accent-700)}.focus-timer:is([data-status=running],[data-status=paused]) .focus-timer__block.is-current{background:var(--app-accent-800)}.focus-timer__actions{align-items:center;gap:26px;margin-top:2px;display:flex}.focus-timer__settings{box-sizing:border-box;border:1px solid var(--focus-field-border);width:min(460px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--app-primary-50);background:#061838;border-radius:20px;margin:auto;box-shadow:0 24px 80px #000000a6}.focus-timer__settings::backdrop{backdrop-filter:blur(4px);background:#010715c2}.focus-timer__settings-form{gap:22px;padding:28px;display:grid}.focus-timer__settings-heading h2,.focus-timer__settings-heading p{margin:0}.focus-timer__settings-heading h2{font-size:24px}.focus-timer__settings-heading p{color:var(--app-primary-300);margin-top:6px}.focus-timer__settings-fields{gap:13px;display:grid}.focus-timer__settings-fields label{color:var(--app-primary-200);grid-template-columns:1fr 6.5rem auto;align-items:center;gap:10px;display:grid}.focus-timer__settings-fields label>span:last-child{color:var(--app-primary-300);font-size:14px}.focus-timer__settings-error{color:#ffbac0;margin:-6px 0 0}.focus-timer__settings-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.focus-timer__sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes focus-timer-current-block{0%,to{opacity:.86}50%{opacity:.98}}@media (width<=700px){.focus-timer__ambient-region{mask-image:radial-gradient(140px 80px,#0000 45%,#000 100%)}.focus-timer{--focus-timer-session-top:511px;grid-template-rows:92px 64px 355px auto}.focus-timer__header{padding:22px 20px 0}.focus-timer h1{font-size:24px}.focus-timer__site-link{font-size:16px}.focus-timer__mode-group{justify-content:flex-start;gap:5px;margin-top:20px;padding:0 16px 8px;overflow-x:auto}.focus-timer__hero{min-height:355px;margin-top:0}.focus-timer__clock-wrap{padding-top:0}.focus-timer__clock{font-size:58px}.focus-timer__particle[data-mobile=false]{display:none}.focus-timer__content{gap:30px;padding-top:22px;padding-bottom:24px}.focus-timer__blocks{gap:10px;min-height:16px}.focus-timer__block{width:13px;height:13px}.focus-timer__outcome{min-height:88px;margin-top:0;padding-left:19px}.focus-timer__outcome input{font-size:19px}.focus-timer__actions{justify-content:center;width:100%}.focus-timer[data-status=complete] .focus-timer__actions{flex-wrap:wrap;gap:12px}.focus-timer[data-status=complete] .focus-timer__reset{order:2}.focus-timer[data-status=complete] .focus-timer__prepare-next{order:3;width:min(220px,100%)}}@media (height<=620px){.focus-timer__preparation{align-self:start;margin-block-start:0}.focus-timer__prepare-overlay{align-items:start;padding-top:96px}}@media (width<=390px){.focus-timer__actions{gap:8px}}@media (prefers-reduced-motion:reduce){.focus-timer__outcome,.focus-timer__outcome>label,.focus-timer__current-reveal,.focus-timer__current-artwork,.focus-timer__block.is-pulsing{animation-play-state:paused!important}}.focus-timer__outcome:has(input:focus-visible){border-color:var(--app-accent-300)}.focus-timer__outcome:has(input[aria-invalid=true]){border-color:#ef7d89}.focus-timer__first-action-reveal{animation:.28s ease-out both focus-first-action-reveal;display:grid}.focus-timer__first-action-reveal>div{min-height:0;overflow:hidden}@keyframes focus-first-action-reveal{0%{opacity:0;grid-template-rows:0fr;transform:translateY(-6px)}to{opacity:1;grid-template-rows:1fr;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.focus-timer__first-action-reveal{animation:none}}.focus-timer[data-reduced-effects=true] .focus-timer__first-action-reveal{animation:none}
