.bc-app{
	--bc-accent:#ffffff;
	--bc-accent-bg:rgba(255,255,255,.10);
	--bc-border:#34342f;
	--bc-border-strong:#5a5a52;
	--bc-surface:#171716;
	--bc-stage:#2b2b29;
	--bc-text:#f3f2ee;
	--bc-text-2:#b6b5ac;
	--bc-text-muted:#8a897f;
	--bc-danger:#ff6b6b;
	--bc-radius:12px;
	max-width:820px;margin:0 auto;color:var(--bc-text);
	font-family:inherit;line-height:1.5;box-sizing:border-box;
}
.bc-app *{box-sizing:border-box;}
.bc-loading{padding:2rem;text-align:center;color:var(--bc-text-2);}

.bc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:18px;align-items:start;}
@media(max-width:640px){.bc-grid{grid-template-columns:1fr;}}

.bc-preview{background:var(--bc-stage);border:1px solid var(--bc-border);border-radius:var(--bc-radius);padding:16px;position:sticky;top:12px;}
@media(max-width:640px){.bc-preview{position:static;}}
.bc-preview svg{width:100%;height:auto;display:block;}
.bc-svg{animation:bc-float 4.2s ease-in-out infinite;transform-origin:center;will-change:transform;}
@keyframes bc-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-9px);}}
@media(prefers-reduced-motion:reduce){.bc-svg{animation:none;}}
.bc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.bc-chip{font-size:11px;background:rgba(255,255,255,.07);color:var(--bc-text);border:1px solid var(--bc-border);border-radius:20px;padding:3px 10px;}
.bc-total-row{display:flex;justify-content:space-between;align-items:baseline;margin-top:14px;border-top:1px solid var(--bc-border);padding-top:12px;}
.bc-total-lbl{font-size:13px;color:var(--bc-text-2);}
.bc-total{font-size:23px;font-weight:600;color:var(--bc-text);}
.bc-note{font-size:11px;color:var(--bc-text-muted);margin:6px 0 0;}

.bc-steps{display:flex;gap:5px;margin-bottom:16px;}
.bc-step{flex:1;height:5px;border-radius:3px;background:var(--bc-border);}
.bc-step.on{background:var(--bc-accent);}

.bc-h{font-size:17px;font-weight:600;margin:0 0 14px;color:var(--bc-text);}
.bc-sub{font-size:13px;color:var(--bc-text-2);margin:0 0 10px;}
.bc-card{background:var(--bc-surface);border:1px solid var(--bc-border);border-radius:var(--bc-radius);padding:16px 18px;}

.bc-opt{width:100%;text-align:left;padding:15px 16px;border-radius:var(--bc-radius);border:1px solid var(--bc-border-strong);
	background:var(--bc-surface);cursor:pointer;display:flex;justify-content:space-between;align-items:center;
	font:inherit;color:var(--bc-text);margin-bottom:10px;transition:border-color .12s;}
.bc-opt:hover{border-color:var(--bc-accent);}
.bc-opt.sel{border:2px solid var(--bc-accent);background:var(--bc-accent-bg);}
.bc-opt-t{font-size:15px;font-weight:600;display:block;}
.bc-opt-s{font-size:13px;color:var(--bc-text-2);}
.bc-opt-p{font-size:14px;color:var(--bc-text-2);}

.bc-seg{display:flex;gap:8px;flex-wrap:wrap;}
.bc-seg button{flex:1;min-width:88px;padding:11px;border-radius:10px;border:1px solid var(--bc-border-strong);
	background:var(--bc-surface);cursor:pointer;font:inherit;font-size:14px;color:var(--bc-text);transition:border-color .12s;}
.bc-seg button:hover{border-color:var(--bc-accent);}
.bc-seg button.sel{border:2px solid var(--bc-accent);background:var(--bc-accent-bg);}

.bc-swatches{display:flex;flex-wrap:wrap;gap:10px;}
.bc-sw{width:52px;height:52px;border-radius:12px;border:1px solid var(--bc-border-strong);cursor:pointer;padding:0;transition:transform .1s;}
.bc-sw:hover{transform:scale(1.05);}
.bc-sw.sel{border:2px solid var(--bc-accent);box-shadow:0 0 0 3px var(--bc-accent-bg);}

.bc-sizes button{min-width:58px;height:54px;border-radius:12px;border:1px solid var(--bc-border-strong);
	background:var(--bc-surface);cursor:pointer;font:inherit;font-size:16px;font-weight:600;color:var(--bc-text);margin:0 9px 9px 0;}
.bc-sizes button.sel{border:2px solid var(--bc-accent);background:var(--bc-accent-bg);}

.bc-btn{border:1px solid var(--bc-border-strong);background:var(--bc-surface);cursor:pointer;font:inherit;
	padding:9px 14px;border-radius:10px;color:var(--bc-text);display:inline-flex;align-items:center;gap:6px;transition:border-color .12s;}
.bc-btn:hover{border-color:var(--bc-accent);}
.bc-btn.on{border-color:var(--bc-accent);color:var(--bc-text);}
.bc-btn[disabled]{opacity:.5;cursor:default;}

.bc-add{width:100%;margin-top:16px;padding:14px;border-radius:12px;border:none;background:#ffffff !important;color:#000000 !important;
	font:inherit;font-size:16px;font-weight:700;cursor:pointer;text-shadow:none;transition:transform .12s,box-shadow .12s;}
.bc-add:hover,.bc-add:focus{background:#ffffff !important;color:#000000 !important;transform:translateY(-1px);box-shadow:0 4px 16px rgba(0,0,0,.35);}
.bc-add:active{transform:translateY(0);}
.bc-add[disabled]{opacity:.6;cursor:default;box-shadow:none;transform:none;}

.bc-toggle{width:100%;text-align:left;padding:13px 15px;border-radius:12px;border:1px solid var(--bc-border-strong);
	background:var(--bc-surface);cursor:pointer;font:inherit;color:var(--bc-text);display:flex;justify-content:space-between;
	align-items:center;margin-bottom:10px;}
.bc-toggle.on{border:2px solid var(--bc-accent);background:var(--bc-accent-bg);}
.bc-extra-img{display:flex;align-items:center;gap:10px;margin:-4px 0 12px 4px;padding-left:12px;border-left:2px solid var(--bc-border);}
.bc-thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;border:1px solid var(--bc-border);}

.bc-nav{display:flex;justify-content:space-between;gap:10px;margin-top:18px;}
.bc-err{color:var(--bc-danger);font-size:13px;margin:8px 0 0;}
.bc-uploading{font-size:12px;color:var(--bc-text-2);}
.bc-count{display:flex;align-items:center;gap:14px;}
.bc-count button{width:42px;height:42px;border-radius:10px;border:1px solid var(--bc-border-strong);background:var(--bc-surface);
	font-size:20px;cursor:pointer;color:var(--bc-text);}
