/* ==========================================================================
   The Watches Lounge Pro — tools.css
   All interactive horology tools — premium glassmorphism shells
   ========================================================================== */

/* Generic tool shell ------------------------------------------------------ */
.twl-tool{margin:0 auto;max-width:1100px}
.twl-tool__shell{background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.015));border:1px solid var(--twl-line-d);border-radius:calc(var(--twl-radius) + 4px);padding:32px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:var(--twl-shadow-lg)}
.twl-tool__grid{display:grid;gap:32px;grid-template-columns:1fr}
@media (min-width:920px){.twl-tool__grid{grid-template-columns:1fr 1.2fr}}
.twl-tool__inputs{display:flex;flex-direction:column;gap:18px}
.twl-tool__output{padding:24px;background:linear-gradient(180deg, rgba(212,175,55,.06), rgba(255,255,255,.015));border:1px solid rgba(212,175,55,.18);border-radius:var(--twl-radius);min-height:240px}
.twl-tool__output--gated{display:flex;flex-direction:column;justify-content:center}
.twl-tool__gate{text-align:center;padding:36px 18px;display:flex;flex-direction:column;align-items:center;gap:6px}
.twl-tool__gate .twl-eyebrow{margin:0 0 8px}
.twl-tool__gate-sub{color:var(--twl-text-mute);max-width:380px;margin:0}
.twl-tool__gate::before{content:"◐";display:block;font-size:48px;color:var(--twl-gold);opacity:.4;margin-bottom:10px;animation:twl-pulse 2.4s ease-in-out infinite}
@keyframes twl-pulse{0%,100%{transform:scale(1);opacity:.4}50%{transform:scale(1.08);opacity:.7}}

/* Fields ------------------------------------------------------------------ */
.twl-field{display:flex;flex-direction:column;gap:8px}
.twl-field label{font-family:var(--twl-font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--twl-text-mute)}
.twl-field input[type=text],
.twl-field input[type=email],
.twl-field input[type=number],
.twl-field input[type=search],
.twl-field select,
.twl-field textarea{
    background:rgba(0,0,0,.25);border:1px solid var(--twl-line-d);color:var(--twl-text);padding:12px 14px;border-radius:var(--twl-radius-sm);font-size:15px;font-family:var(--twl-font-body);width:100%;transition:border-color .2s,box-shadow .2s;
}
.twl-field input:focus,.twl-field select:focus,.twl-field textarea:focus{outline:none;border-color:var(--twl-gold);box-shadow:0 0 0 4px rgba(212,175,55,.18)}
.twl-field__row{display:flex;gap:8px}
.twl-field__row select{max-width:80px}
.twl-field--two{display:grid;grid-template-columns:1fr 1fr;gap:12px}

/* Range sliders */
.twl-field input[type=range]{
    -webkit-appearance:none;appearance:none;height:6px;background:linear-gradient(90deg, var(--twl-gold) var(--p,50%), rgba(255,255,255,.1) var(--p,50%));border-radius:999px;outline:none;padding:0;
}
.twl-field input[type=range]::-webkit-slider-thumb{
    -webkit-appearance:none;appearance:none;width:22px;height:22px;background:var(--twl-grad-gold);border:3px solid #0b0f1a;border-radius:50%;cursor:pointer;box-shadow:0 6px 14px rgba(212,175,55,.4)
}
.twl-field input[type=range]::-moz-range-thumb{width:18px;height:18px;background:var(--twl-grad-gold);border:3px solid #0b0f1a;border-radius:50%;cursor:pointer}
.twl-field--slider label{display:flex;justify-content:space-between;align-items:baseline}

/* Segmented */
.twl-segmented{display:inline-flex;flex-wrap:wrap;gap:6px;background:rgba(0,0,0,.25);padding:5px;border-radius:var(--twl-radius-pill);border:1px solid var(--twl-line-d)}
.twl-segmented__opt{cursor:pointer;padding:8px 14px;border-radius:var(--twl-radius-pill);font-size:13px;color:var(--twl-text-mute);transition:background .2s,color .2s}
.twl-segmented__opt input{display:none}
.twl-segmented__opt:hover{color:var(--twl-text)}
.twl-segmented__opt.is-active{background:var(--twl-grad-gold);color:#0b0f1a;font-weight:600}

/* Checkboxes */
.twl-checks{display:flex;flex-wrap:wrap;gap:8px}
.twl-check{cursor:pointer;padding:8px 14px;background:rgba(255,255,255,.04);border:1px solid var(--twl-line-d);border-radius:var(--twl-radius-pill);font-size:13px;color:var(--twl-text);transition:background .2s,border-color .2s,color .2s}
.twl-check input{display:none}
.twl-check:hover{border-color:var(--twl-gold)}
.twl-check.is-checked{background:rgba(212,175,55,.18);border-color:var(--twl-gold);color:var(--twl-gold)}

/* Tool panels */
.twl-tool__panels{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin:18px 0}
.twl-tool__panel{padding:16px;background:rgba(0,0,0,.25);border-radius:var(--twl-radius-sm);border:1px solid var(--twl-line)}
.twl-tool__panel h4{font-family:var(--twl-font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--twl-gold);margin:0 0 8px}
.twl-tool__panel p{margin:0;font-family:var(--twl-font-display);font-size:20px;color:var(--twl-champagne);line-height:1.3}
.twl-tool__panel--wide{grid-column:1 / -1}
.twl-tool__panel--wide p{font-size:16px;font-family:var(--twl-font-body);color:var(--twl-text-mute)}

/* Quiz -------------------------------------------------------------------- */
.twl-quiz__progress{display:flex;align-items:center;gap:14px;margin-bottom:24px;font-family:var(--twl-font-mono);font-size:13px;color:var(--twl-text-mute)}
.twl-quiz__bar{flex:1;height:6px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden}
.twl-quiz__bar span{display:block;height:100%;width:11%;background:var(--twl-grad-gold);transition:width .35s ease}
.twl-quiz__steps{list-style:none;padding:0;margin:0}
.twl-quiz__step{display:none}
.twl-quiz__step.is-active{display:block;animation:twl-quiz-in .35s ease both}
@keyframes twl-quiz-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.twl-quiz__num{font-family:var(--twl-font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--twl-gold);margin:0 0 8px}
.twl-quiz__q{font-family:var(--twl-font-display);font-size:clamp(22px,2.4vw,30px);margin:0 0 20px}
.twl-quiz__opts{display:grid;gap:10px;grid-template-columns:1fr}
@media (min-width:680px){.twl-quiz__opts{grid-template-columns:repeat(2,1fr)}}
.twl-quiz__opt{text-align:left;padding:16px 18px;background:rgba(255,255,255,.03);border:1px solid var(--twl-line-d);border-radius:var(--twl-radius);color:var(--twl-text);font-size:15px;transition:background .2s,border-color .2s,transform .2s}
.twl-quiz__opt:hover{background:rgba(212,175,55,.08);border-color:var(--twl-gold);transform:translateY(-1px)}
.twl-quiz__opt.is-selected{background:rgba(212,175,55,.15);border-color:var(--twl-gold);color:var(--twl-champagne)}
.twl-quiz__result{background:linear-gradient(135deg, rgba(212,175,55,.12), rgba(255,255,255,.02));padding:28px;border-radius:var(--twl-radius);border:1px solid rgba(212,175,55,.3);animation:twl-quiz-in .4s ease both}
.twl-quiz__result-title{font-family:var(--twl-font-display);font-size:clamp(28px,3.4vw,40px);margin:0 0 8px;color:var(--twl-champagne)}
.twl-quiz__result-sub{color:var(--twl-text-mute);margin-bottom:24px}
.twl-quiz__panels{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:24px}
.twl-quiz__panel{padding:18px;background:rgba(0,0,0,.25);border-radius:var(--twl-radius-sm);border:1px solid var(--twl-line)}
.twl-quiz__panel h4{font-family:var(--twl-font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--twl-gold);margin:0 0 8px}
.twl-quiz__panel p{margin:0;font-family:var(--twl-font-display);font-size:18px;color:var(--twl-champagne);line-height:1.4}

/* Presence Visualizer ----------------------------------------------------- */
.twl-pv-canvas{position:relative;aspect-ratio:5/4;width:100%;background:linear-gradient(160deg, #1a1f2e, #0a0f1c);border-radius:var(--twl-radius);overflow:hidden;display:grid;place-items:center;margin-bottom:18px;border:1px solid var(--twl-line-d)}
.twl-pv-wrist{position:relative;width:60%;height:30%;background:linear-gradient(180deg, #b08d65, #7a5e3f);border-radius:60px;box-shadow:inset 0 -10px 20px rgba(0,0,0,.4), 0 18px 36px -8px rgba(0,0,0,.6);transition:width .3s ease}
.twl-pv-watch{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:40%;aspect-ratio:1/1;border-radius:50%;background:radial-gradient(circle at 35% 35%, #2a3a5f 0%, #0d1428 60%);box-shadow:inset 0 0 0 3px rgba(212,175,55,.4), 0 8px 22px rgba(0,0,0,.6);transition:width .3s ease,background .3s ease}
.twl-pv-dial{position:absolute;inset:14%;border-radius:50%;background:#0a0f1c;border:1px solid rgba(255,255,255,.08);transition:background .25s}
.twl-pv-dial[data-color=black]{background:#0a0f1c}
.twl-pv-dial[data-color=white]{background:#e7ebf3}
.twl-pv-dial[data-color=blue]{background:#1c3b7e}
.twl-pv-dial[data-color=green]{background:#1f3a2a}
.twl-pv-strap{position:absolute;left:50%;width:38%;height:60%;background:linear-gradient(180deg, #3b2c1e, #1a120a);transform:translateX(-50%);transition:background .25s}
.twl-pv-strap[data-strap=steel]{background:linear-gradient(180deg, #b0b6c2, #6b727f)}
.twl-pv-strap[data-strap=rubber]{background:linear-gradient(180deg, #1a1a1c, #0a0a0c)}
.twl-pv-strap[data-strap=nato]{background:repeating-linear-gradient(135deg, #2a3a5f 0 8px, #1a2540 8px 16px)}
.twl-pv-strap--top{top:-30%;border-radius:6px 6px 0 0}
.twl-pv-strap--bot{bottom:-30%;border-radius:0 0 6px 6px}

.twl-pv-meters{display:grid;gap:14px;margin-bottom:14px}
.twl-meter{display:grid;grid-template-columns:160px 1fr 60px;gap:12px;align-items:center}
.twl-meter__label{font-family:var(--twl-font-mono);font-size:12px;color:var(--twl-text-mute);text-transform:uppercase;letter-spacing:.08em}
.twl-meter__bar{height:8px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden}
.twl-meter__bar span{display:block;height:100%;width:0%;background:var(--twl-grad-gold);transition:width .35s ease}
.twl-meter__value{font-family:var(--twl-font-display);font-size:18px;color:var(--twl-champagne);text-align:right}
.twl-pv-guidance{color:var(--twl-text-mute);margin:0 0 16px}

/* Strap pairing ---------------------------------------------------------- */
.twl-strap__cards{display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:640px){.twl-strap__cards{grid-template-columns:1fr 1fr}}
.twl-strap-card{padding:16px;border-radius:var(--twl-radius-sm);background:rgba(0,0,0,.25);border:1px solid var(--twl-line);display:flex;flex-direction:column;gap:10px}
.twl-strap-card__title{font-family:var(--twl-font-display);font-size:18px;margin:0;color:var(--twl-champagne)}
.twl-strap-card__desc{font-size:13px;color:var(--twl-text-mute);margin:0}
.twl-strap-card__cta{margin-top:auto}

/* Rotation planner ------------------------------------------------------- */
.twl-rotation__week{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:14px 0;overflow-x:auto}
.twl-rot-day{padding:14px 10px;border-radius:var(--twl-radius-sm);background:rgba(0,0,0,.25);border:1px solid var(--twl-line);text-align:center}
.twl-rot-day strong{display:block;font-family:var(--twl-font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--twl-gold);margin-bottom:6px}
.twl-rot-day span{display:block;font-family:var(--twl-font-display);font-size:14px;color:var(--twl-champagne)}
.twl-rotation__notes{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:8px}
.twl-rotation__notes li{padding:10px 14px;background:rgba(255,255,255,.04);border:1px solid var(--twl-line);border-radius:var(--twl-radius-sm);font-size:14px;color:var(--twl-text)}
.twl-rotation__notes li::before{content:"◆ ";color:var(--twl-gold);margin-right:6px}

/* Collector prioritizer -------------------------------------------------- */
.twl-prio__list{list-style:none;padding:0;margin:14px 0;display:grid;gap:10px}
.twl-prio__list li{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:rgba(0,0,0,.25);border-radius:var(--twl-radius-sm);border:1px solid var(--twl-line);font-size:14px;color:var(--twl-text)}
.twl-prio__list li strong{color:var(--twl-gold);font-family:var(--twl-font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase}

/* Database --------------------------------------------------------------- */
.twl-database__bar{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:24px;padding:16px;background:rgba(0,0,0,.25);border:1px solid var(--twl-line-d);border-radius:var(--twl-radius)}
@media (min-width:780px){.twl-database__bar{grid-template-columns:2fr 1fr 1fr auto}}
.twl-database__bar input,.twl-database__bar select{background:rgba(0,0,0,.35);border:1px solid var(--twl-line-d);color:var(--twl-text);padding:12px 14px;border-radius:var(--twl-radius-sm);font-size:14px}

/* Tracker --------------------------------------------------------------- */
.twl-tracker__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.twl-stat{padding:14px 12px;background:rgba(0,0,0,.25);border:1px solid var(--twl-line);border-radius:var(--twl-radius-sm);text-align:center}
.twl-stat strong{display:block;font-family:var(--twl-font-display);font-size:28px;color:var(--twl-gold);line-height:1}
.twl-stat span{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--twl-text-mute);margin-top:6px;font-family:var(--twl-font-mono)}
.twl-tracker__list{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.twl-tracker__list li{display:flex;align-items:center;gap:10px;padding:12px 14px;background:rgba(0,0,0,.25);border:1px solid var(--twl-line);border-radius:var(--twl-radius-sm);font-size:14px}
.twl-tracker__list li strong{flex:1;color:var(--twl-champagne)}
.twl-tracker__list .tr-meta{font-family:var(--twl-font-mono);font-size:11px;color:var(--twl-text-mute);letter-spacing:.08em;text-transform:uppercase}
.twl-tracker__list .tr-del{background:transparent;border:1px solid var(--twl-line);color:var(--twl-text-mute);padding:5px 10px;border-radius:var(--twl-radius-pill);font-size:11px;cursor:pointer;transition:color .2s,border-color .2s}
.twl-tracker__list .tr-del:hover{color:#ff7a7a;border-color:#ff7a7a}
.twl-tracker__empty{color:var(--twl-text-mute);font-size:14px;text-align:center;padding:18px 0}

/* Wall clock visualizer -------------------------------------------------- */
.twl-wc-room{aspect-ratio:5/4;width:100%;border-radius:var(--twl-radius);overflow:hidden;background:linear-gradient(180deg, #1d2436, #0c111f);position:relative;border:1px solid var(--twl-line-d);margin-bottom:16px;display:grid;place-items:end stretch}
.twl-wc-room__wall{width:100%;height:80%;background:#f4efe4;position:relative;transition:background .3s ease}
.twl-wc-room__wall[data-wall=white]{background:#f4efe4}
.twl-wc-room__wall[data-wall=warm]{background:#dfd0bb}
.twl-wc-room__wall[data-wall=dark]{background:#1d2436}
.twl-wc-room__wall[data-wall=accent]{background:#3b2c52}
.twl-wc-room__clock{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);width:30%;aspect-ratio:1/1;border-radius:50%;background:radial-gradient(circle at 50% 50%, #fff 0%, #d9d9d9 70%, #888 100%);box-shadow:0 22px 36px -10px rgba(0,0,0,.45), inset 0 0 0 6px rgba(0,0,0,.06);transition:width .3s ease}
.twl-wc-room__wall[data-wall=dark] .twl-wc-room__clock{background:radial-gradient(circle at 50% 50%, #2c2c2c 0%, #0f0f0f 70%);box-shadow:0 22px 36px -10px rgba(0,0,0,.55), inset 0 0 0 6px rgba(255,255,255,.08)}

/* Comparison ------------------------------------------------------------- */
.twl-comparetabs{display:flex;flex-direction:column;gap:16px}
.twl-comparetabs__tabs{display:flex;flex-wrap:wrap;gap:8px}
.twl-comparetabs__tab{padding:10px 18px;border-radius:var(--twl-radius-pill);background:rgba(255,255,255,.05);border:1px solid var(--twl-line);color:var(--twl-text);font-weight:500;font-size:14px;transition:background .2s, color .2s}
.twl-comparetabs__tab.is-active{background:var(--twl-grad-gold);color:#0b0f1a;border-color:transparent}
.twl-compare-wrap{overflow-x:auto;border-radius:var(--twl-radius);border:1px solid var(--twl-line-d)}
.twl-compare{width:100%;border-collapse:separate;border-spacing:0;font-size:14px;min-width:720px}
.twl-compare thead th{position:sticky;top:0;background:rgba(10,15,30,.92);backdrop-filter:blur(10px);color:var(--twl-gold);font-family:var(--twl-font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;padding:14px 16px;text-align:left;border-bottom:1px solid var(--twl-line-d)}
.twl-compare td{padding:16px;border-bottom:1px solid var(--twl-line);color:var(--twl-text);vertical-align:middle}
.twl-compare tr:last-child td{border-bottom:none}
.twl-compare tr.is-highlight td{background:rgba(212,175,55,.06)}
.twl-compare tr:hover td{background:rgba(255,255,255,.03)}
@media (max-width:720px){
    .twl-compare,.twl-compare thead,.twl-compare tbody,.twl-compare tr,.twl-compare td,.twl-compare th{display:block;min-width:0}
    .twl-compare thead{display:none}
    .twl-compare tr{border:1px solid var(--twl-line);border-radius:var(--twl-radius-sm);margin-bottom:10px;padding:8px}
    .twl-compare td{display:flex;justify-content:space-between;border:none;padding:8px 10px;font-size:14px}
    .twl-compare td::before{content:attr(data-label);font-family:var(--twl-font-mono);font-size:11px;color:var(--twl-gold);text-transform:uppercase;letter-spacing:.1em;margin-right:10px;align-self:center}
}

/* FAQ -------------------------------------------------------------------- */
.twl-faq{display:flex;flex-direction:column;gap:8px}
.twl-faq__item{background:rgba(255,255,255,.03);border:1px solid var(--twl-line);border-radius:var(--twl-radius-sm);overflow:hidden;transition:background .2s, border-color .2s}
.twl-faq__item[open]{background:rgba(212,175,55,.05);border-color:rgba(212,175,55,.3)}
.twl-faq__q{display:flex;justify-content:space-between;gap:14px;align-items:center;cursor:pointer;list-style:none;padding:18px 20px;font-family:var(--twl-font-display);font-size:18px;color:var(--twl-champagne)}
.twl-faq__q::-webkit-details-marker{display:none}
.twl-faq__icon{font-size:22px;color:var(--twl-gold);transition:transform .25s ease}
.twl-faq__item[open] .twl-faq__icon{transform:rotate(45deg)}
.twl-faq__a{padding:0 20px 20px;color:var(--twl-text-mute);line-height:1.7}

/* Newsletter ------------------------------------------------------------- */
.twl-newsletter--card{display:grid;gap:24px;background:linear-gradient(135deg, rgba(212,175,55,.12), rgba(255,255,255,.03));border:1px solid rgba(212,175,55,.3);padding:36px;border-radius:var(--twl-radius);grid-template-columns:1fr}
@media (min-width:920px){.twl-newsletter--card{grid-template-columns:1.2fr 1fr;align-items:center}}
.twl-newsletter__copy h2{margin:0 0 10px}
.twl-newsletter__copy p{color:var(--twl-text-mute);margin:0}
.twl-newsletter__form{display:flex;flex-wrap:wrap;gap:10px;flex-direction:column}
.twl-newsletter__form input{padding:14px 18px;background:rgba(0,0,0,.3);border:1px solid var(--twl-line-d);color:var(--twl-text);border-radius:var(--twl-radius-pill);font-size:15px;width:100%}
.twl-newsletter__form .twl-btn{align-self:stretch}
.twl-newsletter__msg{margin:8px 0 0;font-size:13px;color:var(--twl-gold);min-height:1.2em}
.twl-newsletter__fine{margin:0;color:var(--twl-text-dim);font-size:12px}

/* Trust ------------------------------------------------------------------ */
.twl-trust-grid{margin-bottom:32px}
.twl-trustcard{padding:24px;background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.015));border:1px solid var(--twl-line);border-radius:var(--twl-radius)}
.twl-trustcard__glyph{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--twl-grad-gold);color:#0b0f1a;font-size:22px;margin-bottom:12px}
.twl-trustcard h3{font-family:var(--twl-font-display);font-size:20px;color:var(--twl-champagne);margin:0 0 8px}
.twl-trustcard p{color:var(--twl-text-mute);margin:0}
.twl-trust-badges{list-style:none;padding:18px;margin:0 0 24px;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;background:rgba(255,255,255,.03);border:1px solid var(--twl-line);border-radius:var(--twl-radius)}
.twl-trust-badges li{font-family:var(--twl-font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:8px 14px;background:rgba(212,175,55,.1);color:var(--twl-gold);border-radius:var(--twl-radius-pill)}
.twl-trust-meta{text-align:center;font-size:13px;color:var(--twl-text-mute)}

/* Bundles ---------------------------------------------------------------- */
.twl-bundle{padding:24px;background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.015));border:1px solid var(--twl-line);border-radius:var(--twl-radius);display:flex;flex-direction:column;gap:14px;transition:transform .25s ease,border-color .25s ease}
.twl-bundle:hover{transform:translateY(-3px);border-color:rgba(212,175,55,.3)}
.twl-bundle__head{display:flex;gap:14px;align-items:flex-start}
.twl-bundle__glyph{font-size:32px;color:var(--twl-gold);width:54px;height:54px;display:inline-grid;place-items:center;background:rgba(212,175,55,.1);border:1px solid rgba(212,175,55,.3);border-radius:50%}
.twl-bundle__title{font-family:var(--twl-font-display);font-size:22px;margin:0 0 6px;color:var(--twl-champagne)}
.twl-bundle__sub{font-size:14px;color:var(--twl-text-mute);margin:0}
.twl-bundle__items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.twl-bundle__item{display:flex;align-items:center;gap:12px;padding:12px 14px;background:rgba(0,0,0,.25);border:1px solid var(--twl-line);border-radius:var(--twl-radius-sm)}
.twl-bundle__dot{color:var(--twl-gold);font-size:12px}
.twl-bundle__label{flex:1;color:var(--twl-text);font-size:14px}

/* Roadmap (collection planner) ------------------------------------------ */
.twl-roadmap{list-style:none;counter-reset:r;padding:0;margin:14px 0;display:grid;gap:12px}
.twl-roadmap li{counter-increment:r;display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;padding:16px;background:rgba(0,0,0,.25);border:1px solid var(--twl-line);border-radius:var(--twl-radius)}
.twl-roadmap li::before{content:counter(r);font-family:var(--twl-font-display);font-size:24px;color:var(--twl-gold);width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:rgba(212,175,55,.1);border:1px solid rgba(212,175,55,.3)}
.twl-roadmap strong{display:block;font-family:var(--twl-font-display);font-size:18px;color:var(--twl-champagne)}
.twl-roadmap small{display:block;color:var(--twl-text-mute);font-size:13px;margin-top:4px}
.twl-planner__note{font-size:12px;color:var(--twl-text-dim);font-style:italic;margin:14px 0}

/* Admin tweaks ---------------------------------------------------------- */
@media print{
    .twl-tool,.twl-tool__shell{background:#fff;border-color:#ccc;color:#000}
    .twl-tool__panel,.twl-tool__output{background:#fff;border-color:#ccc;color:#000}
    .twl-tool__panel h4,.twl-eyebrow{color:#7a5e1f}
    .twl-tool__panel p{color:#000}
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
    .twl-quiz__step.is-active,.twl-quiz__result{animation:none}
    .twl-gear,.twl-particle{animation:none}
}
