*{box-sizing:border-box;margin:0;padding:0;}
:root{--bg:#F8F5EF;--ink:#0F0D07;--red:#DA4F3B;--blue:#4A5889;--yellow:#FFCD35;--paper:#fff;--green:#2F5D4A;--plum:#5E2A44;--rule:rgba(15,13,7,0.09);--muted:rgba(15,13,7,0.42);--faint:rgba(15,13,7,0.06);}
body{background:var(--bg);font-family:'DM Sans',sans-serif;color:var(--ink);min-height:100vh;}
a{text-decoration:none;color:inherit;}

/* ── NAV ───────────────────────────────────────── */
.nav{background:var(--bg);border-bottom:2px solid var(--ink);padding:0 32px;height:78px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:200;gap:20px;}
.brand{display:flex;align-items:center;cursor:pointer;flex-shrink:0;}
.brand-logo{height:52px;width:auto;display:block;}
.nav-links{display:flex;align-items:center;gap:2px;flex:1;justify-content:center;}
.nav-link{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;color:var(--muted);cursor:pointer;padding:7px 14px;border-radius:100px;transition:all .15s;white-space:nowrap;}
.nav-link:hover{color:var(--red);}
.nav-link.on{background:var(--ink);color:var(--bg);}
.nav-link.on:hover{color:var(--bg);}
.nav-r{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.nav-location{font-family:'DM Sans',sans-serif;font-size:11px;color:var(--muted);padding:6px 13px;border-radius:100px;border:1px solid var(--rule);cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:5px;}
.nav-location:hover{color:var(--red);border-color:rgba(200,75,47,0.3);}
.nav-bell{position:relative;width:32px;height:32px;border:none;border-radius:50%;background:none;display:flex;align-items:center;justify-content:center;color:var(--muted);cursor:pointer;}
.nav-bell svg{width:18px;height:18px;}
.nav-bell:hover{color:var(--red);}
.nav-bell .dot{position:absolute;top:4px;right:5px;width:7px;height:7px;border-radius:50%;background:var(--red);border:1.5px solid var(--bg);}
.nav-av{width:36px;height:36px;border:none;border-radius:50%;background:var(--red);color:#fff;font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;}

/* ── HERO BANNER ───────────────────────────────── */
.hero-banner{background:var(--ink);padding:30px 40px;}
.hero-kicker{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:rgba(245,196,53,0.6);margin-bottom:10px;display:flex;align-items:center;gap:8px;}
.hero-kicker::before{content:'';display:inline-block;width:20px;height:1.5px;background:rgba(245,196,53,0.6);}
.hero-headline{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:40px;text-transform:uppercase;line-height:0.92;color:#fff;margin-bottom:12px;}
.hero-headline span{color:var(--yellow);}
.hero-tagline{font-family:'Playfair Display',serif;font-style:italic;font-size:14px;color:rgba(248,245,239,0.5);line-height:1.65;max-width:430px;}
.hero-tagline strong{color:rgba(248,245,239,0.85);font-style:normal;font-weight:500;}
.hero-right{flex-shrink:0;display:flex;flex-direction:column;gap:18px;align-items:flex-end;}
.hero-stats{display:flex;gap:30px;margin-top:20px;}
.hero-stat{text-align:left;}
.hero-stat-n{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:38px;color:var(--yellow);line-height:1;}
.hero-stat-l{font-family:'DM Sans',sans-serif;font-size:9px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:rgba(248,245,239,0.35);margin-top:3px;}
.hero-cta{background:var(--red);color:#fff;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:600;letter-spacing:0.03em;padding:13px 28px;border-radius:100px;cursor:pointer;box-shadow:0 3px 16px rgba(200,75,47,0.4);transition:transform .15s;}
.hero-cta:hover{transform:translateY(-2px);}

/* ── PAGE LAYOUT ───────────────────────────────── */
.page-body{max-width:1280px;margin:0 auto;padding:0 40px;display:grid;grid-template-columns:1fr 360px;gap:0;}
.main{border-right:1px solid var(--rule);min-width:0;}
.sidebar{padding:24px 0 36px 36px;}

/* ── SECTION HEADERS ───────────────────────────── */
.sec-hd{padding:22px 0 12px;display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid var(--ink);}
.sec-hd-l{min-width:0;}
.sec-hd-t{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:21px;text-transform:uppercase;letter-spacing:0.03em;color:var(--ink);}
.sec-hd-t span{color:var(--red);}
.sec-hd-s{font-family:'Playfair Display',serif;font-style:italic;font-size:11px;color:var(--muted);margin-top:2px;}
.sec-hd-lk{font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;color:var(--red);cursor:pointer;white-space:nowrap;margin-left:14px;}
.sec-hd-lk:hover{color:var(--ink);}

/* ── H2H ───────────────────────────────────────── */
.hth-wrap{padding:18px 0 8px;}
.hth{background:var(--paper);border-radius:20px;box-shadow:0 4px 28px rgba(15,13,7,0.12);overflow:hidden;transition:box-shadow .14s;}
.hth:hover{box-shadow:0 8px 36px rgba(15,13,7,0.16);}
.hth-eyebrow{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);padding:16px 16px 0;text-align:center;}
.hth-inner{display:flex;align-items:stretch;padding:8px 0;}
.hth-spot{flex:1;padding:18px 22px;cursor:pointer;transition:background .12s;border-radius:12px;margin:0 6px;text-align:center;}
.hth-spot:hover{background:rgba(217,79,59,0.08);}
.hth-spot:hover .hth-name{color:var(--red);}
.hth-spot:active{background:rgba(200,75,47,0.1);}
.hth-name{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:24px;text-transform:uppercase;color:var(--ink);line-height:1.05;margin-bottom:3px;}
.hth-meta{font-family:'DM Sans',sans-serif;font-size:10px;color:var(--muted);}
.hth-vs{width:54px;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.hth-vs-c{width:40px;height:40px;border-radius:50%;background:var(--ink);display:flex;align-items:center;justify-content:center;font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:13px;color:var(--bg);}
.hth-foot{padding:13px 18px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--rule);background:rgba(15,13,7,0.015);}
.hth-skip,.hth-add{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;letter-spacing:0.03em;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:color .12s;}
.hth-skip svg,.hth-add svg{width:13px;height:13px;}
.hth-skip{color:var(--muted);}
.hth-skip:hover{color:var(--ink);}
.hth-add{color:var(--red);}
.hth-add:hover{color:var(--ink);}
.hth-jump{text-align:center;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;color:var(--red);padding:12px 0 4px;cursor:pointer;}
.hth-jump:hover{color:var(--ink);}
/* Rankings gate (Gate 1 — D-045): locked users see the Super 25 blurred. */
.rank-gate{text-align:center;padding:22px 20px;background:var(--paper);border-top:2px solid var(--ink);}
.rank-gate-t{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:22px;text-transform:uppercase;color:var(--ink);}
.rank-gate-t span{color:var(--red);}
.rank-gate-s{font-family:'Playfair Display',serif;font-style:italic;font-size:13px;color:var(--muted);margin:6px auto 14px;max-width:42ch;}
.s25-list.locked{filter:blur(4px);pointer-events:none;user-select:none;opacity:0.6;}

/* ── FEED TABS + LIST ROWS ─────────────────────── */
.feed-tabs{display:flex;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--rule);}
.feed-tabs::-webkit-scrollbar{display:none;}
.ft{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:500;letter-spacing:0.05em;text-transform:uppercase;padding:11px 16px;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap;margin-bottom:-1px;cursor:pointer;transition:color .12s;}
.ft:hover{color:var(--red);}
.ft.on{color:var(--ink);border-bottom-color:var(--ink);font-weight:700;}
.lr{display:block;border-bottom:1px solid var(--rule);background:var(--paper);cursor:pointer;}
.lr:hover .lr-title{color:var(--red);}
.lr-body{padding:14px 18px 12px;}
.lr-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px;}
.lr-cat{font-family:'DM Sans',sans-serif;font-size:9px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);}
.lr-up{display:flex;align-items:center;gap:5px;color:var(--muted);}
.lr-up svg{width:15px;height:15px;}
.lr-up b{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:16px;color:var(--ink);line-height:1;}
.lr-title{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:26px;text-transform:uppercase;line-height:1.0;color:var(--ink);margin-bottom:10px;transition:color .15s;}
.lr-title em{font-style:normal;color:var(--red);}
.lr-pf{display:flex;gap:5px;flex-wrap:wrap;}
.lr-pf-t{font-family:'DM Sans',sans-serif;font-size:8px;letter-spacing:0.02em;padding:3px 10px;border-radius:100px;background:rgba(15,13,7,0.05);color:var(--muted);border:1px solid rgba(15,13,7,0.07);}
.lr-footer{display:flex;align-items:center;gap:8px;padding:9px 18px;background:var(--bg);border-top:1px solid rgba(15,13,7,0.05);}
.lr-av{width:19px;height:19px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:8px;color:#fff;flex-shrink:0;}
.lr-from{font-family:'DM Sans',sans-serif;font-size:10px;color:var(--muted);}
.lr-from strong{color:var(--ink);font-weight:500;}
.lr-v{font-size:10px;color:var(--red);font-weight:600;}
.lr-visitor{font-size:10px;color:var(--muted);}
.lr-dot2{width:2px;height:2px;border-radius:50%;background:rgba(15,13,7,0.2);flex-shrink:0;}
.lr-comments{font-family:'DM Sans',sans-serif;font-size:10px;color:var(--muted);}
.lr-read{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;color:var(--red);margin-left:auto;}
.load-more{padding:14px 0;text-align:center;font-family:'DM Sans',sans-serif;font-size:10px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--red);cursor:pointer;border-bottom:1px solid var(--rule);}
.load-more:hover{color:var(--ink);}

/* ── SUPER 25 (rankings teaser) ────────────────── */
.chip-row{display:flex;overflow-x:auto;scrollbar-width:none;gap:6px;padding:12px 0;border-bottom:1px solid var(--rule);}
.chip-row::-webkit-scrollbar{display:none;}
.chip{font-family:'DM Sans',sans-serif;font-size:9px;font-weight:500;letter-spacing:0.04em;text-transform:uppercase;padding:5px 13px;border-radius:100px;cursor:pointer;white-space:nowrap;flex-shrink:0;border:1px solid var(--rule);color:var(--muted);transition:all .12s;}
.chip:hover{color:var(--red);border-color:rgba(200,75,47,0.3);}
.chip.on{background:var(--ink);color:var(--bg);border-color:var(--ink);}
.s25r{display:flex;align-items:center;border-bottom:0.5px solid var(--rule);cursor:pointer;transition:background .1s;}
.s25r:hover{background:rgba(15,13,7,0.015);}
.s25r:hover .s25r-name{color:var(--red);}
.s25r-num{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:20px;text-align:center;flex-shrink:0;width:48px;line-height:1;color:var(--ink);}
.s25r-num.top{color:var(--yellow);-webkit-text-stroke:0.5px var(--ink);}
.s25r-body{flex:1;padding:12px 8px;min-width:0;}
.s25r-name{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:18px;text-transform:uppercase;letter-spacing:0.02em;color:var(--ink);line-height:1;margin-bottom:3px;transition:color .12s;}
.s25r-loc{font-family:'DM Sans',sans-serif;font-size:9px;color:var(--muted);}
.s25r-mv{font-family:'DM Sans',sans-serif;font-size:9px;font-weight:600;color:var(--green);}
.s25r-right{padding:0 12px 0 8px;display:flex;align-items:center;gap:8px;flex-shrink:0;}
.s25-more{padding:13px 0;text-align:center;font-family:'DM Sans',sans-serif;font-size:10px;font-weight:500;letter-spacing:0.07em;text-transform:uppercase;color:var(--red);cursor:pointer;border-bottom:2px solid var(--ink);}
.s25-more:hover{color:var(--ink);}

/* ── WANT-TO-GO / BEEN — promoted to first-class ── */
.wb{display:flex;gap:6px;align-items:center;position:relative;}
/* Overlaid tooltip when un-claiming a ranked (locked) Been is blocked (D-052). */
.wb-tip{position:absolute;bottom:calc(100% + 9px);right:0;z-index:40;white-space:nowrap;background:var(--ink);color:#fff;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:500;letter-spacing:0.01em;padding:6px 10px;border-radius:8px;box-shadow:0 6px 18px rgba(15,13,7,0.25);pointer-events:none;animation:fadeMsg 3s ease forwards;}
.wb-tip::after{content:'';position:absolute;top:100%;right:14px;border:5px solid transparent;border-top-color:var(--ink);}
/* "want to go again" tip points at the bookmark (left button), not Been (right). */
.wb-tip.want-side{right:auto;left:0;}
.wb-tip.want-side::after{right:auto;left:14px;}
.wb-btn{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--rule);background:var(--paper);display:flex;align-items:center;justify-content:center;cursor:pointer;color:rgba(15,13,7,0.5);transition:all .12s;flex-shrink:0;}
.wb-btn svg{width:15px;height:15px;}
.wb-btn:hover{border-color:var(--red);color:var(--red);transform:translateY(-1px);}
.wb-btn.want.on{background:var(--red);border-color:var(--red);color:#fff;}
/* want + been both on = "been before, want to go again" — green cue (D-052). */
.wb-btn.want.again{background:var(--green);border-color:var(--green);color:#fff;}
.wb-btn.want.again:hover{border-color:var(--green);color:#fff;}
.wb-btn.been.on{background:var(--yellow);border-color:var(--yellow);color:var(--ink);}
.rk-pill{background:var(--red);color:#fff;font-family:'DM Sans',sans-serif;font-size:9px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;padding:7px 14px;border-radius:100px;cursor:pointer;transition:background .12s;white-space:nowrap;}
.rk-pill:hover{background:var(--ink);}

/* ── SIDEBAR ───────────────────────────────────── */
.sb-block{margin-bottom:28px;}
.sb-block.div{border-top:2px solid var(--ink);padding-top:18px;}
.sb-ey{font-family:'DM Sans',sans-serif;font-size:9px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;}
.sb-hd{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px;}
.sb-title{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:18px;text-transform:uppercase;color:var(--ink);}
.sb-title span{color:var(--red);}
.sb-sub{font-family:'Playfair Display',serif;font-style:italic;font-size:10px;color:var(--muted);margin-bottom:10px;line-height:1.55;}
.sb-lk{font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;color:var(--red);cursor:pointer;}
.sb-lk:hover{color:var(--ink);}

/* Your Spots — the prominent Want-to-Go / Been entry */
.yspots{display:flex;flex-direction:column;gap:8px;}
.yspot{display:flex;align-items:center;gap:12px;padding:13px 15px;border-radius:14px;border:1.5px solid var(--ink);background:var(--paper);cursor:pointer;transition:all .14s;}
.yspot:hover{transform:translateY(-2px);box-shadow:0 5px 16px rgba(15,13,7,0.09);}
.yspot-ic{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.yspot-ic svg{width:17px;height:17px;}
.yspot.want .yspot-ic{background:rgba(200,75,47,0.12);color:var(--red);}
.yspot.been .yspot-ic{background:rgba(245,196,53,0.22);color:#8a6d00;}
.yspot-t{flex:1;display:flex;flex-direction:column;gap:3px;}
.yspot-lbl{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:16px;text-transform:uppercase;color:var(--ink);line-height:1;}
.yspot-sub{font-family:'DM Sans',sans-serif;font-size:9px;color:var(--muted);margin-top:2px;}
.yspot-n{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:24px;color:var(--ink);line-height:1;}

/* Trending spots / New on SM rows */
.trow{display:flex;align-items:center;gap:11px;padding:10px 0;border-bottom:0.5px solid var(--rule);cursor:pointer;}
.trow:last-of-type{border-bottom:none;}
.trow:hover .trow-name{color:var(--red);}
.trow-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;}
.trow-ring{width:34px;height:34px;border-radius:50%;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;font-family:'DM Sans',sans-serif;font-size:6px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;text-align:center;color:var(--ink);}
.trow-ring .new{position:absolute;top:-3px;right:-3px;width:10px;height:10px;border-radius:50%;background:var(--red);border:2px solid var(--bg);}
.trow-body{flex:1;min-width:0;}
.trow-name{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:15px;text-transform:uppercase;color:var(--ink);line-height:1;margin-bottom:2px;transition:color .12s;}
.trow-meta{font-family:'DM Sans',sans-serif;font-size:8px;color:var(--muted);}
.trow-tag{font-family:'DM Sans',sans-serif;font-size:9px;font-weight:600;white-space:nowrap;}
.trow-tag.up{color:var(--green);}
.trow-tag.new{color:var(--red);}

/* ── FOOTER ────────────────────────────────────── */
.site-footer{border-top:2px solid var(--ink);padding:26px 40px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px;}
.footer-txt{font-family:'Playfair Display',serif;font-style:italic;font-size:14px;color:var(--muted);}
.footer-links{display:flex;gap:22px;}
.footer-link{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;color:var(--muted);cursor:pointer;}
.footer-link:hover{color:var(--red);}

/* ── BOTTOM NAV (mobile only) ──────────────────── */
.bnav{display:none;border-top:2px solid var(--ink);background:var(--bg);align-items:center;height:62px;padding:0 6px;position:fixed;bottom:0;left:0;right:0;z-index:200;}
.bt{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;padding:4px 0;color:rgba(15,13,7,0.32);}
.bt svg{width:23px;height:23px;}
.bt-lbl{font-family:'DM Sans',sans-serif;font-size:7px;font-weight:500;letter-spacing:0.05em;text-transform:uppercase;}
.bt.on{color:var(--ink);}
.bt.on .bt-lbl{font-weight:600;}
.bt-fab{flex:1;display:flex;justify-content:center;}
.fab{width:50px;height:50px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(200,75,47,0.4);cursor:pointer;margin-top:-26px;border:3px solid var(--bg);}
.fab svg{width:22px;height:22px;}

/* ── YOUR SPOTS modal + CREATE sheet ───────────── */
.nav-create{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;color:#fff;background:var(--ink);cursor:pointer;padding:8px 15px;border-radius:100px;white-space:nowrap;}
.nav-create:hover{background:var(--red);}
.modal-overlay{position:fixed;inset:0;background:rgba(15,13,7,0.5);z-index:300;display:none;align-items:center;justify-content:center;padding:20px;}
.modal-overlay.open{display:flex;}
.modal{background:var(--bg);width:100%;max-width:480px;max-height:84vh;border:2px solid var(--ink);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;}
.modal-hd{display:flex;justify-content:space-between;align-items:center;padding:15px 18px;border-bottom:2px solid var(--ink);}
.modal-title{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:24px;text-transform:uppercase;}
.modal-x{font-size:26px;color:var(--muted);cursor:pointer;line-height:1;}
.modal-x:hover{color:var(--red);}
.modal-sub{display:flex;border-bottom:1px solid var(--rule);}
.ms-tab{flex:1;text-align:center;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;padding:13px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;}
.ms-tab em{font-style:normal;opacity:0.55;margin-left:2px;}
.ms-tab.on{color:var(--ink);border-bottom-color:var(--ink);}
.modal-search{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--rule);background:var(--paper);}
.modal-search svg{width:16px;height:16px;color:var(--muted);flex-shrink:0;}
.modal-search input{flex:1;border:none;background:transparent;font-family:'Playfair Display',serif;font-style:italic;font-size:14px;color:var(--ink);outline:none;}
.modal-search input::placeholder{color:rgba(15,13,7,0.35);}
.modal-list{overflow-y:auto;}
.modal-scroll{flex:1;min-height:0;overflow-y:auto;}
.msr-hint{padding:14px 16px;font-family:'DM Sans',sans-serif;font-size:12px;color:var(--muted);}
.msr{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:0.5px solid var(--rule);cursor:pointer;}
.msr:hover{background:rgba(15,13,7,0.02);}
.msr-body{flex:1;}
.msr-name{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:17px;text-transform:uppercase;line-height:1;margin-bottom:2px;}
.msr-meta{font-family:'DM Sans',sans-serif;font-size:9px;color:var(--muted);}
.msr-rm{color:var(--muted);font-size:18px;cursor:pointer;padding:0 6px;line-height:1;}
/* "Been before" insignia — a want-to-go you've already visited ("want to go
   again", Letterboxd rewatch). Been-colored, sits by the name (D-052). */
.been-before{display:inline-block;font-family:'DM Sans',sans-serif;font-size:9px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;color:#8a6d00;background:rgba(255,205,53,0.25);border-radius:100px;padding:2px 7px;margin-left:6px;vertical-align:middle;}
.msr-rm:hover{color:var(--red);}
/* The Create sheet reads as a centered modal at every width (mobile included),
   not a bottom-anchored sheet. */
.sheet-overlay{position:fixed;inset:0;background:rgba(15,13,7,0.5);z-index:300;display:none;align-items:center;justify-content:center;padding:16px;}
.sheet-overlay.open{display:flex;}
.sheet{background:var(--bg);width:100%;max-width:400px;border-radius:18px;border:2px solid var(--ink);padding:16px 18px 18px;}
.sheet-handle{display:none;}
.sheet-handle{width:42px;height:4px;border-radius:100px;background:rgba(15,13,7,0.18);margin:6px auto 14px;}
.sheet-title{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:0.1em;color:var(--muted);text-align:center;margin-bottom:6px;}
.sheet-item{display:flex;align-items:center;gap:13px;padding:15px 10px;border-top:1px solid var(--rule);font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:18px;text-transform:uppercase;color:var(--ink);cursor:pointer;}
.sheet-item svg{width:18px;height:18px;color:var(--red);flex-shrink:0;}
.sheet-item:hover{color:var(--red);}
.sheet-cancel{display:block;text-align:center;padding:13px;margin-top:10px;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;color:var(--muted);cursor:pointer;border-radius:100px;background:rgba(15,13,7,0.04);}

/* ── RESPONSIVE ────────────────────────────────── */
@media(max-width:920px){
  .nav{padding:0 16px;height:62px;}
  .nav-links{display:none;}
  .brand-logo{height:42px;}
  .nav-location,.nav-create{display:none;}
  .hero-banner{flex-direction:column;align-items:flex-start;gap:18px;padding:24px 18px;}
  .hero-headline{font-size:36px;}
  .hero-right{flex-direction:row;align-items:center;gap:18px;flex-wrap:wrap;align-self:stretch;justify-content:space-between;}
  .hero-stats{gap:20px;}
  .hero-stat-n{font-size:30px;}
  .page-body{grid-template-columns:1fr;padding:0 16px;}
  .main{border-right:none;}
  .sidebar{padding:6px 0 20px;margin-top:18px;border-top:2px solid var(--ink);}
  .sec-hd-t{font-size:19px;}
  .lr-title{font-size:22px;}
  .site-footer{flex-direction:column;text-align:center;padding:24px 18px;}
  .bnav{display:flex;}
  body{padding-bottom:62px;}
}

/* ═══════════════════════════════════════════════════
   PAGE-SPECIFIC — Profile / Rankings / Lists / Activity
   (reuse home's nav, .hth, .s25r, .lr, .wb, .chip, modal)
   ═══════════════════════════════════════════════════ */

/* ── shared dark section hero (Rankings, Lists header) ── */
.sec-hero{background:var(--ink);padding:30px 40px;border-bottom:2px solid var(--ink);}
.sec-hero-in{max-width:1000px;margin:0 auto;}
.sec-hero-ey{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:rgba(245,196,53,0.6);margin-bottom:8px;}
.sec-hero-t{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:46px;text-transform:uppercase;line-height:0.9;color:#fff;}
.sec-hero-t span{color:var(--red);}
.sec-hero-s{font-family:'Playfair Display',serif;font-style:italic;font-size:13px;color:rgba(248,245,239,0.55);margin-top:8px;max-width:560px;line-height:1.6;}

/* ── PROFILE / ME ─────────────────────────────── */
.profile-wrap{max-width:880px;margin:0 auto;padding:0 40px;}
.me-head{display:flex;align-items:flex-start;gap:22px;padding:28px 0 18px;border-bottom:2px solid var(--ink);}
.me-av{width:84px;height:84px;border-radius:50%;background:var(--red);color:#fff;font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:38px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.me-id{flex:1;min-width:0;}
.me-name{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:34px;text-transform:uppercase;line-height:1;margin-bottom:5px;}
.me-nb{font-family:'DM Sans',sans-serif;font-size:12px;color:var(--muted);margin-bottom:9px;}
.me-badge{display:inline-flex;align-items:center;gap:5px;font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;color:var(--red);background:rgba(200,75,47,0.08);border:1px solid rgba(200,75,47,0.2);padding:4px 10px;border-radius:100px;}
.me-share{display:flex;align-items:center;gap:10px;margin-top:12px;}
.me-share-url{font-family:'DM Sans',sans-serif;font-size:11px;color:var(--muted);background:rgba(15,13,7,0.04);padding:7px 13px;border-radius:100px;}
.me-share-copy{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;color:var(--red);cursor:pointer;}
.me-stats{display:flex;flex-shrink:0;}
.me-stat{text-align:center;padding:2px 15px;border-right:1px solid var(--rule);cursor:pointer;}
.me-stat:last-child{border-right:none;padding-right:0;}
.me-stat-n{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:26px;line-height:1;}
.me-stat-l{font-family:'DM Sans',sans-serif;font-size:8px;font-weight:500;letter-spacing:0.07em;text-transform:uppercase;color:var(--muted);margin-top:3px;}
.pf-nav{display:flex;overflow-x:auto;scrollbar-width:none;border-bottom:2px solid var(--ink);}
.pf-nav::-webkit-scrollbar{display:none;}
.pf-tab{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:500;letter-spacing:0.05em;text-transform:uppercase;padding:13px 18px;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;white-space:nowrap;}
.pf-tab:hover{color:var(--red);}
.pf-tab.on{color:var(--ink);border-bottom-color:var(--ink);font-weight:700;}
.pf-panel{display:none;padding:8px 0 40px;}
.pf-panel.on{display:block;}
.pf-addbar{display:flex;align-items:center;gap:10px;background:rgba(15,13,7,0.04);border-radius:10px;padding:11px 14px;margin:14px 0 6px;}
.pf-addbar svg{width:16px;height:16px;color:var(--muted);flex-shrink:0;}
.pf-addbar input{flex:1;border:none;background:transparent;font-family:'Playfair Display',serif;font-style:italic;font-size:14px;color:var(--ink);outline:none;}
.pf-addbar input::placeholder{color:rgba(15,13,7,0.35);}

/* profile list row */
.me-lr{display:flex;align-items:stretch;border-bottom:1px solid var(--rule);cursor:pointer;}
.me-lr:hover .me-lr-t{color:var(--red);}
.me-lr-bar{width:5px;flex-shrink:0;}
.me-lr-body{flex:1;padding:14px 16px;min-width:0;}
.me-lr-t{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:22px;text-transform:uppercase;line-height:1;margin-bottom:6px;transition:color .12s;}
.me-lr-t em{font-style:normal;color:var(--red);}
.me-lr-meta{font-family:'DM Sans',sans-serif;font-size:10px;color:var(--muted);}
.me-lr-right{padding:14px 16px 14px 0;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:2px;flex-shrink:0;}
.me-lr-v{display:flex;align-items:center;gap:4px;font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:18px;color:var(--ink);}
.me-lr-v svg{width:13px;height:13px;color:var(--muted);}
.me-lr-vl{font-family:'DM Sans',sans-serif;font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:0.05em;}

/* profile spot row (Been / Want lists) — reuses .wb toggles */
.prow{display:flex;align-items:center;gap:12px;padding:13px 4px;border-bottom:0.5px solid var(--rule);cursor:pointer;}
.prow:hover .prow-name{color:var(--red);}
.prow-body{flex:1;min-width:0;}
.prow-name{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:19px;text-transform:uppercase;line-height:1;margin-bottom:2px;transition:color .12s;}
.prow-meta{font-family:'DM Sans',sans-serif;font-size:9px;color:var(--muted);}
.prow-note{font-family:'Playfair Display',serif;font-style:italic;font-size:11px;color:var(--muted);margin-top:3px;}

/* network row (followers / following) */
.nrow{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:0.5px solid var(--rule);}
.nrow-av{width:40px;height:40px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:16px;flex-shrink:0;}
.nrow-body{flex:1;}
.nrow-name{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:17px;text-transform:uppercase;line-height:1;margin-bottom:2px;}
.nrow-meta{font-family:'DM Sans',sans-serif;font-size:9px;color:var(--muted);}
.follow-btn{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;padding:7px 16px;border-radius:100px;cursor:pointer;border:1.5px solid var(--ink);background:none;color:var(--ink);}
.follow-btn:hover{background:var(--ink);color:var(--bg);}
.follow-btn.on{background:var(--ink);color:var(--bg);}

/* ── ACTIVITY feed rows (profile Activity tab) ─── */
.act-scope{display:flex;gap:0;border-bottom:1px solid var(--rule);margin-top:6px;}
.act-s{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:500;letter-spacing:0.05em;text-transform:uppercase;padding:10px 14px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;}
.act-s.on{color:var(--ink);border-bottom-color:var(--ink);font-weight:700;}
.notif-row{display:flex;align-items:flex-start;gap:12px;padding:14px 4px;border-bottom:0.5px solid var(--rule);}
.notif-av{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:15px;color:#fff;flex-shrink:0;}
.notif-body{flex:1;}
.notif-txt{font-family:'DM Sans',sans-serif;font-size:13px;color:var(--ink);line-height:1.5;}
.notif-txt strong{font-weight:600;}
.notif-txt .spot{font-style:italic;color:var(--red);}
.notif-time{font-family:'DM Sans',sans-serif;font-size:10px;color:rgba(15,13,7,0.3);margin-top:2px;}

/* ── RANKINGS ──────────────────────────────────── */
.rank-wrap{max-width:880px;margin:0 auto;padding:0 40px 40px;}
.filter-block{padding:16px 0 6px;}
.filter-lbl{font-family:'DM Sans',sans-serif;font-size:9px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;}

/* ── LISTS PAGE ────────────────────────────────── */
.lists-tabbar{border-bottom:2px solid var(--ink);background:var(--bg);overflow-x:auto;scrollbar-width:none;position:sticky;top:78px;z-index:100;}
.lists-tabbar::-webkit-scrollbar{display:none;}
.lists-tabbar-in{max-width:1000px;margin:0 auto;padding:0 40px;display:flex;}
.ltab{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:500;letter-spacing:0.05em;text-transform:uppercase;padding:14px 16px;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;white-space:nowrap;}
.ltab:hover{color:var(--red);}
.ltab.on{color:var(--ink);border-bottom-color:var(--ink);font-weight:700;}
.lists-filters{max-width:1000px;margin:0 auto;padding:14px 40px 0;}
.lists-search{display:flex;align-items:center;gap:10px;background:rgba(15,13,7,0.04);border-radius:10px;padding:11px 14px;margin-bottom:10px;}
.lists-search svg{width:16px;height:16px;color:var(--muted);flex-shrink:0;}
.lists-search input{flex:1;border:none;background:transparent;font-family:'Playfair Display',serif;font-style:italic;font-size:14px;color:var(--ink);outline:none;}
.lists-search input::placeholder{color:rgba(15,13,7,0.35);}
.lists-body{max-width:1000px;margin:0 auto;padding:8px 40px 40px;}

/* ── responsive for the new surfaces ───────────── */
@media(max-width:920px){
  .sec-hero{padding:22px 18px;}
  .sec-hero-t{font-size:34px;}
  .profile-wrap,.rank-wrap,.lists-body,.lists-filters,.lists-tabbar-in,.sec-hero-in{padding-left:16px;padding-right:16px;}
  .me-head{flex-wrap:wrap;gap:16px;}
  .me-av{width:64px;height:64px;font-size:28px;}
  .me-name{font-size:26px;}
  .me-stats{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--rule);padding-top:12px;}
  .me-stat:first-child{padding-left:0;}
  .lists-tabbar{top:62px;}
  body.has-bnav{padding-bottom:62px;}
}

/* ═══════════════════════════════════════════════════
   v2 — CSS logo, category-colored list cards, greeting,
   list detail, logged-out home
   ═══════════════════════════════════════════════════ */

/* ── CSS logo lockup (overlapping circles + wordmark) ── */
.brand{display:flex;align-items:center;gap:9px;cursor:pointer;flex-shrink:0;text-decoration:none;}
.logo-bug{display:inline-flex;align-items:center;}
.logo-bug i{display:block;width:15px;height:15px;border-radius:50%;border:1.5px solid var(--ink);margin-left:-5px;}
.logo-bug i:first-child{margin-left:0;}
.logo-word{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:22px;text-transform:uppercase;letter-spacing:0.02em;line-height:1;color:var(--ink);white-space:nowrap;}
.brand-svg{height:56px;width:auto;display:block;}

/* ── category-colored list-card header (JS sets .lr-body bg) ── */
.lr{overflow:hidden;transition:filter .12s;}
.lr:hover{filter:brightness(1.05);}
.lr-body{color:#fff;}
.lr:hover .lr-title{color:#fff;}
.lr-cat{color:rgba(255,255,255,0.6);}
.lr-up{color:rgba(255,255,255,0.7);}
.lr-up b{color:#fff;}
.lr-title{color:#fff;}
.lr-title em{font-style:normal;color:var(--yellow);}
.lr-pf-t{background:rgba(255,255,255,0.15);color:rgba(255,255,255,0.85);border:1px solid rgba(255,255,255,0.22);}
/* light (yellow) category header — flip text to ink for contrast */
.lr-light .lr-body{color:var(--ink);}
.lr-light .lr-cat{color:rgba(15,13,7,0.5);}
.lr-light .lr-up{color:rgba(15,13,7,0.5);}
.lr-light .lr-up b{color:var(--ink);}
.lr-light .lr-title,.lr-light:hover .lr-title{color:var(--ink);}
.lr-light .lr-pf-t{background:rgba(15,13,7,0.08);color:rgba(15,13,7,0.6);border:1px solid rgba(15,13,7,0.12);}

/* ── logged-in home greeting (replaces marketing hero) ── */
.greet{border-bottom:2px solid var(--ink);}
.greet-in{max-width:1280px;margin:0 auto;padding:22px 40px;}
.greet-hi{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:30px;text-transform:uppercase;line-height:1;}
.greet-hi span{color:var(--red);}
.greet-sub{font-family:'Playfair Display',serif;font-style:italic;font-size:13px;color:var(--muted);margin-top:5px;}

/* ── footer: tagline only, centered ── */
.site-footer{justify-content:center;text-align:center;}

/* ── LIST DETAIL ───────────────────────────────── */
.ld-cover{padding:34px 40px;color:#fff;border-bottom:2px solid var(--ink);}
.ld-cover-in{max-width:760px;margin:0 auto;}
.ld-eyebrow{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,0.6);margin-bottom:10px;}
.ld-title{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:42px;text-transform:uppercase;line-height:0.95;}
.ld-title em{font-style:normal;color:var(--yellow);}
.ld-byline{display:flex;align-items:center;gap:7px;margin-top:14px;font-family:'DM Sans',sans-serif;font-size:12px;color:rgba(255,255,255,0.72);flex-wrap:wrap;}
.ld-byline strong{color:#fff;font-weight:600;}
.ld-byline .v{color:var(--yellow);font-weight:600;}
.ld-byline .dot{width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,0.4);}
.ld-wrap{max-width:760px;margin:0 auto;padding:0 40px 40px;}
.ld-toolbar{display:flex;align-items:center;gap:10px;padding:14px 0;border-bottom:2px solid var(--ink);}
.ld-like{display:inline-flex;align-items:center;gap:7px;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:600;color:var(--ink);background:none;border:1.5px solid var(--ink);border-radius:100px;padding:8px 16px;cursor:pointer;}
.ld-like svg{width:15px;height:15px;}
.ld-like:hover,.ld-like.on{background:var(--ink);color:var(--bg);}
.ld-save{display:inline-flex;align-items:center;gap:7px;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:600;color:var(--ink);background:none;border:1.5px solid var(--ink);border-radius:100px;padding:8px 16px;cursor:pointer;}
.ld-save svg{width:15px;height:15px;}
.ld-save:hover,.ld-save.on{background:var(--ink);color:var(--bg);}
.ld-tier{display:flex;align-items:center;gap:12px;padding:22px 0 10px;}
.ld-tier-pill{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:15px;text-transform:uppercase;letter-spacing:.04em;color:#fff;padding:5px 16px;border-radius:999px;display:inline-flex;align-items:center;flex-shrink:0;}
.ld-tier-line{flex:1;height:1px;background:var(--rule);}
.ld-cmt-hd{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:20px;text-transform:uppercase;padding:24px 0 10px;border-bottom:2px solid var(--ink);margin-top:10px;}
.ld-cmt{display:flex;gap:11px;padding:13px 0;border-bottom:0.5px solid var(--rule);}
.ld-cmt-av{width:32px;height:32px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:13px;flex-shrink:0;}
.ld-cmt-body{flex:1;}
.ld-cmt-who{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;margin-bottom:2px;}
.ld-cmt-who .v{color:var(--red);font-weight:500;}
.ld-cmt-txt{font-family:'Playfair Display',serif;font-style:italic;font-size:14px;color:var(--ink);line-height:1.5;}
.ld-cmt-time{font-family:'DM Sans',sans-serif;font-size:9px;color:var(--muted);margin-top:3px;}

/* ── logged-out CTA band ───────────────────────── */
.lo-join{background:var(--ink);padding:30px 40px;text-align:center;}
.lo-join-t{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:30px;text-transform:uppercase;color:#fff;line-height:1;}
.lo-join-t span{color:var(--yellow);}
.lo-join-s{font-family:'Playfair Display',serif;font-style:italic;font-size:13px;color:rgba(248,245,239,0.55);margin:8px 0 16px;}
.nav-signin{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;color:var(--ink);cursor:pointer;padding:7px 16px;border-radius:100px;border:1.5px solid var(--ink);white-space:nowrap;}
.nav-signin:hover{background:var(--ink);color:var(--bg);}
.nav-join{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;color:#fff;background:var(--red);cursor:pointer;padding:9px 18px;border-radius:100px;white-space:nowrap;box-shadow:0 2px 12px rgba(200,75,47,0.3);}

/* ── responsive (v2 bits) ──────────────────────── */
@media(max-width:920px){
  .logo-word{font-size:18px;}
  .logo-bug i{width:13px;height:13px;margin-left:-4px;}
  .brand-svg{height:41px;}
  .greet-in{padding:18px 16px;}
  .greet-hi{font-size:24px;}
  .ld-cover{padding:24px 16px;}
  .ld-title{font-size:32px;}
  .ld-wrap{padding-left:16px;padding-right:16px;}
  .lo-join{padding:24px 18px;}
}

/* ═══════════════════════════════════════════════════
   REDESIGN ADDITIONS — components beyond the mockups' styles.css,
   designed against the brand system for the surfaces without a mockup
   (stream cards, builder, onboarding, add-spots, auth). D-051 build-out.
   ═══════════════════════════════════════════════════ */

/* ── Stream cards (the non-pair #compare-root cards: claim, attribute) ── */
/* Claim-card buttons — icons + colors mirror the first-class .wb toggles
   (Been = check / yellow, Want = bookmark / red, Nope = gray). D-052. */
.claim-btn{width:100%;padding:12px 0;border-radius:100px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:all .14s;border:1.5px solid;display:inline-flex;align-items:center;justify-content:center;gap:6px;}
.claim-btn svg{width:15px;height:15px;flex:none;}
.claim-btn-yes{background:var(--yellow);border-color:var(--yellow);color:var(--ink);}
.claim-btn-yes:hover{filter:brightness(0.95);}
.claim-btn-want{background:var(--red);border-color:var(--red);color:#fff;}
.claim-btn-want:hover{background:var(--ink);border-color:var(--ink);}
.claim-btn-no{background:var(--faint);border-color:transparent;color:var(--muted);}
.claim-btn-no:hover{background:rgba(15,13,7,0.1);color:var(--ink);}
.attr-btn{width:100%;padding:15px 0;border-radius:100px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;color:var(--ink);background:var(--paper);border:1.5px solid var(--rule);cursor:pointer;transition:all .14s;text-align:center;}
.attr-btn:hover{border-color:var(--red);color:var(--red);}
.attr-skip{font-family:'DM Sans',sans-serif;font-size:11px;color:var(--muted);cursor:pointer;background:none;border:none;padding:4px 8px;}
.attr-skip:hover{color:var(--red);}

/* ── Generic editorial form/page primitives (onboarding, builder, auth) ── */
.fld{width:100%;padding:12px 14px;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--ink);background:var(--paper);border:1.5px solid var(--rule);border-radius:12px;outline:none;transition:border-color .14s;}
.fld:focus{border-color:var(--red);}
.fld::placeholder{color:rgba(15,13,7,0.35);}
.fld-serif{font-family:'Playfair Display',serif;font-style:italic;}
.fld-label{display:block;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;}
.fld-label .opt{font-weight:400;letter-spacing:0;text-transform:none;color:var(--faint);color:rgba(15,13,7,0.35);}
.btn-pill{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;padding:11px 24px;border-radius:100px;cursor:pointer;border:none;transition:all .14s;text-decoration:none;white-space:nowrap;}
.btn-pill-primary{background:var(--red);color:#fff;box-shadow:0 3px 16px rgba(218,79,59,0.32);}
.btn-pill-primary:hover{transform:translateY(-1px);background:var(--ink);}
.btn-pill-ghost{background:none;color:var(--ink);border:1.5px solid var(--ink);}
.btn-pill-ghost:hover{background:var(--ink);color:var(--bg);}
.btn-pill:disabled{opacity:.45;cursor:default;transform:none;box-shadow:none;}
.editorial-wrap{max-width:560px;margin:0 auto;padding:34px 24px 60px;}
.editorial-h{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:32px;text-transform:uppercase;line-height:1;color:var(--ink);}
.editorial-h span{color:var(--red);}
.editorial-sub{font-family:'Playfair Display',serif;font-style:italic;font-size:15px;color:var(--muted);margin-top:8px;line-height:1.55;}
.editorial-card{background:var(--paper);border:1.5px solid var(--ink);border-radius:18px;padding:26px 22px;}
.opt-tile{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1.5px solid var(--rule);border-radius:14px;background:var(--paper);cursor:pointer;transition:all .14s;text-align:left;width:100%;font-family:'DM Sans',sans-serif;}
.opt-tile:hover{border-color:var(--red);transform:translateY(-1px);}
.opt-tile.on{border-color:var(--ink);background:var(--ink);color:var(--bg);}

/* ── Add-a-spot flow (shared: list builder sheet/board + add-spots panel) ──
   Split filter (category + name search), quick-filter pills, result rows,
   category dropdown, the "see more options" Google escape hatch, and the
   Add button. Used by lists/_add_search·_sheet_venues·_list_categories_dropdown·
   _google_added + comparisons/_see_more_google. */
.as-split{display:flex;border:1px solid var(--rule);border-radius:.65rem;background:var(--paper);overflow:hidden;}
.as-cat{display:flex;align-items:center;gap:6px;padding:.65rem .8rem;cursor:pointer;flex:none;border-right:1px solid var(--rule);user-select:none;background:var(--bg);}
.as-cat.active{background:rgba(218,79,59,0.06);}
.as-cat-label{font-family:'DM Sans',sans-serif;font-size:13px;color:var(--muted);display:flex;align-items:center;gap:6px;}
.as-cat-label .car{font-size:10px;color:rgba(15,13,7,0.4);}
.as-cat.active .as-cat-label{color:var(--red);}
.as-search{flex:1;min-width:0;padding:.65rem .8rem;font-family:'DM Sans',sans-serif;font-size:14px;background:var(--paper);border:none;outline:none;color:var(--ink);}
.as-search::placeholder{color:rgba(15,13,7,0.35);}
.as-clear{width:1rem;height:1rem;border-radius:50%;background:rgba(218,79,59,0.12);color:var(--red);font-size:10px;display:flex;align-items:center;justify-content:center;line-height:1;cursor:pointer;border:none;margin-left:2px;}
.as-dropdown{position:absolute;left:0;right:0;z-index:20;margin-top:4px;}
.as-pills{display:flex;gap:8px;margin-top:8px;}
.srcpill{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:500;letter-spacing:0.04em;text-transform:uppercase;padding:.3rem .8rem;border-radius:9999px;cursor:pointer;color:var(--muted);background:none;border:1px solid var(--rule);-webkit-tap-highlight-color:transparent;}
.srcpill:hover{color:var(--red);border-color:rgba(218,79,59,0.3);}
.srcpill.on{background:var(--ink);color:var(--bg);border-color:var(--ink);}
.as-results-empty{font-family:'DM Sans',sans-serif;color:var(--muted);font-size:12px;padding:12px 16px;}
.as-rows>*+*{border-top:0.5px solid var(--rule);}
.as-row{display:flex;align-items:center;gap:12px;padding:10px 16px;}
.as-row-body{min-width:0;flex:1;}
.as-row-name{font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:17px;text-transform:uppercase;color:var(--ink);line-height:1.05;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.as-row-meta{font-family:'DM Sans',sans-serif;font-size:11px;color:var(--muted);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sheet-add-btn{border:1.5px solid var(--red);color:var(--red);border-radius:9999px;font-family:'DM Sans',sans-serif;font-weight:600;font-size:11px;letter-spacing:0.02em;text-transform:uppercase;padding:.35rem .9rem;background:var(--paper);cursor:pointer;flex:none;transition:all .12s;-webkit-tap-highlight-color:transparent;}
.sheet-add-btn:hover{background:var(--ink);border-color:var(--ink);color:#fff;}
.sheet-add-btn.added{background:var(--faint);border-color:var(--rule);color:var(--muted);}
.sheet-add-btn.added:hover{background:var(--faint);color:var(--muted);}
.cat-dd{background:var(--paper);border:1px solid var(--rule);border-radius:.65rem;overflow-y:auto;max-height:220px;box-shadow:0 8px 24px rgba(15,13,7,0.1);}
.cat-dd-item{padding:.55rem .8rem;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;color:var(--ink);cursor:pointer;transition:background .12s;}
.cat-dd-item+.cat-dd-item{border-top:0.5px solid var(--rule);}
.cat-dd-item:hover{background:var(--faint);}
.cat-dd-item.on{color:var(--red);background:rgba(218,79,59,0.05);}
.gg-more{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:.55rem .8rem;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;color:var(--muted);background:var(--paper);border:1px solid var(--rule);border-radius:.65rem;cursor:pointer;transition:all .12s;}
.gg-more:hover{border-color:var(--red);color:var(--ink);}
.gg-more svg{flex:none;}
.gg-wrap{padding:10px 16px 6px;}
.gg-added{padding:8px 4px;display:flex;align-items:center;gap:6px;font-family:'DM Sans',sans-serif;font-size:12.5px;color:var(--green);font-weight:600;}
/* add-spots panel: claimed "been" pill + full-width selectable choice rows
   (Google results, chain disambiguation) used by the cascade terminal steps. */
.spot-been{display:inline-flex;align-items:center;gap:4px;border:1.5px solid var(--red);background:var(--red);color:#fff;border-radius:9999px;font-family:'DM Sans',sans-serif;font-weight:600;font-size:11px;letter-spacing:0.02em;text-transform:uppercase;padding:.35rem .9rem;cursor:pointer;flex:none;transition:all .12s;-webkit-tap-highlight-color:transparent;}
.spot-been:hover{background:var(--ink);border-color:var(--ink);}
.as-choices{display:flex;flex-direction:column;gap:8px;}
.as-choice{display:block;width:100%;text-align:left;padding:11px 14px;font-family:'DM Sans',sans-serif;font-size:13px;color:var(--ink);background:var(--paper);border:1px solid var(--rule);border-radius:.6rem;cursor:pointer;transition:all .12s;}
.as-choice:hover{border-color:var(--red);background:rgba(218,79,59,0.04);}
.as-choice-name{display:block;font-family:'Cabin Condensed',sans-serif;font-weight:700;font-size:16px;text-transform:uppercase;color:var(--ink);line-height:1.1;}
.as-choice-sub{display:block;font-family:'DM Sans',sans-serif;font-size:11px;color:var(--muted);margin-top:2px;}
.as-back{font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;color:var(--red);text-decoration:none;cursor:pointer;}
.as-back:hover{color:var(--ink);}

/* ── Attribute tag pills (social/_venue_tags.html) — per-tag colors stay inline ── */
.vtags-wrap{display:flex;flex-wrap:wrap;gap:6px;}
.vtag{display:inline-flex;align-items:center;gap:3px;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:500;padding:.25rem .6rem;border-radius:9999px;cursor:pointer;border:1px solid transparent;line-height:1.2;transition:opacity .12s;}
.vtag:hover{opacity:.8;}
.vtag-add{background:transparent;color:var(--muted);border:1px dashed var(--rule);}
.vtag-more{background:transparent;color:var(--muted);border:1px dashed var(--rule);}
.vtag-more:hover{color:var(--ink);border-color:var(--muted);}
.vtag-done{background:var(--ink);color:#fff;border:none;}

/* ── Chrome bits formerly on Tailwind (cutover): default content wrapper,
   nav profile menu, notification dropdown container. ── */
.app-main{max-width:1120px;margin:0 auto;padding:8px 16px 40px;}
@media(min-width:640px){.app-main{padding-left:24px;padding-right:24px;}}
.acct-menu{position:absolute;right:0;top:2.75rem;width:11rem;background:var(--paper);border:1px solid var(--rule);border-radius:.8rem;box-shadow:0 10px 30px rgba(15,13,7,.16);padding:6px 0;z-index:50;}
.acct-item{display:block;padding:.5rem 1rem;font-family:'DM Sans',sans-serif;font-size:13px;color:var(--ink);text-decoration:none;cursor:pointer;}
.acct-item:hover{background:var(--faint);}
.acct-item.muted{color:var(--muted);}
.acct-sep{border:none;border-top:1px solid var(--rule);margin:6px 0;}
.notif-dropdown{position:absolute;right:0;top:2.75rem;width:20rem;max-width:calc(100vw - 2rem);background:var(--paper);border:1px solid var(--rule);border-radius:.8rem;box-shadow:0 10px 30px rgba(15,13,7,.16);z-index:50;max-height:24rem;overflow-y:auto;}
.hidden{display:none !important;}
