.planner{gap:var(--sp-8);display:grid}.planner-step{scroll-margin-top:calc(var(--nav-h) + 72px)}.planner-step__head{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.planner-step__head h2{font-size:var(--fs-xl);margin:0}.planner-step__head .step-num{width:44px;height:44px;font-size:var(--fs-lg)}.planner-step__head p{color:var(--c-muted);flex-basis:100%;margin:0}.planner-two{gap:var(--sp-6);grid-template-columns:1fr;align-items:start;display:grid}@media (width>=960px){.planner-two{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}.stepper{gap:var(--sp-2);padding:4px 2px var(--sp-2);margin:0 0 var(--sp-2);scrollbar-width:none;top:var(--nav-h);z-index:5;background:var(--c-bg);box-shadow:0 0 0 100vmax var(--c-bg);clip-path:inset(-8px -100vmax 0);display:flex;position:sticky;overflow-x:auto}.stepper::-webkit-scrollbar{display:none}.stepper a{align-items:center;gap:var(--sp-2);min-height:44px;padding:var(--sp-2) var(--sp-4) var(--sp-2) var(--sp-2);border-radius:var(--r-pill);border:var(--bd);background:var(--c-surface);color:var(--c-ink);font-family:var(--font-display);font-weight:600;font-size:var(--fs-sm);flex:none;text-decoration:none;display:inline-flex}.stepper a span{background:var(--c-accent);border:var(--bd);width:28px;height:28px;font-size:var(--fs-xs);border-radius:50%;place-items:center;display:grid}.stepper a:hover{background:var(--c-accent-soft);color:var(--c-ink)}.rig-picker{gap:var(--sp-3);margin:0 0 var(--sp-6);border:0;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;padding:0;display:grid}@media (width>=640px){.rig-picker{grid-template-columns:repeat(4,minmax(0,1fr))}}.rig-picker legend{font-weight:700;font-size:var(--fs-sm);margin-bottom:var(--sp-2);padding:0}.rig-tile{margin:0;position:relative}.rig-tile input{opacity:0;width:1px;height:1px;position:absolute}.rig-tile__body{justify-items:center;gap:var(--sp-1);padding:var(--sp-3) var(--sp-2) var(--sp-2);border-radius:var(--r-md);border:2px solid var(--c-line);background:var(--c-surface);cursor:pointer;text-align:center;min-height:96px;font-family:var(--font-display);font-weight:600;font-size:var(--fs-sm);transition:transform var(--dur) var(--ease-bounce), border-color var(--dur), background var(--dur);display:grid}.rig-tile__body svg{width:100%;max-width:120px;height:52px}.rig-tile:hover .rig-tile__body{border-color:var(--c-ink);transform:translateY(-3px)}.rig-tile input:checked+.rig-tile__body{border-color:var(--c-ink);background:var(--c-accent-soft);box-shadow:var(--sh-sticker);transform:translateY(-3px)}.rig-tile input:checked+.rig-tile__body svg{animation:rig-hop .45s var(--ease-bounce)}.rig-tile input:focus-visible+.rig-tile__body{outline:3px solid var(--c-secondary);outline-offset:2px}@keyframes rig-hop{40%{transform:translateY(-6px)rotate(-3deg)}}.roof-card{padding:var(--sp-4)}.roof-stage-d{border-radius:var(--r-md);border:var(--bd);background:linear-gradient(180deg, var(--c-sky-soft) 0%, var(--c-secondary-soft) 100%);padding:var(--sp-6) var(--sp-4);perspective:1100px;position:relative;overflow:hidden}.roof-stage-d__sky{pointer-events:none;width:54px;animation:6s ease-in-out infinite sun-bob;position:absolute;top:10px;right:12px}@keyframes sun-bob{50%{transform:translateY(6px)rotate(8deg)}}.roof-stage-d__sky svg{width:100%;height:auto}.roof-tilt{transition:transform .7s var(--ease-bounce);transform-origin:50% 60%}.roof-stage-d.is-tilted .roof-tilt{transform:rotateX(52deg)rotate(-18deg)scale(.92)}.roof-svg{width:100%;height:auto;display:block;overflow:visible}.roof-svg .slot{cursor:pointer}.roof-svg .slot:focus{outline:none}.roof-svg .slot:focus-visible .slot__hit{stroke:var(--c-secondary);stroke-width:6px}.roof-svg .slot__panel{transform-box:fill-box;transform-origin:50%;animation:panel-pop .48s var(--ease-bounce) both}@keyframes panel-pop{0%{opacity:0;transform:scale(.3)translateY(-30px)}}.roof-legend{gap:var(--sp-2) var(--sp-4);margin:var(--sp-3) 0 0;font-size:var(--fs-sm);flex-wrap:wrap;padding:0;list-style:none;display:flex}.roof-legend li{align-items:center;gap:6px;display:inline-flex}.roof-legend i{border:var(--bd);border-radius:3px;width:18px;height:12px;display:inline-block}.roof-toolbar{gap:var(--sp-2);margin-bottom:var(--sp-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.custom-loads{gap:var(--sp-2);margin-bottom:var(--sp-4);display:grid}.custom-load{gap:var(--sp-3);padding:var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-4);border:var(--bd);border-radius:var(--r-md);background:var(--c-accent-soft);font-size:var(--fs-sm);grid-template-columns:1fr auto 44px;align-items:center;display:grid}.custom-load b{font-family:var(--font-display);white-space:nowrap;font-weight:600}.custom-load button{border:var(--bd);background:var(--c-surface);cursor:pointer;width:44px;height:44px;color:var(--c-ink);border-radius:50%;font-size:1.2rem;line-height:1}.add-load{gap:var(--sp-2);grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);align-items:end;display:grid}.add-load .field{margin:0}.add-load .btn{grid-column:1/-1}@media (width>=640px){.add-load{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) auto}.add-load .btn{grid-column:auto}}.plan-strip{gap:var(--sp-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=900px){.plan-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}.plan-strip .metric{background:var(--c-surface);border:var(--bd);box-shadow:var(--sh-1);min-width:0}.plan-strip .metric b{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.tiers{gap:var(--sp-6);grid-template-columns:1fr;align-items:start;display:grid}@media (width>=1100px){.tiers{gap:var(--sp-4);grid-template-columns:repeat(3,minmax(0,1fr))}}.tier{background:var(--c-surface);border:var(--bd);border-radius:var(--r-lg);box-shadow:0 6px 0 var(--c-line);transition:transform var(--dur) var(--ease-bounce), box-shadow var(--dur);position:relative;overflow:hidden}.tier.is-picked{box-shadow:0 8px 0 var(--c-ink);transform:translateY(-4px)}.tier__head{padding:var(--sp-6) var(--sp-6) var(--sp-4);background:var(--c-accent-soft);border-bottom:2px solid var(--c-ink);position:relative}.tier--1 .tier__head{background:var(--c-sky-soft)}.tier--2 .tier__head{background:var(--c-accent-soft)}.tier--3 .tier__head{background:var(--c-primary-soft)}.tier__head h3{font-size:var(--fs-xl);margin:0 0 var(--sp-1)}.tier__head p{font-size:var(--fs-sm);color:var(--c-muted);margin:0}.tier__art{right:var(--sp-4);top:var(--sp-4);width:56px;height:56px;position:absolute}.tier__art svg{width:100%;height:100%}.tier__head .badge{margin-bottom:var(--sp-2)}.tier__body{padding:var(--sp-6);gap:var(--sp-4);display:grid}.tier__spec{gap:var(--sp-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tier__spec .metric{padding:var(--sp-2) var(--sp-3);min-width:0}.tier__spec .metric b{font-size:var(--fs-base);overflow-wrap:anywhere}.tier__refill{gap:4px;display:grid}.difficulty{align-items:center;gap:var(--sp-3);font-size:var(--fs-sm);display:flex}.difficulty__fires{flex:none;gap:2px;display:inline-flex}.difficulty__fires span{width:24px;height:24px;display:inline-block}.difficulty__fires span svg{width:100%;height:100%}.difficulty__fires span.off{opacity:.2;filter:grayscale()}.parts{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.part{gap:var(--sp-2) var(--sp-3);padding:var(--sp-3);border:2px solid var(--c-line);border-radius:var(--r-md);background:var(--c-bg);grid-template-columns:1fr auto;align-items:center;display:grid}.part__name{font-weight:700;font-size:var(--fs-sm);line-height:1.35}.part__src{font-size:var(--fs-xs);color:var(--c-muted);font-weight:400;display:block}.part a{font-weight:700;font-size:var(--fs-sm);white-space:nowrap;align-items:center;min-height:44px;display:inline-flex}.part__price{align-items:center;gap:var(--sp-2);font-size:var(--fs-xs);color:var(--c-muted);grid-column:1/-1;display:flex}.d-tools .part__price input{width:110px;min-height:40px;font-size:var(--fs-sm);padding:4px 10px}.tier__total{justify-content:space-between;align-items:baseline;gap:var(--sp-3);padding-top:var(--sp-3);border-top:3px dotted var(--c-line);display:flex}.tier__total b{font-family:var(--font-display);font-size:var(--fs-xl)}.tier__actions{gap:var(--sp-2);display:grid}.plan-actions{gap:var(--sp-3);flex-wrap:wrap;align-items:center;display:flex}@media print{.planner-step--input,.stepper,.plan-actions,.tool-hero,.page-hero,.divider-wave,.result-peek{display:none!important}.tier{break-inside:avoid;box-shadow:none}}
