:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--ink:var(--lightningcss-light,#1c2130)var(--lightningcss-dark,#e9ecf5);--muted:var(--lightningcss-light,#63697a)var(--lightningcss-dark,#9aa1b5);--ground:var(--lightningcss-light,#f5f6fa)var(--lightningcss-dark,#12141c);--surface:var(--lightningcss-light,#fff)var(--lightningcss-dark,#1b1e29);--line:var(--lightningcss-light,#dfe2ec)var(--lightningcss-dark,#2f3445);--accent:var(--lightningcss-light,#4551c8)var(--lightningcss-dark,#a3acff);--on-accent:var(--lightningcss-light,#fff)var(--lightningcss-dark,#12141c);--tint:color-mix(in srgb, var(--accent) 12%, transparent);--late:var(--lightningcss-light,#a15c00)var(--lightningcss-dark,#ffc857);--now:var(--lightningcss-light,#f5a524)var(--lightningcss-dark,#ffc857);--danger:var(--lightningcss-light,#b3261e)var(--lightningcss-dark,#ff9a8f);font-family:system-ui,sans-serif;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}body{min-height:100vh;color:var(--ink);background:var(--ground);margin:0}a{color:var(--accent);text-underline-offset:.2em}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}main,footer.site{width:min(100% - 2rem,42rem);margin:0 auto}main:has(.week){width:min(100% - 2rem,90rem)}main:has(.today){width:min(100% - 2rem,62rem)}header,nav,.actions,footer.site{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}header{border-bottom:1px solid var(--line);background:var(--surface);grid-template-columns:1fr auto 1fr;padding:.75rem 1rem;display:grid}header .actions{justify-self:end}.account{position:relative}.account summary{border-radius:50%;place-items:center;width:2.625rem;height:2.625rem;padding:0;list-style:none;display:grid}.account summary::-webkit-details-marker{display:none}.account svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round}.menu{z-index:1;border:1px solid var(--line);background:var(--surface);border-radius:.75rem;gap:.75rem;min-width:14rem;padding:.875rem;display:grid;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 .5rem 1.5rem #00000024}.menu small{overflow-wrap:anywhere}.menu button,.menu .language{width:100%}.brand{color:var(--ink);align-items:center;gap:.5rem;font-size:1.125rem;font-weight:700;text-decoration:none;display:flex}.brand img{width:2rem;height:2rem}header nav{background:var(--ground);border-radius:.625rem;gap:0;padding:.25rem}header nav a{color:var(--muted);border-radius:.4375rem;padding:.25rem .875rem;font-weight:600;text-decoration:none}header nav a:hover{color:var(--ink)}header nav a[aria-current=page]{color:var(--ink);background:var(--surface);box-shadow:0 1px 2px #0000001f}@media (width<48rem){header{grid-template-columns:1fr auto}header nav{order:1;grid-column:1/-1}header nav a{text-align:center;flex:1}}@media (width<40rem){.brand span{display:none}}main{padding:.75rem 0 1rem}footer.site{border-top:1px solid var(--line);justify-content:space-between;margin-top:2.5rem;padding:.75rem 0 1.5rem;font-size:.9375rem}h1{margin:.75rem 0 1rem;font-size:1.625rem;line-height:1.25}h2{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:baseline;gap:.75rem;margin:1.5rem 0 .5rem;font-size:.8125rem;display:flex}.overdue h2{color:var(--late)}small{color:var(--muted);font-size:.875rem;font-weight:400}h1:first-letter{text-transform:uppercase}.intro{color:var(--muted);margin:-.5rem 0 1rem}.eyebrow{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.5rem;margin:1rem 0 -.5rem;font-size:.8125rem;font-weight:700;display:flex}.eyebrow:before{content:"";background:var(--now);border-radius:50%;width:.4375rem;height:.4375rem}.empty{color:var(--muted);text-align:center;margin:3rem 0}.rows,.items{margin:0;padding:0;list-style:none}.rows{background:var(--surface);border:1px solid var(--line);border-radius:.75rem}.row{grid-template-columns:1.375rem 1fr;gap:.75rem;padding:.75rem 1rem;display:grid}.row+.row{border-top:1px solid var(--line)}.content{flex-wrap:wrap;align-items:baseline;gap:.125rem .625rem;min-width:0;display:flex}.title{color:var(--ink);overflow-wrap:anywhere;text-decoration:none}a.title:hover{text-decoration:underline}.done>.content>.title,.done>.title{color:var(--muted);text-decoration:line-through}.due{color:var(--late)}.count{background:var(--ground);white-space:nowrap;border-radius:.375rem;margin-left:auto;padding:.0625rem .5rem;font-size:.8125rem;font-weight:600}.steps{color:var(--muted);flex-basis:100%;margin:.5rem 0 0;padding:0;list-style:inside decimal}.steps li{overflow-wrap:anywhere;border-radius:.375rem;padding:.25rem .625rem}.steps .done{opacity:.7;text-decoration:line-through}.steps .next{background:color-mix(in srgb, var(--now) 14%, transparent);color:var(--ink);margin-block:.25rem;font-weight:600}.steps .next small{float:right;color:var(--late);margin-left:.75rem;font-size:.8125rem;font-weight:700}.items{flex-basis:100%;gap:.5rem;margin-top:.5rem;display:grid}.items li{grid-template-columns:1.375rem 1fr;gap:.625rem;display:grid}.marker{background:var(--muted);border-radius:2px;width:.5rem;height:.5rem;margin:.5rem auto 0;rotate:45deg}.event .bar{background:var(--accent);border-radius:2px;justify-self:center;width:.25rem}.event .when{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.event.over{opacity:.55}.today{gap:0 2.5rem;display:grid}@media (width>=54rem){.today{grid-template-columns:1fr 1fr;align-items:start}}.timeline{border-left:2px solid var(--line);gap:1.25rem;margin:.75rem 0 0 .3125rem;padding:.25rem 0 .5rem 1.5rem;list-style:none;display:grid}.timeline li{position:relative}.timeline .bar,.timeline .now:before{content:"";background:var(--accent);border-radius:50%;width:.75rem;height:.75rem;position:absolute;top:1.125rem;left:calc(-1.5rem - 1px);translate:-50%}.timeline .now:before{background:var(--now);top:.375rem}.timeline .event{background:var(--tint);border:0;border-radius:.75rem;padding:.75rem 1rem;display:block}.timeline .event .when{color:var(--accent);white-space:normal;flex-basis:100%;font-size:.9375rem}.timeline .event .title{flex-basis:100%;font-weight:600}.timeline .over{background:0 0;padding:0}.timeline .over .bar{top:.375rem}.timeline .over .when{color:inherit}.now strong{color:var(--late);align-items:center;gap:.75rem;display:flex}.now strong:after{content:"";background:var(--now);opacity:.5;border-radius:1px;flex:1;height:2px}.now small{display:block}.cards{gap:.75rem;display:grid}.cards .row{padding:.875rem 1.125rem}.add-task{border:1px dashed var(--line);color:var(--muted);border-radius:.75rem;padding:.875rem 1.125rem;text-decoration:none}.add-task:hover{border-color:var(--accent);color:var(--accent)}.week-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 1rem;margin-bottom:.75rem;display:flex}.pager{gap:.375rem}.pager [aria-current]{font-weight:600}.week{grid-template-columns:repeat(7,minmax(0,1fr));min-height:60vh;display:grid}.day{border-right:1px solid var(--line);flex-direction:column;padding:.25rem .625rem .75rem;display:flex;position:relative}.day h2{align-items:center;min-height:1.75rem;margin:.5rem 0 .75rem}.day .number{color:var(--ink);letter-spacing:0;font-size:1rem}.day[aria-current]{outline:2px solid var(--accent);outline-offset:-1px;background:var(--surface);border-right-color:#0000;border-radius:.75rem}.day[aria-current] h2{color:var(--accent)}.day[aria-current] .number{background:var(--accent);width:1.75rem;height:1.75rem;color:var(--on-accent);border-radius:50%;place-items:center;display:grid}.day .rows{background:0 0;border:0;gap:.5rem;display:grid}.day .row{border:1px solid var(--line);background:var(--surface);border-radius:.5rem;gap:.5rem;padding:.5rem .625rem;font-size:.9375rem;line-height:1.35}.day .content small{background:0 0;flex-basis:100%;padding:0;font-size:.8125rem;font-weight:400}.day .event{background:var(--tint);border-color:#0000;grid-template-columns:1fr}.day .event .bar{display:none}.day .event .when{color:var(--accent);white-space:normal;flex-basis:100%;font-size:.8125rem}.day .event .title{font-weight:600}.day .done{background:0 0;border-color:#0000}.none{color:var(--muted);margin:0;font-size:.875rem}.day .add{flex-wrap:wrap;gap:.25rem .75rem;margin:auto 0 0;padding-top:.75rem;font-size:.875rem;font-weight:600;display:flex}.day .add a{white-space:nowrap;text-decoration:none}.day .add a:after{content:"";border-radius:.75rem;position:absolute;inset:0}.day .row{z-index:1;position:relative}.day:has(.add a:hover){background:var(--tint)}@media (hover:hover){.day:not([aria-current],:hover,:focus-within) .add{opacity:0}}@media (width<64rem){.week{grid-template-columns:1fr;gap:.5rem;min-height:0}.day{border-right:0}.day:not([aria-current]){border-bottom:1px solid var(--line)}}.add-dialog{border:1px solid var(--line);background:var(--surface);width:min(100% - 2rem,36rem);max-height:calc(100dvh - 2rem);color:var(--ink);border-radius:1rem;padding:0;box-shadow:0 1.5rem 3rem #00000040}.add-dialog::backdrop{background:#14162873}.sheet{padding:1.25rem}.switch{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.switch div{background:var(--ground);border-radius:.625rem;padding:.25rem;display:flex}.switch div button{color:var(--muted);background:0 0;border:0;border-radius:.4375rem;padding:.25rem .875rem}.switch div button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #0000001f}.switch>button{color:var(--muted);border:0;font-size:1.25rem;line-height:1}input,select,textarea,button,.button{font:inherit;color:inherit;border:1px solid var(--line);background:var(--surface);border-radius:.5rem;padding:.5rem .75rem}input[type=checkbox],input[type=radio]{width:1.125rem;height:1.125rem;accent-color:var(--accent);margin:0;padding:0}textarea{resize:vertical;field-sizing:content;min-height:5rem}input:disabled{opacity:.5}button,.button{border-color:var(--accent);background:var(--accent);color:var(--on-accent);cursor:pointer;font-weight:600;text-decoration:none}button:hover,.button:hover{filter:brightness(1.1)}button[disabled]{opacity:.4;cursor:default}.quiet,button.danger{border-color:var(--line);color:var(--ink);background:0 0;font-weight:400}.quiet:hover,button.danger:hover{background:var(--tint);filter:none}button.danger{border-color:var(--danger);color:var(--danger);margin-left:auto}.check{border:2px solid var(--muted);background:0 0;border-radius:50%;width:1.375rem;height:1.375rem;margin-top:.0625rem;padding:0;display:block;position:relative}.check:hover{border-color:var(--accent);filter:none}.check:before{content:"";position:absolute;inset:-.625rem}.check[aria-pressed=true]{border-color:var(--accent);background:var(--accent)}.check[aria-pressed=true]:after{content:"";border:solid var(--on-accent);border-width:0 2px 2px 0;width:.3125rem;height:.625rem;margin:.0625rem auto 0;display:block;rotate:45deg}.stack{gap:1.25rem;display:grid}label,legend{font-weight:600;display:block}label>input:not([type=checkbox],[type=radio]),label>select,label>textarea{width:100%;margin-top:.25rem;font-weight:400;display:block}label>small:last-child,.field-error{display:block}fieldset{border:0;min-width:0;margin:0;padding:0}legend{margin-bottom:.25rem;padding:0}.fields,.choices{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));align-items:start;gap:.75rem 1rem;display:grid}.choices label,.toggle{gap:.625rem;font-weight:600;display:flex}.choices label{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:.5rem;height:100%;padding:.625rem .75rem}.choices label:has(:checked){border-color:var(--accent);background:var(--tint)}.choices input,.toggle input{flex:none;margin-top:.1875rem}.choices small,.toggle small{display:block}.toggle{align-self:end}.item-rows{gap:.5rem;margin:0 0 .75rem;padding:0;list-style:none;display:grid}.item-rows li{grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:.375rem;display:grid}.item-rows input[name=item_title]{min-width:0}.item-rows button{padding-inline:.625rem}.error,.notice{border:1px solid var(--danger);border-radius:.5rem;margin:0;padding:.625rem .875rem}.error,.field-error{color:var(--danger)}.field-error{font-weight:400}[aria-invalid=true]{border-color:var(--danger)}.notice{border-color:var(--line);background:var(--tint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:1.25rem;display:flex}.notice p{margin:0}main>.actions{margin-top:1.25rem}.login{text-align:center;max-width:22rem;margin:3rem auto 0}.login img{width:6rem;height:6rem}.login h1{margin-bottom:.25rem}.login p{color:var(--muted);margin-top:0}.login form{text-align:left}@media (pointer:coarse){header nav a,.day .add a,.actions a:not(.button){padding-block:.5rem}}
