.inkeri-calculator-page{--navy:#102943;--green:#15977b;--green2:#0e765f;--line:#dbe4ec;--soft:#f3f7fa;--muted:#69798c;color:var(--navy);font-size:16px}
.ic-shell{max-width:1040px;margin:0 auto;padding-bottom:110px}.ic-intro{margin:0 0 22px}.ic-intro h1{font-size:clamp(2rem,4vw,3.2rem);line-height:1.04;letter-spacing:-.04em;margin:.3rem 0 .7rem}.ic-intro p{max-width:760px;margin:0;color:var(--muted);font-size:1.08rem;line-height:1.55}.ic-kicker{color:var(--green);font-size:.8rem;font-weight:900;letter-spacing:.16em}
.ic-progress{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:14px}.ic-progress button{position:relative;display:flex;align-items:center;gap:9px;min-height:52px;border:0;border-bottom:4px solid #dfe6ed;background:transparent;color:#8592a0;font:inherit;text-align:left}.ic-progress b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e8eef3}.ic-progress span{font-weight:800}.ic-progress button.active{border-color:var(--green);color:var(--navy)}.ic-progress button.active b,.ic-progress button.done b{background:var(--green);color:#fff}.ic-progress button.done{border-color:#8ed0c1;color:var(--green2)}
.ic-wizard{min-height:590px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 18px 50px rgba(16,41,67,.08);overflow:hidden}.ic-stage{padding:clamp(20px,4vw,42px);animation:icIn .2s ease}.ic-stage[hidden]{display:none}.ic-stage-head{text-align:center;margin-bottom:24px}.ic-stage-head>span{color:var(--green);font-weight:900;font-size:.82rem;letter-spacing:.1em}.ic-stage-head h2{margin:.35rem 0 0;font-size:clamp(1.5rem,3vw,2.2rem);letter-spacing:-.025em}.ic-back{min-height:44px;border:0;background:transparent;color:var(--green2);font-weight:800;padding:0 10px 0 0}
.ic-carousel{display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;gap:16px;max-width:720px;margin:0 auto}.ic-arrow{width:56px;height:56px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);font-size:2.2rem;line-height:1}.ic-arrow:hover{border-color:var(--green);color:var(--green2)}.ic-construction{text-align:center}.ic-drawing{height:280px;display:grid;place-items:center;background:var(--soft);border-radius:18px;padding:24px}.ic-drawing svg,.ic-mini-drawing svg,.ic-review-drawing svg{width:100%;height:100%;fill:none;stroke:var(--navy);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ic-drawing svg *,.ic-mini-drawing svg *,.ic-review-drawing svg *{vector-effect:non-scaling-stroke}.ic-drawing .glass,.ic-mini-drawing .glass,.ic-review-drawing .glass{fill:#f8fbfd}.ic-drawing .opening,.ic-mini-drawing .opening,.ic-review-drawing .opening{stroke:#5fa7dc;stroke-width:1.25;stroke-dasharray:5 5}.ic-construction h3{font-size:1.35rem;margin:18px 0 5px}.ic-construction p{color:var(--muted);margin:0}.ic-dots{display:flex;justify-content:center;gap:7px;margin:18px 0}.ic-dots button{width:9px;height:9px;border:0;border-radius:50%;padding:0;background:#cbd5df}.ic-dots button.active{width:28px;border-radius:8px;background:var(--green)}
.ic-primary{display:block;width:100%;max-width:480px;min-height:52px;margin:20px auto 0;border:0;border-radius:13px;background:var(--green);color:#fff;font:inherit;font-weight:900}.ic-primary:hover{background:var(--green2)}.ic-primary:disabled{background:#aebac4}.ic-selected-mini{display:flex;align-items:center;gap:16px;max-width:720px;margin:0 auto 18px;padding:12px;border-radius:14px;background:var(--soft)}.ic-mini-drawing{width:95px;height:72px;display:grid;place-items:center;flex:0 0 95px}.ic-selected-mini strong{font-size:1.05rem}
.ic-work-list{display:grid;gap:10px;max-width:720px;margin:0 auto}.ic-work{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center;width:100%;min-height:70px;padding:13px 15px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--navy);font:inherit;text-align:left}.ic-work:hover,.ic-work.selected{border-color:var(--green);background:#eef9f5}.ic-checkmark{display:grid;place-items:center;width:28px;height:28px;border:2px solid #acbac7;border-radius:8px;font-weight:900}.ic-work.selected .ic-checkmark{border-color:var(--green);background:var(--green);color:#fff}.ic-work b,.ic-work small{display:block}.ic-work small{margin-top:3px;color:var(--muted);line-height:1.35}.ic-subfield{display:grid;gap:6px;margin:8px 0 4px 46px}.ic-subfield.hidden{display:none}.ic-subfield span{color:var(--muted);font-size:.88rem}.ic-subfield select{min-height:46px;border:1px solid var(--line);border-radius:11px;padding:8px;background:#fff}.ic-inline-error{color:#cb3348;text-align:center;font-weight:750}
.ic-field{display:grid;gap:7px;max-width:720px;margin:15px auto}.ic-field>span{font-weight:800;font-size:.9rem}.ic-field input,.ic-field textarea,.ic-field select{width:100%;min-height:50px;border:1px solid #cbd7e1;border-radius:12px;padding:11px 13px;background:#fff;color:var(--navy);font:inherit}.ic-field textarea{resize:vertical}.ic-field input:focus,.ic-field textarea:focus,.ic-field select:focus{outline:3px solid rgba(21,151,123,.14);border-color:var(--green)}.invalid input,.invalid textarea,.invalid select,.invalid{border-color:#d94356!important}
.ic-review-current{display:grid;grid-template-columns:220px 1fr;gap:26px;align-items:center;max-width:720px;margin:0 auto;padding:18px;border:1px solid var(--line);border-radius:17px}.ic-review-drawing{height:180px;display:grid;place-items:center;background:var(--soft);border-radius:12px;padding:12px}.ic-review-current h3{margin:0 0 12px}.ic-review-current ul{list-style:none;margin:0;padding:0;display:grid;gap:6px;color:var(--green2);font-weight:750}.ic-review-current p{color:var(--muted)}.ic-quantity{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:720px;margin:18px auto;padding:14px 16px;background:var(--soft);border-radius:14px;font-weight:800}.ic-counter{display:grid;grid-template-columns:48px 54px 48px;align-items:center;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.ic-counter button{height:48px;border:0;background:#edf2f6;color:var(--navy);font-size:1.4rem;font-weight:900}.ic-counter output{text-align:center;font-size:1.1rem;font-weight:900}
.ic-confirm[hidden]{display:none}.ic-confirm{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:18px;background:rgba(16,41,67,.58)}.ic-confirm-card{width:min(520px,100%);padding:28px;border-radius:18px;background:#fff;box-shadow:0 22px 70px rgba(16,41,67,.28);text-align:center}.ic-confirm-card h3{margin:0 0 22px;font-size:1.35rem;line-height:1.35}.ic-confirm-card>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ic-confirm-card button{min-height:52px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);font:inherit;font-weight:850;cursor:pointer}.ic-confirm-card button.ic-primary{border-color:var(--green);background:var(--green);color:#fff}
.ic-confirm-card>.ic-handle-options{grid-template-columns:repeat(auto-fit,minmax(64px,1fr))}.ic-handle-options button{background:var(--green);border-color:var(--green);color:#fff;font-size:1.15rem}
.ic-request-drawer{position:fixed;z-index:80;left:50%;bottom:14px;width:min(760px,calc(100% - 24px));transform:translateX(-50%);border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 18px 55px rgba(8,29,49,.22);overflow:hidden}.ic-request-toggle{display:flex;align-items:center;width:100%;min-height:58px;border:0;background:var(--navy);color:#fff;padding:0 18px;font:inherit;font-weight:850}.ic-request-toggle b{display:grid;place-items:center;min-width:30px;height:30px;margin-left:10px;border-radius:50%;background:var(--green)}.ic-request-toggle i{margin-left:auto;font-style:normal;transition:transform .2s}.ic-request-drawer.open .ic-request-toggle i{transform:rotate(180deg)}.ic-request-body{display:none;max-height:52vh;overflow:auto;padding:14px}.ic-request-drawer.open .ic-request-body{display:block}.ic-request-item{display:grid;grid-template-columns:28px 68px minmax(0,1fr);gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #e8edf1}.ic-request-item>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#eaf4f1;color:var(--green2);font-weight:900}.ic-cart-thumb{display:grid;place-items:center;width:68px;height:54px;padding:5px;border-radius:9px;background:var(--soft)}.ic-cart-thumb svg{display:block;width:100%;height:100%;fill:none;stroke:var(--navy);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ic-cart-thumb svg *{vector-effect:non-scaling-stroke}.ic-cart-thumb .opening{stroke:#5fa7dc;stroke-width:1.35;stroke-dasharray:6 6}.ic-cart-copy{min-width:0;overflow-wrap:anywhere}.ic-request-item strong,.ic-request-item small{display:block}.ic-request-item small{margin-top:4px;color:var(--muted);line-height:1.35}.ic-request-item button{min-height:34px;border:0;background:transparent;color:#be3548;font-weight:750}.ic-row-actions{grid-column:2/-1;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:2px 8px}.ic-row-actions button{padding:2px 0;font-size:.83rem}.ic-request-actions{
 display:grid;
 grid-template-columns:minmax(0,.95fr) minmax(0,1.35fr);
 gap:9px;
 width:100%;
 margin-top:12px
}
.ic-request-actions>button{
 min-width:0;
 width:100%;
 max-width:100%;
 min-height:48px;
 padding:9px 8px;
 box-sizing:border-box;
 border:1px solid var(--line);
 border-radius:11px;
 background:#fff;
 color:var(--navy);
 font:inherit;
 font-size:.88rem;
 line-height:1.18;
 font-weight:850;
 white-space:normal;
 overflow-wrap:anywhere;
 text-align:center
}
.ic-request-actions .ic-primary{
 margin:0;
 min-width:0;
 width:100%;
 max-width:100%;
 border:0;
 background:var(--green);
 color:#fff
}
.ic-final-list{max-width:720px;margin:0 auto 20px;padding:0 15px;border:1px solid var(--line);border-radius:14px}.ic-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:720px;margin:0 auto}.ic-consent{display:flex;align-items:flex-start;gap:10px;max-width:720px;margin:18px auto;line-height:1.45}.ic-consent input{width:22px;height:22px;flex:0 0 22px}.ic-mail-notice{max-width:720px;margin:8px auto 16px;padding:12px 14px;border-left:4px solid #e08a18;border-radius:8px;background:#fff7e8;color:var(--ink);font-size:.92rem;line-height:1.45;font-weight:650}.ic-hp{position:absolute!important;left:-9999px!important}.ic-form-result{max-width:720px;margin:12px auto;text-align:center;font-weight:800}.ic-form-result.error{color:#ca3348}.ic-success{text-align:center;padding-top:90px}.ic-success-mark{display:grid;place-items:center;width:84px;height:84px;margin:0 auto 22px;border-radius:50%;background:var(--green);color:#fff;font-size:3rem}.ic-success h2{font-size:2rem}.ic-success strong{font-size:1.4rem}.ic-success p{color:var(--muted)}
@keyframes icIn{from{opacity:.25;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:700px){.ic-shell{padding-bottom:36px}.ic-intro{padding:0 4px}.ic-progress span{display:none}.ic-progress button{justify-content:center}.ic-wizard{min-height:520px;border-radius:16px}.ic-stage{padding:18px 14px}.ic-stage[data-step="4"]{padding-bottom:24px}.ic-carousel{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px}.ic-arrow{width:44px;height:44px}.ic-drawing{height:220px;padding:12px}.ic-review-current{grid-template-columns:1fr}.ic-review-drawing{height:170px}.ic-form-grid{grid-template-columns:1fr}.ic-request-actions{grid-template-columns:1fr}.ic-request-item{grid-template-columns:25px 58px minmax(0,1fr)}.ic-cart-thumb{width:58px;height:48px}.ic-row-actions{grid-column:2/-1;justify-content:flex-start}.ic-request-drawer{left:auto;right:12px;top:var(--ic-mobile-drawer-top,8px);bottom:auto;width:52px;transform:none;border-radius:50%;transition:width .18s ease}.ic-request-drawer:not(.open){height:52px;border:0;background:transparent;box-shadow:none;overflow:visible}.ic-request-drawer:not(.open) .ic-request-toggle{justify-content:center;width:52px;min-height:52px;height:52px;padding:0;border-radius:50%;background:var(--green);box-shadow:0 8px 22px rgba(8,29,49,.24)}.ic-request-drawer:not(.open) .ic-request-toggle span,.ic-request-drawer:not(.open) .ic-request-toggle i{display:none}.ic-request-drawer:not(.open) .ic-request-toggle b{width:52px;min-width:52px;height:52px;margin:0;border-radius:50%;background:transparent;color:#fff;font-size:1.15rem}.ic-request-drawer.open{left:12px;right:auto;top:var(--ic-mobile-drawer-top,8px);bottom:auto;width:calc(100% - 24px);transform:none;border-radius:18px}.ic-request-body{max-height:calc(100dvh - var(--ic-mobile-drawer-top,8px) - 78px)}.ic-complete .ic-request-drawer{display:none}.ic-stage-head{margin-bottom:18px}.ic-work{min-height:72px;padding:12px}.ic-subfield{margin-left:0}.ic-quantity{align-items:flex-start;flex-direction:column}.ic-counter{align-self:stretch;grid-template-columns:1fr 58px 1fr}.ic-success{padding-top:60px}}
@media(max-width:360px){.ic-drawing{height:185px}.ic-construction h3{font-size:1.1rem}.ic-carousel{grid-template-columns:40px minmax(0,1fr) 40px}.ic-arrow{width:40px;height:40px}}
.ic-row-actions{display:flex;flex-wrap:wrap;justify-content:flex-start}.ic-row-actions button{min-height:34px;color:var(--green2)}.ic-row-actions button:last-child{color:#be3548}
@media(max-width:700px){.ic-request-drawer:not(.open) .ic-request-toggle{background:#c2185b}}

/* Compact engineering layout. */
@media(min-width:821px){
 .ic-shell{max-width:1180px;display:grid;grid-template-columns:minmax(0,820px) 320px;gap:18px;align-items:start;padding-bottom:40px}
 .ic-intro,.ic-progress{grid-column:1/-1}
 .ic-intro{margin-bottom:12px}.ic-intro h1{font-size:2.35rem}
 .ic-wizard{grid-column:1;min-height:0}
 .ic-stage{padding:24px 30px}.ic-stage-head{margin-bottom:16px}.ic-stage-head h2{font-size:1.75rem}
 .ic-carousel{grid-template-columns:46px minmax(0,1fr) 46px;max-width:650px;gap:10px}
 .ic-arrow{width:46px;height:46px;font-size:1.8rem}
 .ic-drawing{height:230px;padding:18px}
 .ic-construction h3{font-size:1.18rem;margin-top:12px}
 .ic-dots{margin:10px 0}.ic-primary{margin-top:12px}
 .ic-request-drawer{position:sticky;grid-column:2;top:18px;left:auto;bottom:auto;width:100%;min-width:0;max-width:100%;transform:none;border-radius:16px;box-shadow:0 12px 34px rgba(8,29,49,.12);overflow:hidden}
 .ic-request-body{min-width:0}
 .ic-request-actions>*{min-width:0}
 .ic-request-body{display:block;max-height:560px}.ic-request-toggle i{display:none}
}
.ic-position{display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:30px;border-radius:15px;background:#eaf4f1;color:var(--green2);font-weight:900;font-size:.85rem}
#inkeriCalc .ic-drawing svg .opening,#inkeriCalc .ic-mini-drawing svg .opening,#inkeriCalc .ic-review-drawing svg .opening{stroke:var(--navy)!important;stroke-width:1.8!important;stroke-dasharray:none!important}
#inkeriCalc .ic-drawing svg .bevel,#inkeriCalc .ic-mini-drawing svg .bevel,#inkeriCalc .ic-review-drawing svg .bevel{stroke:var(--navy)!important;stroke-width:1.15!important}
#inkeriCalc .ic-drawing svg .fixed,#inkeriCalc .ic-mini-drawing svg .fixed,#inkeriCalc .ic-review-drawing svg .fixed{stroke:var(--navy)!important;stroke-width:1.8!important}
#inkeriCalc .ic-drawing svg .opening,#inkeriCalc .ic-mini-drawing svg .opening,#inkeriCalc .ic-review-drawing svg .opening{stroke:#5fa7dc!important;stroke-width:1.45!important;stroke-dasharray:7 7!important}
.ic-field-hint{display:block;color:var(--muted);font-size:.82rem;line-height:1.4;font-weight:600}.ic-success-total{display:block;margin-top:12px;color:var(--green2)}

/* INKERI Transport Price autocomplete in calculator */
.ic-place-autocomplete{position:relative;width:100%}
.ic-place-autocomplete .ic-place-search{padding-right:46px}
.ic-place-clear{position:absolute;right:8px;top:50%;z-index:3;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:9px;background:transparent;color:#7b8a96;font-size:24px;line-height:1;cursor:pointer}
.ic-place-clear:hover{background:#eef5f2;color:var(--green2)}
.ic-place-suggest{position:absolute;z-index:50;left:0;right:0;top:calc(100% + 6px);max-height:310px;overflow:auto;border:1px solid #cbd7e1;border-radius:13px;background:#fff;box-shadow:0 16px 38px rgba(25,49,63,.16);padding:6px}
.ic-place-suggest[hidden]{display:none!important}
.ic-place-option{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:54px;border:0;border-radius:9px;background:#fff;padding:8px 11px;color:var(--navy);font:inherit;text-align:left;cursor:pointer}
.ic-place-option:hover,.ic-place-option.is-active{background:#eef9f5}
.ic-place-option span{min-width:0;display:grid;gap:2px}
.ic-place-option strong{font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ic-place-option small{color:var(--muted);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ic-place-option b{flex:0 0 auto;color:var(--green2);font-size:.85rem}
.ic-place-field.invalid .ic-place-search{border-color:#d94356!important}
@media(max-width:700px){.ic-place-suggest{max-height:260px}.ic-place-option{min-height:50px}}
.ic-consent.invalid{padding:10px 12px;border:1px solid #d94356;border-radius:10px;background:#fff4f5;color:#9f2434}
.ic-consent.invalid input{outline:3px solid rgba(217,67,86,.15)}

.ic-consent-error{max-width:720px;margin:-10px auto 14px;padding:10px 12px;border:1px solid #d94356;border-radius:10px;background:#fff4f5;color:#9f2434;font-weight:800;line-height:1.35}.ic-consent-error[hidden]{display:none!important}
