.calc-sec{padding-top:var(--space-7)}.calc{gap:var(--space-6);display:grid}@media (width>=980px){.calc{gap:var(--space-8);grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start}.calc__stage{top:calc(var(--header-h) + var(--space-5));position:sticky}}.calc__stage .stage{box-shadow:var(--shadow-lg)}.calc__form{gap:var(--space-5);min-width:0;display:grid}.calc__form fieldset{border:0;min-width:0;margin:0;padding:0}.calc__form [hidden]{display:none!important}.variants legend{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-3);padding:0}.seg-group{gap:var(--space-2);flex-wrap:wrap;display:flex}.seg{position:relative}.seg input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.seg span{min-height:44px;padding:var(--space-2) var(--space-4);border:1.5px solid var(--color-border);font-weight:var(--fw-medium);font-size:var(--fs-sm);color:var(--color-primary);background:var(--color-bg);border-radius:999px;align-items:center;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;display:inline-flex}.seg:hover span{border-color:var(--color-accent)}.seg input:checked+span{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.seg input:focus-visible+span{outline:3px solid var(--color-focus);outline-offset:2px}.dims__legend{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-3);padding:0}.dims__grid,.calc__row{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,12.5rem),1fr));display:grid}.fld{gap:var(--space-1);align-content:start;min-width:0;display:grid}.fld label{align-items:center;gap:var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:1.3;display:flex}.fld__badge{background:color-mix(in srgb, var(--color-accent) 12%, transparent);min-width:1.75rem;height:1.75rem;color:var(--color-accent-strong);font-weight:var(--fw-bold);font-size:var(--fs-sm);border-radius:6px;flex:none;place-items:center;padding:0 .35rem;transition:background-color .2s,color .2s;display:inline-grid}.fld:focus-within .fld__badge{background:var(--color-focus);color:#14262d}.calc__form input,.calc__form select{width:100%;min-height:48px;padding:var(--space-2) var(--space-3);font:inherit;font-variant-numeric:tabular-nums;color:var(--color-text);background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius);font-size:1.0625rem;transition:border-color .2s,box-shadow .2s}.calc__form input:hover,.calc__form select:hover{border-color:var(--color-accent)}.calc__form input:focus-visible,.calc__form select:focus-visible{border-color:var(--color-accent-strong);outline:none;box-shadow:0 0 0 3px #f2b7058c}.calc__form input[aria-invalid=true]{border-color:var(--color-danger)}.fld__err{min-height:0;font-size:var(--fs-xs);color:var(--color-danger);margin:0;line-height:1.35}.fld__err:empty{display:none}.fld__err--wide{margin-top:calc(-1 * var(--space-3))}.quick{align-items:center;gap:var(--space-2);font-size:var(--fs-sm);color:var(--color-text-muted);flex-wrap:wrap;display:flex}.quick button{min-width:3rem;min-height:40px;padding:0 var(--space-3);border:1.5px solid var(--color-border);background:var(--color-bg);color:var(--color-primary);font:inherit;font-weight:var(--fw-semibold);cursor:pointer;border-radius:999px;transition:border-color .2s,background-color .2s}.quick button:hover{border-color:var(--color-accent);background:var(--color-surface)}.quick button:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.res{padding:var(--space-5);border-radius:var(--radius-lg);background:var(--color-dark);color:var(--color-dark-text);isolation:isolate;position:relative;overflow:hidden}.res:before{content:"";z-index:-1;opacity:.7;background-image:linear-gradient(var(--bp-minor) 1px, transparent 1px), linear-gradient(90deg, var(--bp-minor) 1px, transparent 1px);background-size:24px 24px;position:absolute;inset:0}.res dl{gap:var(--space-4) var(--space-5);grid-template-columns:1fr 1fr;margin:0;display:grid}.res dl>div{min-width:0}.res dt{font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent-light)}.res dd{margin:var(--space-1) 0 0;font-size:var(--fs-lg);color:#fff;font-variant-numeric:tabular-nums}.res__big dd{font-family:var(--font-head);font-size:clamp(1.6rem,1.1rem + 2vw,2.4rem);font-weight:var(--fw-semibold);letter-spacing:-.03em;line-height:1.1}.res__big dd small{font-family:var(--font-sans);font-size:var(--fs-base);font-weight:var(--fw-medium);letter-spacing:0;color:var(--color-dark-text)}.res__note{margin:var(--space-4) 0 0;font-size:var(--fs-xs);color:var(--color-dark-text)}.res__note:empty{display:none}.res__msg{margin:var(--space-3) 0 0;font-size:var(--fs-sm);color:#fff}.res__msg:empty{display:none}.res__msg.is-warn{color:#ffe08a}.calc.is-invalid .res dd{opacity:.55}.calc__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.calc__actions .btn[disabled]{opacity:.5}.calc-formulas{gap:var(--space-5);margin-bottom:var(--space-6);display:grid}.calc-formula h3{font-size:var(--fs-lg);margin-bottom:var(--space-2)}.calc-formula .formula{margin:0 0 var(--space-2);white-space:normal;overflow-wrap:anywhere;font-size:var(--fs-base)}.calc-formula__vars{font-size:var(--fs-sm);color:var(--color-text-muted);margin:0}.calc-steps{gap:var(--space-5);margin:0;padding:0;list-style:none;display:grid}.calc-steps li{gap:var(--space-4);grid-template-columns:3rem minmax(0,1fr);align-items:start;display:grid}.calc-steps__n{background:var(--color-accent-strong);color:#fff;width:3rem;height:3rem;font-family:var(--font-head);font-weight:var(--fw-medium);border-radius:50%;place-items:center;display:grid}.calc-steps h3{margin-bottom:var(--space-1)}.calc-steps p{color:var(--color-text-muted);margin:0}.faq{border-bottom:1px solid var(--color-border)}.faq summary{cursor:pointer;padding:var(--space-5) var(--space-7) var(--space-5) 0;font-weight:var(--fw-semibold);font-size:var(--fs-lg);color:var(--color-primary);list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq__pm{border:1.5px solid var(--color-border);border-radius:50%;width:2rem;height:2rem;margin-top:-1rem;position:absolute;top:50%;right:0}.faq__pm:before,.faq__pm:after{content:"";background:var(--color-accent-strong);width:12px;height:1.5px;margin:-.75px 0 0 -6px;position:absolute;top:50%;left:50%}.faq__pm:after{transition:transform .3s var(--ease-out);transform:rotate(90deg)}.faq[open] .faq__pm:after{transform:rotate(0)}.faq p{margin:0 0 var(--space-5);color:var(--color-text-muted);line-height:1.7}.calc-cards{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,14rem),1fr));margin:0;padding:0;list-style:none;display:grid}.calc-cards--hub{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr))}.calc-card{gap:var(--space-2);height:100%;padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-bg);color:inherit;transition:border-color .25s, transform .3s var(--ease-out), box-shadow .3s var(--ease-out);text-decoration:none;display:grid}.calc-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow);transform:translateY(-4px)}.calc-card__img{border-radius:var(--radius);aspect-ratio:4/3;background:radial-gradient(120% 90% at 50% 35%,#236477 0%,#194a59 60%,#11323d 100%);display:block;overflow:hidden}.calc-card__img svg,.calc-card__svg{width:100%;height:100%;display:block}.calc-card__name{font-family:var(--font-head);font-size:var(--fs-xl);font-weight:var(--fw-medium);letter-spacing:-.02em;color:var(--color-primary)}.calc-card__vars{font-size:var(--fs-sm);color:var(--color-text-muted)}.calc-card .arrow-link{color:var(--color-accent-strong);margin-top:var(--space-2)}.calc-card:hover .arrow-link svg{transform:translate(5px)}.calc-links{margin-top:var(--space-6);max-width:46rem}.spec__empty{padding:var(--space-5);border:1.5px dashed var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-muted);background:var(--color-bg);margin:0 0 var(--space-4)}.spec__wrap{border-radius:var(--radius-lg);background:var(--color-bg);border:1px solid var(--color-border);overflow-x:auto}.spec__table{min-width:44rem;font-size:var(--fs-sm)}.spec__table th,.spec__table td{padding:var(--space-3) var(--space-3);text-align:left;vertical-align:middle;border-bottom:1px solid var(--color-border)}.spec__table thead th{background:var(--color-surface);color:var(--color-primary);font-weight:var(--fw-semibold);white-space:nowrap}.spec__table tfoot th,.spec__table tfoot td{background:var(--color-surface);color:var(--color-primary);border-bottom:0}.spec__name{min-width:14rem;font-weight:var(--fw-medium)}.spec__qty{width:5rem;min-height:40px;padding:0 var(--space-2);font:inherit;border:1.5px solid var(--color-border);border-radius:var(--radius-sm)}.spec__qty:focus-visible{outline:3px solid var(--color-focus);outline-offset:1px}.spec__act{white-space:nowrap;text-align:right}.spec__act button{min-height:40px;padding:0 var(--space-2);font:inherit;font-size:var(--fs-sm);color:var(--color-accent-strong);cursor:pointer;background:0 0;border:0;text-decoration:underline}.spec__act button:hover{color:var(--color-accent-strong-hover)}.spec__actions{align-items:center;gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.spec__actions .btn{min-height:44px}.spec__clear{font:inherit;font-size:var(--fs-sm);color:var(--color-text-muted);cursor:pointer;min-height:44px;padding:0 var(--space-2);background:0 0;border:0;margin-left:auto;text-decoration:underline}.spec__note{margin:var(--space-4) 0 0;font-size:var(--fs-sm);color:var(--color-text-muted)}.spec__status{margin:var(--space-2) 0 0;min-height:1.5em;font-weight:var(--fw-medium);color:var(--color-accent-strong)}.spec__prompt{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-4);border-radius:var(--radius-lg);border-left:4px solid var(--color-focus);background:#fff6db;flex-wrap:wrap;display:flex}.spec__prompt[hidden]{display:none}.spec__prompt span{flex:16rem}.spec__prompt .btn{min-height:44px}@media (width<=700px){.spec__table{min-width:0}.spec__table thead{display:none}.spec__table tr{gap:var(--space-1) var(--space-3);padding:var(--space-3);border-bottom:1px solid var(--color-border);grid-template-columns:1fr 1fr;display:grid}.spec__table tbody td{justify-content:space-between;gap:var(--space-2);border:0;padding:2px 0;display:flex}.spec__table td:before{content:attr(data-label) ": ";color:var(--color-text-muted)}.spec__table td.spec__name{font-weight:var(--fw-semibold);grid-column:1/-1}.spec__table td.spec__name:before,.spec__table td.spec__act:before{content:none}.spec__table td:first-child{display:none}.spec__act{grid-column:1/-1;justify-content:flex-end}.spec__table tfoot tr{gap:var(--space-3);flex-wrap:wrap;display:flex}.spec__table tfoot th,.spec__table tfoot td{padding:0}.spec__table tfoot td:empty{display:none}.spec__table tfoot td:before{color:var(--color-text-muted);font-weight:var(--fw-regular)}}.spec-print{display:none}@media print{@page{size:A4;margin:14mm 12mm}body>:not(main),main>:not([data-spec-print]){display:none!important}body{background:#fff!important;padding:0!important}.spec-print{color:#000;font-size:11pt;line-height:1.4;display:block!important}.spec-print__head{border-bottom:2px solid #194a59;justify-content:space-between;align-items:flex-end;gap:12mm;margin-bottom:6mm;padding-bottom:5mm;display:flex}.spec-print__head svg{color:#194a59;width:auto;height:11mm}.spec-print table{border-collapse:collapse;width:100%;font-size:10pt}.spec-print th,.spec-print td{text-align:left;vertical-align:top;border:1px solid #888;padding:2mm 2.5mm}.spec-print thead th{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#e8eef0!important}.spec-print tfoot th,.spec-print tfoot td{-webkit-print-color-adjust:exact;print-color-adjust:exact;font-weight:700;background:#f3f6f7!important}.spec-print th:not(:nth-child(2)){white-space:nowrap}.spec-print tr{break-inside:avoid}.spec-print p{color:#333;margin:5mm 0 0;font-size:9pt}.spec-print footer{border-top:1px solid #888;margin-top:8mm;padding-top:3mm;font-size:9pt}}
