.pseo .pv-ok,.pseo [data-s=ok]{--st:hsl(var(--success))}.pseo [data-s=maybe]{--st:hsl(var(--warning))}.pseo [data-s=no]{--st:hsl(var(--muted-foreground))}.pseo .chk{background:hsl(var(--card));border:1px solid var(--hair);border-radius:calc(var(--radius) + 6px);padding:clamp(20px,3vw,30px);display:grid;gap:20px;box-shadow:0 30px 80px -40px rgb(72 39 205/.35);position:relative;overflow:hidden}.pseo .chk:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--brand-gradient)}.pseo .chk-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.pseo .chk-in{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--hair);border-radius:var(--radius-pill);padding:0 14px;min-height:44px;background:hsl(var(--background))}.pseo .chk-in .ic{width:18px;height:18px;color:var(--ink-vio)}.pseo .chk-in input{border:0;background:none;font:600 15px var(--font-secondary);color:hsl(var(--foreground));min-height:42px;outline:none;min-width:0}.pseo .chk-day,.pseo .dp-date{display:flex;align-items:center;gap:16px}.pseo .chk-day b,.pseo .dp-date b{font-family:var(--font-primary);font-weight:800;font-size:clamp(64px,8vw,88px);line-height:.9;letter-spacing:-.04em;color:var(--ink-vio);min-width:1.2ch}.dark .pseo .chk-day b,.dark .pseo .dp-date b{color:#C9B4FF}.pseo .chk-day span,.pseo .dp-date span{display:block;font-family:var(--font-primary);font-weight:700;font-size:20px;text-transform:capitalize}.pseo .chk-day small,.pseo .dp-date small{display:block;color:var(--fg-3);font-size:14px;margin-top:2px}.pseo .chk-verdict{display:grid;gap:10px;padding:16px 18px;border-radius:var(--radius);background:color-mix(in srgb,var(--st,hsl(var(--muted-foreground))) 10%,transparent);transition:background .35s}.pseo .chk-verdict p{color:var(--fg-2);font-size:14.5px;line-height:1.55;text-wrap:pretty}.pseo .vpill{justify-self:start;display:inline-flex;align-items:center;gap:8px;font-family:var(--font-primary);font-weight:800;font-size:13px;letter-spacing:.04em;text-transform:uppercase;padding:6px 14px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--st,hsl(var(--muted-foreground))) 16%,transparent);color:hsl(var(--foreground))}.pseo .vpill:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--st,hsl(var(--muted-foreground)))}.pseo .chk-trad{justify-self:start}.pseo .chk-next{font-size:14px;color:var(--fg-2);display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}.pseo .chk-next button{font:700 14px var(--font-secondary);color:var(--ink-vio);background:none;border:0;padding:6px 0;cursor:pointer;text-decoration:underline;text-underline-offset:3px;min-height:36px}.dark .pseo .chk-in .ic,.dark .pseo .chk-next button{color:#C9B4FF}.pseo .pop{animation:pvcal-pop .45s cubic-bezier(.3,1.5,.5,1)}@keyframes pvcal-pop{0%{transform:scale(.92);opacity:.4}to{transform:none;opacity:1}}.pseo .cal-bar{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;margin-bottom:22px}.pseo .segs button{min-height:40px}.pseo .tgl{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:14px;cursor:pointer;min-height:44px}.pseo .tgl input{position:absolute;opacity:0;pointer-events:none}.pseo .tgl span{width:44px;height:26px;border-radius:99px;background:hsl(var(--border));position:relative;transition:background .25s;flex:none}.pseo .tgl span:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgb(0 0 0/.2);transition:transform .25s cubic-bezier(.3,1.4,.5,1)}.pseo .tgl input:checked+span{background:var(--brand-gradient)}.pseo .tgl input:checked+span:after{transform:translateX(18px)}.pseo .tgl input:focus-visible+span{outline:2px solid var(--ink-vio);outline-offset:2px}.pseo .yrail{display:flex;align-items:center;gap:6px;min-width:0;max-width:100%}.pseo .yrail .segs{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;max-width:min(400px,calc(100vw - 150px));justify-content:flex-start;scroll-behavior:smooth;-webkit-mask:linear-gradient(90deg,transparent,#000 14px,#000 calc(100% - 14px),transparent);mask:linear-gradient(90deg,transparent,#000 14px,#000 calc(100% - 14px),transparent)}.pseo .yrail .segs::-webkit-scrollbar{display:none}.pseo .yrail .segs button{scroll-snap-align:center;flex:none}.pseo .yarr{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--hair);background:hsl(var(--card));color:hsl(var(--foreground));display:grid;place-items:center;cursor:pointer;transition:background .2s,opacity .2s}.pseo .yarr:hover{background:hsl(var(--secondary))}.pseo .yarr:disabled{opacity:.35;cursor:default}.pseo .yarr .ic{width:18px;height:18px}.pseo .ribbon{display:grid;grid-template-columns:repeat(var(--n,365),minmax(0,1fr));height:44px;border-radius:12px;overflow:hidden;background:hsl(var(--card));border:1px solid var(--hair);margin-bottom:10px;position:relative}.pseo .ribbon i{background:var(--st);opacity:.85}.pseo .ribbon{clip-path:inset(0 100% 0 0 round 12px);transition:clip-path 1.1s cubic-bezier(.6,0,.2,1)}.pseo .ribbon.in{clip-path:inset(0 0 0 0 round 12px)}.pseo .ribbon i[data-s=no]{opacity:.18}.pseo .ribbon i[data-s=ok][data-sat]{opacity:1}.pseo .ribbon .rm{position:absolute;bottom:4px;font:700 10px var(--font-primary);letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--foreground));opacity:.7;pointer-events:none;transform:translateX(4px)}.pseo .legend{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13px;color:var(--fg-2);margin:14px 0 26px}.pseo .legend span{display:inline-flex;align-items:center;gap:8px}.pseo .legend i{width:14px;height:14px;border-radius:5px;background:color-mix(in srgb,var(--st) 26%,transparent);box-shadow:inset 0 0 0 1.5px var(--st)}.pseo .legend .lg-wk i{background:none;box-shadow:inset 0 -2px 0 var(--st)}.pseo .legend .lg-hol i{background:none;box-shadow:inset 0 0 0 1.5px var(--hair);position:relative}.pseo .legend .lg-hol i:after{content:"";position:absolute;top:2px;right:2px;width:4px;height:4px;border-radius:50%;background:var(--ink-mag)}.pseo .cal-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.pseo .months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pseo .mo{background:hsl(var(--card));border:1px solid var(--hair);border-radius:var(--radius);padding:16px 14px 14px}.dark .pseo .mo{background:hsl(224 50% 6.5%)}.pseo .mo h3{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--font-primary);font-weight:800;font-size:17px;text-transform:capitalize;margin-bottom:10px}.pseo .mo h3 small{font:600 12px var(--font-secondary);color:var(--fg-3);text-transform:none}.pseo .grid,.pseo .wk{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.pseo .wk span{font:700 10px var(--font-primary);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);text-align:center;padding:4px 0}.pseo .dc{aspect-ratio:1;border:0;border-radius:9px;font:600 13px var(--font-secondary);color:hsl(var(--foreground));background:color-mix(in srgb,var(--st) 14%,transparent);cursor:pointer;position:relative;display:grid;place-items:center;transition:transform .15s,background .2s,opacity .25s,box-shadow .2s;padding:0;min-width:0}.pseo .dc[data-s=no]{background:none;color:var(--fg-3);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--fg-3) 50%,transparent)}.pseo .dc[data-wk]{background:none;box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--st) 70%,transparent)}.pseo .dc[data-sat]{font-weight:800}.pseo .dc[data-sat][data-s=ok]{background:color-mix(in srgb,var(--st) 32%,transparent)}.pseo .dc[data-hol]:after{content:"";position:absolute;top:4px;right:4px;width:5px;height:5px;border-radius:50%;background:var(--ink-mag)}.pseo .dc:hover{transform:scale(1.12);z-index:1;box-shadow:0 6px 16px -6px rgb(0 0 0/.25)}.pseo .dc:focus-visible{outline:2px solid var(--ink-vio);outline-offset:1px}.pseo .dc.sel{background:var(--brand-gradient);color:#fff;text-decoration:none;box-shadow:0 8px 20px -8px rgb(72 39 205/.6);transform:scale(1.08);z-index:2}.pseo .dc.today{box-shadow:inset 0 0 0 1.5px hsl(var(--foreground))}.pseo .months.sat .dc:not([data-sat]){opacity:.18;pointer-events:none}.pseo .months.sat .dc[data-sat][data-s=ok]{transform:scale(1.06)}.pseo .dpanel{position:sticky;top:calc(var(--nav-h,72px) + 16px);background:hsl(var(--card));border:1px solid var(--hair);border-radius:calc(var(--radius) + 6px);padding:24px;display:grid;gap:16px;box-shadow:0 30px 80px -50px rgb(72 39 205/.4)}.dark .pseo .chk,.dark .pseo .dpanel{background:hsl(224 50% 6.5%)}.pseo .dp-x{display:none}.pseo .dp-why{list-style:none;display:grid;gap:8px;font-size:14px;color:var(--fg-2);line-height:1.5}.pseo .dp-why li{display:grid;grid-template-columns:16px 1fr;gap:8px}.pseo .dp-why li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--st,var(--fg-3));margin-top:8px}.pseo .dp-hol{font-size:14px;font-weight:600;color:var(--ink-mag);display:flex;gap:8px;align-items:center}.pseo .dp-note{font-size:12px;color:var(--fg-2);line-height:1.5}.pseo .dpanel .b{justify-self:start}.pseo .satbars{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(6px,1.2vw,14px);align-items:end;height:240px;padding-top:30px}.pseo .sb{display:grid;grid-template-rows:1fr auto;gap:10px;height:100%;text-align:center}.pseo .sb .col{position:relative;display:flex;flex-direction:column;justify-content:flex-end;border-radius:12px;background:hsl(var(--border)/.6);overflow:visible}.pseo .sb .fill{height:calc(var(--v) * 100%);border-radius:12px;background:var(--brand-gradient);transform-origin:50% 100%;transform:scaleY(0);transition:transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i) * 60ms)}.pseo .satbars.in .sb .fill{transform:none}.pseo .sb .col b{position:absolute;left:0;right:0;top:-26px;font:800 15px var(--font-primary)}.pseo .sb .col b small{font:600 11px var(--font-secondary);color:var(--fg-3)}.pseo .sb>span{font:700 11px var(--font-primary);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3)}.pseo .plist{list-style:none;display:grid;gap:10px;max-width:860px}.pseo .prow{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:16px;align-items:center;background:hsl(var(--card));border:1px solid var(--hair);border-radius:var(--radius);padding:16px 20px}.dark .pseo .prow{background:hsl(224 50% 6.5%)}.pseo .prow .pdot{width:12px;height:12px;border-radius:50%;background:var(--st)}.pseo .prow b{display:block;font-family:var(--font-primary);font-weight:800;font-size:16px}.pseo .prow small{display:block;color:var(--fg-2);font-size:13.5px;margin-top:2px;text-wrap:pretty}.pseo .prow time{font:700 14px var(--font-primary);white-space:nowrap;text-align:right}.pseo .hlist{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.pseo .hlist li{display:grid;gap:2px;padding:14px 18px;border-radius:var(--radius);border:1px solid var(--hair);background:hsl(var(--card))}.dark .pseo .hlist li{background:hsl(224 50% 6.5%)}.pseo .hlist time{font:800 15px var(--font-primary)}.pseo .hlist span{color:var(--fg-2);font-size:14px}.pseo .hlist em{justify-self:start;margin-top:6px;font:800 10.5px var(--font-primary);letter-spacing:.08em;text-transform:uppercase;font-style:normal;padding:3px 10px;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--tint-vio),var(--tint-mag));color:var(--ink-vio)}.pseo .hlist li.lw{border-color:color-mix(in srgb,var(--ink-mag) 35%,var(--hair))}@media (max-width:1180px){.pseo .months{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.pseo .cal-layout{grid-template-columns:1fr}.pseo .dpanel{position:fixed;left:12px;right:12px;bottom:12px;top:auto;z-index:80;transform:translateY(calc(100% + 24px));transition:transform .4s cubic-bezier(.2,.8,.2,1);max-height:70vh;overflow:auto;padding:20px 20px 22px}.pseo .dpanel.open{transform:none}.pseo .dp-x{display:grid;place-items:center;position:absolute;top:10px;right:10px;width:44px;height:44px;border:0;border-radius:50%;background:hsl(var(--secondary));color:hsl(var(--foreground));cursor:pointer}.pseo .dp-date b{font-size:56px}}@media (max-width:640px){.pseo .months{grid-template-columns:1fr}.pseo .satbars{grid-template-columns:repeat(6,minmax(0,1fr));height:auto;grid-auto-rows:180px;row-gap:44px}.pseo .prow{grid-template-columns:12px minmax(0,1fr)}.pseo .prow time{grid-column:2;text-align:left;white-space:normal}.pseo .ribbon{height:34px}.pseo .ribbon .rm{display:none}}@media (max-width:420px){.pseo .mo{padding:14px 8px 10px}.pseo .grid,.pseo .wk{gap:2px}.pseo .mo h3{padding:0 4px}.pseo .dc{border-radius:8px}}@media (prefers-reduced-motion:reduce){.pseo .ribbon{transition:none;clip-path:none}.pseo .pop{animation:none}.pseo .dc,.pseo .dpanel,.pseo .sb .fill{transition:none}}.pseo .segs{display:inline-flex;gap:4px;padding:4px;border-radius:var(--radius-pill);background:hsl(var(--secondary));border:1px solid var(--hair)}.pseo .segs button{padding:0 16px;border-radius:var(--radius-pill);font-family:var(--font-primary);font-weight:700;font-size:14px;color:var(--fg-2);transition:background .2s,color .2s}.pseo .segs button.on{background:hsl(var(--card));color:var(--fg-1);box-shadow:var(--shadow-sm)}.dark .pseo .segs button.on{background:hsl(224 50% 12%)}.pseo .ended-note{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:12px 16px;border-radius:var(--radius);border:1px solid var(--hair);background:var(--tint-mag);font-size:14px;font-weight:600}.pseo .ended-note a{color:var(--ink-vio);text-decoration:underline;text-underline-offset:3px}.dark .pseo .ended-note a{color:#C9B4FF}.pseo .ribbon.armed:not(.in){clip-path:inset(0 100% 0 0 round 12px)}.pseo .ribbon{clip-path:none}.pseo .satbars .fill{transform:none}.pseo .satbars.armed:not(.in) .sb .fill{transform:scaleY(0)}.pseo .rowlink{display:inline-flex}