:root{--black:#0b0b0b;--sun:#c8261c;--sun-ink:#a81f17;--paper:#fff;--ink:#141414;--muted:#5f5f5f;--rule:#e6e2dd;--soft:#f6f3ef;--good:#1d6b3a;--didot:Didot, "Didot LT STD", "Bodoni Moda", "Bodoni 72", serif;--sans:-apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif;--tabs:calc(58px + env(safe-area-inset-bottom))}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--black);-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font:16px/1.45 var(--sans);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;min-height:100vh;padding-bottom:var(--tabs)}::selection{background:var(--sun);color:#fff}a{color:inherit;text-underline-offset:3px}:focus-visible{outline:2px solid var(--sun);outline-offset:3px;border-radius:2px}input,textarea,button{font:inherit;color:inherit}input,textarea{caret-color:var(--sun)}.sky{background:var(--black);color:#fff;padding:calc(env(safe-area-inset-top) + 22px) 20px 0;height:calc(env(safe-area-inset-top) + var(--sky-h,300px));position:relative;overflow:hidden}.sky.short{--sky-h:170px}.date{font-family:var(--didot);letter-spacing:.01em;z-index:2;justify-content:space-between;align-items:baseline;gap:12px;font-size:22px;display:flex;position:relative}.date a{font-family:var(--sans);color:#cfcfcf;padding:6px 0;font-size:14px;text-decoration:none}.sun{aspect-ratio:1;background:var(--sun);width:150vw;max-width:760px;transform:translate(-50%, var(--rise,-20%));border-radius:50%;transition:transform 1.1s cubic-bezier(.16,1,.3,1);position:absolute;top:100%;left:50%}.big{z-index:2;justify-content:space-between;align-items:flex-end;gap:16px;display:flex;position:absolute;bottom:22px;left:20px;right:20px}.big .n{font-family:var(--didot);letter-spacing:-.02em;font-size:min(28vw,120px);font-weight:400;line-height:.82}.big .n small{letter-spacing:0;margin-left:4px;font-size:.32em}.big .of{text-align:right;color:#ffffffeb;padding-bottom:6px;font-size:15px;line-height:1.35}.big .of b{color:#fff;font-size:17px;font-weight:600;display:block}.title{font-family:var(--didot);z-index:2;font-size:52px;font-weight:400;line-height:1;position:absolute;bottom:22px;left:20px}main{max-width:640px;margin:0 auto;padding:24px 20px 40px}h2{font-family:var(--didot);margin:36px 0 6px;font-size:26px;font-weight:400}h2:first-child{margin-top:4px}.lead{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.lead .v{font-family:var(--didot);font-size:40px;line-height:1}.lead .t{color:var(--muted);text-align:right;font-size:15px}.bar{background:var(--rule);height:3px;margin:12px 0 6px;position:relative;overflow:hidden}.bar i{background:var(--ink);position:absolute;inset:0 auto 0 0}.bar i.over{background:var(--sun)}.minor{color:var(--muted);flex-wrap:wrap;gap:18px;font-size:14px;display:flex}.note{color:var(--muted);margin-top:8px;font-size:14px}.empty{color:var(--muted);border-bottom:1px solid var(--rule);padding:22px 0}.empty b{color:var(--ink);font-weight:500}.rows{list-style:none}.rows li{border-bottom:1px solid var(--rule);grid-template-columns:44px 1fr auto;align-items:baseline;gap:2px 12px;padding:13px 0;display:grid}.rows .time{color:var(--muted);font-size:13px}.rows .what{min-width:0}.rows .what span{color:var(--muted);overflow-wrap:anywhere;font-size:13px;display:block}.rows .num{text-align:right;white-space:nowrap;font-size:15px}.rows .num span{color:var(--muted);font-size:13px;display:block}.rows .meal{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;border:0;padding:18px 0 0;font-size:12px;display:block}.days{list-style:none}.days li>a,.days li>div{border-bottom:1px solid var(--rule);grid-template-columns:1fr auto auto;align-items:baseline;gap:16px;padding:12px 0;text-decoration:none;display:grid}.days a:active{background:var(--soft)}.days .d{font-size:15px}.days .k{color:var(--muted);text-align:right;min-width:72px;font-size:14px}.days .p{text-align:right;min-width:56px;font-size:15px}.days .p.hit{color:var(--sun-ink);font-weight:600}.days .none{color:#8a8a8a}.todo{list-style:none}.todo li{border-bottom:1px solid var(--rule);padding:14px 0}.todo b{font-weight:600;display:block}.todo span{color:var(--muted);font-size:14px;display:block}.todo .from{color:var(--sun-ink);font-size:13px}.todo .repo{float:right;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-left:12px;font-size:12px}.todo.done b{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);font-weight:400}.glance{list-style:none}.glance a{border-bottom:1px solid var(--rule);grid-template-columns:1fr auto;gap:2px 16px;padding:16px 0;text-decoration:none;display:grid}.glance a:active{background:var(--soft)}.glance .h{font-family:var(--didot);font-size:24px;line-height:1.1}.glance .v{text-align:right;align-self:center;font-size:16px}.glance .s{color:var(--muted);grid-column:1/-1;font-size:14px}.form{gap:10px;margin-top:10px;display:grid}.form .row{gap:10px;display:flex}.form input[type=number],.form input[type=text]{border:1px solid var(--rule);background:var(--soft);border-radius:10px;flex:1;min-width:0;padding:13px 14px;font-size:17px}.form input:focus{outline:2px solid var(--sun);outline-offset:0;border-color:#0000}.btn{background:var(--ink);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:10px;padding:13px 18px;font-size:16px;font-weight:600}.btn.ghost{color:var(--ink);border:1px solid var(--rule);background:0 0}.btn.on{background:var(--sun);color:#fff;border-color:var(--sun)}.btn:active{transform:translateY(1px)}.link{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:6px 0;font-size:14px;text-decoration:underline}.err{color:var(--sun-ink);font-size:14px}.tabs{z-index:10;height:var(--tabs);padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--rule);-webkit-backdrop-filter:saturate(160%)blur(16px);backdrop-filter:saturate(160%)blur(16px);background:#fffffff0;grid-template-columns:repeat(5,1fr);padding-left:max(0px,50vw - 320px);padding-right:max(0px,50vw - 320px);display:grid;position:fixed;bottom:0;left:0;right:0}.tabs a{color:#6b6b6b;letter-spacing:.01em;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;text-decoration:none;display:flex}.tabs svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.tabs a[aria-current=page]{color:var(--sun-ink)}.tabs a[aria-current=page] svg{stroke-width:2px}footer{color:var(--muted);justify-content:space-between;gap:12px;margin-top:40px;font-size:13px;display:flex}.gate{background:var(--black);color:#fff;min-height:100vh;padding:calc(env(safe-area-inset-top) + 48px) 24px 24px;flex-direction:column;display:flex;position:relative;overflow:hidden}.gate h1{font-family:var(--didot);z-index:2;font-size:56px;font-weight:400;line-height:1;position:relative}.gate form{z-index:2;flex-direction:column;gap:12px;max-width:360px;margin-top:28px;display:flex;position:relative}.gate label{color:#cfcfcf;font-size:14px}.gate input{color:#fff;background:#161616;border:1px solid #333;border-radius:10px;padding:14px;font-size:17px}.gate input:focus{outline:2px solid var(--sun);outline-offset:0;border-color:#0000}.gate button{color:var(--black);cursor:pointer;background:#fff;border:0;border-radius:10px;padding:14px;font-size:17px;font-weight:600}.gate .wrong{color:#ff8a80;font-size:14px}.gate .sun{--rise:-34%}@media (prefers-reduced-motion:reduce){.sun{transition:none}}
