:root{--bg:#0d0e13;--surface:#15171e;--raised:#1c1f29;--line:#262a36;--text:#e7e9ef;--muted:#8d93a6;--accent:#7c8cff;--warn:#ffc46b;--danger:#ff8f8f;--ok:#5ed09a;--radius:10px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0}button{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:8px;min-height:40px;padding:.45rem .8rem}button:hover{border-color:var(--accent)}.shell{grid-template-columns:232px minmax(0,1fr) 328px;min-height:100vh;display:grid}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:5;background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);align-items:center;gap:.75rem;padding:.75rem 1.25rem;display:flex;position:sticky;top:0}.topbar__heading{min-width:0;margin-right:auto}.topbar__title{letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:600}.topbar__sub{color:var(--muted);margin:.1rem 0 0;font-size:.78rem}.topbar__days{gap:.3rem;display:flex}.topbar__days button{min-width:36px;padding:.35rem .6rem;font-size:.85rem}.topbar__days button:disabled{opacity:.4;cursor:default}.topbar__menu{padding:.35rem .6rem;display:none}.content{flex:1;min-width:0;padding:1.1rem 1.25rem 3rem}.app__meta{color:var(--muted);margin:.2rem 0 0;font-size:.85rem}.app__notice{background:var(--surface);border-left:3px solid var(--accent);color:var(--muted);border-radius:6px;margin:0 0 1rem;padding:.6rem .8rem;font-size:.85rem}.app__notice--error{color:#ffbdbd;border-left-color:#ff7b7b}.app__notice--warn{color:#ffdca6;border-left-color:#ffc46b}.focus{background:var(--surface);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem .9rem;display:flex}.focus--running{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--surface))}.focus--idle{justify-content:center}.focus__kind{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.7rem}.focus__title{margin:.15rem 0 .2rem;font-size:1.1rem}.focus__elapsed{font-variant-numeric:tabular-nums;margin:0;font-size:1.35rem}.focus__elapsed--over{color:#ffdca6}.focus__of{color:var(--muted);font-size:.85rem}.focus__over{font-size:.85rem}.focus__empty,.focus__detail p:last-child{margin-bottom:0}.focus__empty{color:var(--muted);margin:0;font-size:.9rem}.focus__actions{gap:.5rem;display:flex}.review{flex-direction:column;gap:1.25rem;display:flex}.review__totals{grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));gap:.6rem;display:grid}.review__total{background:var(--surface);border:1px solid var(--line);border-radius:9px;flex-direction:column;gap:.15rem;padding:.6rem .7rem;display:flex}.review__totalLabel{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem}.review__totalValue{font-variant-numeric:tabular-nums;font-size:1.1rem}.review__over{color:#ffc46b}.review__under{color:#7ce6c4}.review__days{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.review__day{grid-template-columns:minmax(7rem,10rem) 1fr auto;align-items:center;gap:.75rem;font-size:.8rem;display:grid}.review__dayName{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.review__bars{flex-direction:column;gap:2px;display:flex}.review__bar{border-radius:3px;min-width:2px;height:7px;display:block}.review__bar--planned{background:color-mix(in srgb, var(--accent) 55%, transparent)}.review__bar--tracked{background:#7ce6c4}.review__dayFigures{color:var(--muted);font-variant-numeric:tabular-nums}.review__table{border-collapse:collapse;width:100%;font-size:.82rem}.review__caption{color:var(--muted);text-align:left;margin-bottom:.5rem;font-size:.75rem}.review__table th,.review__table td{border-bottom:1px solid var(--line);text-align:left;padding:.45rem .5rem}.review__table th{color:var(--muted);font-size:.72rem;font-weight:500}.review__table td:not(:first-child),.review__table th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.review__empty{color:var(--muted);margin:0;font-size:.88rem}.field--inline{flex-direction:row;align-items:center;gap:.6rem}.field__input--short{width:5rem}.grid{border:1px solid var(--line);border-radius:10px;position:relative;overflow:hidden}.grid__row{grid-template-columns:4.5rem 1fr;min-height:3rem;display:grid}.grid__row+.grid__row{border-top:1px solid var(--line)}.grid__label{border-right:1px solid var(--line);color:var(--muted);font-variant-numeric:tabular-nums;padding:.4rem .6rem;font-size:.75rem}.grid__lane{position:relative}.grid__empty{color:var(--muted);pointer-events:none;place-content:center;margin:0;font-size:.9rem;display:grid;position:absolute;inset:0}.grid__overlay{pointer-events:none;position:absolute;inset:0 0 0 4.5rem}.block{background:color-mix(in srgb, var(--accent) 30%, var(--surface));border:1px solid var(--accent);pointer-events:auto;cursor:grab;touch-action:none;border-radius:7px;min-height:1.5rem;position:absolute;overflow:hidden}.block--dragging{cursor:grabbing;z-index:2;box-shadow:0 6px 18px #00000059}.block__hit{text-align:left;width:100%;height:100%;min-height:0;cursor:inherit;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:flex-start;gap:.35rem;padding:.3rem .45rem;display:flex;overflow:hidden}.block__handle{cursor:ns-resize;touch-action:none;height:8px;position:absolute;left:0;right:0}.block__handle--top{top:0}.block__handle--bottom{bottom:0}.block:hover .block__handle:after{content:"";background:var(--text);opacity:.5;border-radius:2px;width:1.75rem;height:2px;position:absolute;left:50%;transform:translate(-50%)}.block__handle--top:after{top:2px}.block__handle--bottom:after{bottom:2px}.block__title{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;line-height:1.2;overflow:hidden}.app__primary{background:var(--accent);border-color:var(--accent);color:#10122a;font-weight:600}.grid__lane{background:0 0;border:0;border-radius:0;width:100%;min-height:0;padding:0}.grid__lane:hover{background:color-mix(in srgb, var(--accent) 12%, transparent)}.block{cursor:pointer;text-align:left}.block:hover{background:color-mix(in srgb, var(--accent) 45%, var(--surface))}.block__tracked{color:var(--text);font-variant-numeric:tabular-nums;opacity:.85;flex:none;font-size:.72rem}.block--done{background:color-mix(in srgb, var(--line) 70%, var(--surface));border-color:var(--line);opacity:.75}.block--done .block__title{text-decoration:line-through}.block--skipped{background:repeating-linear-gradient(-45deg, var(--surface), var(--surface) 5px, var(--line) 5px, var(--line) 10px);border-color:var(--line);opacity:.7}.block--running{border-color:#7ce6c4;box-shadow:inset 0 0 0 1px #7ce6c4}.editor__running{color:#b7f0dd;background:#7ce6c429;border-radius:7px;margin:0;padding:.45rem .6rem;font-size:.78rem}.editor{background:var(--surface);border:1px solid var(--line);width:min(28rem,100vw - 2rem);color:var(--text);border-radius:12px;padding:0}.editor::backdrop{background:#060812a6}.editor__form{flex-direction:column;gap:.85rem;padding:1.1rem;display:flex}.editor__title{margin:0;font-size:1.05rem}.editor__row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.editor--task{width:min(42rem,100vw - 2rem)}.task{flex-direction:column;gap:.9rem;padding:1rem 1.15rem 1.15rem;display:flex}.task__meta{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:flex-end;gap:1.3rem;padding-bottom:.85rem;display:flex}.task__field{flex-direction:column;gap:.15rem;min-width:0;display:flex}.task__field--pop{position:relative}.task__fieldLabel{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.62rem}.task__bare{font:inherit;width:100%;color:var(--text);background:0 0;border:0;border-bottom:1px solid #0000;border-radius:0;padding:.15rem .1rem}.task__bare::placeholder{color:var(--muted);opacity:.75}.task__bare:hover{border-bottom-color:var(--line)}.task__bare:focus-visible{border-bottom-color:var(--accent);outline:none}.task__tagInput{min-width:7rem;color:var(--warn);align-items:center;gap:.25rem;font-size:.9rem;display:flex}.task__tagInput .task__bare{color:var(--warn)}.task__bareButton{white-space:nowrap;background:0 0;border:0;border-radius:6px;margin-left:-.3rem;padding:.15rem .3rem;font-size:.9rem}.task__bareButton:hover{background:var(--raised);border:0}.task__flag{min-height:0;color:var(--muted);background:0 0;border:0;border-radius:6px;align-items:center;gap:.3rem;margin-left:-.45rem;padding:.2rem .45rem;font-size:.85rem;display:inline-flex}.task__flag:hover{background:var(--raised);border:0}.task__close{min-height:0;color:var(--muted);background:0 0;border:0;margin-left:auto;padding:.25rem .5rem;font-size:.95rem;line-height:1}.task__close:hover{background:var(--raised);color:var(--text);border:0}.task__head{align-items:flex-start;gap:.7rem;display:flex}.task__check{min-height:0;color:var(--muted);background:0 0;border:0;border-radius:50%;flex:none;margin-top:.15rem;padding:.2rem;display:inline-flex}.task__check .glyph{width:24px;height:24px}.task__check:hover{background:var(--raised);color:var(--text);border:0}.task__check--done,.task__check--done:hover{color:var(--ok)}.task__check--done path{stroke:var(--surface)}.task__name{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.task__title{letter-spacing:-.01em;font-size:1.5rem;font-weight:600}.task__timer{flex:none;align-items:flex-end;gap:1.1rem;padding-top:.2rem;display:flex}.task__start{background:var(--raised);border:1px solid var(--line);text-transform:uppercase;letter-spacing:.04em;border-radius:8px;align-items:center;gap:.35rem;min-height:0;padding:.35rem .7rem;font-size:.78rem;display:inline-flex}.task__start:hover,.task__start--running{border-color:var(--accent);color:var(--accent)}.task__stat{min-width:4.2ch;min-height:0;color:var(--text);font-variant-numeric:tabular-nums;text-align:left;background:0 0;border:0;border-radius:5px;margin:0;padding:0;font-size:1.05rem;line-height:1.4}button.task__stat{margin:-.25rem 0 -.25rem -.25rem;padding:.25rem}button.task__stat:hover{background:var(--raised);border:0}.task__stat--over{color:var(--warn)}.task__notes{resize:vertical;min-height:3.5rem;padding:.35rem .1rem;font-size:.9rem;line-height:1.55}.task__when{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;padding-top:.85rem;display:grid}.task__hint,.task__note{color:var(--muted);margin:0;font-size:.78rem}.task__note{color:var(--accent)}.task__actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.5rem;padding-top:.85rem;display:flex}.menu--actual{width:15rem;padding:.5rem;left:0;right:auto}.actual__entry{gap:.35rem;margin-bottom:.45rem;display:flex}.actual__entry .field__input{padding:.3rem .45rem;font-size:.85rem}.actual__entry button{min-height:0;padding:.3rem .6rem;font-size:.8rem}.actual__presets{grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem;display:grid}.actual__preset{background:var(--surface);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:6px;min-height:0;padding:.3rem .1rem;font-size:.72rem}.actual__log{flex-direction:column;gap:.1rem;max-height:9rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.actual__row{border-radius:6px;grid-template-columns:3rem minmax(0,1fr) auto;align-items:center;gap:.4rem;padding:.15rem .35rem;display:grid}.actual__row:hover{background:var(--surface)}.actual__span{font-variant-numeric:tabular-nums;font-size:.85rem}.actual__day{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.actual__open{color:var(--accent);font-style:normal}.actual__drop{min-height:0;color:var(--muted);background:0 0;border:0;padding:.1rem .3rem;font-size:.75rem;line-height:1}.actual__drop:hover{background:var(--raised);color:var(--danger);border:0}.actual__clear{width:100%;min-height:0;color:var(--muted);background:0 0;border:0;margin-top:.4rem;padding:.35rem;font-size:.8rem}.actual__clear:hover{background:var(--surface);color:var(--danger);border:0}.field{flex-direction:column;gap:.3rem;display:flex}.field__label{color:var(--muted);font-size:.78rem}.field__input{font:inherit;width:100%;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:.5rem .6rem}.field__input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.field__input--multiline{resize:vertical}.field__error{color:#ffbdbd;font-size:.75rem}.field__hint{color:var(--muted);margin:0;font-size:.75rem}.field__apply{border-radius:6px;min-height:0;padding:.1rem .4rem;font-size:.72rem}.editor__actions{justify-content:space-between;align-items:center;gap:.5rem;margin-top:.15rem;display:flex}.editor__confirm{gap:.5rem;margin-left:auto;display:flex}.editor__save{background:var(--accent);border-color:var(--accent);color:#10122a;font-weight:600}.editor__delete{color:#ff9b9b;border-color:#0000}.editor__delete:hover{border-color:#ff9b9b}.capture{flex-direction:column;gap:.4rem;margin-bottom:1rem;display:flex}.capture__row{align-items:stretch;gap:.5rem;display:flex}.capture__field{flex:1;min-width:0}.capture__row button{white-space:nowrap}.capture__row button:disabled{opacity:.45;cursor:default}.capture__row button:disabled:hover{border-color:var(--line)}.capture__preview{min-height:1.1rem;color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:.4rem;margin:0;font-size:.8rem;display:flex}.capture__title{color:var(--text);font-weight:600}.capture__memory{color:var(--accent)}.capture__hint{opacity:.75}.capture__error{color:#ffbdbd}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rail{z-index:20;background:var(--surface);border-right:1px solid var(--line);flex-direction:column;align-self:start;gap:.1rem;height:100vh;padding:.85rem .6rem;display:flex;position:sticky;top:0;overflow-y:auto}.rail__brand{letter-spacing:-.01em;align-items:center;gap:.5rem;padding:.2rem .55rem .9rem;font-size:.95rem;font-weight:600;display:flex}.rail__mark{background:linear-gradient(140deg, var(--accent), #4ec9d8);border-radius:5px;width:15px;height:15px}.rail__section+.rail__section{margin-top:.9rem}.rail__heading{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;margin:0 0 .3rem;padding:0 .55rem;font-size:.66rem;font-weight:600}.rail__list{flex-direction:column;gap:.1rem;margin:0;padding:0;list-style:none;display:flex}.rail__item{width:100%;min-height:34px;color:var(--muted);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:.6rem;padding:.35rem .55rem;font-size:.86rem;display:flex}.rail__item:hover{background:var(--raised);color:var(--text)}.rail__item--active{background:var(--raised);color:var(--text);box-shadow:inset 2px 0 0 var(--accent);font-weight:600}.rail__label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.rail__soon{border:1px solid var(--line);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:.05rem .3rem;font-size:.6rem}.rail__scrim{display:none}.icon{flex:none;width:17px;height:17px}.aside{border-left:1px solid var(--line);flex-direction:column;align-self:start;gap:.7rem;height:100vh;padding:.85rem;display:flex;position:sticky;top:0;overflow-y:auto}.aside .focus{margin-bottom:0}.aside__day{color:var(--muted);letter-spacing:.03em;margin:0 0 .4rem;font-size:.75rem;font-weight:600}.aside .grid__row{grid-template-columns:3.1rem 1fr;min-height:2.1rem}.aside .grid__overlay{left:3.1rem}.aside .grid__label{padding:.25rem .4rem;font-size:.66rem}.grid__now{z-index:3;pointer-events:none;background:#ff6b6b;height:2px;position:absolute;left:3.1rem;right:0}.grid__now:before{content:"";background:#ff6b6b;border-radius:50%;width:8px;height:8px;position:absolute;top:-3px;left:-3px}.board{grid-auto-columns:minmax(230px,1fr);grid-auto-flow:column;gap:.8rem;padding-bottom:.5rem;display:grid;overflow-x:auto}.board--single{max-width:34rem;display:block}.column{flex-direction:column;gap:.45rem;min-width:0;display:flex}.column__header{margin-bottom:.1rem}.column__weekday{letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:600}.column--today .column__weekday{color:var(--accent)}.column__date{color:var(--muted);margin:.05rem 0 .5rem;font-size:.78rem}.column__capacity{background:var(--raised);border-radius:2px;height:4px;overflow:hidden}.column__capacityFill{background:var(--accent);border-radius:2px;height:100%;display:block}.column__capacityFill--over{background:var(--warn)}.column__add{width:100%;min-height:36px;color:var(--muted);text-align:left;background:0 0;border-style:dashed;padding:.35rem .6rem;font-size:.82rem}.column__add:hover{color:var(--text)}.column__list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.column__empty{color:var(--muted);margin:.1rem 0 0;font-size:.8rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);text-align:left;flex-direction:column;width:100%;padding:.5rem .6rem .45rem;display:flex}.card:hover{border-color:color-mix(in srgb, var(--accent) 55%, var(--line))}.card__open{text-align:left;background:0 0;border:0;border-radius:0;flex-direction:column;gap:.3rem;width:100%;min-height:0;padding:0;display:flex}.card__open:hover{border:0}.card__top{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:.5rem;font-size:.7rem;display:flex}.card__time{background:color-mix(in srgb, var(--warn) 20%, var(--surface));color:var(--warn);text-transform:lowercase;border-radius:5px;padding:.1rem .4rem;font-weight:600}.card__estimate{background:var(--raised);color:var(--muted);border-radius:5px;padding:.1rem .4rem}.card__estimate--over{color:var(--warn)}.card__title{font-size:.92rem;line-height:1.3}.card__open:hover .card__title{color:var(--accent)}.card__actions{align-items:center;gap:.1rem;margin-top:.35rem;display:flex}.card__action{min-height:0;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;background:0 0;border:0;border-radius:6px;align-items:center;gap:.25rem;padding:.25rem;font-size:.65rem;display:inline-flex}.card__action:hover{background:var(--raised);color:var(--text);border:0}.card__action--on{color:var(--accent)}.card__action--done{color:var(--ok)}.card__action--done path{stroke:var(--surface)}.card--running .card__action--done path{stroke:color-mix(in srgb, var(--accent) 12%, var(--surface))}.card__action--done:hover{background:color-mix(in srgb, var(--ok) 16%, var(--surface));color:var(--ok)}.card__when{display:inline-flex;position:relative}.glyph{flex:none;width:17px;height:17px}.card__action--timer{position:relative}.card__action--open:before,.card__action--open:after{content:"";border:5px solid #0000;position:absolute;left:50%}.card__action--open:before{border-bottom-color:var(--line);margin-left:-5px;bottom:-.35rem}.card__action--open:after{border-bottom-color:var(--surface);margin-left:-5px;bottom:calc(-.35rem - 1px)}.card--running .card__action--open:after{border-bottom-color:color-mix(in srgb, var(--accent) 12%, var(--surface))}.card__tag{color:var(--muted);white-space:nowrap;margin-left:auto;padding:.1rem .3rem;font-size:.68rem}.card__timing{border-top:1px solid var(--line);align-items:center;gap:.75rem;margin-top:.35rem;padding-top:.4rem;display:flex}.card__play{width:28px;height:28px;min-height:0;color:var(--muted);background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;margin-right:auto;padding:0;display:inline-flex}.card__play:hover{background:var(--raised);color:var(--accent);border:0}.card__play--running{color:var(--accent)}.card__stat{flex-direction:column;align-items:flex-end;gap:.05rem;margin:0;display:flex}.card__statLabel{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.58rem}.card__statValue{font-variant-numeric:tabular-nums;font-size:.75rem}.card__statValue--over{color:var(--warn)}.card--running{background:color-mix(in srgb, var(--accent) 12%, var(--surface));border-color:var(--accent)}.card--done .card__open{opacity:.55}.card--done .card__title{text-decoration:line-through}.card--skipped{opacity:.45}.placeholder{text-align:center;max-width:26rem;margin:3rem auto}.placeholder__icon{background:var(--surface);border:1px solid var(--line);width:42px;height:42px;color:var(--accent);border-radius:12px;place-content:center;margin-bottom:.75rem;display:inline-grid}.placeholder__icon .icon{width:20px;height:20px}.placeholder__title{margin:0 0 .4rem;font-size:1.1rem}.placeholder__blurb{color:var(--muted);margin:0 0 .9rem;font-size:.88rem;line-height:1.5}.placeholder__note{border:1px solid var(--line);color:var(--muted);border-radius:6px;margin:0;padding:.2rem .55rem;font-size:.72rem;display:inline-block}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;max-width:26rem;padding:1rem 1.1rem}.panel__title{align-items:center;gap:.45rem;margin:0 0 .9rem;font-size:.95rem;display:flex}.panel__title:not(:first-child){border-top:1px solid var(--line);margin-top:1.8rem;padding-top:1.5rem}.panel__lede{color:var(--muted);margin:-.4rem 0 1.1rem;font-size:.82rem;line-height:1.55}.panel__sync{align-items:center;gap:.5rem;margin:1.1rem 0 .9rem;font-size:.82rem;display:flex}.panel__syncDot{background:var(--muted);border-radius:50%;flex:none;width:8px;height:8px}.panel__syncDot--idle{background:var(--ok)}.panel__syncDot--syncing{background:var(--accent);animation:1.1s ease-in-out infinite sync-pulse}.panel__syncDot--offline{background:var(--warn)}.panel__syncDot--error{background:var(--danger)}@keyframes sync-pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.panel__syncDot--syncing{animation:none}}.panel__buttons{flex-wrap:wrap;gap:.5rem;display:flex}:root{--hour:44px}.content--calendar{flex-direction:column;min-height:0;padding-bottom:1rem;display:flex;overflow:hidden}.shell--calendar{height:100vh;min-height:0;overflow:hidden}.shell--calendar .main{min-height:0}.bar{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.bar__page{gap:.25rem;display:flex}.bar__page button{min-width:36px;padding:.35rem .6rem;font-size:.85rem}.bar__page button:disabled{opacity:.4;cursor:default}.bar__when{position:relative}.bar__range{font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:.4rem;padding:.35rem .7rem;font-size:.85rem;display:flex}.bar__zoom{background:var(--surface);border:1px solid var(--line);border-radius:8px;align-items:center;gap:.2rem;padding:.15rem;display:flex}.bar__zoom button{background:0 0;border:none;min-width:30px;min-height:30px;padding:0 .4rem;font-size:1rem;line-height:1}.bar__zoom button:disabled{opacity:.35;cursor:default}.bar__zoom button:not(:disabled):hover{background:var(--raised);border-radius:6px}.bar__view{position:relative}.bar__surface{white-space:nowrap;align-items:center;gap:.4rem;padding:.35rem .7rem;font-size:.85rem;display:flex}.menu{z-index:20;background:var(--raised);border:1px solid var(--line);border-radius:12px;min-width:13rem;padding:.4rem;position:absolute;top:calc(100% + .4rem);right:0;box-shadow:0 12px 32px #00000073}.menu__head{color:var(--muted);margin:.2rem .55rem .35rem;font-size:.75rem}.menu__item{text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;gap:.6rem;width:100%;padding:.45rem .55rem;font-size:.9rem;display:flex}.menu__item:hover{background:var(--surface)}.menu__item--on{color:var(--text);font-weight:600}.menu__check{color:var(--accent);font-size:.95rem;line-height:1}.menu--schedule{width:15.5rem;max-width:calc(100vw - 2rem);max-height:calc(100vh - 1rem);padding:.5rem;position:fixed;top:0;left:0;right:auto;overflow-y:auto}.menu__head--split{border-top:1px solid var(--line);margin-top:.5rem;padding-top:.5rem}.menu--schedule .picker__day{min-height:28px;font-size:.75rem}.picker{z-index:20;background:var(--raised);border:1px solid var(--line);border-radius:12px;width:17rem;padding:.7rem;position:absolute;top:calc(100% + .4rem);left:0;box-shadow:0 12px 32px #00000073}.picker__head{justify-content:space-between;align-items:center;gap:.4rem;margin-bottom:.5rem;display:flex}.picker__head button{min-width:30px;min-height:30px;padding:0 .4rem}.picker__month{margin:0;font-size:.88rem;font-weight:600}.picker__weekdays,.picker__week{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.picker__weekdays{color:var(--muted);text-align:center;margin-bottom:.3rem;font-size:.68rem}.picker__grid{flex-direction:column;gap:2px;display:flex}.picker__day{font-variant-numeric:tabular-nums;background:0 0;border:1px solid #0000;border-radius:7px;min-height:32px;padding:0;font-size:.8rem}.picker__day:hover{background:var(--surface)}.picker__day--outside{color:var(--muted);opacity:.55}.picker__day--today{color:var(--accent);font-weight:700}.picker__day--current{background:color-mix(in srgb, var(--accent) 30%, var(--surface));border-color:var(--accent)}.picker__foot{justify-content:flex-end;margin-top:.5rem;display:flex}.picker__foot button{min-height:32px;padding:.25rem .7rem;font-size:.8rem}.cal{border:1px solid var(--line);border-radius:10px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.cal__head,.cal__body{grid-template-columns:3.6rem repeat(var(--cols,7), minmax(0, 1fr));display:grid}.cal__head{z-index:3;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0}.cal__dayHead{border:none;border-left:1px solid var(--line);background:0 0;border-radius:0;flex-direction:column;align-items:flex-start;gap:.05rem;min-height:3.1rem;padding:.5rem .6rem;display:flex}.cal__dayHead:hover{background:var(--raised);border-color:var(--line)}.cal__dayName{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem}.cal__dayNum{font-variant-numeric:tabular-nums;font-size:1.15rem;line-height:1.1}.cal__dayHead--today .cal__dayNum{color:var(--accent);font-weight:700}.cal__dayHead--selected{background:color-mix(in srgb, var(--accent) 14%, var(--surface))}.cal__body{flex:1;min-height:0;overflow-y:auto}.cal__gutter{position:relative}.cal__hour{height:var(--hour);border-bottom:1px solid var(--line)}.cal__hourLabel{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;padding:.15rem .5rem 0 0;font-size:.7rem;display:block;transform:translateY(-.55em)}.cal__col{border-left:1px solid var(--line);position:relative}.cal__col--selected{background:color-mix(in srgb, var(--accent) 5%, transparent)}.cal__lanes{height:100%;position:relative}.cal__lane{border:none;border-bottom:1px solid var(--line);background:0 0;border-radius:0;min-height:0;padding:0;position:absolute;left:0;right:0}.cal__lane:hover{background:color-mix(in srgb, var(--accent) 10%, transparent);border-color:var(--line)}.cal__now{z-index:2;background:var(--danger);pointer-events:none;height:2px;position:absolute;left:0;right:0}.cal__now:before{content:"";background:var(--danger);border-radius:50%;width:8px;height:8px;position:absolute;top:-3px;left:-4px}.cal--single .cal__dayNum{font-size:1.3rem}.month{border:1px solid var(--line);border-radius:10px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.month__head{background:var(--surface);border-bottom:1px solid var(--line);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.month__weekday{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding:.4rem .6rem;font-size:.68rem}.month__grid{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.month__week{flex:1;grid-template-columns:repeat(7,minmax(0,1fr));min-height:5.5rem;display:grid}.month__cell{border-top:1px solid var(--line);border-left:1px solid var(--line);flex-direction:column;gap:.2rem;min-width:0;padding:.25rem;display:flex}.month__week:first-child .month__cell{border-top:none}.month__cell:first-child{border-left:none}.month__cell--outside{background:color-mix(in srgb, var(--bg) 55%, transparent)}.month__cell--outside .month__date{color:var(--muted);opacity:.6}.month__cell--selected{background:color-mix(in srgb, var(--accent) 10%, transparent);box-shadow:inset 0 0 0 1px var(--accent)}.month__cellHead{justify-content:space-between;align-items:center;gap:.2rem;display:flex}.month__date{font-variant-numeric:tabular-nums;background:0 0;border:none;border-radius:6px;min-height:26px;padding:.1rem .35rem;font-size:.78rem}.month__cell--today .month__date{background:var(--accent);color:#0d0e13;font-weight:700}.month__add{min-height:24px;color:var(--muted);opacity:0;background:0 0;border:none;padding:0 .35rem;font-size:.95rem;line-height:1}.month__cell:hover .month__add,.month__add:focus-visible{opacity:1}.month__chips{flex-direction:column;gap:2px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.month__chip{background:color-mix(in srgb, var(--accent) 26%, var(--surface));border:none;border-left:2px solid var(--accent);text-align:left;border-radius:4px;align-items:baseline;gap:.3rem;width:100%;min-height:0;padding:.1rem .3rem;font-size:.7rem;display:flex}.month__chipTime{font-variant-numeric:tabular-nums;opacity:.8;flex:none}.month__chipTitle{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.month__chip--high{border-left-color:var(--danger)}.month__chip--medium{border-left-color:var(--warn)}.month__chip--low{border-left-color:var(--muted)}.month__chip--done{background:var(--raised);opacity:.7}.month__chip--done .month__chipTitle{text-decoration:line-through}.month__chip--skipped{opacity:.45}.month__chip--running{box-shadow:inset 0 0 0 1px var(--accent)}.month__more{min-height:0;color:var(--muted);background:0 0;border:none;padding:.05rem .3rem;font-size:.68rem}.pane{flex-direction:column;gap:.6rem;min-height:0;display:flex}.pane__head{flex-direction:column;gap:.15rem;display:flex}.pane__title{margin:0;font-size:1.1rem}.pane__date{color:var(--muted);align-items:center;gap:.45rem;margin:0;font-size:.8rem;display:flex}.pane__todayTag{background:color-mix(in srgb, var(--accent) 22%, var(--surface));color:var(--accent);text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:.05rem .35rem;font-size:.66rem}.pane__capacity{background:var(--line);border-radius:2px;height:3px;margin-top:.4rem;overflow:hidden}.pane__capacityFill{background:var(--accent);height:100%;display:block}.pane__capacityFill--over{background:var(--warn)}.pane__add{width:100%;color:var(--muted);font-size:.85rem}.pane__add:hover{color:var(--text)}.pane__list{flex-direction:column;gap:.4rem;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.pane__empty,.pane__total{color:var(--muted);margin:0;font-size:.8rem}.pane__empty{line-height:1.5}.block--high,.card--high{border-left:3px solid var(--danger)}.block--medium,.card--medium{border-left:3px solid var(--warn)}.block--low,.card--low{border-left:3px solid var(--muted)}.card__flag--high{background:color-mix(in srgb, var(--danger) 18%, var(--surface));color:var(--danger);padding-right:.35rem}.card__flag--medium{background:color-mix(in srgb, var(--warn) 16%, var(--surface));color:var(--warn);padding-right:.35rem}.card__flag--low{background:var(--raised);color:var(--muted);padding-right:.35rem}.card__flag--high:hover{background:color-mix(in srgb, var(--danger) 28%, var(--surface));color:var(--danger)}.card__flag--medium:hover{background:color-mix(in srgb, var(--warn) 26%, var(--surface));color:var(--warn)}.ritual{flex-direction:column;gap:1.1rem;max-width:44rem;display:flex}.ritual .panel{max-width:none}.panel__note{color:var(--muted);margin:0 0 .9rem;font-size:.85rem;line-height:1.5}.steps{flex-wrap:wrap;gap:.3rem 1.1rem;margin:0;padding:0;list-style:none;display:flex}.steps__step{color:var(--muted);align-items:center;gap:.4rem;font-size:.78rem;display:flex}.steps__dot{background:var(--surface);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:1.25rem;height:1.25rem;font-size:.68rem;display:grid}.steps__step--current{color:var(--text)}.steps__step--current .steps__dot{background:color-mix(in srgb, var(--accent) 22%, var(--surface));border-color:var(--accent);color:var(--text)}.steps__step--past .steps__dot{border-color:color-mix(in srgb, var(--accent) 50%, var(--line));color:var(--accent)}.ritual__mode{border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:.7rem;margin:0 0 1rem;padding:.85rem;display:flex}.ritual__radio{cursor:pointer;grid-template-columns:auto minmax(0,1fr);gap:.55rem;font-size:.85rem;line-height:1.45;display:grid}.ritual__radio strong{font-weight:600}.ritual__anchor{flex-wrap:wrap;gap:1rem;padding-top:.3rem;display:flex}.ritual__next{align-self:flex-start;margin-top:.4rem}.presets{flex-direction:column;gap:.55rem;margin:0 0 .9rem;padding:0;list-style:none;display:flex}.presets__item{background:var(--raised);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem;padding:.7rem .85rem;display:flex}.presets__name{margin:0;font-size:.92rem;font-weight:600}.presets__meta{color:var(--muted);margin:.15rem 0 0;font-size:.76rem}.presets__actions{gap:.45rem;display:flex}.editor--wide{width:min(46rem,100vw - 2rem)}.preset__items{flex-direction:column;gap:.45rem;display:flex}.preset__head,.preset__row{grid-template-columns:6.5rem minmax(0,1fr) 5rem 7rem 2.5rem;align-items:center;gap:.5rem;display:grid}.preset__head{color:var(--muted);font-size:.72rem}.preset__row .field__error{grid-column:1/-1}.preset__remove{min-height:34px;color:var(--muted);padding:0;font-size:1.1rem;line-height:1}.preset__remove:hover{color:var(--danger);border-color:var(--danger)}.preset__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.preset__add{align-self:flex-start}.clash{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.7rem;margin-bottom:1rem;display:grid}.clash__side{flex-direction:column;gap:.4rem;display:flex}.clash__role{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.72rem}.clash__block{background:color-mix(in srgb, var(--accent) 12%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 40%, var(--line));border-radius:var(--radius);flex-direction:column;gap:.2rem;margin:0;padding:.6rem .7rem;font-size:.85rem;display:flex}.clash__block span{color:var(--muted);font-size:.76rem}.clash__block--fixed{background:var(--raised);border-color:var(--line)}.clash__actions{flex-wrap:wrap;align-items:flex-end;gap:.9rem;display:flex}.clash__pick{gap:.4rem;display:flex}.clash__drop{color:var(--muted)}.clash__drop:hover{color:var(--danger);border-color:var(--danger)}.picks{flex-direction:column;gap:.4rem;margin:0 0 .4rem;padding:0;list-style:none;display:flex}.picks__item{text-align:left;background:var(--raised);grid-template-columns:1.4rem minmax(0,1fr) auto auto;align-items:center;gap:.6rem;width:100%;display:grid}.picks__item:disabled{opacity:.45;cursor:not-allowed}.picks__item:disabled:hover{border-color:var(--line)}.picks__item--picked{background:color-mix(in srgb, var(--accent) 15%, var(--surface));border-color:var(--accent)}.picks__check{border:1px solid var(--line);border-radius:5px;place-items:center;width:1.15rem;height:1.15rem;font-size:.7rem;display:grid}.picks__item--picked .picks__check{border-color:var(--accent);color:var(--accent)}.picks__title{font-size:.88rem}.picks__when,.picks__already{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.74rem}.picks__already{background:var(--surface);border-radius:5px;padding:.05rem .35rem}.summary{flex-direction:column;gap:.5rem;margin:0 0 1rem;display:flex}.summary__row{grid-template-columns:minmax(9rem,auto) minmax(0,1fr);gap:.6rem;font-size:.82rem;display:grid}.summary__label{color:var(--muted)}.summary__value{margin:0}@media (width<=1180px){.shell{grid-template-columns:208px minmax(0,1fr) 272px}}@media (width<=900px){.shell{grid-template-columns:minmax(0,1fr)}.rail{width:244px;height:100dvh;transition:transform .16s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.rail--open{transform:none}.rail__scrim{z-index:15;background:#06081299;display:block;position:fixed;inset:0}.topbar__menu{display:block}.aside{display:contents}.aside .focus{order:-1;margin:.85rem 1rem 0}.aside__day,.aside__calendar{display:none}.content{padding:1rem 1rem 3rem}.board--single{max-width:none}}@media (width<=640px){.preset__head{display:none}.preset__row{background:var(--raised);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:minmax(0,1fr) 2.5rem;gap:.4rem;padding:.6rem}.preset__row .field__input:nth-child(2){grid-area:1/1}.preset__remove{grid-area:1/2}.preset__row .field__input:first-child,.preset__row .field__input:nth-child(3),.preset__row select{grid-column:span 2;width:100%}.picks__item{grid-template-columns:1.4rem minmax(0,1fr) auto}.picks__already{display:none}.clash__actions{flex-direction:column;align-items:stretch}.task__head{flex-wrap:wrap}.task__timer{flex-basis:100%;padding-left:2.4rem}.task__title{font-size:1.25rem}.task__when{grid-template-columns:1fr 1fr}}
