.plan{width:min(1180px,100%);padding:calc(var(--top-h) + var(--sp-6)) var(--sp-4) calc(var(--sp-8) * 3);gap:var(--sp-4);margin:0 auto;display:grid}.plan h1{font:var(--type-title);font-size:var(--step-3);margin:0}.plan-sub{margin:calc(var(--sp-2) * -1) 0 0;color:var(--ink-2);font:var(--type-body);max-width:70ch}.plan-layout{gap:var(--sp-6);align-items:start;display:grid}.plan-side{gap:var(--sp-3);display:grid}.plan-q{min-height:calc(var(--tap) * 1.6);padding:var(--sp-3);resize:vertical;line-height:1.4;display:block}.plan-priv{align-items:center;gap:var(--sp-2);color:var(--ink-3);font:var(--type-caption);margin:0;display:flex}.pe-summary{gap:var(--sp-3);display:grid}.pe-sum-row{gap:var(--sp-2);flex-wrap:wrap;display:flex}.pe-sum{min-height:var(--tap);padding:0 var(--sp-3);border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.pe-sum .icon{color:var(--ink-3)}.pe-none{color:var(--ink-3);font:var(--type-caption);padding:var(--sp-2) 0}.pe-edit{justify-self:start}.pe-editor{gap:var(--sp-5);display:grid}.pe-g{gap:var(--sp-2);display:grid}.pe-h{font:var(--type-caption);color:var(--ink-2);letter-spacing:.02em;margin:0;font-weight:650}.pe-h label{font:inherit}.pe-chips{gap:var(--sp-2);flex-wrap:wrap;display:flex}.pe-chips .chip{min-height:var(--tap)}.chip:disabled{opacity:.45;cursor:default}.pe-switch{align-items:center;gap:var(--sp-3);min-height:var(--tap);font:var(--type-body);color:var(--ink);cursor:pointer;display:flex}.pe-switch input{width:20px;height:20px;accent-color:var(--accent);margin:0}.pe-switch:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--r-s)}.pe-hint{color:var(--ink-3);font:var(--type-caption);margin:0}.pe-num{max-width:8rem}.plan-examples{gap:var(--sp-3);display:grid}.plan-ex-h{color:var(--ink-2);font:var(--type-headline);margin:0}.plan-bar{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);display:flex}.plan-bar-main{gap:var(--sp-1);min-width:0;display:grid}.plan-tablefor{color:var(--accent-text);font:var(--type-caption);letter-spacing:.02em;margin:0;font-weight:650}.plan-counts{font:var(--type-headline);font-size:var(--step-1);color:var(--ink);margin:0}.plan-scope,.plan-status{color:var(--ink-3);font:var(--type-caption);margin:0}.plan-status:empty{display:none}.plan-key{gap:var(--sp-1) var(--sp-4);margin:var(--sp-3) 0 0;color:var(--ink-2);font:var(--type-caption);flex-wrap:wrap;display:flex}.plan-key span{align-items:center;gap:var(--sp-1);display:inline-flex}.plan-note{margin:var(--sp-2) 0 var(--sp-3);color:var(--ink-3);font:var(--type-caption);max-width:75ch}.plan-top3{margin-bottom:var(--sp-4)}.plan-groups{gap:var(--sp-6);display:grid}.plg{gap:var(--sp-3);display:grid}.plg-h{align-items:baseline;gap:var(--sp-3);font:var(--type-title);font-size:var(--step-1);margin:0;display:flex}.plg-n{color:var(--ink-3);font:var(--type-figure)}.plg-note{color:var(--ink-3);font:var(--type-caption);margin:0}.plg--no{border-top:1px solid var(--line);padding-top:var(--sp-3)}.plg--no>summary{align-items:baseline;gap:var(--sp-3);min-height:var(--tap);cursor:pointer;font:var(--type-headline);color:var(--ink-2);align-items:center;display:flex}.plg--no[open]>summary{margin-bottom:var(--sp-3)}.plg-more{justify-self:start}.plg-left{color:var(--ink-3);font-weight:500}.pl{gap:var(--sp-3);margin:0;padding:0;list-style:none;display:grid}.pc{gap:var(--sp-2);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-m);background:var(--surface);display:grid}.pc--full{border-color:color-mix(in srgb, var(--st-free) 45%, var(--line))}.pc-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);display:flex}.pc-name{min-width:0;font-family:var(--font-display);color:var(--ink);padding:var(--sp-1) 0;font-size:1.16rem;line-height:1.25;text-decoration:none}.pc-name:hover{color:var(--accent-text);text-decoration:underline}.pc .cmp{min-height:var(--tap);flex:none}.pc-sub{color:var(--ink-2);font:var(--type-caption);margin:0}.pc-km{font-family:var(--font-mono)}.pc-suit{margin:var(--sp-1) 0;font:var(--type-headline);font-size:var(--step-1);color:var(--ink)}.pc-rows{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.pc-row{gap:var(--sp-2) var(--sp-3);font:var(--type-body);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.pc-st{justify-self:start;align-items:center;gap:var(--sp-1);padding:2px var(--sp-2);border-radius:var(--r-pill);font-size:var(--step--2);white-space:nowrap;font-weight:650;line-height:1.5;display:inline-flex}.pc-st .icon svg{stroke:currentColor;stroke-width:6px}.pc-row--met .pc-st{color:var(--st-free);background:var(--st-free-bg)}.pc-row--partial .pc-st{color:var(--st-option);background:var(--st-option-bg)}.pc-row--unknown .pc-st{color:var(--st-unknown);background:var(--st-unknown-bg)}.pc-row--not .pc-st{color:var(--st-contains);background:var(--st-contains-bg)}.pc-txt{min-width:0;color:var(--ink-2);overflow-wrap:anywhere}.pc-txt b{color:var(--ink);font-weight:650}.pc-src{color:var(--ink-3);font:var(--type-caption)}.pc-src a{color:var(--ink-3)}.pc-src a:hover{color:var(--ink)}.plan-examples[hidden],.plan-results[hidden],.plan-tablefor[hidden],.plan-top3[hidden]{display:none}.plan-results{scroll-margin-top:calc(var(--top-h) + var(--sp-4))}@media (width<=479px){.pc-row{display:block}.pc-st{margin-right:var(--sp-2);vertical-align:1px}.pc-txt{display:inline}}@media (width>=1024px){.plan-layout{grid-template-columns:22rem minmax(0,1fr)}.plan-side{top:calc(var(--top-h) + var(--sp-4));max-height:calc(100dvh - var(--top-h) - var(--sp-8));padding-right:var(--sp-2);position:sticky;overflow-y:auto}.pe-edit{display:none}}@media (prefers-reduced-motion:reduce){.plan *{transition:none!important;animation:none!important}}.plan{gap:var(--sp-6);padding-top:calc(var(--top-h) + var(--sp-8))}.plan h1{font-size:var(--step-4);max-width:20ch}.plan-steps{gap:var(--sp-4) var(--sp-6);padding:var(--sp-4) 0;border-block:1px solid var(--line);font:var(--type-body);flex-wrap:wrap;margin:0;list-style:none;display:flex}.plan-steps li{align-items:center;gap:var(--sp-2);display:flex}.plan-steps span{width:var(--sp-6);height:var(--sp-6);border:1px solid var(--line-ui);border-radius:var(--r-pill);font:var(--type-caption);color:var(--accent-text);place-items:center;display:grid}.plan-people{padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-l);background:var(--surface);gap:var(--sp-4);display:grid}.plan-section-head{justify-content:space-between;align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.plan-section-head h2,.plan-section-title{font:var(--type-title);margin:0}.plan-section-head p{margin:var(--sp-2) 0 0;color:var(--ink-2);font:var(--type-body)}.people-list{gap:var(--sp-3);display:grid}.people-list:empty{display:none}.person{border:1px solid var(--line);border-radius:var(--r-m);background:var(--bg);min-width:0}.person summary{cursor:pointer;padding:var(--sp-3);gap:var(--sp-3);min-height:var(--tap);align-items:center;display:flex}.person summary:after{content:"+";color:var(--ink-3);margin-left:auto}.person[open] summary:after{content:"−"}.person summary b{font:var(--type-headline)}.person summary small{font:var(--type-caption);color:var(--ink-2);margin-top:var(--sp-1);display:block}.person-avatar{width:calc(var(--sp-6) + var(--sp-4));height:calc(var(--sp-6) + var(--sp-4));border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent-text);font:var(--type-title);flex:none;place-items:center;display:grid}.person-options{gap:var(--sp-4);padding:0 var(--sp-3) var(--sp-3);display:grid}.person-options .btn{justify-self:start}.person-add{gap:var(--sp-2);max-width:480px;display:flex}.person-add input{flex:1;width:0}.plan-people [data-saved-groups]{font:var(--type-body);gap:var(--sp-2);max-width:480px;display:grid}.plan-side{gap:var(--sp-4);padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-l);background:var(--surface)}.plan-q{width:100%;font:var(--type-body);min-height:112px}.plan-priv{align-items:flex-start}.plan-section-title{font-size:var(--step-1)}.pe-options{border-top:1px solid var(--line);padding-top:var(--sp-3)}.pe-options>summary{min-height:var(--tap);cursor:pointer;font:var(--type-headline);color:var(--ink)}.pe-options .pe-g{margin-top:var(--sp-4)}.pe-edit{display:none}.pe-editor{gap:var(--sp-4)}.pe-none{color:var(--ink-2)}.plan-find{width:100%}.plan-examples{min-height:360px;padding:var(--sp-6);border:1px dashed var(--line-strong);border-radius:var(--r-l);align-content:center}.plan-empty-mark{color:var(--accent-text);margin-bottom:var(--sp-3)}.plan-ex-h{color:var(--ink);font:var(--type-title);font-size:var(--step-3)}.plan-empty-copy{margin:0 0 var(--sp-4);color:var(--ink-2);font:var(--type-body);max-width:52ch}.plan-examples .pe-chips{flex-direction:column;align-items:flex-start}.plan-examples .chip{white-space:normal;text-align:left}.plan-bar{flex-wrap:wrap}.plan-counts{font:var(--type-title);font-size:var(--step-2)}.plan-bar .sel{min-width:160px;max-width:100%}.pc-name{font-size:var(--step-2)}.pc-verdict{align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-2);border:1px solid var(--line-ui);border-radius:var(--r-pill);font:var(--type-caption);justify-self:start;font-weight:650;display:inline-flex}.pc--full{background:color-mix(in srgb, var(--st-free-bg) 40%, var(--surface));border-color:var(--line)}.pc--full .pc-verdict{color:var(--st-free);background:var(--st-free-bg);border-color:var(--st-free)}.pc--maybe .pc-verdict{color:var(--ink-2);background:var(--surface-2);border-style:dashed}.pc-row{grid-template-columns:auto minmax(0,1fr)}.pc-st{white-space:normal;padding-block:var(--sp-1)}.pc-suit{font-size:var(--step-0)}.plg-h{font:var(--type-headline);font-size:var(--step-1);align-items:center}.plg--full>.plg-h>.icon{color:var(--st-free)}.plg--maybe{padding-top:var(--sp-5);border-top:1px solid var(--line)}.plan-no-results{padding:var(--sp-6);border:1px dashed var(--line-ui);border-radius:var(--r-m);gap:var(--sp-4);display:grid}.plan-no-results h2{font:var(--type-title);margin:0}.plan-no-results p{font:var(--type-body);color:var(--ink-2);margin:0}.plan-no-results button{justify-self:start}.plan-loading{gap:var(--sp-4);display:grid}.plan-loading[hidden]{display:none}.plan-loading i{border:1px solid var(--line);border-radius:var(--r-m);background:var(--surface-2);height:160px;animation:.3s ease-in-out infinite alternate plan-pulse;display:block}@keyframes plan-pulse{0%{opacity:.5}to{opacity:1}}.plan :is(button,input,select,textarea,summary,a):focus-visible{outline:2px solid var(--focus);outline-offset:var(--sp-1)}@media (width<=479px){.pc-row{display:block}.pc-st{margin-right:var(--sp-2)}.plan-examples{padding:var(--sp-5)}}@media (width>=760px){.people-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media (width>=1024px){.plan-layout{gap:var(--sp-8);grid-template-columns:360px minmax(0,1fr)}.plan-side{max-height:none;padding:var(--sp-5);position:static;overflow:visible}}@media (prefers-reduced-motion:reduce){.plan-loading i{animation:none}}@media (width>=760px){.people-list>.person[open]{grid-column:1/-1}}.plan-quick{gap:var(--sp-2);max-width:72ch;display:grid}.plan-quick .plan-q{min-height:calc(var(--sp-8) * 2)}@media (width>=1024px){.plan-side{top:calc(var(--top-h) + var(--sp-4));max-height:calc(100dvh - var(--top-h) - var(--sp-8));position:sticky;overflow-y:auto}}@media (width<=480px){.plan{gap:var(--sp-4);padding-top:calc(var(--top-h) + var(--sp-4))}.plan h1{font-size:var(--step-3)}.plan-people,.plan-side{padding:var(--sp-3);gap:var(--sp-3)}.plan-quick .plan-q{min-height:calc(var(--sp-8) * 2)}.plan[data-has-needs=true] .plan-steps,.plan[data-has-needs=true] .plan-section-head p{display:none}.plan[data-has-needs=true] .person summary{gap:var(--sp-2);padding:var(--sp-2)}.plan[data-has-needs=true] .person-avatar{display:none}.plan[data-has-needs=true] .person summary>span:last-of-type{align-items:baseline;gap:var(--sp-2);min-width:0;display:flex}.plan[data-has-needs=true] .person summary b{flex:none}.plan[data-has-needs=true] .person summary small{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.plan[data-has-needs=true] .person summary:after{flex:none}.plan-side{gap:var(--sp-2)}.plan-side .pe-summary{order:2}.plan-side .plan-find{order:3}.plan-side .plan-section-title{order:1}.plan-side .pe-slot{margin-bottom:var(--sp-2);order:0}}html:has([data-plan]){scroll-padding-top:calc(var(--top-h) + var(--sp-4))}
