/* Print3D 2.7.3 — WŁAMYWACZ homepage palette; presentation only. */
.p3dq-shell{
	--p3d-red:var(--wp--preset--color--primary,#DA0A0A);
	--p3d-red-dark:var(--wp--preset--color--primary-dark,#B00006);
	--p3d-bg:var(--wp--preset--color--base-2,#F7F8F8);
	--p3d-panel:#1A1A1A;
	--p3d-panel-2:#0E0E0E;
	--p3d-line:#555;
	--p3d-line-soft:#444;
	--p3d-white:#f5f5f5;
	--p3d-muted:#d2d2d2;
	--p3d-muted-2:#ccc;
	width:100%;
	max-width:1232px;
	margin:24px auto;
	padding:0;
	border:0;
	border-radius:14px;
	background:var(--p3d-bg);
	color:var(--p3d-white);
	box-shadow:none;
	font-family:var(--wp--preset--font-family--body,Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif);
	box-sizing:border-box
}
.p3dq-shell *{box-sizing:border-box}
.p3dq-shell button,.p3dq-shell input,.p3dq-shell select,.p3dq-shell textarea{font:inherit}
.p3dq-shell button{cursor:pointer}

.p3dq-top{
	padding:24px;
	border-bottom:1px solid var(--p3d-line-soft);
	background:linear-gradient(135deg,#1A1A1A,#0E0E0E);border-radius:14px 14px 0 0;}
.p3dq-top h1{
	margin:0 0 4px;
	color:#fff;
	font-family:var(--wp--preset--font-family--body,Inter,Arial,sans-serif);
	font-size:clamp(24px,2.1vw,38px);
	font-weight:850;
	letter-spacing:.015em;
	line-height:1.05;
	text-transform:none
}
.p3dq-top__copy p{margin:0;color:#c3c7ca;font-size:14px}
.p3dq-benefits{
	display:flex;
	align-items:stretch;
	gap:0;
	max-width:850px;
	margin-top:16px
}
.p3dq-benefit{
	display:flex;
	align-items:center;
	gap:12px;
	min-width:0;
	padding:0 26px 0 0;
	margin-right:26px;
	border-right:1px solid var(--p3d-line)
}
.p3dq-benefit:last-child{border-right:0;margin-right:0}
.p3dq-benefit__icon{color:var(--p3d-red);font-size:31px;line-height:1}
.p3dq-benefit strong{display:block;color:#fff;font-size:13px}
.p3dq-benefit small{display:block;margin-top:2px;color:var(--p3d-muted);font-size:12px}

.p3dq-workspace{
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(280px,340px);
	gap:18px;
	padding:18px;
	background:var(--wp--preset--color--base-2,#F7F8F8);}
.p3dq-builder{min-width:0}
.p3dq-grid{display:grid;gap:12px}
.p3dq-grid--top{grid-template-columns:1.05fr .95fr}
.p3dq-grid--body{grid-template-columns:1.05fr .95fr;margin-top:12px}
.p3dq-stack{display:flex;flex-direction:column;gap:12px;min-width:0}

.p3dq-panel{
	min-width:0;
	padding:18px;
	border:1px solid var(--p3d-line);
	border-radius:14px;
	background:linear-gradient(135deg,#1A1A1A,#0E0E0E);
	box-shadow:none;}
.p3dq-panel h2{
	display:flex;
	align-items:center;
	gap:8px;
	margin:0 0 10px;
	color:#f4f4f4;
	font-size:14px;
	font-weight:800;
	line-height:1.2;
	text-transform:none;
	letter-spacing:0
}
.p3dq-panel h2>span{
	display:grid;
	place-items:center;
	width:25px;
	height:25px;
	flex:0 0 25px;
	border:1.5px solid var(--p3d-red);
	border-radius:50%;
	color:var(--p3d-red);
	font-size:13px
}

.p3dq-dropzone{
	min-height:150px;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	padding:18px;
	text-align:center;
	border:1px dashed #555c61;
	border-radius:14px;
	background:
		linear-gradient(145deg,rgba(255,255,255,.02),transparent),
		var(--p3d-panel-2);
	color:#fff;
	transition:.2s
}
.p3dq-dropzone:hover,.p3dq-dropzone.dragging{border-color:var(--p3d-red);background:#100b0c}
.p3dq-upload-cloud{font-size:44px;line-height:.8;color:#d7dadd;font-weight:200}
.p3dq-dropzone strong{margin-top:4px;font-size:14px}
.p3dq-dropzone em{margin-top:2px;color:#b0b4b8;font-size:12px;font-style:normal}
.p3dq-dropzone small{margin-top:12px;color:var(--p3d-muted);font-size:12px;line-height:1.6}
.p3dq-file-info{
	display:flex;
	justify-content:space-between;
	gap:10px;
	margin-top:8px;
	padding:9px 10px;
	border:1px solid rgba(239,23,23,.42);
	border-radius:5px;
	background:rgba(239,23,23,.06);
	color:#fff;
	font-size:12px
}
.p3dq-file-info span{color:var(--p3d-muted)}

.p3dq-preview-drawer{margin-top:9px;border-top:1px solid var(--p3d-line);padding-top:9px}
.p3dq-preview-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:6px;color:#d6d9db;font-size:12px}
.p3dq-preview-head span{color:var(--p3d-muted)}
.p3dq-viewer{
	height:210px;
	overflow:hidden;
	border:1px solid var(--p3d-line);
	border-radius:5px;
	background:radial-gradient(circle at 50% 35%,rgba(239,23,23,.1),transparent 42%),var(--p3d-panel-2)
}
.p3dq-viewer canvas{display:block;width:100%!important;height:100%!important}
.p3dq-viewer-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--p3d-muted)}
.p3dq-viewer-placeholder span{font-size:38px}
.p3dq-viewer-placeholder p{margin:4px 0 0;font-size:12px}
.p3dq-dimensions{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:6px}
.p3dq-dimensions>div{padding:6px 8px;border:1px solid var(--p3d-line);border-radius:4px;background:var(--p3d-panel-2);font-size:12px}
.p3dq-dimensions span{color:var(--p3d-red);margin-right:5px}
.p3dq-dimensions-note{grid-column:1/-1;color:var(--p3d-muted);font-size:12px;line-height:1.5}

.p3dq-row{
	display:grid;
	grid-template-columns:145px minmax(0,1fr);
	align-items:center;
	gap:10px;
	margin-top:6px
}
.p3dq-row>label{color:#d8dbdd;font-size:12px}
.p3dq-row select,.p3dq-row input,.p3dq-contact-dialog input{
	width:100%;
	height:36px;
	padding:0 10px;
	border:1px solid var(--p3d-line);
	border-radius:4px;
	outline:0;
	background:var(--p3d-panel-2);
	color:#e8e9ea
}
.p3dq-row select:focus,.p3dq-row input:focus,.p3dq-contact-dialog input:focus,.p3dq-notes textarea:focus{border-color:var(--p3d-red);box-shadow:0 0 0 2px rgba(239,23,23,.08)}
.p3dq-stepper{display:grid;grid-template-columns:36px minmax(50px,1fr) 36px;border:1px solid var(--p3d-line);border-radius:4px;overflow:hidden}
.p3dq-stepper button{height:34px;border:0;background:var(--p3d-panel-2);color:#9da2a6;font-size:18px}
.p3dq-stepper input{height:34px;border:0;border-left:1px solid var(--p3d-line);border-right:1px solid var(--p3d-line);border-radius:0;text-align:center;-moz-appearance:textfield}
.p3dq-stepper input::-webkit-inner-spin-button{display:none}
.p3dq-scale{display:grid;grid-template-columns:minmax(0,1fr) 38px 85px;border:1px solid var(--p3d-line);border-radius:4px;overflow:hidden}
.p3dq-scale input{height:34px;border:0;border-radius:0}
.p3dq-scale>span,.p3dq-scale>small{display:flex;align-items:center;justify-content:center;border-left:1px solid var(--p3d-line);color:#c2c5c7}
.p3dq-scale>small{color:var(--p3d-muted);font-size:12px}

.p3dq-materials{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.p3dq-material-card{
	position:relative;
	min-height:112px;
	padding:10px 7px 8px;
	border:1px solid var(--p3d-line);
	border-radius:6px;
	background:var(--p3d-panel-2);
	color:#fff;
	text-align:center;
	transition:.18s
}
.p3dq-material-card:hover{border-color:#5c6267;transform:translateY(-1px)}
.p3dq-material-card.is-active{border-color:var(--p3d-red);box-shadow:inset 0 0 0 1px rgba(239,23,23,.28)}
.p3dq-material-card.is-active:after,.p3dq-choice.is-active:after,.p3dq-color-card.is-active:after{
	content:"✓";
	position:absolute;
	right:5px;
	top:5px;
	display:grid;
	place-items:center;
	width:17px;
	height:17px;
	border-radius:50%;
	background:var(--p3d-red);
	color:#fff;
	font-size:12px;
	font-weight:900
}
.p3dq-spool{
	position:relative;
	display:block;
	width:54px;
	height:40px;
	margin:3px auto 8px
}
.p3dq-spool:before,.p3dq-spool:after{
	content:"";
	position:absolute;
	left:4px;
	right:4px;
	height:10px;
	border:2px solid #363b3e;
	border-radius:50%;
	background:#171a1c
}
.p3dq-spool:before{top:1px}
.p3dq-spool:after{bottom:1px}
.p3dq-spool i{
	position:absolute;
	left:9px;right:9px;top:8px;bottom:8px;
	border-left:2px solid #303538;border-right:2px solid #303538;
	background:repeating-linear-gradient(0deg,#171a1c,#171a1c 2px,#262b2e 3px,#262b2e 4px)
}
.p3dq-material-card strong{display:block;font-size:13px}
.p3dq-material-card small{display:block;margin-top:4px;color:var(--p3d-muted);font-size:12px;line-height:1.35}

.p3dq-colors{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.p3dq-color-card{
	position:relative;
	min-height:72px;
	padding:8px 5px 6px;
	border:1px solid var(--p3d-line);
	border-radius:5px;
	background:var(--p3d-panel-2);
	color:#dfe1e3;
	text-align:center
}
.p3dq-color-card.is-active{border-color:var(--p3d-red)}
.p3dq-swatch{display:block;width:37px;height:37px;margin:0 auto 4px;border:1px solid rgba(255,255,255,.28);border-radius:4px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.25)}
.p3dq-color-card small{font-size:12px}

.p3dq-option-line{display:grid;grid-template-columns:100px minmax(0,1fr);gap:9px;align-items:center;margin-top:8px}
.p3dq-option-line>label{font-size:12px;color:#d5d8da}
.p3dq-segments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.p3dq-segments--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.p3dq-segments button{
	position:relative;
	min-height:32px;
	padding:5px 8px;
	border:1px solid var(--p3d-line);
	border-radius:4px;
	background:var(--p3d-panel-2);
	color:#d7dadd;
	font-size:12px;
	line-height:1.15
}
.p3dq-segments button.is-active{border-color:var(--p3d-red);color:#fff}
.p3dq-segments button.is-active:after{
	content:"✓";position:absolute;right:-4px;top:-5px;display:grid;place-items:center;
	width:15px;height:15px;border-radius:50%;background:var(--p3d-red);font-size:12px
}

.p3dq-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;margin-bottom:10px}
.p3dq-check-grid label{display:flex;align-items:center;gap:7px;color:#c8cccf;font-size:12px}
.p3dq-check-grid input{width:16px;height:16px;accent-color:var(--p3d-red)}
.p3dq-notes{display:block}
.p3dq-notes>span{display:block;margin-bottom:6px;color:#c8cccf;font-size:12px}
.p3dq-notes small{color:var(--p3d-muted)}
.p3dq-notes textarea{
	width:100%;
	min-height:106px;
	padding:9px 10px;
	resize:vertical;
	border:1px solid var(--p3d-line);
	border-radius:5px;
	outline:0;
	background:var(--p3d-panel-2);
	color:#e4e6e7;
	font-size:12px
}
.p3dq-notes em{display:block;margin-top:3px;color:var(--p3d-muted);text-align:right;font-size:12px;font-style:normal}

.p3dq-delivery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.p3dq-choice{
	position:relative;
	display:flex;
	align-items:center;
	gap:9px;
	min-height:64px;
	padding:8px;
	border:1px solid var(--p3d-line);
	border-radius:5px;
	background:var(--p3d-panel-2);
	color:#fff;
	text-align:left
}
.p3dq-choice.is-active{border-color:var(--p3d-red)}
.p3dq-choice>b{display:grid;place-items:center;min-width:34px;height:34px;color:var(--p3d-red);font-size:24px;font-weight:400}
.p3dq-choice span{min-width:0}
.p3dq-choice strong{display:block;font-size:12px}
.p3dq-choice small{display:block;margin-top:2px;color:var(--p3d-muted);font-size:12px;line-height:1.25}

.p3dq-sidebar{min-width:0;padding-top:0}
.p3dq-summary-card{
	position:sticky;
	top:18px;
	padding:22px;
	border:1px solid var(--p3d-line);
	border-radius:14px;
	background:linear-gradient(135deg,#1A1A1A,#0E0E0E);
	box-shadow:none;max-height:calc(100vh - 36px);overflow-y:auto;scrollbar-width:thin;}
.p3dq-summary-card>h2{
	margin:0 0 12px;
	padding-bottom:10px;
	border-bottom:1px solid var(--p3d-line);
	color:#e9eaeb;
	font-size:15px;
	font-weight:800
}
.p3dq-summary-list>div{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	padding:5px 0;
	color:var(--p3d-muted);
	font-size:12px
}
.p3dq-summary-list span{white-space:nowrap}
.p3dq-summary-list span>b{color:#bfc3c6;font-weight:500}
.p3dq-summary-list>div>strong{
	max-width:55%;
	color:#d8dbdd;
	font-size:12px;
	font-weight:500;
	text-align:right;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap
}
.p3dq-estimate{
	margin-top:14px;
	padding:16px 12px;
	border:1px dashed rgba(239,23,23,.72);
	border-radius:14px;
	text-align:center;
	background:radial-gradient(circle at 50% 45%,rgba(239,23,23,.08),transparent 65%)
}
.p3dq-estimate small{display:block;color:#a4a9ad;font-size:12px}
.p3dq-estimate>strong{display:block;margin:4px 0;color:var(--p3d-red);font-size:42px;line-height:1;font-weight:850}
.p3dq-estimate p{max-width:250px;margin:8px auto 0;color:var(--p3d-muted);font-size:12px;line-height:1.4}
.p3dq-time{
	display:flex;
	align-items:center;
	gap:12px;
	margin-top:12px;
	padding:12px;
	border:1px solid var(--p3d-line);
	border-radius:6px;
	background:var(--p3d-panel-2)
}
.p3dq-time>span{font-size:34px;color:#c8cccf}
.p3dq-time small{display:block;color:var(--p3d-muted);font-size:12px}
.p3dq-time strong{display:block;margin-top:2px;color:#e1e3e4;font-size:17px}
.p3dq-submit-open,.p3dq-submit{
	width:100%;
	min-height:48px;
	margin-top:12px;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:12px;
	border:0;
	border-radius:5px;
	background:var(--p3d-red);
	color:#fff;
	font-weight:700;
	font-size:14px;
	letter-spacing:.02em;
	text-transform:none;
	box-shadow:none;}
.p3dq-submit-open:hover,.p3dq-submit:hover{background:var(--p3d-red-dark);}
.p3dq-submit-open span,.p3dq-submit span{margin-left:auto;margin-right:10px;font-size:22px;font-weight:300}
.p3dq-consult{
	min-height:42px;
	margin-top:8px;
	display:flex;
	align-items:center;
	justify-content:center;
	border:1px solid var(--p3d-muted);
	border-radius:5px;
	color:#e1e3e4!important;
	font-size:12px;
	text-decoration:none!important
}
.p3dq-consult:hover{border-color:#b9bdc0;color:#fff!important}
.p3dq-security-note{margin-top:12px;padding-top:10px;border-top:1px solid var(--p3d-line);color:var(--p3d-muted);text-align:center;font-size:12px}
.p3dq-submit-status{margin-top:10px;padding:10px;border-radius:4px;background:var(--p3d-panel-2);color:#d8dbdd;font-size:12px}
.p3dq-submit-status.success{border:1px solid #2e7d4c;background:#0c1911}
.p3dq-submit-status.error{border:1px solid #9e3035;background:#1c0b0d}
.p3dq-submit-status span{display:block;margin-top:4px;color:var(--p3d-muted)}

.p3dq-bottom-benefits{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:0;
	margin:0 clamp(20px,2.3vw,42px) 20px;
	border:1px solid var(--p3d-line);
	border-radius:14px;
	background:var(--p3d-panel-2)
}
.p3dq-bottom-benefits>div{
	display:flex;
	align-items:center;
	gap:15px;
	min-height:92px;
	padding:14px 20px;
	border-right:1px solid var(--p3d-line)
}
.p3dq-bottom-benefits>div:last-child{border-right:0}
.p3dq-bottom-benefits>div>span{min-width:48px;color:var(--p3d-red);font-size:42px;line-height:1;text-align:center}
.p3dq-bottom-benefits strong{font-size:12px}
.p3dq-bottom-benefits p{margin:4px 0 0;color:var(--p3d-muted);font-size:12px;line-height:1.5}

.p3dq-contact-modal[hidden]{display:none!important}
.p3dq-contact-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:20px}
.p3dq-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(4px)}
.p3dq-contact-dialog{
	position:relative;
	z-index:1;
	width:min(720px,100%);
	max-height:calc(100vh - 40px);
	overflow:auto;
	padding:26px;
	border:1px solid var(--p3d-line);
	border-radius:8px;
	background:var(--p3d-panel);
	box-shadow:0 30px 80px rgba(0,0,0,.55)
}
.p3dq-modal-close{position:absolute;right:12px;top:10px;width:34px;height:34px;border:0;background:transparent;color:var(--p3d-muted);font-size:27px}
.p3dq-modal-kicker{color:var(--p3d-red);font-size:12px;font-weight:900;letter-spacing:.13em}
.p3dq-contact-dialog h2{margin:4px 0 6px;color:#fff;font-size:27px}
.p3dq-contact-dialog>p{margin:0 0 18px;color:var(--p3d-muted);font-size:12px}
.p3dq-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.p3dq-contact-grid label>span{display:block;margin-bottom:5px;color:#cbd0d3;font-size:12px}
.p3dq-contact-grid label>span small{color:var(--p3d-muted)}
.p3dq-privacy{display:flex;gap:9px;margin-top:15px;color:var(--p3d-muted);font-size:12px;line-height:1.5}
.p3dq-privacy input{margin-top:2px;accent-color:var(--p3d-red)}
.p3dq-modal-actions{display:grid;grid-template-columns:1fr 1.2fr;gap:9px;margin-top:18px}
.p3dq-modal-secondary{min-height:45px;border:1px solid #4a5054;border-radius:5px;background:var(--p3d-panel-2);color:#c8cccf;font-size:12px;font-weight:700}
.p3dq-modal-actions .p3dq-submit{margin-top:0}

.p3dq-hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

@media(max-width:1250px){
	.p3dq-workspace{grid-template-columns:minmax(0,1fr) 330px}
	.p3dq-materials{grid-template-columns:repeat(3,minmax(0,1fr))}
	.p3dq-bottom-benefits{grid-template-columns:1fr 1fr}
	.p3dq-bottom-benefits>div:nth-child(2){border-right:0}
	.p3dq-bottom-benefits>div:nth-child(-n+2){border-bottom:1px solid var(--p3d-line)}
}
@media(max-width:980px){
	.p3dq-workspace{grid-template-columns:1fr}
	.p3dq-summary-card{position:relative;top:auto}
	.p3dq-sidebar{grid-row:1}
	.p3dq-grid--top,.p3dq-grid--body{grid-template-columns:1fr}
	.p3dq-materials{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:720px){
	.p3dq-top{padding-inline:14px}
	.p3dq-benefits{display:grid;grid-template-columns:1fr;gap:8px}
	.p3dq-benefit{border-right:0;border-bottom:1px solid var(--p3d-line);padding:0 0 8px;margin:0}
	.p3dq-workspace{padding-inline:10px}
	.p3dq-materials{grid-template-columns:repeat(2,minmax(0,1fr))}
	.p3dq-colors{grid-template-columns:repeat(3,minmax(0,1fr))}
	.p3dq-row{grid-template-columns:1fr;gap:4px}
	.p3dq-option-line{grid-template-columns:1fr;gap:4px}
	.p3dq-delivery{grid-template-columns:1fr}
	.p3dq-check-grid{grid-template-columns:1fr}
	.p3dq-bottom-benefits{grid-template-columns:1fr;margin-inline:10px}
	.p3dq-bottom-benefits>div{border-right:0!important;border-bottom:1px solid var(--p3d-line)!important}
	.p3dq-bottom-benefits>div:last-child{border-bottom:0!important}
	.p3dq-contact-grid,.p3dq-modal-actions{grid-template-columns:1fr}
}

/* v1.6.0 — na tabletach i telefonach konfiguracja poprzedza podsumowanie. */
@media(max-width:980px){
	.p3dq-shell .p3dq-sidebar{grid-row:auto!important}
}

/* v1.5.1 — konfiguracja parametrów nie zależy od uploadu pliku. */
.p3dq-submit-open.is-waiting-file{
    opacity:.82;
}
.p3dq-submit-open.is-waiting-file:before{
    content:"Najpierw wybierz parametry — plik dodasz przed wysłaniem";
    display:none;
}


/* v1.5.2 — fallback SSR: sekcje nie mogą być puste bez JS/podglądu 3D. */
.p3dq-color-card .p3dq-swatch:empty {
	background: #646a6e;
}
.p3dq-materials:empty::after,
.p3dq-colors:empty::after,
.p3dq-segments:empty::after {
	content: "Opcje są chwilowo niedostępne.";
	display: block;
	grid-column: 1 / -1;
	padding: 12px;
	border: 1px solid var(--p3d-line);
	border-radius: 5px;
	color: var(--p3d-muted);
	font-size: 11px;
}


/* v1.5.3 — porządek sekcji 1–7 i niezależna interaktywność */
.p3dq-grid--ordered{
	grid-template-columns:minmax(0,1fr) minmax(0,1fr);
	align-items:start;
}
.p3dq-section-delivery{
	grid-column:1 / -1;
}
.p3dq-shell button,
.p3dq-shell input,
.p3dq-shell select,
.p3dq-shell textarea,
.p3dq-material-card,
.p3dq-color-card,
.p3dq-choice,
.p3dq-segments button{
	pointer-events:auto!important;
	position:relative;
	z-index:1;
}
.p3dq-row select{
	cursor:pointer;
	appearance:auto;
	-webkit-appearance:menulist;
}
.p3dq-row input[type="number"]{
	cursor:text;
}
.p3dq-stepper button{
	user-select:none;
}
.p3dq-color-card[data-color*="Czarn"] .p3dq-swatch{background:#050505!important}
.p3dq-color-card[data-color*="Biał"] .p3dq-swatch,
.p3dq-color-card[data-color*="Bial"] .p3dq-swatch{background:#f2f2f2!important}
.p3dq-color-card[data-color*="Czerw"] .p3dq-swatch{background:#d20b0b!important}
.p3dq-color-card[data-color*="Szar"] .p3dq-swatch{background:#656a6e!important}
.p3dq-color-card[data-color*="Niebies"] .p3dq-swatch{background:#1268c4!important}
.p3dq-color-card[data-color*="Ziel"] .p3dq-swatch{background:#2f8a4e!important}
.p3dq-color-card[data-color*="Przezro"] .p3dq-swatch{
	background:linear-gradient(135deg,#edf3f6 0%,#9eabb3 45%,#e4ecef 100%)!important
}
.p3dq-color-card[data-color="Inny"] .p3dq-swatch{
	background:linear-gradient(135deg,#ef1717 0 20%,#1268c4 20% 40%,#2f8a4e 40% 60%,#f2f2f2 60% 80%,#656a6e 80%)!important
}
@media(max-width:980px){
	.p3dq-grid--ordered{grid-template-columns:1fr}
	.p3dq-section-delivery{grid-column:auto}
}


/* v1.5.5 — rdzeń kreatora działa natywnie, także bez JavaScript */
.p3dq-native-choice{
	position:absolute!important;
	width:1px!important;
	height:1px!important;
	opacity:0!important;
	pointer-events:none!important;
	clip:rect(0 0 0 0)!important;
	clip-path:inset(50%)!important;
	overflow:hidden!important;
	white-space:nowrap!important;
}
.p3dq-material-card,
.p3dq-color-card,
.p3dq-segment,
.p3dq-choice{
	cursor:pointer!important;
	user-select:none;
}
.p3dq-material-card:has(.p3dq-native-choice:checked),
.p3dq-color-card:has(.p3dq-native-choice:checked),
.p3dq-segment:has(.p3dq-native-choice:checked),
.p3dq-choice:has(.p3dq-native-choice:checked){
	border-color:var(--p3d-red)!important;
	color:#fff;
}
.p3dq-material-card:has(.p3dq-native-choice:focus-visible),
.p3dq-color-card:has(.p3dq-native-choice:focus-visible),
.p3dq-segment:has(.p3dq-native-choice:focus-visible),
.p3dq-choice:has(.p3dq-native-choice:focus-visible){
	outline:2px solid #fff;
	outline-offset:2px;
}
.p3dq-segment{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:32px;
	padding:5px 8px;
	border:1px solid var(--p3d-line);
	border-radius:4px;
	background:var(--p3d-panel-2);
	color:#d7dadd;
	font-size:12px;
	line-height:1.15;
	text-align:center;
}
.p3dq-segment>span{
	display:block;
	width:100%;
}
.p3dq-segment.is-active,
.p3dq-segment:has(.p3dq-native-choice:checked){
	border-color:var(--p3d-red)!important;
}
.p3dq-segment.is-active:after,
.p3dq-segment:has(.p3dq-native-choice:checked):after{
	content:"✓";
	position:absolute;
	right:-4px;
	top:-5px;
	display:grid;
	place-items:center;
	width:15px;
	height:15px;
	border-radius:50%;
	background:var(--p3d-red);
	color:#fff;
	font-size:12px;
	font-weight:900;
}
.p3dq-material-card.is-active:after,
.p3dq-material-card:has(.p3dq-native-choice:checked):after,
.p3dq-color-card.is-active:after,
.p3dq-color-card:has(.p3dq-native-choice:checked):after,
.p3dq-choice.is-active:after,
.p3dq-choice:has(.p3dq-native-choice:checked):after{
	content:"✓";
	position:absolute;
	right:5px;
	top:5px;
	display:grid;
	place-items:center;
	width:17px;
	height:17px;
	border-radius:50%;
	background:var(--p3d-red);
	color:#fff;
	font-size:12px;
	font-weight:900;
}
.p3dq-segments button{
	display:none!important; /* stary markup nie powinien już wystąpić */
}


/* v1.5.6 — jedno źródło prawdy: natywne radio :checked */
.p3dq-choice-wrap{
	position:relative;
	min-width:0;
	height:100%;
}
.p3dq-choice-wrap>.p3dq-material-card,
.p3dq-choice-wrap>.p3dq-color-card,
.p3dq-choice-wrap>.p3dq-segment,
.p3dq-choice-wrap>.p3dq-choice{
	width:100%;
	height:100%;
	margin:0;
}
.p3dq-material-card.is-active,
.p3dq-color-card.is-active,
.p3dq-segment.is-active,
.p3dq-choice.is-active{
	border-color:var(--p3d-line)!important;
	box-shadow:none!important;
}
.p3dq-material-card.is-active:after,
.p3dq-color-card.is-active:after,
.p3dq-segment.is-active:after,
.p3dq-choice.is-active:after{
	content:none!important;
	display:none!important;
}
.p3dq-native-choice:checked + .p3dq-material-card,
.p3dq-native-choice:checked + .p3dq-color-card,
.p3dq-native-choice:checked + .p3dq-segment,
.p3dq-native-choice:checked + .p3dq-choice{
	border-color:var(--p3d-red)!important;
	box-shadow:inset 0 0 0 1px rgba(239,23,23,.26)!important;
	color:#fff!important;
}
.p3dq-native-choice:checked + .p3dq-material-card:after,
.p3dq-native-choice:checked + .p3dq-color-card:after,
.p3dq-native-choice:checked + .p3dq-choice:after{
	content:"✓"!important;
	display:grid!important;
	position:absolute;
	right:5px;
	top:5px;
	place-items:center;
	width:17px;
	height:17px;
	border-radius:50%;
	background:var(--p3d-red);
	color:#fff;
	font-size:12px;
	font-weight:900;
}
.p3dq-native-choice:checked + .p3dq-segment:after{
	content:"✓"!important;
	display:grid!important;
	position:absolute;
	right:-4px;
	top:-5px;
	place-items:center;
	width:15px;
	height:15px;
	border-radius:50%;
	background:var(--p3d-red);
	color:#fff;
	font-size:12px;
	font-weight:900;
}
.p3dq-native-choice:focus-visible + .p3dq-material-card,
.p3dq-native-choice:focus-visible + .p3dq-color-card,
.p3dq-native-choice:focus-visible + .p3dq-segment,
.p3dq-native-choice:focus-visible + .p3dq-choice{
	outline:2px solid #fff;
	outline-offset:2px;
}

/* Ilość sztuk: pole działa także bez zewnętrznego JS */
.p3dq-stepper{
	position:relative;
	overflow:visible!important;
}
.p3dq-stepper input[type="number"]{
	position:relative!important;
	z-index:4!important;
	pointer-events:auto!important;
	cursor:text!important;
	min-width:0!important;
	-webkit-appearance:auto!important;
	-moz-appearance:auto!important;
	appearance:auto!important;
	background:var(--p3d-panel-2)!important;
	color:#fff!important;
}
.p3dq-stepper input[type="number"]::-webkit-inner-spin-button,
.p3dq-stepper input[type="number"]::-webkit-outer-spin-button{
	display:block!important;
	opacity:1!important;
	-webkit-appearance:auto!important;
}
.p3dq-stepper button{
	position:relative!important;
	z-index:5!important;
	pointer-events:auto!important;
	cursor:pointer!important;
}


/* v1.5.7 — spokojniejsze proporcje nagłówka i więcej oddechu */
.p3dq-top{
	padding-top:36px!important;
	padding-bottom:24px!important;
}
.p3dq-top h1{
	font-size:clamp(20px,1.55vw,29px)!important;
	line-height:1.08!important;
	margin-bottom:8px!important;
	letter-spacing:.01em!important;
}
.p3dq-top__copy p{
	margin-top:0!important;
	font-size:13px!important;
	line-height:1.5!important;
}
.p3dq-benefits{
	margin-top:27px!important;
}
.p3dq-benefit{
	padding-top:3px!important;
	padding-bottom:3px!important;
}
.p3dq-workspace{
	padding-top:14px!important;
}

@media(max-width:720px){
	.p3dq-top{
		padding-top:24px!important;
		padding-bottom:18px!important;
	}
	.p3dq-top h1{
		font-size:22px!important;
	}
	.p3dq-benefits{
		margin-top:20px!important;
	}
	.p3dq-workspace{
		padding-top:10px!important;
	}
}


/* v1.5.8 — poprawa kart po przejściu na input + label.
   Label jest domyślnie inline; to powodowało fragmentowanie ramek na kilka linii. */
.p3dq-materials > .p3dq-choice-wrap,
.p3dq-colors > .p3dq-choice-wrap{
	display:block!important;
	min-width:0!important;
	height:100%!important;
}
.p3dq-choice-wrap > .p3dq-material-card{
	display:flex!important;
	flex-direction:column!important;
	align-items:center!important;
	justify-content:center!important;
	width:100%!important;
	height:100%!important;
	min-height:112px!important;
	box-sizing:border-box!important;
	white-space:normal!important;
}
.p3dq-choice-wrap > .p3dq-color-card{
	display:flex!important;
	flex-direction:column!important;
	align-items:center!important;
	justify-content:center!important;
	width:100%!important;
	height:100%!important;
	min-height:72px!important;
	box-sizing:border-box!important;
	white-space:normal!important;
}
.p3dq-choice-wrap > .p3dq-material-card strong,
.p3dq-choice-wrap > .p3dq-material-card small,
.p3dq-choice-wrap > .p3dq-color-card small{
	width:100%;
	text-align:center;
}
/* Stare selektory :has() z v1.5.5 nie są już źródłem stanu po zmianie markup. */
.p3dq-material-card:has(.p3dq-native-choice:checked),
.p3dq-color-card:has(.p3dq-native-choice:checked){
	border-color:var(--p3d-line)!important;
	box-shadow:none!important;
}
.p3dq-material-card:has(.p3dq-native-choice:checked):after,
.p3dq-color-card:has(.p3dq-native-choice:checked):after{
	content:none!important;
	display:none!important;
}
/* Jedynym zaznaczeniem pozostaje radio będące rodzeństwem etykiety. */
.p3dq-native-choice:checked + .p3dq-material-card,
.p3dq-native-choice:checked + .p3dq-color-card{
	border-color:var(--p3d-red)!important;
	box-shadow:inset 0 0 0 1px rgba(239,23,23,.26)!important;
}
.p3dq-native-choice:checked + .p3dq-material-card:after,
.p3dq-native-choice:checked + .p3dq-color-card:after{
	content:"✓"!important;
	display:grid!important;
}


/* v1.5.9 — wyśrodkowanie zaznaczonych bloków + większe odstępy pionowe */

/* Więcej oddechu od menu do początku modułu. */
.p3dq-top{
	padding-top:28px!important;
	padding-bottom:22px!important;
}

/* Zielona ramka: nagłówek + opis wyśrodkowane. */
.p3dq-top__copy{
	width:100%!important;
	max-width:none!important;
	margin:0 auto!important;
	text-align:center!important;
}
.p3dq-top h1{
	text-align:center!important;
	margin-left:auto!important;
	margin-right:auto!important;
}
.p3dq-top__copy p{
	text-align:center!important;
	margin-left:auto!important;
	margin-right:auto!important;
}

/* Niebieska kreska: więcej miejsca pomiędzy nagłówkiem i trzema zaletami. */
.p3dq-benefits{
	display:grid!important;
	grid-template-columns:repeat(3,minmax(0,1fr))!important;
	width:100%!important;
	max-width:none!important;
	margin:24px auto 0!important;
	gap:0!important;
}

/* Zielona ramka: każda zaleta jako wyśrodkowany komplet ikona + tekst. */
.p3dq-benefit{
	display:flex!important;
	align-items:center!important;
	justify-content:center!important;
	gap:13px!important;
	width:100%!important;
	min-width:0!important;
	margin:0!important;
	padding:6px 24px!important;
	text-align:left!important;
	border-right:1px solid var(--p3d-line)!important;
}
.p3dq-benefit:last-child{
	border-right:0!important;
}
.p3dq-benefit>div{
	min-width:0;
}
.p3dq-benefit strong,
.p3dq-benefit small{
	text-align:left!important;
}

/* Niebieska kreska: wyraźniejszy odstęp przed właściwym formularzem. */
.p3dq-workspace{
	padding-top:28px!important;
}

/* Zielona ramka: czas realizacji wyśrodkowany jako cały zestaw. */
.p3dq-time{
	justify-content:center!important;
	text-align:center!important;
	padding-left:18px!important;
	padding-right:18px!important;
}
.p3dq-time>div{
	text-align:center!important;
}
.p3dq-time small,
.p3dq-time strong{
	text-align:center!important;
}

/* Zielona ramka: etykieta CTA dokładnie na środku,
   strzałka pozostaje niezależnie przy prawej krawędzi. */
.p3dq-submit-open{
	position:relative!important;
	justify-content:center!important;
	text-align:center!important;
	padding-left:48px!important;
	padding-right:48px!important;
}
.p3dq-submit-open>span{
	position:absolute!important;
	right:16px!important;
	top:50%!important;
	transform:translateY(-50%)!important;
	margin:0!important;
}

/* Drobne wyrównanie pionowe prawego panelu po zmianach. */
.p3dq-summary-card{
	padding-top:18px!important;
}
.p3dq-summary-card>h2{
	text-align:center!important;
}

/* Tablet / telefon — zachowujemy rytm, ale bez przesadnych pustych pól. */
@media(max-width:980px){
	.p3dq-top{
		padding-top:38px!important;
		padding-bottom:26px!important;
	}
	.p3dq-benefits{
		margin-top:32px!important;
	}
	.p3dq-workspace{
		padding-top:20px!important;
	}
}

@media(max-width:720px){
	.p3dq-top{
		padding-top:28px!important;
		padding-bottom:22px!important;
	}
	.p3dq-benefits{
		grid-template-columns:1fr!important;
		margin-top:26px!important;
	}
	.p3dq-benefit{
		justify-content:flex-start!important;
		padding:10px 0!important;
		border-right:0!important;
		border-bottom:1px solid var(--p3d-line)!important;
	}
	.p3dq-benefit:last-child{
		border-bottom:0!important;
	}
	.p3dq-workspace{
		padding-top:16px!important;
	}
}

/* Commerce additions remain scoped to the configurator. */
.p3dq-shell .p3dq-account-status {padding:12px 14px;border-radius:8px;background:#f3f5f7;color:#25313e;font-weight:600}
.p3dq-shell .p3dq-login-link {color:var(--p3dq-accent,#d9382f);text-decoration:underline;font-weight:700}
.p3dq-shell .p3dq-login-help {font-size:13px}
.p3dq-shell .p3dq-delivery-address {margin:18px 0}
.p3dq-shell .p3dq-estimate strong {font-size:clamp(22px,3vw,36px);overflow-wrap:anywhere}
.p3dq-shell .p3dq-submit-status a {display:block;margin-top:12px;text-decoration:underline}
.p3dq-shell [hidden] {display:none!important}

.p3dq-shell .p3dq-profile-select{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 18px}
.p3dq-shell .p3dq-profile-select button{min-height:44px;padding:8px 10px;border:1px solid #4a5259;border-radius:6px;background:var(--p3d-panel-2);color:#e9ecee;font-family:inherit;font-weight:700;font-size:12px;line-height:1.2;cursor:pointer}
.p3dq-shell .p3dq-profile-select button[aria-pressed="true"]{border-color:var(--p3d-red);background:#1A1A1A;color:#fff}
.p3dq-shell .p3dq-profile-select button:focus-visible,.p3dq-shell .p3dq-auto-buy:focus-visible,.p3dq-shell .p3dq-design-submit:focus-visible{outline:3px solid #ff7777;outline-offset:2px}
.p3dq-shell .p3dq-advanced{margin:12px 0}.p3dq-shell .p3dq-advanced summary{cursor:pointer;color:#e6e6e6;font-weight:700}
.p3dq-shell .p3dq-auto-buy,.p3dq-shell .p3dq-design-submit{min-height:45px;padding:10px 18px;border:1px solid #ed2424;border-radius:5px;background:#201719;color:#fff;font-weight:800;cursor:pointer}
.p3dq-shell .p3dq-auto-buy{width:100%;margin-top:10px}.p3dq-shell .p3dq-auto-buy:disabled,.p3dq-shell .p3dq-design-submit:disabled{opacity:.6;cursor:wait}
.p3dq-shell #p3dq-auto-status,.p3dq-shell [data-p3dq-id="p3dq-auto-status"]{margin:8px 0;line-height:1.5;color:#e5e5e5}
.p3dq-shell .p3dq-faq{margin:18px 10px}.p3dq-shell .p3dq-faq details{padding:10px 0;border-bottom:1px solid #333}.p3dq-shell .p3dq-faq summary{cursor:pointer;font-weight:700}
.p3dq-shell .p3dq-design-panel{margin:22px 10px;padding:22px}.p3dq-shell .p3dq-design-form{display:grid;gap:14px}.p3dq-shell .p3dq-design-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.p3dq-shell .p3dq-design-form label{display:grid;gap:6px;color:#eee;font-weight:600;font-size:13px}.p3dq-shell .p3dq-design-form label:has(input[type="checkbox"]){display:flex;align-items:center}
.p3dq-shell .p3dq-design-form input:not([type="checkbox"]),.p3dq-shell .p3dq-design-form textarea{width:100%;min-width:0;min-height:40px;padding:9px;border:1px solid #50555a;border-radius:5px;background:var(--p3d-panel-2);color:#fff;font:inherit}
.p3dq-shell .p3dq-design-form textarea{min-height:105px}.p3dq-shell .p3dq-design-submit{justify-self:start;background:var(--p3d-red)}.p3dq-shell .p3dq-design-form [role="status"]{min-height:20px;margin:0;color:#fff}
@media(max-width:720px){.p3dq-shell .p3dq-design-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.p3dq-shell .p3dq-design-fields label:first-child{grid-column:1/-1}.p3dq-shell .p3dq-profile-select{gap:5px}.p3dq-shell .p3dq-profile-select button{font-size:12px;padding:8px 4px}}

/* 2.3 — precise model sizing, approved print profiles and live order totals. */
.p3dq-shell .p3dq-build-volume{max-width:790px;margin:16px auto 0!important;padding:12px 18px;border:1px solid #454b51;border-radius:6px;background:var(--p3d-panel-2);color:#d8dce0!important}
.p3dq-shell .p3dq-help{color:#c0c6cb;font-size:12px;line-height:1.6;margin:12px 0}
.p3dq-shell .p3dq-units-confirmation,.p3dq-shell .p3dq-multicolor{display:flex;gap:9px;align-items:flex-start;font-size:12px;line-height:1.6;color:#d6dade;margin:14px 0}
.p3dq-shell .p3dq-units-confirmation{padding:12px;border:1px solid #6e643b;background:#252318;border-radius:5px}
.p3dq-shell .p3dq-units-confirmation input,.p3dq-shell .p3dq-multicolor input{flex:0 0 auto;accent-color:var(--p3d-red);margin-top:4px}
.p3dq-shell .p3dq-size-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px}
.p3dq-shell .p3dq-size-fields label{font-size:12px;line-height:1.5;color:#c4cbd0;min-width:0}
.p3dq-shell .p3dq-size-fields input,.p3dq-shell .p3dq-row>input{width:100%;min-width:0;padding:9px;min-height:40px;background:var(--p3d-panel-2);border:1px solid #495159;color:#fff;border-radius:4px;font:inherit}
.p3dq-shell .p3dq-size-fields input:disabled{opacity:.45}
.p3dq-shell .p3dq-oversize{margin-top:14px;padding:14px;border:1px solid #967848;border-radius:5px;background:#272219;color:#e5d3b7;font-size:12px;line-height:1.6}
.p3dq-shell .p3dq-inline-actions{display:flex;flex-wrap:wrap;gap:8px}
.p3dq-shell .p3dq-oversize button{border:1px solid #9b835d;border-radius:4px;padding:9px 12px;min-height:40px;background:#32291c;color:#fff;font:inherit;cursor:pointer}
.p3dq-shell .p3dq-native-choice:disabled+.p3dq-material-card,.p3dq-shell .p3dq-native-choice:disabled+.p3dq-choice{opacity:.38;filter:grayscale(1);cursor:not-allowed!important}
.p3dq-shell .p3dq-profile-select button{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 8px}
.p3dq-shell .p3dq-profile-select small{font-weight:400;font-size:12px;line-height:1.5;color:#bec4c9}
.p3dq-shell .p3dq-material-comparison{margin-top:18px}
.p3dq-shell .p3dq-material-comparison summary{cursor:pointer;font-size:12px;font-weight:700;color:#e7eaed;padding:10px 0}
.p3dq-shell .p3dq-material-comparison table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.5;margin-top:8px;table-layout:fixed;color:#dce0e4}
.p3dq-shell .p3dq-material-comparison th,.p3dq-shell .p3dq-material-comparison td{text-align:left;padding:9px 6px;border-bottom:1px solid #3b4146;vertical-align:top;overflow-wrap:anywhere}
.p3dq-shell .p3dq-material-comparison thead th{color:#fff;background:#272d31}
.p3dq-shell .p3dq-material-comparison th:first-child{width:29%}
.p3dq-shell .p3dq-material-comparison-cards{display:none}
.p3dq-shell .p3dq-price-breakdown{display:grid;gap:10px;margin:14px 0;font-size:12px;color:#d6dce1}
.p3dq-shell .p3dq-price-breakdown>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.p3dq-shell .p3dq-price-breakdown b{text-align:right;white-space:normal;overflow-wrap:anywhere}
.p3dq-shell .p3dq-price-breakdown .p3dq-price-total{padding-top:12px;border-top:1px solid #454b50;font-size:16px;color:#fff}
.p3dq-shell .p3dq-price-total b{font-size:22px}
.p3dq-shell .p3dq-auto-buy{background:var(--p3d-red);min-height:50px;line-height:1.5;overflow-wrap:anywhere}
.p3dq-shell .p3dq-auto-buy:disabled{background:#63282c;cursor:default}
.p3dq-shell [data-p3dq-id="p3dq-print-time"],.p3dq-shell [data-p3dq-id="p3dq-transit-time"]{display:block;margin-top:8px;font-size:12px;line-height:1.5}
.p3dq-shell .p3dq-contact-grid input,.p3dq-shell .p3dq-contact-grid select{min-width:0;max-width:100%}
.p3dq-shell .p3dq-summary-list strong{overflow-wrap:anywhere}
.p3dq-shell .p3dq-viewer canvas{touch-action:none;max-width:100%}
.p3dq-shell .p3dq-file-info strong{overflow-wrap:anywhere;min-width:0}
.p3dq-shell .p3dq-advanced .p3dq-row{margin-top:13px}
.p3dq-shell .p3dq-estimate:has([data-p3dq-id="p3dq-estimate-value"][hidden])>strong{display:none}
@media(max-width:720px){
 .p3dq-shell .p3dq-material-comparison table{display:none}
 .p3dq-shell .p3dq-material-comparison-cards{display:grid;gap:12px;margin-top:10px}
 .p3dq-shell .p3dq-material-comparison-cards article{padding:14px;border:1px solid #444b51;border-radius:6px;background:var(--p3d-panel-2)}
 .p3dq-shell .p3dq-material-comparison-cards h3{margin:0 0 12px;font-size:15px;color:#fff}
 .p3dq-shell .p3dq-material-comparison-cards dl{margin:0}
 .p3dq-shell .p3dq-material-comparison-cards dl>div{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:7px 0;border-top:1px solid #2a3238;font-size:12px;line-height:1.5}
 .p3dq-shell .p3dq-material-comparison-cards dt{color:#aeb8c1}.p3dq-shell .p3dq-material-comparison-cards dd{margin:0;color:#eef0f2}
 .p3dq-shell .p3dq-size-fields{gap:6px}.p3dq-shell .p3dq-size-fields input{padding:8px 5px}
 .p3dq-shell .p3dq-profile-select{grid-template-columns:1fr}
 .p3dq-shell .p3dq-profile-select button{align-items:flex-start;text-align:left;gap:4px;padding:12px;font-size:12px}
 .p3dq-shell .p3dq-profile-select small{font-size:12px}
 .p3dq-shell .p3dq-contact-dialog{max-height:calc(100dvh - 28px);overflow-y:auto}
 .p3dq-shell .p3dq-inline-actions>button{width:100%}
}

/* Final review actions; native hidden attributes retain authority. */
.p3dq-summary-list>div:has(.p3dq-summary-remove){flex-wrap:wrap;gap:8px}
.p3dq-summary-remove,.p3dq-summary-options button{border:1px solid #b9c1c8;background:#fff;color:#293641;border-radius:6px;padding:8px 10px;cursor:pointer;font:inherit;font-size:12px}
.p3dq-summary-options>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid #e8eaed;font-size:13px}
.p3dq-summary-options>div[hidden],.p3dq-summary-remove[hidden]{display:none}
.p3dq-summary-options button:focus-visible,.p3dq-summary-remove:focus-visible{outline:2px solid #1268c4;outline-offset:2px}
.p3dq-summary-options button:disabled,.p3dq-summary-remove:disabled{opacity:.6;cursor:wait}
/* Navigation to the existing model/photo workflows. */
.p3dq-entry-links{display:flex;flex-wrap:wrap;gap:.65rem;margin:1rem 0}
.p3dq-entry-links a{display:inline-flex;align-items:center;padding:.65rem .85rem;border:1px solid currentColor;border-radius:6px;text-decoration:none;font-weight:600}
.p3dq-entry-links a:focus-visible{outline:3px solid #d50019;outline-offset:3px}

/* Shared graphite controls. Keep product colours and the 3D model unchanged. */
.p3dq-shell{color-scheme:dark;font-size:16px}
.p3dq-shell input:not([type="checkbox"]):not([type="radio"]),.p3dq-shell select,.p3dq-shell textarea{font-size:16px!important}
.p3dq-shell input:not([type="checkbox"]):not([type="radio"]):not(.p3dq-native-choice),.p3dq-shell select{min-height:44px}
.p3dq-shell :focus-visible{outline:3px solid #DA0A0A;outline-offset:3px}
.p3dq-shell .p3dq-stepper{grid-template-columns:44px minmax(0,1fr) 44px}
.p3dq-shell .p3dq-stepper button{height:44px}
.p3dq-shell .p3dq-scale{grid-template-columns:minmax(0,1fr) 34px 85px}
.p3dq-shell .p3dq-scale input{min-width:0}
.p3dq-shell .p3dq-segment,.p3dq-shell .p3dq-color-card{min-height:44px}
.p3dq-shell .p3dq-panel h2,.p3dq-shell .p3dq-summary-card>h2{font-size:16px}
.p3dq-shell .p3dq-summary-list>div,.p3dq-shell .p3dq-summary-list>div>strong{font-size:13px}
.p3dq-shell .p3dq-summary-list>div>strong{white-space:normal;overflow-wrap:anywhere}
.p3dq-shell .p3dq-contact-dialog{color:var(--p3d-white)}
.p3dq-shell .p3dq-entry-links a{color:var(--p3d-white);background:var(--p3d-panel);border-color:var(--p3d-line);min-height:44px}
.p3dq-shell .p3dq-entry-links a:hover{border-color:var(--p3d-red)}
@media(max-width:720px){.p3dq-shell .p3dq-design-fields{grid-template-columns:minmax(0,1fr)}.p3dq-shell .p3dq-entry-links a{width:100%}.p3dq-shell .p3dq-contact-dialog{padding:22px 16px}.p3dq-shell .p3dq-modal-close{width:44px;height:44px}}

/* Clear input surfaces and native controls; no changes to uploads or pricing. */
.p3dq-shell .p3dq-contact-dialog .p3dq-privacy{align-items:flex-start}
.p3dq-shell .p3dq-contact-dialog .p3dq-privacy input[type=checkbox]{width:20px;height:20px;min-width:20px;min-height:20px;flex:0 0 20px;padding:0;margin:3px 0 0;appearance:auto;}
body .p3dq-shell{max-width:1232px!important;width:calc(100% - 24px)!important;margin:24px auto!important;}
.p3dq-shell{color-scheme:light}
.p3dq-shell h1,.p3dq-shell h2,.p3dq-shell h3{font-family:inherit!important;text-transform:none!important;letter-spacing:normal!important;line-height:1.3!important}
.p3dq-shell h1::after,.p3dq-shell h2::after,.p3dq-shell h3::after{content:none}
body .p3dq-shell .p3dq-top .p3dq-top__copy h1{font-family:var(--wp--preset--font-family--body,Inter,Arial,sans-serif)!important;font-size:clamp(26px,3vw,34px)!important}
.p3dq-shell .p3dq-panel h2,.p3dq-shell .p3dq-summary-card>h2{font-size:18px!important;color:#fff!important}
.p3dq-shell .p3dq-panel h2>span{background:var(--p3d-red);color:#fff;border:0}
.p3dq-shell input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),.p3dq-shell select,.p3dq-shell textarea{background:#fff!important;color:#1A1A1A!important;border-color:#aeb1b5!important;border-radius:7px;min-height:44px;font-size:16px!important}
.p3dq-shell input::placeholder,.p3dq-shell textarea::placeholder{color:#62666b!important}
.p3dq-shell .p3dq-contact-dialog{background:#1A1A1A;color:#fff}
.p3dq-shell .p3dq-estimate>strong{color:#fff;font-size:30px;line-height:1.35}
.p3dq-shell .p3dq-estimate{border:1px solid #666;background:#0E0E0E}
.p3dq-shell .p3dq-faq{color:#1A1A1A;margin:22px 18px}
.p3dq-shell .p3dq-faq h2,.p3dq-shell .p3dq-faq p,.p3dq-shell .p3dq-faq summary{color:#1A1A1A!important}
.p3dq-shell .p3dq-faq a{color:#B00006}
.p3dq-shell .p3dq-entry-links a{background:#0E0E0E;color:#fff;border-color:#777}
.p3dq-shell .p3dq-material-card,.p3dq-shell .p3dq-color-card,.p3dq-shell .p3dq-choice,.p3dq-shell .p3dq-profile-select button{background:#0E0E0E;color:#fff}
.p3dq-shell .p3dq-profile-select button[aria-pressed=true]{background:#1A1A1A;box-shadow:inset 4px 0 0 var(--p3d-red);color:#fff}
.p3dq-shell button{text-transform:none;letter-spacing:normal}
.p3dq-shell .p3dq-native-choice:focus-visible+label{outline:3px solid #DA0A0A;outline-offset:4px}
.p3dq-shell .p3dq-design-submit,.p3dq-shell .p3dq-auto-buy{background:var(--p3d-red);color:#fff}
.p3dq-shell .p3dq-summary-list span{white-space:normal}
.p3dq-shell .p3dq-grid--top,.p3dq-shell .p3dq-grid--body{grid-template-columns:minmax(0,1fr)}
.p3dq-shell .p3dq-row>label,.p3dq-shell .p3dq-option-line>label,.p3dq-shell .p3dq-design-form label{font-size:14px}
.p3dq-shell .p3dq-material-card small,.p3dq-shell .p3dq-choice small{font-size:13px;line-height:1.5}
@media(max-width:900px){.p3dq-shell .p3dq-workspace{grid-template-columns:minmax(0,1fr)}.p3dq-shell .p3dq-summary-card{position:static;max-height:none;overflow:visible}}
@media(max-width:720px){.p3dq-shell{width:calc(100% - 24px)}.p3dq-shell .p3dq-top{padding:20px 16px}.p3dq-shell .p3dq-workspace{padding:12px}.p3dq-shell .p3dq-panel{padding:16px}.p3dq-shell .p3dq-materials{grid-template-columns:repeat(2,minmax(0,1fr))}.p3dq-shell .p3dq-delivery{grid-template-columns:minmax(0,1fr)}.p3dq-shell .p3dq-summary-card{padding:18px}.p3dq-shell .p3dq-option-line{grid-template-columns:minmax(0,1fr)}.p3dq-shell .p3dq-benefits{flex-wrap:wrap;gap:14px}.p3dq-shell .p3dq-benefit{border:0;margin:0}.p3dq-shell .p3dq-contact-dialog{max-width:calc(100vw - 24px)}}
