:root{--ink:#181713;--paper:#f2ede3;--gold:#c7983d;--muted:#756f64;--line:#d4cabb}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--paper)}button,input,textarea{font:inherit}.builder-header{height:78px;background:#171714;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;position:sticky;top:0;z-index:20}.brand-link{display:flex;align-items:center;color:inherit;text-decoration:none;gap:10px;font-size:9px;letter-spacing:.2em}.brand-link img{width:64px;height:64px;object-fit:contain}.progress{display:flex;gap:35px;color:#777;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.progress .active{color:#d4a74e}.close-link{color:#aaa;text-decoration:none;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.builder{display:grid;grid-template-columns:minmax(580px,1.05fr) minmax(430px,.95fr);min-height:calc(100vh - 78px)}.controls{padding:70px 6vw 100px;min-width:0}.eyebrow{color:#98702a;font-size:9px;text-transform:uppercase;letter-spacing:.2em}.eyebrow:before{content:"";width:28px;border-top:1px solid;display:inline-block;margin:0 10px 3px 0}h1{font:clamp(55px,6vw,88px)/.95 Italiana;margin:20px 0}h1 em{font-weight:400;color:#b88835}.intro{color:var(--muted);font-size:13px;line-height:1.8;max-width:600px}.step{margin-top:65px}.step-title{display:flex;gap:18px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:17px}.step-title>b{font:27px Italiana;color:#b58b45}.step-title h2{font:26px Italiana;margin:0}.step-title p{margin:5px 0 0;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.13em}.type-tabs{display:flex;gap:7px;margin:22px 0}.type-tabs button{border:1px solid var(--line);background:none;padding:8px 14px;font-size:9px;text-transform:uppercase;letter-spacing:.1em;cursor:pointer}.type-tabs button.active{background:var(--ink);color:#fff}.bullion-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:400px;overflow:auto;padding-right:5px}.bullion-choice{border:1px solid var(--line);background:#f8f5ee;padding:14px;display:flex;align-items:center;gap:13px;text-align:left;cursor:pointer;min-height:74px}.bullion-choice:hover,.bullion-choice.active{border-color:#9a7130;background:#fff}.bullion-icon{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;background:radial-gradient(circle at 35% 28%,#fff0a8,#b37b24 65%,#75501a);font:12px Italiana;color:#51350b;box-shadow:inset 0 0 0 3px #d9ad59}.bullion-choice[data-type=bar] .bullion-icon{border-radius:4px;height:50px;width:32px}.bullion-choice b{display:block;font:17px Italiana}.bullion-choice small{display:block;color:var(--muted);font-size:8px;margin-top:5px;text-transform:uppercase;letter-spacing:.08em}.bezel-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:22px}.choice{border:1px solid var(--line);background:#f8f5ee;padding:15px;display:flex;text-align:left;align-items:center;gap:13px;cursor:pointer}.choice.active{border-color:#9a7130;background:#fff}.choice>i{width:30px;height:30px;border-radius:50%;border:6px solid #c79439;display:block;box-shadow:0 0 0 1px #7c581e}.choice .diamond-dot{border-style:dotted;border-color:#ddd}.choice .gem-dot{border-color:#173c7a}.choice .mixed-dot{border-color:#173c7a #ddd #9d1838 #ddd}.choice b,.choice small{display:block}.choice b{font:17px Italiana}.choice small{font-size:8px;color:var(--muted);margin-top:4px}.stone-list{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.stone-list button{background:#f8f5ee;border:1px solid var(--line);padding:10px 14px;cursor:pointer;font-size:10px}.stone-list button.active{border-color:#8e692b}.stone-list i{width:9px;height:9px;border-radius:50%;display:inline-block;background:#173c7a;margin-right:7px}.stone-list [data-stone=ruby] i{background:#a31932}.stone-list [data-stone=emerald] i{background:#08754f}.stone-list [data-stone=amethyst] i{background:#6a4087}.other-stone{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.other-stone input{display:block;width:100%;border:0;border-bottom:1px solid var(--line);background:none;padding:11px 0}.hidden{display:none!important}.preview-panel{background:#11110f;color:#fff;position:sticky;top:78px;height:calc(100vh - 78px);display:flex;flex-direction:column}.preview-top{display:flex;justify-content:space-between;padding:25px 35px;font-size:8px;letter-spacing:.17em;color:#9e9a91}.jewel-stage{flex:1;min-height:390px;position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle,#34291a 0,#181611 40%,#11110f 73%)}.chain{position:absolute;top:-40%;width:410px;height:480px;border:5px double #ba8531;border-radius:48%;box-shadow:0 0 8px #e8c56c}.bail{position:absolute;top:calc(50% - 158px);width:42px;height:68px;border:8px solid #c99538;border-radius:19px;z-index:2}.pendant{width:250px;height:250px;position:relative;border-radius:50%;display:grid;place-items:center;transition:.35s;filter:drop-shadow(0 25px 24px #000)}.pendant.bar{width:180px;height:275px;border-radius:15px}.bullion-face{position:absolute;inset:18px;border-radius:50%;background:radial-gradient(circle at 35% 25%,#f7dc83,#b37a23 65%,#795019);box-shadow:inset 0 0 15px #fff8;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#5a3b0c;text-align:center}.bar .bullion-face{border-radius:5px}.face-mark{font:60px Italiana}.bullion-face b{font:13px Italiana;letter-spacing:.08em}.bullion-face small{font-size:7px;margin-top:5px}.pendant:before{content:"";position:absolute;inset:0;border:15px solid #c89536;border-radius:inherit;box-shadow:inset 0 0 0 2px #f4d978,0 0 0 2px #7a5118}.stone-ring{display:none;position:absolute;inset:2px;border-radius:inherit;z-index:2;border:12px dotted #fff;filter:drop-shadow(0 0 3px #fff)}.pendant.diamond .stone-ring,.pendant.gemstone .stone-ring,.pendant.mixed .stone-ring{display:block}.pendant.gemstone .stone-ring{border-color:#173c7a}.pendant.mixed .stone-ring{border-color:#fff #173c7a #fff #173c7a}.pendant[data-stone=ruby] .stone-ring{border-color:#9d1838}.pendant[data-stone=emerald] .stone-ring{border-color:#08754f}.pendant[data-stone=amethyst] .stone-ring{border-color:#6a4087}.pendant.mixed[data-stone=ruby] .stone-ring{border-color:#fff #9d1838}.pendant.mixed[data-stone=emerald] .stone-ring{border-color:#fff #08754f}.pendant.mixed[data-stone=amethyst] .stone-ring{border-color:#fff #6a4087}.selection-summary{padding:28px 35px 34px;background:#191917;border-top:1px solid #34332f}.selection-summary>p{font-size:8px;color:#ba8d3e;letter-spacing:.16em}.selection-summary h2{font:25px Italiana;margin:10px 0 20px}.selection-summary>div{display:flex;justify-content:space-between;border-top:1px solid #333;padding:9px 0;font-size:9px;color:#8e8a81}.selection-summary>div b{color:#ddd;font-weight:500}.selection-summary button{width:100%;border:0;background:#c7983d;padding:14px;margin:15px 0 8px;text-transform:uppercase;font-size:9px;letter-spacing:.13em;cursor:pointer}.selection-summary>small{color:#777;font-size:8px;line-height:1.5;display:block}dialog{border:0;width:min(560px,92%);padding:45px;background:#f4efe6;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}dialog h2{font:40px Italiana;margin:15px 0}dialog pre{white-space:pre-wrap;background:#e8dfd0;padding:18px;font:11px/1.7 "DM Sans"}dialog label{font-size:9px;text-transform:uppercase;letter-spacing:.1em;display:block;margin:14px 0}dialog input,dialog textarea{display:block;width:100%;border:0;border-bottom:1px solid #aaa;background:none;padding:10px 0;text-transform:none;letter-spacing:0}dialog textarea{height:70px}dialog form button{border:0;background:#181713;color:#fff;padding:14px 20px;text-transform:uppercase;font-size:9px;letter-spacing:.12em}.dialog-close{position:absolute;right:16px;top:12px;border:0;background:none;font-size:28px}.success{color:#74561f;font-size:11px}@media(max-width:950px){.builder{grid-template-columns:1fr}.preview-panel{position:relative;top:0;height:auto}.jewel-stage{min-height:600px}.controls{padding:60px 6vw}.progress{display:none}}@media(max-width:560px){.builder-header{height:68px}.brand-link img{width:52px;height:52px}.brand-link span{display:none}.close-link{font-size:8px}.bullion-list,.bezel-list{grid-template-columns:1fr}.controls{padding:45px 5vw}.jewel-stage{min-height:500px}.chain{width:350px}.pendant{transform:scale(.86)}}
.bullion-product-image{width:52px;height:62px;object-fit:contain;flex:0 0 auto;background:transparent;border:0}.bullion-choice em{display:block;color:#927238;font-style:normal;font-size:7px;line-height:1.35;margin-top:5px;letter-spacing:.03em}.face-product-image{display:none;width:100%;height:100%;object-fit:contain;border-radius:4px}.bullion-face.has-image{background:transparent;box-shadow:none;overflow:visible}.bullion-face.has-image .face-product-image{display:block}.bullion-face.has-image .face-mark,.bullion-face.has-image b,.bullion-face.has-image small{display:none}
.bullion-choice[data-type="coin"] .bullion-product-image{width:62px;height:62px;border-radius:50%;mix-blend-mode:multiply}.pendant.coin .face-product-image{border-radius:50%;mix-blend-mode:normal;filter:none;opacity:1;object-fit:contain!important}
.pendant.bar.landscape{width:310px;height:205px}.pendant.bar.landscape .bullion-face{border-radius:8px}.bullion-product-image[src*="usa-250"]{width:68px;height:48px}
.pendant .bullion-face{inset:15px}.pendant .bullion-face.has-image{background:transparent;box-shadow:none;overflow:visible}.pendant .bullion-face.has-image .face-product-image{width:100%;height:100%;object-fit:fill}.jewel-stage .pendant{filter:none}
.pendant .stone-ring{display:none!important}.gem-slots{display:none;position:absolute;inset:0;z-index:4;pointer-events:none}.pendant:not(.plain) .gem-slots{display:block}.gem-slot{position:absolute;transform:translate(-50%,-50%);width:16px;height:16px;padding:0;border:1px dashed #8c6729;border-radius:50%;background:#d7a44555;pointer-events:auto;cursor:copy;box-shadow:0 0 0 2px #e4b85b}.gem-slot.filled{border:1px solid #fff9;box-shadow:inset 0 0 3px #fff,0 0 0 2px #d6a246,0 0 5px #fff8}.gem-slot.drop-ready{transform:translate(-50%,-50%) scale(1.35);background:#fff}.stone-list [data-stone]{cursor:grab}.stone-list [data-stone]:active{cursor:grabbing}.stone-list [data-stone=diamond] i{background:radial-gradient(circle at 35% 30%,#fff,#cfd9df 65%,#87939b)}.clear-stones{margin-left:auto;color:#8a6425}.pendant.bar.landscape .gem-slot{width:15px;height:15px}
.gem-slot.filled{border:1px solid #fff8;box-shadow:inset -2px -3px 4px #0008,inset 2px 2px 3px #fff,0 0 0 2px #d6a246,0 0 9px 2px #fff9;animation:gem-shimmer 3.2s ease-in-out infinite}.gem-slot.filled:before{content:"";position:absolute;inset:2px;border-radius:50%;background:conic-gradient(from 15deg,#fff0 0 8%,#fff9 9% 12%,#fff0 13% 28%,#fff7 29% 33%,#fff0 34% 58%,#fff6 59% 63%,#fff0 64%);mix-blend-mode:screen}.gem-slot.filled:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;left:3px;top:2px;background:#fff;box-shadow:0 0 5px 2px #fff}.gem-slot[data-stone=diamond]{box-shadow:inset -2px -3px 4px #61727d88,inset 2px 2px 4px #fff,0 0 0 2px #d6a246,0 0 12px 3px #e8fbff}.gem-slot[data-stone=sapphire]{box-shadow:inset -2px -3px 4px #020b2c,inset 2px 2px 4px #c7e7ff,0 0 0 2px #d6a246,0 0 11px 2px #4285ff}.gem-slot[data-stone=ruby]{box-shadow:inset -2px -3px 4px #30000d,inset 2px 2px 4px #ffd0dc,0 0 0 2px #d6a246,0 0 11px 2px #ff315f}.gem-slot[data-stone=emerald]{box-shadow:inset -2px -3px 4px #002418,inset 2px 2px 4px #c7ffe9,0 0 0 2px #d6a246,0 0 11px 2px #22d894}.gem-slot[data-stone=amethyst]{box-shadow:inset -2px -3px 4px #1b0928,inset 2px 2px 4px #efd5ff,0 0 0 2px #d6a246,0 0 11px 2px #b767ed}.stone-list [data-stone=diamond] i{background:radial-gradient(circle at 30% 25%,#fff,#c7f3ff 24%,#8ca1ad 58%,#fff 75%,#647681)}.stone-list [data-stone=sapphire] i{background:radial-gradient(circle at 30% 25%,#dff4ff,#347ce8 27%,#0a287a 66%,#020c35)}.stone-list [data-stone=ruby] i{background:radial-gradient(circle at 30% 25%,#ffe0e8,#e72a57 30%,#810923 68%,#35000d)}.stone-list [data-stone=emerald] i{background:radial-gradient(circle at 30% 25%,#d8ffef,#17b77b 30%,#045c3e 68%,#012a1c)}.stone-list [data-stone=amethyst] i{background:radial-gradient(circle at 30% 25%,#f3dfff,#9f55cf 30%,#552273 68%,#241031)}@keyframes gem-shimmer{0%,82%,100%{filter:brightness(1) saturate(1)}88%{filter:brightness(1.45) saturate(1.18)}94%{filter:brightness(1.05) saturate(1)}}@media(prefers-reduced-motion:reduce){.gem-slot.filled{animation:none}}
.gem-slot.filled{animation:none;border-color:#e8d5a9;box-shadow:inset -2px -3px 4px #0009,inset 1px 1px 2px #ffffff99,0 0 0 2px #b88635}.gem-slot.filled:before{background:linear-gradient(135deg,#ffffff66 0 8%,transparent 9% 46%,#ffffff22 47% 52%,transparent 53%);mix-blend-mode:normal}.gem-slot.filled:after{width:2px;height:2px;left:4px;top:3px;box-shadow:none;background:#ffffffbb}.gem-slot[data-stone]{box-shadow:inset -2px -3px 4px #000a,inset 1px 1px 2px #ffffff99,0 0 0 2px #b88635}.stone-list [data-stone=diamond] i{background:#c9ced0}.stone-list [data-stone=sapphire] i{background:#16366f}.stone-list [data-stone=ruby] i{background:#7d172d}.stone-list [data-stone=emerald] i{background:#0b6045}.stone-list [data-stone=amethyst] i{background:#593569}
.pendant:before{border-color:#b77d24;box-shadow:inset 0 0 0 1px #f9dc83,inset 0 0 0 3px #7e5118,inset 0 0 8px 4px #efc45c,0 0 0 2px #5d390d}.bail{border-color:#b77d24;background:linear-gradient(90deg,#7a4a10,#f2ca68 24%,#9d681d 50%,#f4d273 76%,#75450d);box-shadow:inset 0 0 0 2px #f8dc88,0 0 0 1px #5d390d}.gem-slot,.pendant.bar.landscape .gem-slot{width:11px;height:11px;border:0;background:#8c672966;box-shadow:0 0 0 1px #6d430f,0 0 0 3px #c79132;transition:transform .14s}.gem-slot.filled,.gem-slot[data-stone]{border:0;box-shadow:inset -2px -2px 3px #000b,inset 1px 1px 1px #ffffff80,0 0 0 1px #6d430f,0 0 0 3px #c79132}.gem-slot.filled:before{inset:1px;background:linear-gradient(135deg,#ffffff55 0 10%,transparent 12% 48%,#ffffff18 50% 56%,transparent 58%)}.gem-slot.filled:after{content:"";position:absolute;width:2px;height:2px;left:-2px;top:-2px;border-radius:50%;background:#f6d778;box-shadow:12px 0 #f6d778,0 12px #f6d778,12px 12px #f6d778}.gem-slot.drop-ready{transform:translate(-50%,-50%) scale(1.25);background:#ead08a}.stone-list i{box-shadow:inset -1px -1px 2px #0009,inset 1px 1px 1px #fff8,0 0 0 1px #9b6d26}
.pendant{--stone-size:20px}.pendant.coin{--stone-size:23px}.pendant.bar.landscape{--stone-size:21px}.gem-slot,.pendant.bar.landscape .gem-slot{width:var(--stone-size);height:var(--stone-size);box-shadow:inset -2px -2px 3px #0007,inset 1px 1px 1px #ffffff70,0 0 0 1px #9a681d}.gem-slot.filled,.gem-slot[data-stone]{box-shadow:inset -3px -3px 5px #000b,inset 2px 2px 2px #ffffff80,0 0 0 1px #a66f20}.gem-slot.filled:before{inset:2px}.gem-slot.filled:after{left:0;top:0;box-shadow:calc(var(--stone-size) - 2px) 0 #f6d778,0 calc(var(--stone-size) - 2px) #f6d778,calc(var(--stone-size) - 2px) calc(var(--stone-size) - 2px) #f6d778}
#generate-image-button{margin-bottom:0;background:transparent;color:#d6a94e;border:1px solid #8d6b2d}.image-dialog{width:min(680px,94%);background:#151411;color:#fff;text-align:center;padding:38px}.image-dialog h2{font-size:30px}.image-dialog img{display:block;width:100%;max-height:68vh;object-fit:contain;background:#111;border:1px solid #4f422c}.image-dialog a{display:inline-block;margin-top:18px;padding:13px 24px;background:#c7983d;color:#17140e;text-decoration:none;text-transform:uppercase;font-size:9px;letter-spacing:.13em}.image-dialog-close{position:absolute;right:16px;top:12px;border:0;background:none;color:#fff;font-size:28px;cursor:pointer}
.stone-list [data-stone=diamond] i{background:#c8ced0}.stone-list [data-stone=sapphire] i{background:#0a3475}.stone-list [data-stone=ruby] i{background:#9f1238}.stone-list [data-stone=emerald] i{background:#087047}.stone-list [data-stone=citrine] i{background:#b98014}.stone-list [data-stone=amethyst] i{background:#65407a}.stone-list [data-stone=aquamarine] i{background:#62aeba}
