.pv{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--card);color:var(--text);margin-top:.7rem;padding:.65rem .75rem;font-size:.8rem;container-type:inline-size}.pb-table .pv{border:0;border-radius:0;margin:0}.pv-label{flex-direction:column;min-width:0;font-weight:600;line-height:1.25;display:flex}.pv-label small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;font-weight:400;overflow:hidden}.pv-more{color:var(--muted);margin-top:.4rem;font-size:.74rem}.pv-legend{color:var(--muted);flex-wrap:wrap;gap:.35rem .8rem;margin-top:.55rem;font-size:.7rem;display:flex}.pv-legend span{align-items:center;gap:.3rem;display:inline-flex}.pv-key{border-radius:3px;width:10px;height:10px;display:inline-block}.pv-hero{align-items:baseline;gap:.45rem;margin-bottom:.5rem;display:flex}.pv-hero b{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--text);font-size:1.7rem;line-height:1}.pv-hero span{color:var(--text-sec);font-size:.8rem}.pv-range-row,.pv-night-row,.pv-span-row,.pv-pip-row,.pv-tag,.pv-col,.pv-person,.pv-job,.pv-bucket,.pv-tile{animation:.32s ease-out backwards ptpTick;animation-delay:calc(.35s + var(--i,0) * 60ms)}.pv-range-row{border-bottom:1px solid var(--border-soft);grid-template-columns:minmax(7rem,11rem) minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.35rem 0;display:grid}.pv-range-row:last-of-type{border-bottom:0}.pv-track{background:linear-gradient(var(--border-soft), var(--border-soft)) 0 50% / 100% 1px no-repeat;height:18px;position:relative}.pv-bar{transform-origin:0;animation:.45s cubic-bezier(.22,1,.36,1) backwards ptpGrow;animation-delay:calc(.45s + var(--i,0) * 60ms);border-radius:4px;position:absolute}.pv-was{background:var(--border);height:5px;top:2px}.pv-now{background:var(--accent);height:7px;box-shadow:0 0 0 2px var(--card);top:9px}.pv-now.pv-solo{height:8px;top:5px}.pv-figs{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;flex-direction:column;align-items:flex-end;display:flex}.pv-figs s{color:var(--muted);-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);font-size:.7rem}.pv-figs b{color:var(--accent);font-weight:700}.pv-k-was{background:var(--border)}.pv-k-now{background:var(--accent)}@container (width<=420px){.pv-range-row{grid-template-columns:minmax(0,1fr) auto;row-gap:.25rem}.pv-range-row .pv-track{grid-area:2/1/auto/-1}}.pv-night-row{grid-template-columns:minmax(6rem,9.5rem) minmax(0,1fr);align-items:center;gap:.6rem;padding:.22rem 0;display:grid}.pv-cells{grid-template-columns:repeat(var(--n), minmax(0, 2.75rem));gap:2px;display:grid}.pv-night-head{padding-bottom:.1rem}.pv-dh{color:var(--muted);flex-direction:column;align-items:center;font-size:.6rem;line-height:1.1;display:flex}.pv-dh b{font-weight:600}.pv-dh.pv-wknd b{color:var(--text-sec)}.pv-cell{transform-origin:bottom;min-width:4px;height:18px;animation:.3s ease-out backwards ptpGrow;animation-delay:calc(.4s + var(--i,0) * 25ms);border-radius:3px;place-items:center;display:grid;position:relative}.pv-cell small{color:inherit;font-size:.56rem;font-style:normal;font-weight:600}.pv-c-open{background:var(--bg-elev);box-shadow:inset 0 0 0 1px var(--border-soft);color:var(--muted)}.pv-c-changed{background:var(--accent);color:#fff}.pv-c-taken{background:repeating-linear-gradient(135deg, var(--border) 0 2px, var(--bg-elev) 2px 5px);color:var(--muted)}.pv-c-gap{background:var(--gold-soft);box-shadow:inset 0 0 0 1.5px var(--gold);color:var(--gold)}.pv-c-closed{background:var(--text-sec);color:var(--card)}.pv-c-none{outline:1px dashed var(--border);outline-offset:-1px;background:0 0}.pv-c-changed.pv-cell{box-shadow:0 1px #0000000f}.pv-span-row{grid-template-columns:minmax(6rem,9.5rem) minmax(0,1fr);align-items:center;gap:.6rem;padding:.22rem 0;display:grid}.pv-ruler{height:16px;position:relative}.pv-span-head .pv-ruler{height:14px}.pv-span-head .pv-ruler span{color:var(--muted);font-size:.62rem;position:absolute;top:0;transform:translate(2px)}.pv-tick{background:var(--border-soft);width:1px;position:absolute;top:0;bottom:0}.pv-band{background:var(--text-sec);transform-origin:0;height:10px;animation:.55s cubic-bezier(.22,1,.36,1) backwards ptpGrow;animation-delay:calc(.45s + var(--i,0) * 60ms);border-radius:4px;position:absolute;top:3px}.pv-band-skip{background:repeating-linear-gradient(135deg, var(--border) 0 2px, var(--bg-elev) 2px 5px)}.pv-pip-row{border-bottom:1px solid var(--border-soft);grid-template-columns:minmax(6rem,10rem) auto auto auto 1fr;align-items:center;gap:.55rem;padding:.35rem 0;display:grid}.pv-pip-row:last-child{border-bottom:0}.pv-pipset{gap:4px;display:inline-flex}.pv-pip{width:12px;height:12px;box-shadow:inset 0 0 0 1.5px var(--border);border-radius:50%}.pv-pip.on{background:var(--muted);box-shadow:none}.pv-pipset:not(.pv-pip-was) .pv-pip.on{background:var(--accent)}.pv-pip.fresh{animation:.4s cubic-bezier(.22,1,.36,1) backwards ptpPop;animation-delay:calc(.6s + var(--i,0) * 80ms)}.pv-arrow{color:var(--muted)}.pv-pip-n{font-family:var(--font-mono);color:var(--accent);white-space:nowrap;justify-self:end}@container (width<=420px){.pv-pip-row{grid-template-columns:auto auto auto 1fr}.pv-pip-row .pv-label{grid-column:1/-1}}.pv-tag-grid{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.5rem;display:grid}.pv-tag{background:var(--accent-soft);clip-path:polygon(12px 0,100% 0,100% 100%,12px 100%,0 50%);border-radius:4px 10px 10px 4px;flex-direction:column;gap:.25rem;padding:.5rem .6rem .5rem 1.35rem;display:flex;position:relative}.pv-tag-hole{background:var(--card);border-radius:50%;width:6px;height:6px;margin-top:-3px;position:absolute;top:50%;left:9px}.pv-tag-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.76rem;font-weight:600;line-height:1.2;display:-webkit-box;overflow:hidden}.pv-tag-price{font-family:var(--font-mono);align-items:baseline;gap:.4rem;display:flex}.pv-tag-price s{color:var(--muted);font-size:.72rem}.pv-tag-price b{color:var(--accent);font-size:.95rem}.pv-columns{grid-template-columns:repeat(var(--n), minmax(0, 3.2rem));align-items:end;gap:.4rem;display:grid}.pv-col{color:var(--muted);flex-direction:column;align-items:center;gap:.2rem;font-size:.68rem;display:flex}.pv-col b{font-family:var(--font-mono);color:var(--text);font-size:.72rem}.pv-col-track{background:var(--bg-elev);width:100%;max-width:2.2rem;height:64px;box-shadow:inset 0 0 0 1px var(--border-soft);border-radius:5px;position:relative;overflow:hidden}.pv-col-fill{background:var(--accent);transform-origin:bottom;animation:.5s cubic-bezier(.22,1,.36,1) backwards pvRise;animation-delay:calc(.4s + var(--i,0) * 70ms);border-radius:4px 4px 0 0;position:absolute;bottom:0;left:0;right:0}@keyframes pvRise{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.pv-chips{grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));gap:.4rem;display:grid}.pv-person{background:var(--bg-elev);min-width:0;box-shadow:inset 0 0 0 1px var(--border-soft);border-radius:8px;align-items:center;gap:.5rem;padding:.35rem .5rem;display:flex}.pv-face{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);letter-spacing:.02em;border-radius:50%;flex:none;place-items:center;font-size:.7rem;font-weight:700;display:grid}.pv-person.done .pv-face{background:var(--accent);color:#fff}.pv-who{flex-direction:column;min-width:0;line-height:1.2;display:flex}.pv-who b{white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.pv-who small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.pv-done{background:var(--accent-soft);width:18px;height:18px;color:var(--accent);border-radius:50%;flex:none;place-items:center;margin-left:auto;display:grid}.pv-board{align-items:flex-start;gap:.9rem;display:flex}.pv-board-body{flex:1;min-width:0}.pv-ring{flex:none}.pv-ring-bg{fill:none;stroke:var(--bg-elev);stroke-width:8px}.pv-ring-fill{fill:none;stroke:var(--hk-ready);stroke-width:8px;stroke-linecap:round;transition:stroke-dasharray .6s}.pv-ring-n{font-family:var(--font-mono);fill:var(--text);font-size:13px;font-weight:700}.pv-ring-s{fill:var(--muted);font-size:8px}.pv-jobs{flex-wrap:wrap;gap:.3rem;display:flex}.pv-job{background:var(--bg-elev);box-shadow:inset 0 0 0 1px var(--border-soft);border-radius:99px;align-items:center;gap:.3rem;padding:.18rem .5rem;font-size:.72rem;font-weight:600;display:inline-flex}.pv-job i,.pv-legend .pv-key.pv-j-overdue,.pv-legend .pv-key.pv-j-turn,.pv-legend .pv-key.pv-j-progress,.pv-legend .pv-key.pv-j-todo,.pv-legend .pv-key.pv-j-done{border-radius:50%;width:8px;height:8px}.pv-j-overdue i,.pv-key.pv-j-overdue{background:var(--danger)}.pv-j-turn i,.pv-key.pv-j-turn{background:var(--hk-occupied)}.pv-j-progress i,.pv-key.pv-j-progress{background:var(--hk-progress)}.pv-j-todo i,.pv-key.pv-j-todo{background:var(--hk-dirty)}.pv-j-done i,.pv-key.pv-j-done{background:var(--hk-ready)}.pv-job.pv-j-done{color:var(--muted)}.pv-job small{color:var(--muted);font-size:.66rem;font-weight:400}.pv-bucket{grid-template-columns:8.5rem minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.25rem 0;display:grid}.pv-b-label{color:var(--text-sec);font-size:.76rem}.pv-b-track{background:var(--bg-elev);border-radius:5px;height:10px;overflow:hidden}.pv-b-fill{transform-origin:0;height:100%;animation:.55s cubic-bezier(.22,1,.36,1) backwards ptpGrow;animation-delay:calc(.45s + var(--i,0) * 80ms);border-radius:5px;display:block}.pv-b-overdue{background:var(--gold)}.pv-b-due{background:var(--accent)}.pv-b-up{background:var(--sage)}.pv-bucket b{font-family:var(--font-mono);font-variant-numeric:tabular-nums}@container (width<=380px){.pv-bucket{grid-template-columns:6rem minmax(0,1fr) auto}}.pv-tile-grid{grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:.45rem;display:grid}.pv-tile{background:var(--fam-soft,var(--bg-elev));box-shadow:inset 3px 0 0 var(--fam,var(--accent));border-radius:8px;flex-direction:column;gap:.1rem;padding:.5rem .6rem;display:flex}.pv-tile b{font-family:var(--font-mono);color:var(--text);font-size:1.2rem;line-height:1}.pv-tile span{color:var(--text);font-size:.78rem;font-weight:600}.pv-tile small{color:var(--text-sec);font-size:.68rem;line-height:1.3}.ptp-glyph{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);border-radius:9px;flex:none;place-items:center;animation:.42s cubic-bezier(.22,1,.36,1) .1s backwards ptpPop;display:grid}.ptp-glyph svg{width:18px;height:18px}.ptp-head{align-items:flex-start;gap:.6rem;display:flex}.ptp-head .pb-said{flex:1;min-width:0;padding-top:.2rem}.pt-faced{align-items:flex-start;gap:.6rem;display:flex}.pt-faced-body{flex:1;min-width:0;padding-top:.2rem}.ptp-faced-head{flex-direction:column;flex:1;gap:.25rem;min-width:0;padding-top:.25rem;display:flex}.ptp-title{color:var(--text);margin:0;font-size:1rem;font-weight:700;line-height:1.3}.ptp-said-line{display:block}.ptp-said-line+.ptp-said-line{margin-top:.1rem}.ptp-said-sub{color:var(--text-sec);font-size:.85rem;line-height:1.45}.ptp-untouched{color:var(--text-sec);margin:0;font-size:.8rem}.ptp-card.ptp-faced{border-radius:14px;padding:.9rem .95rem .95rem}.ptp-hero{align-items:center;gap:.85rem;display:flex}.ptp-hero-pic{flex:none;position:relative}.ptp-hero-pic .rd-photo{border-radius:12px;box-shadow:0 2px 8px #0f2a3329}.ptp-hero-porter{box-shadow:0 0 0 2px var(--card);border-radius:50%;position:absolute;bottom:-8px;right:-8px}.ptp-hero-text{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.ptp-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.74rem;font-weight:700}.ptp-hero-name{font-family:var(--font-display);color:var(--text);margin:0;font-size:1.18rem;font-weight:700;line-height:1.2}.ptp-when{color:var(--text-sec);font-variant-numeric:tabular-nums;margin:.1rem 0 0;font-size:.86rem}.ptp-faced .ptp-untouched{margin-top:.15rem}.ptp-faced .pb-checks{gap:.2rem .8rem;margin-top:.8rem}.ptp-faced .pb-ck{color:var(--text-sec);background:0 0;padding:0;font-size:.8rem}.ptp-faced .pb-week{margin-top:.6rem}.ptp-faced .pb-rate{grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.85rem;display:grid}.ptp-faced .pb-rate-opt{background:var(--card);border-radius:10px;padding:.6rem .7rem;position:relative}.ptp-faced .pb-rate-opt>input[type=radio]{opacity:0;pointer-events:none;position:absolute}.ptp-faced .pb-rate-opt.on{box-shadow:0 0 0 1px var(--accent)}.ptp-faced .pb-rate-opt:has(>input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.pb-rate-tile{flex-direction:column;gap:.1rem;display:flex}.pb-rate-tile small{color:var(--text-sec);font-size:.74rem;font-weight:600}.pb-rate-tile b{color:var(--text);font-variant-numeric:tabular-nums;font-size:1.12rem;font-weight:700}.pb-rate-tile em{color:var(--text-sec);font-size:.74rem;font-style:normal}.ptp-faced .pb-rate-custom{grid-column:1/-1}.ptp-faced .pb-rate-custom>input[type=radio]{opacity:1;pointer-events:auto;position:static}.ptp-faced .pb-rate-note{grid-column:1/-1}.pb-rate-more{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;grid-column:1/-1;justify-self:start;padding:.1rem 0;font-size:.8rem;font-weight:600}.pb-rate-more:hover{text-underline-offset:2px;text-decoration:underline}.ptp-faced .pb-btns{align-items:center;margin-top:.95rem}.ptp-faced .pb-btn.primary{border-radius:10px;flex:1;padding:.65rem .9rem;font-size:.92rem}.ptp-note{border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--text);border-radius:0 6px 6px 0;margin:.55rem 0 .1rem calc(30px + .6rem);padding:.35rem .6rem;font-size:.86rem;line-height:1.45}.ptp-note p{margin:0}.ptp-note p+p{margin-top:.3rem}.pt-visuals{flex-direction:column;gap:.5rem;margin-top:.35rem;display:flex}.pv-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@container (width<=440px){.pv-night-row,.pv-span-row{grid-template-columns:minmax(0,1fr);row-gap:.2rem}.pv-night-head .pv-label,.pv-span-head .pv-label{display:none}.pv-night-row .pv-label{flex-direction:row;align-items:baseline;gap:.4rem}.pv-bucket{grid-template-columns:6.5rem minmax(0,1fr) auto}}
