.lp-sr-wrap{
	--lp-accent:#e8472b;
	--lp-navy:#1b2a41;
	--lp-line:#e7eaef;
	--lp-text:#2b2f36;
	--lp-muted:#6b7280;
	--lp-maxw:none;
	font-family:inherit;color:var(--lp-text);
	width:100%;max-width:var(--lp-maxw);margin:0 auto;padding:6px 2px 10px;
}
.lp-sr-wrap *{box-sizing:border-box;}

.lp-sr-title{font-size:27px;font-weight:800;color:var(--lp-navy);margin:0 0 6px;letter-spacing:-.01em;line-height:1.2;}
.lp-sr-sub{font-size:15px;color:var(--lp-muted);margin:0 0 24px;max-width:760px;}

.lp-sr-notice{padding:15px 20px;border-radius:12px;margin:0 0 22px;font-size:15px;line-height:1.5;box-shadow:0 10px 24px -16px rgba(16,24,40,.4);}
.lp-sr-notice.success{background:#e9f8ef;border:1px solid #b6e6c7;color:#1c7a40;}
.lp-sr-notice.error{background:#fdecea;border:1px solid #f6c2b5;color:#a3361f;}

/* ---------- table card ---------- */
.lp-sr-card{
	border-radius:18px;overflow:hidden;background:#fff;
	border:1px solid rgba(16,24,40,.06);
	box-shadow:0 2px 4px rgba(16,24,40,.05), 0 28px 60px -30px rgba(16,24,40,.45);
}
.lp-sr-tablescroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
table.lp-sr-table{width:100%;border-collapse:separate;border-spacing:0;min-width:840px;font-size:13.5px;line-height:1.6;margin:0;}

table.lp-sr-table thead th{
	background:var(--lp-navy);
	background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(0,0,0,.20)), var(--lp-navy);
	color:#fff;font-weight:600;text-align:left;padding:17px 18px;
	font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;
	box-shadow:inset 0 -1px 0 rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.14);
}
table.lp-sr-table thead th.col-check{text-align:center;width:160px;}

table.lp-sr-table tbody td{border-top:1px solid var(--lp-line);padding:16px 18px;vertical-align:top;background:#fff;transition:background .15s ease, box-shadow .15s ease;}
table.lp-sr-table tbody tr:nth-child(even) td{background:#fcfcfd;}
table.lp-sr-table tbody tr:hover td{background:#f3f6fa;}
table.lp-sr-table tbody tr.lp-row-selected td{background:#fff5f1;box-shadow:inset 3px 0 0 var(--lp-accent);}

.lp-sr-svc-name{font-weight:700;color:var(--lp-navy);width:160px;font-size:14px;}
.lp-sr-deliv ul{margin:0;padding-left:18px;}
.lp-sr-deliv li{margin-bottom:3px;color:#475467;}

/* ---------- 3D checkbox ---------- */
.lp-sr-checkcell{text-align:center;width:160px;}
.lp-sr-checkbox{display:inline-flex;cursor:pointer;position:relative;}
.lp-sr-checkbox input{position:absolute;opacity:0;width:0;height:0;}
.lp-sr-box{
	width:36px;height:36px;border-radius:10px;
	display:inline-flex;align-items:center;justify-content:center;
	background:linear-gradient(180deg,#ffffff,#eceff3);
	border:1px solid #c6ccd6;
	box-shadow:0 1px 0 rgba(255,255,255,.9) inset, 0 3px 6px rgba(16,24,40,.14), 0 1px 1px rgba(16,24,40,.08);
	transition:transform .12s ease, box-shadow .12s ease, background .12s ease, border-color .12s ease;
}
.lp-sr-box svg{width:21px;height:21px;opacity:0;transform:scale(.5) rotate(-10deg);transition:all .16s cubic-bezier(.2,.8,.3,1.5);}
.lp-sr-checkbox:hover .lp-sr-box{transform:translateY(-1px);box-shadow:0 1px 0 rgba(255,255,255,.9) inset, 0 6px 12px rgba(16,24,40,.18);}

.lp-sr-checkbox input:checked + .lp-sr-box{
	background:var(--lp-accent);
	background:linear-gradient(180deg, color-mix(in srgb, var(--lp-accent) 84%, white), var(--lp-accent));
	border-color:var(--lp-accent);
	border-color:color-mix(in srgb, var(--lp-accent) 65%, black);
	box-shadow:0 1px 0 rgba(255,255,255,.45) inset, 0 8px 16px -6px rgba(16,24,40,.45);
}
.lp-sr-checkbox input:checked + .lp-sr-box svg{opacity:1;transform:scale(1) rotate(0);}
.lp-sr-checkbox input:active + .lp-sr-box{transform:translateY(1px) scale(.95);}
.lp-sr-checkbox input:focus-visible + .lp-sr-box{outline:none;box-shadow:0 0 0 4px rgba(232,71,43,.28), 0 3px 6px rgba(16,24,40,.14);}

/* ---------- contact card ---------- */
.lp-sr-contact{
	margin-top:26px;background:#fff;border-radius:18px;padding:30px;
	border:1px solid rgba(16,24,40,.06);
	box-shadow:0 2px 4px rgba(16,24,40,.05), 0 28px 60px -34px rgba(16,24,40,.4);
}
.lp-sr-contact h3{font-size:19px;color:var(--lp-navy);margin:0 0 20px;font-weight:800;}
.lp-sr-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.lp-sr-field{display:flex;flex-direction:column;}
.lp-sr-field.full{grid-column:1 / -1;}
.lp-sr-field label{font-size:13px;font-weight:700;color:var(--lp-navy);margin-bottom:7px;}
.lp-sr-field input[type=text],.lp-sr-field input[type=email],.lp-sr-field input[type=tel],.lp-sr-field textarea,.lp-sr-field input[type=file]{
	width:100%;padding:13px 14px;border:1px solid #d4d8e0;border-radius:11px;font-size:14.5px;font-family:inherit;background:#fbfcfe;color:var(--lp-text);
	box-shadow:inset 0 1px 2px rgba(16,24,40,.07);
	transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.lp-sr-field input:focus,.lp-sr-field textarea:focus{
	border-color:var(--lp-accent);background:#fff;outline:none;
	box-shadow:inset 0 1px 2px rgba(16,24,40,.05), 0 0 0 4px rgba(232,71,43,.18);
}
.lp-sr-field textarea{min-height:120px;resize:vertical;}
.lp-sr-field input[type=file]{padding:11px 12px;cursor:pointer;}
.lp-sr-field .hint{font-size:12.5px;color:#98a2b3;margin-top:7px;}

/* ---------- 3D submit ---------- */
.lp-sr-submit{margin-top:26px;}
.lp-sr-submit button{
	background:var(--lp-accent);
	background:linear-gradient(180deg, color-mix(in srgb, var(--lp-accent) 86%, white), var(--lp-accent));
	color:#fff;border:0;border-radius:13px;padding:16px 48px;font-size:15.5px;font-weight:800;cursor:pointer;letter-spacing:.02em;
	box-shadow:0 14px 26px -12px rgba(232,71,43,.6), 0 3px 0 rgba(120,30,15,.45), 0 1px 0 rgba(255,255,255,.35) inset;
	transition:transform .1s ease, box-shadow .12s ease, filter .15s ease;
}
.lp-sr-submit button:hover{filter:brightness(1.04);transform:translateY(-2px);box-shadow:0 18px 30px -12px rgba(232,71,43,.65), 0 3px 0 rgba(120,30,15,.45), 0 1px 0 rgba(255,255,255,.35) inset;}
.lp-sr-submit button:active{transform:translateY(1px);box-shadow:0 6px 14px -8px rgba(232,71,43,.6), 0 1px 0 rgba(120,30,15,.45) inset;}

.lp-sr-hp{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden;}

@media(max-width:600px){
	.lp-sr-grid{grid-template-columns:1fr;}
	.lp-sr-contact{padding:22px;}
	.lp-sr-title{font-size:23px;}
}
