/* Prime Creation // project composition studio. Isolated from spatial shell. */
:root{--plan-cyan:#72e6ff;--plan-blue:#102739;--plan-border:rgba(121,226,255,.27);--plan-border-bright:rgba(156,237,255,.74)}
.plan-hero{max-width:none;background:radial-gradient(ellipse at 84% 0%,rgba(60,150,210,.13),transparent 48%),#000}
.plan-hero h1{max-width:18ch}.plan-kickerline{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 1rem;color:#a9d7ed;font:700 .65rem/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em}
.plan-kickerline span{padding:.25rem .55rem;border:1px solid var(--plan-border);border-radius:999px}
.plan-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(18rem,.85fr);align-items:start;gap:1.2rem;margin:2rem 0}
.plan-panel,.plan-summary{border:1px solid var(--plan-border);border-radius:1.15rem;background:linear-gradient(145deg,rgba(19,46,64,.44),rgba(0,0,0,.96) 55%);box-shadow:inset 0 1px rgba(196,243,255,.08)}
.plan-panel{padding:clamp(1rem,3vw,2rem)}
.plan-section{border:0;padding:0;margin:0 0 1.65rem;min-width:0}
.plan-section:last-of-type{margin-bottom:.65rem}
.plan-section legend{display:block;width:100%;padding:0 0 .7rem;color:#edfaff;font-size:1.22rem;font-weight:800;letter-spacing:-.02em}
.plan-helper{color:#a9c2d0;margin:0 0 1rem;font-size:.86rem;line-height:1.6}
.plan-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
.plan-service{position:relative;display:flex;align-items:flex-start;gap:.65rem;min-width:0;padding:.85rem;border:1px solid rgba(136,203,225,.22);border-radius:.85rem;background:rgba(4,15,25,.82);cursor:pointer;transition:border-color .15s,background .15s}
.plan-service:has(input:checked){background:linear-gradient(145deg,rgba(58,144,178,.26),rgba(9,24,41,.92));border-color:var(--plan-border-bright);box-shadow:inset 0 1px rgba(169,237,255,.1)}
.plan-service:focus-within{outline:2px solid #94eaff;outline-offset:2px}
.plan-service input{appearance:none;flex:none;width:1.15rem;height:1.15rem;margin:.12rem 0 0;border-radius:.3rem;border:1px solid rgba(148,216,239,.75);background:#030e16;display:grid;place-content:center}
.plan-service input:checked{border-color:#a8f0ff;background:#73d5ef}
.plan-service input:checked::before{content:"✓";color:#061522;font-size:.85rem;font-weight:900;line-height:1}
.plan-service-content{display:grid;gap:.3rem;min-width:0}
.plan-service-content strong{font-size:.84rem;line-height:1.4}
.plan-service-content small{color:#9cbac9;font-size:.7rem;line-height:1.45}
.plan-service-content em{color:#9bf0ff;font-size:.7rem;font-style:normal;font-weight:700}
.plan-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.plan-field{display:grid;gap:.45rem;color:#e0f2fa;font-size:.8rem;font-weight:730}
.plan-field select,.plan-field textarea{width:100%;min-width:0;border:1px solid rgba(119,208,238,.38);border-radius:.75rem;background:#071721;color:#f5fcff;padding:.82rem;font-family:inherit;font-weight:500;font-size:.85rem;line-height:1.45}
.plan-field textarea{min-height:7rem;resize:vertical}
.plan-field select:focus-visible,.plan-field textarea:focus-visible{outline:2px solid #97eaff;outline-offset:2px}
.plan-field textarea::placeholder{color:#8daab9}
.plan-summary{position:sticky;top:5.4rem;padding:1.25rem}
.plan-summary h2{font-size:1.4rem;line-height:1.15;margin:0 0 .8rem}
.plan-summary-count{color:#a6d6e8;font:.75rem/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}
.plan-summary-list{display:grid;gap:.4rem;margin:1.1rem 0;padding:0;list-style:none}
.plan-summary-list li{padding:.65rem .75rem;border-left:2px solid var(--plan-cyan);background:rgba(66,149,182,.11);font-size:.78rem;font-weight:650}
.plan-empty{color:#9cbac9;font-size:.85rem;line-height:1.5}
.plan-total{border-top:1px solid var(--plan-border);padding-top:1rem;margin-top:1rem}
.plan-total span{display:block;color:#a6c4d3;font-size:.72rem}
.plan-total strong{display:block;margin:.2rem 0;font-size:clamp(2rem,5vw,2.7rem);line-height:1.2;letter-spacing:-.04em}
.plan-disclaimer{color:#a6c1cc;font-size:.74rem;line-height:1.55;margin:.75rem 0 1.1rem}
.plan-submit{width:100%;justify-content:center;cursor:pointer;font-family:inherit}
.plan-submit:disabled{opacity:.48;cursor:not-allowed}
.plan-secondary-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.75rem}
.plan-note{color:#bad0dc;font-size:.8rem;line-height:1.65}
.plan-feature-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}
.plan-feature-list p{margin:0;padding:1rem;border:1px solid var(--plan-border);border-radius:.85rem;color:#bcd4e0;font-size:.82rem;line-height:1.6}
.plan-feature-list b{display:block;color:#f5fcff;margin-bottom:.35rem}
@media(max-width:900px){.plan-layout{grid-template-columns:1fr}.plan-summary{position:static}}
@media(max-width:600px){.plan-service-grid,.plan-form-grid,.plan-feature-list{grid-template-columns:1fr}.plan-summary{padding:1rem}.plan-service{min-height:4rem}}
@media(prefers-reduced-motion:reduce){.plan-service{transition:none}}

/* 2026-10-23: mobile composition, no bloated single-card stack. */
@media(max-width:600px){
 .plan-layout{margin:1rem 0!important;gap:.65rem!important}
 .plan-panel{padding:.85rem!important}
 .plan-section{margin-bottom:.95rem!important}
 .plan-section legend{padding-bottom:.4rem!important}
 .plan-helper{margin-bottom:.6rem!important}
 .plan-service-grid{gap:.4rem!important}
 .plan-service{min-height:0!important;padding:.58rem .72rem!important;gap:.55rem!important;align-items:center!important}
 .plan-service-content{gap:.13rem!important}
 .plan-service-content strong{font-size:.82rem!important}
 .plan-service-content small{font-size:.68rem!important}
 .plan-service-content em{font-size:.66rem!important}
 .plan-summary{padding:.8rem!important}
 .plan-feature-list p{padding:.75rem!important}
}
