.bitshop-checkout{max-width:1420px;margin:0 auto;padding:28px clamp(20px,4vw,64px) 72px;color:var(--bitshop-graphite)}
.bitshop-checkout [hidden]{display:none!important}
.bitshop-checkout-page-heading{padding-top:24px;padding-bottom:0}
.bitshop-checkout-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.bitshop-checkout-heading .bitshop-checkout-back{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:44px;padding:11px 18px;border:0!important;border-radius:10px;outline:0!important;background:var(--bitshop-surface-soft);color:var(--bitshop-cyan-dark);font-size:14px;font-weight:600;text-decoration:none;box-shadow: none}
.bitshop-checkout-heading .bitshop-checkout-back:hover,.bitshop-checkout-heading .bitshop-checkout-back:focus{border:0!important;outline:0!important;background:var(--bitshop-cyan-soft);box-shadow: none}
.bitshop-checkout-heading .bitshop-checkout-back svg{display:none}
.bitshop-checkout-heading h1{margin:0;font-size:28px;font-weight:600;line-height:1.25}
.bitshop-checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,350px);gap:24px;align-items:start}
.bitshop-checkout-main{display:grid;gap:16px;min-width:0}
.bitshop-checkout-card,.bitshop-checkout-summary{background:var(--bitshop-color-surface-muted);border:0;border-radius:16px;padding:26px;box-shadow:none}
.bitshop-checkout-card h2,.bitshop-checkout-summary h2{margin:0 0 18px;font:800 21px/1.2 Arial,sans-serif}
.bitshop-checkout-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}
.bitshop-checkout-fields label{display:grid;gap:8px;font:600 14px/1.3 Arial,sans-serif}
.bitshop-checkout-fields label span small{font-weight:400;color:var(--bitshop-graphite-soft)}
.bitshop-checkout-fields input,.bitshop-checkout-fields select{width:100%;min-height:46px;padding:11px 14px;border:1px solid var(--bitshop-border);border-radius:9px;background:var(--bitshop-white);color:var(--bitshop-graphite);font:400 15px Arial,sans-serif}
.bitshop-checkout-fields input:focus,.bitshop-checkout-fields select:focus{border-color:var(--bitshop-cyan)!important}
.bitshop-checkout-fields .bitshop-address-city-field{position:relative}.bitshop-address-location-suggestions{top:calc(100% + 6px);z-index:120}
.bitshop-checkout-options{display:flex;flex-wrap:wrap;gap:10px}
.bitshop-checkout-option{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 14px;border:0;background:var(--bitshop-interactive-soft);border-radius:10px;cursor:pointer;font:600 14px/1.4 Arial,sans-serif}
.bitshop-checkout-option:has(input:checked){background:var(--bitshop-interactive-soft)}
.bitshop-checkout-option input{accent-color:var(--bitshop-cyan)}
.bitshop-checkout-addresses,.bitshop-checkout-services{margin-top:16px}
.bitshop-checkout-services [data-service-kind]{display:flex;flex-wrap:wrap;gap:10px}
.bitshop-checkout-note{margin:16px 0 0;color:var(--bitshop-graphite-muted);font:400 14px/1.5 Arial,sans-serif}
.bitshop-checkout-consent{display:flex;align-items:flex-start;gap:9px;margin-top:20px;font:400 13px/1.4 Arial,sans-serif;cursor:pointer}
.bitshop-checkout-consent input{margin-top:2px;accent-color:var(--bitshop-cyan)}
.bitshop-checkout-consent a,.bitshop-checkout-consent a:hover,.bitshop-checkout-consent a:focus-visible{color:var(--bitshop-cyan-dark);text-decoration:none}
.bitshop-checkout-summary{position:sticky;top:var(--bitshop-checkout-sticky-top,116px)}
.bitshop-checkout-items-shell{position:relative}
.bitshop-checkout-items{max-height:420px;overflow-y:auto;padding-right:28px;scrollbar-width:none}
.bitshop-checkout-items::-webkit-scrollbar{display:none;width:0;height:0}
.bitshop-checkout-scrollbar{position:absolute;top:6px;right:0;bottom:6px;width:8px;background:var(--bitshop-surface-soft)}
.bitshop-checkout-scrollbar span{width:8px;min-height:36px}
.bitshop-checkout-item,.bitshop-checkout-total{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border:0;font:400 14px/1.4 Arial,sans-serif}
.bitshop-checkout-item{align-items:center;height:84px;box-sizing:border-box}
.bitshop-checkout-item-description{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:3px}
.bitshop-checkout-item-name{display:-webkit-box;min-width:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.bitshop-checkout-item-description small{flex:0 0 auto;color:var(--bitshop-graphite-soft)}
.bitshop-checkout-item strong,.bitshop-checkout-total strong{white-space:nowrap}
.bitshop-checkout-item small{color:var(--bitshop-graphite-soft)}
.bitshop-checkout-total{font-size:17px;font-weight:700}
.bitshop-checkout-summary button,.bitshop-checkout-empty a{display:block;width:100%;margin-top:24px;padding:15px;border:0;border-radius:10px;background:var(--bitshop-cyan);color:var(--bitshop-white);font:800 16px Arial,sans-serif;text-align:center;text-decoration:none;cursor:pointer}
.bitshop-checkout-summary button:hover,.bitshop-checkout-empty a:hover{background:var(--bitshop-cyan-dark)}
.bitshop-checkout-error{margin:0 0 18px;padding:14px 18px;border:1px solid var(--bitshop-error);border-radius:10px;background:var(--bitshop-error-background);color:var(--bitshop-error)}
.bitshop-checkout-error p{margin:3px 0}
.bitshop-checkout-empty{max-width:560px;margin:70px auto;padding:32px;border:1px solid var(--bitshop-border);border-radius:16px;text-align:center}
.bitshop-checkout-empty h1{font:800 28px Arial,sans-serif}
@media(max-width:800px){.bitshop-checkout-layout{grid-template-columns:1fr}.bitshop-checkout-summary{position:static}.bitshop-checkout-card,.bitshop-checkout-summary{padding:20px}}
@media(max-width:560px){.bitshop-checkout-fields{grid-template-columns:1fr}.bitshop-checkout-option{width:100%}.bitshop-checkout-item{gap:10px}}

.bitshop-checkout-summary button:disabled,.bitshop-checkout-summary button:disabled:hover{background:var(--bitshop-interactive-soft);color:var(--bitshop-graphite);cursor:default}
@media(max-width:767px){.bitshop-checkout{padding-right:16px;padding-left:16px}.bitshop-checkout-page-heading{padding-top:0}.bitshop-checkout-heading{align-items:center;justify-content:flex-start;gap:8px}.bitshop-checkout-heading h1{font-size:24px}.bitshop-checkout-heading .bitshop-checkout-back{order:-1;width:34px;height:42px;min-height:0;padding:0;border-radius:0!important;background:transparent}.bitshop-checkout-heading .bitshop-checkout-back:hover,.bitshop-checkout-heading .bitshop-checkout-back:focus{background:transparent}.bitshop-checkout-heading .bitshop-checkout-back span{display:none}.bitshop-checkout-heading .bitshop-checkout-back svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}}
@media(max-width:767px){.bitshop-checkout-fields input,.bitshop-checkout-fields select{font-size:16px}}

.bitshop-checkout-personal-fields{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;row-gap:8px}
.bitshop-checkout-personal-fields label{min-width:0}
.bitshop-checkout-personal-field{display:grid;grid-row:span 3;grid-template-rows:subgrid;gap:8px;min-width:0}
.bitshop-checkout-personal-field>label:first-child{display:grid;grid-row:span 2;grid-template-rows:subgrid;align-content:start;gap:8px}
.bitshop-checkout-personal-field>label:first-child>input,.bitshop-checkout-personal-field .bitshop-phone-input{box-sizing:border-box;height:48px;min-height:48px}
.bitshop-checkout .bitshop-checkout-save-email,.bitshop-checkout .bitshop-checkout-save-name{display:flex;align-items:flex-start;gap:9px;margin-top:16px;cursor:pointer;font:400 14px/1.4 Arial,sans-serif}
.bitshop-checkout-item strong,.bitshop-checkout-total strong{color:var(--bitshop-cyan-dark)}
.bitshop-checkout-services:has([data-service-kind]:not([hidden]) [data-single-service]){margin-top:0}
@media(max-width:560px){.bitshop-checkout-personal-fields{grid-template-columns:1fr}}

.bitshop-checkout-required { color: var(--bitshop-error); }

.bitshop-checkout-error { scroll-margin-top: var(--bitshop-checkout-sticky-top, 150px); }

.bitshop-checkout h3{margin:24px 0 14px;font:700 17px/1.3 Arial,sans-serif}
.bitshop-checkout-option:focus-within{outline:1px solid var(--bitshop-cyan);outline-offset:2px}
.bitshop-checkout input[type="checkbox"]{appearance:auto;box-sizing:border-box;flex:0 0 18px;width:18px;min-width:18px;min-height:18px;height:18px;margin:0;padding:0;accent-color:var(--bitshop-cyan-dark)}

.bitshop-checkout input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	border: 1px solid var(--bitshop-border);
	border-radius: 2px;
	background: var(--bitshop-white);
	cursor: pointer;
	transition: none;
}
.bitshop-checkout input[type="checkbox"]:checked {
	border-color: var(--bitshop-cyan-dark);
	background: var(--bitshop-cyan-dark) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='square'%3E%3Cpath d='m4 9 3 3 7-8'/%3E%3C/svg%3E") center/18px 18px no-repeat;
}
.bitshop-checkout input[type="checkbox"]:focus-visible {
	outline: 1px solid var(--bitshop-cyan-dark);
	outline-offset: 3px;
}
@media (forced-colors: active) {
	.bitshop-checkout input[type="checkbox"] { appearance: auto; }
}

.bitshop-checkout-company-choice { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; width: auto; max-width: 100%; min-width: 0; }
.bitshop-checkout-company-choice .bitshop-checkout-option { flex-wrap: wrap; }

.bitshop-checkout-buyers { align-items: flex-start; }
.bitshop-checkout-buyers > .bitshop-checkout-option,.bitshop-checkout-company-choice .bitshop-checkout-option { width: auto; }
.bitshop-checkout-company-status { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 24px; width: 24px; height: 24px; border-radius: 50%; background: var(--bitshop-white); color: var(--bitshop-cyan-dark); }
.bitshop-checkout-company-status.is-approved { color: #0e6f38; background: #eaf8ef; }
.bitshop-checkout-company-status.is-rejected { color: var(--bitshop-error); background: var(--bitshop-error-background); }
.bitshop-checkout-company-status svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
