/* 1 · CLASSIC BRASS (female belt) — float + sheen + lock pulse */
.variant-classic.active { animation: float 6s ease-in-out infinite; }
.waistband { background: linear-gradient(180deg, #f0d189 0%, #c99a52 28%, #7d4f21 62%, #4a2d10 100%); border: 1px solid #3a230c; border-radius: 50%; box-shadow: 0 18px 34px rgba(0,0,0,0.45), inset 0 2px 3px rgba(255,244,200,0.9), inset 0 -10px 18px rgba(0,0,0,0.55); height: 118px; left: 30px; position: absolute; top: 38px; width: 280px; }
.waistband-inner { border: 2px solid rgba(30,17,5,0.85); border-radius: 50%; box-shadow: inset 0 6px 14px rgba(0,0,0,0.7); height: 76px; left: 18px; position: absolute; top: 18px; width: 242px; }
.waistband-highlight { animation: band-sheen 4.2s ease-in-out infinite; border-radius: 50%; border-top: 3px solid rgba(255,246,208,0.85); height: 70px; left: 32px; opacity: 0.7; position: absolute; top: 8px; width: 214px; }
.rivet { background: radial-gradient(circle at 35% 30%, #fff3cc 0%, #e8c680 38%, #7a4d1e 100%); border: 1px solid #2e1c08; border-radius: 50%; box-shadow: 0 1px 2px rgba(0,0,0,0.6); height: 10px; position: absolute; width: 10px; }
.rv1 { left: 52px; top: 44px; } .rv2 { left: 128px; top: 58px; } .rv3 { left: 202px; top: 58px; } .rv4 { left: 268px; top: 44px; }
.front-plate { background: linear-gradient(90deg, #5e3a16 0%, #a36e32 16%, #e8c680 42%, #f7e3a6 50%, #e8c680 58%, #a36e32 84%, #4e2f11 100%); border: 1px solid #33200a; border-radius: 48px 48px 70px 70px / 28px 28px 90px 90px; box-shadow: inset 0 0 0 2px rgba(255,235,180,0.35), inset -12px 0 22px rgba(0,0,0,0.45), inset 12px 0 22px rgba(0,0,0,0.35), 0 22px 34px rgba(0,0,0,0.5); height: 228px; left: 115px; overflow: hidden; position: absolute; top: 118px; width: 110px; }
.plate-ridge { border: 2px solid rgba(74,44,14,0.65); border-radius: 38px 38px 58px 58px / 22px 22px 74px 74px; box-shadow: inset 0 0 0 1px rgba(255,240,195,0.5); height: 206px; left: 8px; position: absolute; top: 10px; width: 92px; }
.plate-sheen { animation: sheen-sweep 4.2s ease-in-out infinite; background: linear-gradient(115deg, transparent 32%, rgba(255,255,255,0.55) 48%, transparent 64%); height: 100%; left: -60%; position: absolute; top: 0; width: 220%; }
.vent { background: linear-gradient(180deg, #0f0b06, #3a2710); border-radius: 6px; box-shadow: inset 0 2px 4px #000, 0 1px 0 rgba(255,235,180,0.45); height: 26px; position: absolute; width: 8px; }
.v1 { left: 28px; top: 92px; } .v2 { left: 43px; top: 98px; height: 34px; } .v3 { left: 57px; top: 100px; height: 38px; } .v4 { left: 71px; top: 98px; height: 34px; } .v5 { left: 86px; top: 92px; }
.rear-strap { background: linear-gradient(180deg, #6b421c, #2b1a08); border-radius: 0 0 40px 40px; height: 46px; left: 140px; opacity: 0.9; position: absolute; top: 322px; width: 60px; }
.belt-lock { animation: lock-pulse 3.2s ease-in-out infinite; filter: drop-shadow(0 12px 14px rgba(0,0,0,0.5)); left: 150px; position: absolute; top: 86px; z-index: 3; }
.lock-shackle { background: linear-gradient(90deg, #6e451e, #f3d894 50%, #6e451e); border: 1px solid #2b1a08; border-bottom: 0; border-radius: 16px 16px 0 0; height: 26px; margin: 0 auto -8px; width: 34px; }
.lock-body { align-items: center; background: linear-gradient(135deg, #f3d894 0%, #c99a52 38%, #7a4d1e 78%, #3f250b 100%); border: 1px solid #2b1a08; border-radius: 7px; display: flex; height: 48px; justify-content: center; position: relative; width: 42px; }
.lock-highlight { background: linear-gradient(180deg, rgba(255,255,255,0.75), transparent); border-radius: 4px; height: 18px; left: 5px; position: absolute; top: 3px; width: 6px; }
.keyhole { background: radial-gradient(circle at 50% 32%, #000 0 3px, #2c2f2c 4px); border: 1px solid rgba(255,240,195,0.6); border-radius: 50%; display: block; height: 10px; position: relative; width: 10px; }
.keyhole::after { background: #0c0e0c; border-radius: 1px; content: ""; height: 12px; left: 2.5px; position: absolute; top: 7px; width: 4px; }
@keyframes float { 0%, 100% { transform: translateY(0) rotate(0.6deg); } 50% { transform: translateY(-9px) rotate(-0.6deg); } }
@keyframes lock-pulse { 0%, 100% { transform: rotate(1.5deg); } 50% { transform: rotate(-1.5deg) translateY(1px); } }
@keyframes sheen-sweep { 0%, 100% { transform: translateX(0); opacity: 0.55; } 50% { transform: translateX(38%); opacity: 1; } }
@keyframes band-sheen { 0%, 100% { opacity: 0.45; } 50% { opacity: 0.9; } }
