.portal{--ground:#f2f2f0;--surface:#fff;--raised:#f7f7f5;--active:#e8e7e3;--border:#e4e3de;--rule:#efeeea;--control:#cfcdc6;--text:#000;--muted:#5e5c56;--accent:#f4b711;--accent-deep:#d99e00;--positive:#247b50;--negative:#c4242a;--radius-card:16px;--radius-input:12px;background:var(--ground);color:var(--text);font-variant-numeric:tabular-nums;font-size:14px;line-height:20px}.portal :focus-visible{outline:2px solid var(--text);outline-offset:2px;border-radius:8px}.portal,[data-tone=active],[data-tone=doing],[data-tone=sun]{--tone:#f4b711;--tone-deep:#d99e00;--tone-soft:#ffe08a;--tone-text:#4d3500;--tone-fg:#000;--liquid:#000;--liquid-deep:#3d3a33}[data-tone=lead],[data-tone=todo],[data-tone=white]{--tone:#fff;--tone-deep:#e8e7e3;--tone-soft:#fff;--tone-text:#000;--tone-fg:#000}[data-tone=talks],[data-tone=cream]{--tone:#fff1c4;--tone-deep:#f7dc8a;--tone-soft:#fff6dc;--tone-text:#4d3500;--tone-fg:#000}[data-tone=proposal],[data-tone=review],[data-tone=honey]{--tone:#ffdc6e;--tone-deep:#f0c240;--tone-soft:#fff1c4;--tone-text:#4d3500;--tone-fg:#000}[data-tone=done],[data-tone=ink]{--tone:#000;--tone-deep:#2a2a28;--tone-soft:#000;--tone-text:#fff;--tone-fg:#fff;--liquid:#f4b711;--liquid-deep:#d99e00}[data-tone=lost]{--tone:#dedbd3;--tone-deep:#c4c0b6;--tone-soft:#ecebe7;--tone-text:#3d3b36;--tone-fg:#000}.p-on-tone{color:var(--tone-fg);--muted:#000000a8;--control:#00000038;--active:#ffffff8c;--border:#0000001f;--pill:#ffffffb3}.p-on-tone:is([data-tone=lead],[data-tone=todo],[data-tone=white]){--active:#ecebe7;--pill:#f2f2f0}.p-on-tone:is([data-tone=done],[data-tone=ink]){--muted:#ffffffad;--control:#ffffff4d;--active:#ffffff29;--border:#ffffff29;--pill:#fff}@layer components{.p-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card)}.p-title{letter-spacing:-.045em;font-variation-settings:"opsz" 96;text-wrap:balance;font-size:clamp(30px,18px + 2.2vw,48px);font-weight:500;line-height:1.02}.p-h2{letter-spacing:-.01em;font-size:16px;font-weight:600;line-height:24px}.p-muted{color:var(--muted)}.p-btn{white-space:nowrap;height:36px;transition:background-color .2s, color .2s, scale .15s var(--ease-out);border-radius:999px;flex:none;justify-content:center;align-items:center;gap:6px;padding-inline:16px;font-weight:500;display:inline-flex}.p-btn:active:not(:disabled){scale:.96}.p-btn:disabled{opacity:.55;cursor:progress}.p-btn-ink{background:var(--text);color:var(--surface)}.p-btn-ink:hover{background:var(--tone);color:var(--text)}.p-btn-ghost{background:var(--surface);border:1px solid var(--control)}.p-btn-ghost:hover{background:var(--raised)}.p-btn-wa{color:#fff;background:#25d366}.p-btn-wa:hover{background:#1ebe5b}.p-btn-sun{background:var(--accent);color:var(--text)}.p-btn-sun:hover{background:#ffc832}.p-btn-text{padding-inline:10px}.p-btn-text:hover{background:var(--active)}.p-btn-sm{height:30px;padding-inline:12px;font-size:13px}.p-danger{color:var(--negative)}.p-field{gap:8px;display:grid}.p-label{font-weight:500}.p-input{background:var(--surface);border:1px solid var(--control);border-radius:var(--radius-input);width:100%;height:40px;color:var(--text);padding-inline:12px;transition:border-color .2s}.p-input:hover{border-color:#a9a69e}.p-input:focus{border-color:var(--text);box-shadow:0 0 0 1px var(--text);outline:none}textarea.p-input{resize:vertical;height:auto;min-height:96px;padding-block:10px}select.p-input{appearance:none;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235e5c56' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center / 16px;cursor:pointer;padding-right:36px}.p-input::placeholder{color:#6b6963}.p-pill{white-space:nowrap;background:var(--active);border-radius:999px;flex:none;align-items:center;gap:5px;height:22px;padding-inline:9px;font-size:12px;font-weight:500;display:inline-flex}.p-role{white-space:nowrap;color:#4d3500;background:#fff1c4;border-radius:999px;flex:none;align-items:center;gap:5px;height:22px;padding-inline:7px 9px;font-size:12px;font-weight:500;display:inline-flex}.p-role:before{content:"";background:#d99e00;border-radius:999px;width:6px;height:6px}.p-role-admin{background:var(--text);color:#fff}.p-role-admin:before{background:var(--accent)}.p-pill-sun{color:#6b4a00;background:#fff0c2}.p-pill-neg{color:#831c1e;background:#ffedea}.p-pill-pos{color:#04250e;background:#dcfae5}.p-pill-tone{background:var(--tone-soft);color:var(--tone-text)}.p-pill-white{background:var(--pill,#f2f2f0);color:var(--text)}.p-face{background:hsl(var(--h,40) 70% 88%);width:24px;height:24px;color:hsl(var(--h,40) 60% 22%);border-radius:999px;flex:none;place-items:center;font-size:11px;font-weight:600;display:inline-grid}.p-switch{appearance:none;background:var(--control);cursor:pointer;border-radius:999px;flex:none;width:32px;height:20px;transition:background-color .2s;position:relative}.p-switch:after{content:"";background:var(--surface);width:16px;height:16px;transition:translate .25s var(--ease-out);border-radius:999px;position:absolute;inset:2px auto auto 2px}.p-switch:checked{background:var(--text)}.p-switch:checked:after{translate:12px}.p-bar{background:var(--active);border-radius:999px;height:8px;overflow:hidden}.p-bar>i{border-radius:inherit;background:var(--accent);height:100%;display:block}.p-tabs{scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.p-tab{color:var(--muted);border-radius:999px;flex:none;padding:8px 16px;font-weight:500;transition:background-color .2s,color .2s}.p-tab:hover{color:var(--text);background:var(--active)}.p-tab[aria-current=page]{color:var(--surface);background:var(--text)}.p-tab[aria-current=page] .p-muted{color:#fff9}.p-row{align-items:center;gap:12px;min-height:52px;padding-block:8px;display:flex}.p-row+.p-row{box-shadow:inset 0 1px var(--rule)}.p-empty{border:1px dashed var(--control);color:var(--muted);border-radius:12px;padding:14px 16px}}[data-tip]{position:relative}@media (hover:hover){[data-tip]:hover:after{content:attr(data-tip);background:var(--text);color:var(--surface);white-space:nowrap;pointer-events:none;z-index:60;border-radius:8px;padding:5px 9px;font-size:12px;position:absolute;top:50%;left:calc(100% + 10px);translate:0 -50%}}.p-dialog{background:var(--surface);width:min(560px,100vw - 24px);max-height:calc(100dvh - 24px);color:var(--text);border:0;border-radius:20px;margin:auto;padding:0;box-shadow:0 24px 64px #0000002e}.p-dialog::backdrop{background:#00000059}.p-dialog-wide{width:min(1000px,100vw - 24px)}@media (prefers-reduced-motion:no-preference){.p-dialog[open]{animation:p-dialog-in .35s var(--ease-out)}.p-dialog[open]::backdrop{animation:.3s p-fade}}@keyframes p-dialog-in{0%{opacity:0;translate:0 16px;scale:.97}}@keyframes p-fade{0%{opacity:0}}.p-skel{background:#0000000f;border-radius:10px}.p-loading{animation:.2s .15s both p-fade}@media (prefers-reduced-motion:no-preference){.p-loading :is(.p-skel,.p-panel){animation:1.6s ease-in-out infinite p-breathe}}@keyframes p-breathe{50%{opacity:.55}}.p-col{transition:box-shadow .2s, scale .3s var(--ease-out)}.p-col.is-over{box-shadow:inset 0 0 0 3px var(--tone-fg,var(--text))}.p-bin.is-over{box-shadow:inset 0 0 0 3px var(--text);scale:1.04}.p-card{touch-action:auto}.p-paper{--muted:#5e5c56;--active:#e8e7e3;--border:#e4e3de;--control:#cfcdc6;color:var(--text);background:var(--surface)}.p-tile{--muted:#5e5c56;--active:#e8e7e3;--border:#e4e3de;--control:#cfcdc6;color:var(--text);background:var(--surface);transition:translate .3s var(--ease-out), box-shadow .3s var(--ease-out);border-radius:14px;box-shadow:0 0 0 1px #00000012}@media (hover:hover){.p-tile:hover{translate:0 -2px;box-shadow:0 0 0 1px #00000012,0 12px 24px -10px #0000004d}}.p-card.is-dragging{z-index:50;cursor:grabbing;box-shadow:0 18px 40px #00000029}@media (pointer:fine){.p-card[data-drag]{cursor:grab}}.p-drop-line{background:var(--text);border-radius:3px;height:3px}.p-seg{transition:flex-grow .9s var(--ease-out)}.p-seg+.p-seg{box-shadow:inset 3px 0 var(--ground)}@media (prefers-reduced-motion:no-preference){.p-seg{animation:p-pour 1.1s calc(var(--i) * .12s + .15s) var(--ease-out) backwards}.p-fill>i{transition:width .6s var(--ease-out);animation:p-fill 1.2s .4s var(--ease-out) backwards}.p-ping:after{content:"";border-radius:inherit;background:inherit;animation:p-ping 1.6s var(--ease-out) infinite;position:absolute;inset:0}}@keyframes p-pour{0%{flex-grow:0}}@keyframes p-fill{0%{width:0}}@keyframes p-ping{to{opacity:0;scale:2.6}}.p-ping{background:var(--negative);border-radius:99px;width:7px;height:7px;position:relative}.p-bin .jaw,.p-bin .jaw-eyes{animation-play-state:paused}.p-bin.is-over .jaw,.p-bin.is-over .jaw-eyes{animation-play-state:running}.p-bin:has(button:hover) .jaw{animation-play-state:running}.p-bin:has(button:hover) .jaw-eyes{animation-play-state:running}@keyframes p-wave{to{transform:translate(-1000px)}}.p-wave{animation:3.2s linear infinite p-wave}.p-wave-back{animation-duration:4.6s;animation-direction:reverse}.p-shut .eyes{transition:transform .25s var(--ease-out);animation:none;transform:scaleY(.1)}.p-shut .pupil{opacity:0;transition:opacity .15s}@media (prefers-reduced-motion:reduce){.p-wave{animation:none}}.p-drop .jaw,.p-drop .jaw-eyes{animation-play-state:paused}.p-drop.is-over .jaw,.p-drop.is-over .jaw-eyes,.p-drop.is-busy .jaw,.p-drop.is-busy .jaw-eyes{animation-play-state:running}.p-drop.is-over{border-color:var(--text);background:#fff6d6}.plan-c:not(.is-eating) .jaw,.plan-c:not(.is-eating) .jaw-eyes{animation-play-state:paused}@media (prefers-reduced-motion:no-preference){.tl-pulse:after{content:"";border:2px solid var(--color-sun);border-radius:999px;animation:1.8s ease-out infinite tl-pulse;position:absolute;inset:-3px}}@keyframes tl-pulse{to{opacity:0;scale:1.8}}.p-count{animation:.3s 1.2s both p-fade}
