/* Print3DPro calculator preview */
.p3dp-calculator { max-width: 1180px; margin: 0 auto; padding: 82px 24px 104px; }
.p3dp-calculator__intro { max-width: 660px; margin-bottom: 34px; }
.p3dp-calculator__eyebrow { color: #3646ce; font-weight: 800; font-size: 12px; letter-spacing: .16em; margin: 0 0 12px; }
.p3dp-calculator__intro h2 { font-size: clamp(36px, 4.2vw, 58px); line-height: 1; letter-spacing: -.045em; margin: 0 0 16px; }
.p3dp-calculator__intro > p:last-child { font-size: 18px; color: #596573; line-height: 1.55; }
.p3dp-calculator__grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(300px, .8fr); gap: 26px; align-items: start; }
.p3dp-calculator__panel, .p3dp-calculator__summary { border-radius: 22px; border: 1px solid #dbe2ea; background: #fff; box-shadow: 0 15px 45px rgba(23, 37, 67, .08); }
.p3dp-calculator__panel { padding: 30px; }
.p3dp-dropzone { display: block; padding: 38px 24px; text-align: center; border: 1.5px dashed #8da1bb; border-radius: 16px; background: linear-gradient(135deg, #f6f8ff, #f3fcff); cursor: pointer; }
.p3dp-dropzone input { display: none; }
.p3dp-dropzone__icon { width: 44px; height: 44px; display: grid; place-items: center; margin: 0 auto 12px; color: #fff; background: linear-gradient(135deg,#3646ce,#00a3b7); border-radius: 13px; font-size: 24px; }
.p3dp-dropzone strong { display: block; font-size: 17px; color: #17233a; }
.p3dp-dropzone small { display: block; margin-top: 8px; color: #68778a; }
.p3dp-file-name { min-height: 20px; margin: 11px 0 0; color: #3646ce; font-weight: 700; text-align: center; font-size: 14px; }
.p3dp-fields { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; margin-top: 27px; }
.p3dp-field { display: grid; gap: 8px; color: #344155; font-size: 14px; font-weight: 700; }
.p3dp-field select, .p3dp-quantity { font: inherit; color: #1c2a40; background: #fff; border: 1px solid #cbd6e2; border-radius: 10px; padding: 13px 14px; }
.p3dp-field--range { grid-column: 1 / -1; }
.p3dp-range-row { display: flex; align-items: center; gap: 16px; }
.p3dp-range-row input { accent-color: #3646ce; flex: 1; }
.p3dp-range-row output { min-width: 42px; text-align: right; color: #3646ce; }
.p3dp-calculator__summary { position: sticky; top: 26px; padding: 30px; background: linear-gradient(160deg,#121c57,#1b3f9d 57%,#058eaa); color: #fff; }
.p3dp-calculator__summary small { opacity: .72; font-weight: 700; letter-spacing: .12em; }
.p3dp-calculator__summary h3 { margin: 12px 0 25px; font-size: 27px; }
.p3dp-summary-row { display: flex; justify-content: space-between; gap: 18px; padding: 13px 0; border-top: 1px solid rgba(255,255,255,.16); color: rgba(255,255,255,.8); }
.p3dp-summary-row strong { color: #fff; }
.p3dp-price { font-size: 41px; letter-spacing: -.05em; margin: 10px 0 8px; }
.p3dp-summary-note { font-size: 13px; color: rgba(255,255,255,.72); line-height: 1.45; }
.p3dp-calculator__summary button { width: 100%; margin-top: 17px; padding: 15px 18px; border: 0; border-radius: 10px; background: #fff; color: #17235d; font: 800 15px inherit; cursor: pointer; }
.p3dp-calculator__demo { margin: 14px 0 0; font-size: 12px; line-height: 1.4; color: rgba(255,255,255,.66); }
@media (max-width: 820px) { .p3dp-calculator { padding: 62px 20px; } .p3dp-calculator__grid { grid-template-columns: 1fr; } .p3dp-calculator__summary { position: static; } }
@media (max-width: 540px) { .p3dp-calculator__panel,.p3dp-calculator__summary { padding: 22px; } .p3dp-fields { grid-template-columns: 1fr; } }
