.dye-dial-page{background:radial-gradient(circle at 35% 30%,#303236 0,#151719 45%,#090a0b 100%);color:#f7f2e8;min-height:80vh;padding:54px 0 72px}.dial-hero .wrap{max-width:1180px;margin:auto;padding:0 22px}.dial-kicker{letter-spacing:.2em;text-transform:uppercase;color:#d8b45d;font-weight:800;font-size:12px}.dial-hero h1{font-family:Georgia,serif;font-size:clamp(38px,6vw,72px);line-height:.95;margin:10px 0 14px}.dial-intro{max-width:700px;color:#c9c7c1;font-size:17px}.dial-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:48px;align-items:center;margin-top:36px}.dial-machine{position:relative}.dye-wheel{width:min(620px,100%);aspect-ratio:1;margin:auto;border-radius:50%;position:relative;touch-action:pan-y;cursor:grab;filter:drop-shadow(0 24px 25px #0009);outline:none}.dye-wheel:active{cursor:grabbing}.dye-wheel canvas{width:100%;height:100%;display:block}.dial-hub{position:absolute;inset:31%;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle at 35% 28%,#eee,#9b9b99 28%,#454749 58%,#111 75%);border:5px solid #b9b9b6;box-shadow:inset 0 0 0 7px #333,0 5px 20px #000b;color:#111;text-shadow:0 1px #fff8;pointer-events:none}.dial-hub img{display:block;width:76%;height:76%;object-fit:contain;aspect-ratio:auto}.dial-hub strong{font-family:Georgia,serif;font-size:clamp(14px,2vw,24px);letter-spacing:.06em}.dial-hub span{font-size:clamp(7px,1vw,11px);font-weight:900;letter-spacing:.12em;margin-top:6px}.dial-pointer{position:absolute;z-index:4;left:50%;top:-10px;transform:translateX(-50%);width:0;height:0;border-left:20px solid #fff0;border-right:20px solid #fff0;border-top:0;border-bottom:42px solid #d6b354;filter:drop-shadow(0 3px 2px #000);pointer-events:none}.dial-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:18px}.dial-controls button{border:2px solid #aaa;background:linear-gradient(#4c4e50,#18191a);color:#fff;border-radius:999px;min-width:94px;height:46px;font-weight:900;box-shadow:inset 0 1px #ffffff55,0 5px 12px #0008}.dial-controls button span{font-size:11px;letter-spacing:.08em}.dial-controls button:active{transform:translateY(2px)}#dialReadout{font:700 11px/1.2 monospace;color:#d8b45d;letter-spacing:.08em}.dial-product{background:linear-gradient(145deg,#242628,#101112);border:1px solid #555;border-radius:20px;padding:24px;box-shadow:inset 0 1px #ffffff18,0 24px 50px #0008}.dial-product-image{background:#fff;border-radius:12px;overflow:hidden;aspect-ratio:1}.dial-product-image img{width:100%;height:100%;object-fit:contain;display:block}.dial-selected{font-size:10px;letter-spacing:.18em;color:#d8b45d;font-weight:900;margin:22px 0 6px}.dial-product h2{font-family:Georgia,serif;font-size:30px;line-height:1.05;margin:0 0 8px}.dial-price{font-size:20px;font-weight:900;margin:8px 0 12px}.dial-product>p:not(.dial-selected):not(.dial-note){color:#d2d0ca;line-height:1.6}.dial-shop-btn{display:block;text-align:center;text-decoration:none!important;background:#d8b45d;color:#111!important;padding:15px 18px;border-radius:8px;font-weight:900;letter-spacing:.04em;margin-top:18px}.dial-note{font-size:11px;color:#8f918f;margin:14px 0 0;line-height:1.5}@media(max-width:780px){.dye-dial-page{padding-top:32px}.dial-layout{grid-template-columns:1fr;gap:28px}.dye-wheel{max-width:520px}.dial-controls{gap:8px}.dial-controls button{min-width:80px}.dial-product{padding:16px}.dial-product h2{font-size:25px}}