:root{
  --paper:#f3eee3; --paper-2:#ebe4d4; --card:#fbf8f1;
  --ink:#191714; --ink-2:#4a453d; --ink-3:#7a7366;
  --rule:#cfc6b3; --lake:#2d5b78; --lake-2:#dbe6ec;
  --accent:#c4501a; --accent-h:#a8420f; --ok:#3f6b3a;
  --font-display:'Boska','Iowan Old Style',serif;
  --font-body:'Switzer','Segoe UI',system-ui,sans-serif;
  --text-xs:clamp(.75rem,.72rem + .15vw,.8125rem);
  --text-sm:clamp(.875rem,.85rem + .15vw,.9375rem);
  --text-base:clamp(1rem,.97rem + .15vw,1.0625rem);
  --text-lg:clamp(1.125rem,1.05rem + .35vw,1.3125rem);
  --text-xl:clamp(1.5rem,1.3rem + .9vw,2rem);
  --text-2xl:clamp(2rem,1.6rem + 1.8vw,3rem);
  --text-hero:clamp(2.6rem,1.8rem + 4vw,5.2rem);
  --r:6px;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;
  background-image:radial-gradient(rgba(25,23,20,.035) 1px,transparent 1px);background-size:3px 3px}
img{max-width:100%;height:auto;display:block}
a{color:var(--lake)}
a:hover{color:var(--accent)}
.wrap{width:min(1180px,100% - 2.5rem);margin-inline:auto}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}

.notice{background:var(--ink);color:#efe9dc;font-size:var(--text-xs);text-align:center;padding:.55rem 1rem;line-height:1.45}
.notice a{color:#f2b38f}

.mast{border-bottom:3px double var(--ink);background:var(--paper);position:sticky;top:0;z-index:1000}
.mast-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 0}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--ink);font-family:var(--font-display);font-weight:900;font-size:1.3rem;letter-spacing:-.01em;line-height:1.1}
.brand em{font-style:italic;font-weight:500;color:var(--lake)}
.nav{display:flex;align-items:center;gap:1.4rem;font-size:var(--text-sm);font-weight:500}
.nav a{color:var(--ink);text-decoration:none}
.nav a:not(.btn):hover{color:var(--accent)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.75rem 1.2rem;border-radius:var(--r);font:600 var(--text-sm)/1 var(--font-body);text-decoration:none;cursor:pointer;border:2px solid transparent;transition:background .15s,color .15s,border-color .15s}
.btn-ink{background:var(--ink);color:var(--paper)!important}
.btn-ink:hover{background:var(--accent)}
.btn-accent{background:var(--accent);color:#fff}
.btn-accent:hover{background:var(--accent-h);color:#fff}
.btn-accent[disabled]{opacity:.6;cursor:progress}
.btn-line{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-line:hover{background:var(--ink);color:var(--paper)}

.hero{padding:clamp(2.5rem,5vw,4.5rem) 0 clamp(2rem,4vw,3.5rem);border-bottom:1px solid var(--rule)}
.hero-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.kicker{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:var(--accent);margin:0 0 1rem}
h1{font-family:var(--font-display);font-weight:900;font-size:var(--text-hero);line-height:.98;letter-spacing:-.025em;margin:0 0 1.2rem;text-wrap:balance}
.lede{font-size:var(--text-lg);color:var(--ink-2);max-width:34rem;margin:0 0 1.6rem}
.hero-cta{display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:2rem}
.tally{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:0 2.2rem;margin:0;border-top:1px solid var(--ink);padding-top:1rem}
.tally dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);font-weight:600}
.tally dd{margin:0;font-family:var(--font-display);font-weight:700;font-size:var(--text-2xl);line-height:1.1;font-variant-numeric:tabular-nums}
.hero-art{margin:0}
.hero-art img{border:2px solid var(--ink);border-radius:var(--r);box-shadow:8px 8px 0 var(--ink)}
.hero-art figcaption{font-size:var(--text-xs);color:var(--ink-3);margin-top:.9rem}

section{scroll-margin-top:80px}
.sec-h{font-family:var(--font-display);font-weight:900;font-size:var(--text-2xl);line-height:1.05;letter-spacing:-.02em;margin:0 0 .5rem}
.sec-sub{color:var(--ink-2);margin:0 0 1.6rem;max-width:44rem}
.sec-row{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap;margin-bottom:.4rem}
.fine{font-size:var(--text-xs);color:var(--ink-3)}

.elsewhere{padding:clamp(2.5rem,5vw,4rem) 0;background:var(--paper-2);border-bottom:1px solid var(--rule)}
.else-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.else-grid .themes{grid-column:1/-1}
.else-grid .themes ul{grid-template-columns:repeat(3,1fr)}
.stat{display:flex;flex-direction:column;justify-content:space-between;gap:1rem;padding:1.4rem;background:var(--card);border:1px solid var(--rule);border-radius:var(--r);text-decoration:none;color:var(--ink);min-height:10rem}
.stat:hover{border-color:var(--ink);color:var(--ink)}
.stat-n{font-family:var(--font-display);font-weight:900;font-size:clamp(2.6rem,2rem + 2vw,3.6rem);line-height:1}
.stat-n::after{content:" / 5";font-size:.35em;font-weight:500;color:var(--ink-3)}
.stat-l{font-size:var(--text-sm);color:var(--ink-2);font-weight:500}
.themes{padding:1.4rem 1.6rem;background:var(--ink);color:#efe9dc;border-radius:var(--r)}
.themes h3{font-family:var(--font-display);font-size:var(--text-xl);margin:0 0 .7rem;font-weight:700;line-height:1.15}
.themes ul{margin:0 0 .8rem;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1.2rem;font-size:var(--text-sm)}
.themes li{padding-left:1rem;position:relative}
.themes li::before{content:"";position:absolute;left:0;top:.6em;width:.45rem;height:.45rem;background:var(--accent);border-radius:50%}
.themes b{color:#fff}
.themes .fine{color:#b3ab9b;margin:0}

.reviews{padding:clamp(2.5rem,5vw,4rem) 0}
.filter{font-size:var(--text-sm);font-weight:600;display:flex;align-items:center;gap:.5rem}
.review-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}
.rv{background:var(--card);border:1px solid var(--rule);border-top:4px solid var(--ink);border-radius:var(--r);padding:1.25rem 1.3rem;display:flex;flex-direction:column;gap:.55rem}
.rv-top{display:flex;justify-content:space-between;align-items:center;gap:.5rem}
.rv-stars{color:var(--accent);letter-spacing:.08em;font-size:1.1rem}
.rv-stars .off{color:var(--rule)}
.tag{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--lake);background:var(--lake-2);padding:.2rem .5rem;border-radius:3px}
.rv h3{font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);line-height:1.25;margin:0}
.rv p{margin:0;font-size:var(--text-sm);color:var(--ink-2);white-space:pre-line}
.rv-meta{font-size:var(--text-xs);color:var(--ink-3);margin-top:auto;padding-top:.4rem;border-top:1px dashed var(--rule)}
.rv-media{display:flex;gap:.4rem;flex-wrap:wrap}
.rv-media button{padding:0;border:1px solid var(--rule);border-radius:4px;overflow:hidden;cursor:zoom-in;background:#000;width:84px;height:84px}
.rv-media img,.rv-media video{width:100%;height:100%;object-fit:cover}
.empty{grid-column:1/-1;padding:2.5rem 1.5rem;text-align:center;border:2px dashed var(--rule);border-radius:var(--r);color:var(--ink-2)}
.empty b{display:block;font-family:var(--font-display);font-size:var(--text-xl);color:var(--ink);margin-bottom:.3rem}
.skel{height:180px;border-radius:var(--r);background:linear-gradient(90deg,var(--paper-2),var(--card),var(--paper-2));background-size:200% 100%;animation:sh 1.3s infinite}
@keyframes sh{to{background-position:-200% 0}}

.write{padding:clamp(2.5rem,5vw,4rem) 0;background:var(--lake);color:#f4f1ea}
.write .sec-h{color:#fff}
.write-grid{display:grid;grid-template-columns:.8fr 1.4fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.write-side p{color:#dbe6ec;max-width:24rem}
.write-side img{margin-top:1.4rem;max-width:280px;border-radius:var(--r);border:2px solid var(--ink)}
.card{background:var(--card);color:var(--ink);border:2px solid var(--ink);border-radius:var(--r);box-shadow:6px 6px 0 var(--ink)}
.form{padding:clamp(1.2rem,3vw,2rem);display:grid;gap:1rem}
.form label,.pin-form label{display:grid;gap:.35rem;font-size:var(--text-sm);font-weight:600}
.req{font-weight:500;color:var(--accent);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;margin-left:.3rem}
input:not([type=radio]):not([type=checkbox]),select,textarea{font:400 var(--text-base)/1.4 var(--font-body);color:var(--ink);background:#fff;border:1.5px solid var(--rule);border-radius:var(--r);padding:.65rem .75rem;width:100%;min-height:44px}
input:focus,select:focus,textarea:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 3px rgba(196,80,26,.25)}
textarea{resize:vertical}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.stars-field{border:0;padding:0;margin:0}
.stars-field legend{font-size:var(--text-sm);font-weight:600;margin-bottom:.4rem;padding:0}
.stars{display:flex;gap:.4rem;flex-wrap:wrap}
.stars input{position:absolute;opacity:0;pointer-events:none}
.stars label{display:flex!important;flex-direction:column;align-items:center;gap:0!important;font-size:2rem!important;line-height:1;color:var(--rule);cursor:pointer;padding:.45rem .7rem .4rem;border:1.5px solid var(--rule);border-radius:var(--r);min-width:68px;background:#fff;transition:color .12s,border-color .12s}
.stars label span{font-size:.72rem;font-weight:600;color:var(--ink-3);margin-top:.25rem;letter-spacing:.04em}
.stars label.lit{color:var(--accent);border-color:var(--accent)}
.stars input:focus-visible+label{outline:3px solid var(--accent);outline-offset:2px}
.drop input{padding:.6rem;background:var(--paper)}
.drop-hint{font-weight:400;font-size:var(--text-xs);color:var(--ink-3)}
.check{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:.6rem!important;font-weight:400!important;font-size:var(--text-sm)!important;color:var(--ink-2)}
.check input{margin-top:.3rem;width:18px;height:18px;flex:none;accent-color:var(--accent)}
.form-msg{margin:0;font-size:var(--text-sm);font-weight:600;min-height:1.2em}
.form-msg.ok{color:var(--ok)} .form-msg.err{color:#a3261a}

.map-sec{padding:clamp(2.5rem,5vw,4rem) 0;border-bottom:1px solid var(--rule)}
.legend{display:flex;flex-wrap:wrap;gap:.4rem .9rem;font-size:var(--text-xs);font-weight:600}
.legend span{display:inline-flex;align-items:center;gap:.35rem}
.legend i{width:12px;height:12px;border-radius:50%;border:2px solid var(--ink);display:inline-block}
.map-shell{position:relative;margin:1rem 0 .6rem}
#leaflet{height:min(68vh,600px);min-height:380px;border:2px solid var(--ink);border-radius:var(--r);background:var(--paper-2);z-index:1}
.leaflet-container{font-family:var(--font-body);cursor:crosshair}
.pin-form{position:absolute;top:1rem;right:1rem;width:min(340px,calc(100% - 2rem));padding:1.1rem;display:grid;gap:.75rem;z-index:500}
.pin-form h3{margin:0;font-family:var(--font-display);font-size:var(--text-xl);line-height:1.1}
.pin-form .fine{margin:-.4rem 0 0}
.pin-actions{display:flex;gap:.5rem}
.pin-dot{width:18px;height:18px;border-radius:50%;border:2.5px solid var(--ink);box-shadow:0 1px 0 rgba(0,0,0,.3)}
.pin-pop{font-family:var(--font-body);font-size:13px;max-width:220px}
.pin-pop b{display:block;margin-bottom:.2rem}
.pin-pop img,.pin-pop video{margin-top:.4rem;border-radius:4px;max-height:140px;width:100%;object-fit:cover}
.draft-pin{width:22px;height:22px;border-radius:50%;background:var(--accent);border:3px solid #fff;box-shadow:0 0 0 2px var(--ink)}

.rules{padding:clamp(2.5rem,5vw,4rem) 0;background:var(--paper-2)}
.rules-grid{display:grid;grid-template-columns:.7fr 1.5fr;gap:2rem}
.rules ol{margin:0;padding:0;list-style:none;counter-reset:r;display:grid;gap:1rem}
.rules li{counter-increment:r;position:relative;padding-left:3rem;color:var(--ink-2)}
.rules li::before{content:counter(r,decimal-leading-zero);position:absolute;left:0;top:-.15rem;font-family:var(--font-display);font-weight:900;font-size:1.5rem;color:var(--accent)}
.rules li b{color:var(--ink)}

.foot{padding:2rem 0 2.5rem;border-top:3px double var(--ink)}
.foot-row{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;font-size:var(--text-sm);color:var(--ink-2)}
.foot-row p{margin:0;max-width:42rem}

.lightbox{position:fixed;inset:0;background:rgba(15,14,12,.92);z-index:3000;display:flex;align-items:center;justify-content:center;padding:1rem}
.lightbox[hidden]{display:none}
.lightbox button{position:absolute;top:.8rem;right:1rem;background:none;border:0;color:#fff;font-size:2.4rem;cursor:pointer;line-height:1}
.lb-body img,.lb-body video{max-width:94vw;max-height:86vh;border-radius:4px}

@media (max-width:900px){
  .hero-grid,.write-grid,.rules-grid{grid-template-columns:1fr}
  .hero-art{order:-1}
  .else-grid{grid-template-columns:1fr 1fr}
  .else-grid .themes ul{grid-template-columns:1fr 1fr}
  .write-side img{display:none}
  .nav a:not(.btn){display:none}
}
@media (max-width:560px){
  .wrap{width:calc(100% - 2rem)}
  .brand{font-size:1.05rem}
  .brand svg{width:28px;height:28px}
  .nav .btn{padding:.6rem .8rem}
  .row2{grid-template-columns:1fr}
  .themes ul,.else-grid .themes ul{grid-template-columns:1fr}
  .else-grid{grid-template-columns:1fr 1fr}
  .stat{min-height:0}
  .gmap iframe{height:300px}
  .tally{gap:0 1.3rem}
  .stars label{min-width:0;flex:1;padding:.45rem .3rem .4rem}
  .review-list{grid-template-columns:1fr}
  .pin-form{position:static;width:100%;margin-top:.8rem;box-shadow:4px 4px 0 var(--ink)}
  #leaflet{height:62vh;min-height:340px}
  .hero-art img{box-shadow:5px 5px 0 var(--ink)}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

#leaflet .leaflet-tile-pane{filter:sepia(.25) saturate(.85)}
.gmap{margin-top:1.5rem;padding:1.2rem}
.gmap-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.8rem}
.gmap-head h3{margin:0;font-family:var(--font-display);font-size:var(--text-lg)}
.gmap iframe{width:100%;height:360px;border:1px solid var(--rule);border-radius:var(--r);display:block}
.gallery-sec,.record{padding:clamp(2.5rem,5vw,4rem) 0;border-bottom:1px solid var(--rule)}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.2rem;margin-top:1.5rem}
.gal figure{margin:0;background:var(--card);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden}
.gal img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.gal figcaption{padding:.7rem .9rem;font-size:var(--text-sm);color:var(--ink-2)}
.gal figcaption b{color:var(--ink)}
.timeline{list-style:none;margin:1.5rem 0 0;padding:0 0 0 1.4rem;border-left:3px solid var(--ink);max-width:52rem}
.timeline li{position:relative;padding:0 0 1.4rem .6rem}
.timeline li::before{content:"";position:absolute;left:-1.95rem;top:.35rem;width:.85rem;height:.85rem;border-radius:50%;background:var(--paper);border:3px solid var(--ink)}
.timeline li.hot::before{background:var(--accent);border-color:var(--accent)}
.timeline time{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--accent)}
.timeline p{margin:.2rem 0 0}
.timeline .who{display:block;font-size:var(--text-xs);color:var(--ink-3);margin-top:.2rem}
.notice-img{margin:.8rem 0 0;max-width:640px}
.notice-img img{width:100%;border:1px solid var(--rule);border-radius:var(--r);display:block}
.notice-img figcaption{font-size:var(--text-xs);color:var(--ink-3);margin-top:.3rem}
.q{margin-top:1rem;padding:1.2rem 1.4rem;max-width:52rem;border-left:5px solid var(--accent)}
.q h3{margin:0 0 .4rem;font-family:var(--font-display)}
.q p{margin:0}
.pull{margin:1.2rem 0 1.4rem;padding:1.4rem 1.6rem;background:var(--ink);color:var(--paper);font-family:var(--font-display);font-weight:800;font-size:var(--text-xl);line-height:1.2;border-radius:var(--r);max-width:56rem;text-wrap:balance}
.pull cite{display:block;margin-top:.7rem;font:600 var(--text-xs)/1.3 var(--font-body);text-transform:uppercase;letter-spacing:.12em;color:#e8a27e;font-style:normal}

.rv.long{grid-column:span 2}
@media (max-width:900px){.rv.long{grid-column:auto}}

/* ---------- post-what-you've-seen ---------- */
.start{padding:clamp(2.5rem,5vw,4rem) 0;border-bottom:1px solid var(--rule);background:var(--card)}
.ways{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.way{position:relative;background:var(--paper);border:2px solid var(--ink);border-radius:var(--r);padding:1.3rem 1.3rem 1.4rem;display:flex;flex-direction:column;gap:.6rem}
.way-n{position:absolute;top:-1rem;left:1.1rem;width:2rem;height:2rem;border-radius:50%;background:var(--accent);color:#fff;font:900 1.05rem/2rem var(--font-display);text-align:center}
.way h3{margin:.4rem 0 0;font-family:var(--font-display);font-size:var(--text-xl);line-height:1.1}
.way ol,.alert ol{margin:0;padding-left:1.2rem;font-size:var(--text-sm);color:var(--ink-2);display:grid;gap:.35rem}
.way .btn{margin-top:auto;align-self:flex-start}
.alert{margin-top:1.6rem;padding:1.3rem 1.5rem;border-left:6px solid #a3261a}
.alert h3{margin:0 0 .6rem;font-family:var(--font-display);font-size:var(--text-xl)}
.safety{padding:1.3rem 1.5rem;margin:0 0 1.6rem;max-width:56rem;border-left:6px solid #a3261a}
.safety h3{margin:0 0 .6rem;font-family:var(--font-display);font-size:var(--text-xl)}
.safety ul{margin:0 0 .6rem;padding-left:1.1rem;display:grid;gap:.35rem;font-size:var(--text-sm);color:var(--ink-2)}
.safety .fine{margin:0}

/* ---------- wall ---------- */
.wall-sec{padding:clamp(2.5rem,5vw,4rem) 0;border-bottom:1px solid var(--rule)}
.wall{display:grid;grid-template-columns:240px 1fr;height:min(72vh,660px);min-height:480px;border:2px solid var(--ink);border-radius:var(--r);overflow:hidden;background:#1d1b18;color:#ece6d9;box-shadow:6px 6px 0 var(--ink);margin:.6rem 0 .8rem}
.chans{background:#14120f;padding:.9rem .6rem;display:flex;flex-direction:column;gap:.15rem;overflow:auto}
.chans .lbl{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:#8f877a;font-weight:700;padding:.2rem .6rem .5rem}
.chans button{all:unset;cursor:pointer;padding:.45rem .6rem;border-radius:4px;font-size:var(--text-sm);color:#b9b1a3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chans button:hover{background:#2a2723;color:#fff}
.chans button[aria-current=true]{background:#38332d;color:#fff;font-weight:600}
.chans button:focus-visible{outline:2px solid var(--accent)}
.stream-wrap{display:flex;flex-direction:column;min-width:0;min-height:0}
.stream-head{display:flex;align-items:baseline;gap:.8rem;padding:.75rem 1rem;border-bottom:1px solid #34302a;flex-wrap:wrap}
.stream-head b{color:#fff}
.stream-head .fine{color:#9c9486}
.stream{flex:1;overflow-y:auto;padding:.8rem 1rem;display:flex;flex-direction:column;gap:.9rem}
.msg{display:grid;grid-template-columns:38px 1fr;gap:.7rem}
.av{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:700;color:#fff;font-size:.95rem}
.msg-h{display:flex;gap:.6rem;align-items:baseline;flex-wrap:wrap}
.msg-h b{color:#fff;font-size:var(--text-sm)}
.msg-h time,.msg-h .ch{font-size:.72rem;color:#8f877a}
.msg-h .flag{all:unset;cursor:pointer;font-size:.72rem;color:#8f877a;margin-left:auto}
.msg-h .flag:hover{color:#f2b38f}
.msg p{margin:.1rem 0 0;font-size:var(--text-sm);white-space:pre-wrap;overflow-wrap:anywhere;color:#e2dccf}
.msg .rv-media{margin-top:.4rem}
.msg .rv-media button{width:auto;height:auto;max-width:min(320px,100%);background:#000;border-color:#34302a}
.msg .rv-media img,.msg .rv-media video{max-height:240px;width:auto;max-width:100%;object-fit:contain}
.stream .empty{border-color:#34302a;color:#b9b1a3}
.stream .empty b{color:#fff}
.composer{border-top:1px solid #34302a;padding:.7rem .8rem .5rem;display:grid;gap:.45rem;background:#1d1b18}
.composer .c-name{max-width:220px;min-height:38px!important;padding:.4rem .65rem!important;font-size:var(--text-sm)!important;background:#2a2723!important;border-color:#3d3832!important;color:#fff!important}
.c-row{display:flex;gap:.5rem;align-items:flex-end}
.c-row textarea{flex:1;min-height:44px;max-height:160px;background:#2a2723;border-color:#3d3832;color:#fff;resize:none}
.c-row textarea::placeholder,.composer .c-name::placeholder{color:#8f877a}
.c-cam{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:var(--r);background:#2a2723;border:1.5px solid #3d3832;color:#ece6d9;cursor:pointer}
.c-cam:hover{color:#fff;border-color:var(--accent)}
.c-cam input{position:absolute;width:1px;height:1px;opacity:0}
.c-cam:focus-within{outline:3px solid var(--accent)}
.c-row .btn{min-height:44px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.c-files{margin:0;color:#b9b1a3}
.c-files:empty,.composer .form-msg:empty{display:none}
.composer .form-msg.ok{color:#9fd18f}.composer .form-msg.err{color:#ff9d8a}

@media (max-width:900px){
  .ways{grid-template-columns:1fr;gap:1.6rem}
  .wall{grid-template-columns:1fr;grid-template-rows:auto 1fr;height:78vh}
  .chans{flex-direction:row;overflow-x:auto;padding:.5rem;gap:.3rem}
  .chans .lbl{display:none}
  .chans button{flex:none;font-size:.8rem;padding:.4rem .6rem;background:#2a2723}
}
@media (max-width:560px){
  .stream{padding:.7rem}
  .composer .c-name{max-width:none}
  .hero-cta .btn{flex:1 1 auto}
}
.as-row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1rem;font-size:var(--text-sm);color:var(--ink-2)}
.as-row b{color:var(--ink)}
.as-row .anon{font-size:var(--text-sm)!important}
.as-row .anon input{margin-top:0}
.as-row.dark{color:#b9b1a3;font-size:.8rem}
.as-row.dark b{color:#fff}
.as-row.dark a{color:#f2b38f}
.as-row.dark .anon{color:#b9b1a3;font-size:.8rem!important;align-items:center}
.modal{position:fixed;inset:0;background:rgba(15,14,12,.7);z-index:3000;display:flex;align-items:center;justify-content:center;padding:1rem;overflow:auto}
.modal-box{position:relative;width:min(460px,100%);padding:1.4rem 1.4rem .6rem}
.modal-box h3{margin:0 0 .3rem;font-family:var(--font-display);font-size:var(--text-xl)}
.modal-box .form{padding:0;margin-top:.8rem}
.modal-box .x{position:absolute;top:.4rem;right:.7rem;background:none;border:0;font-size:2rem;cursor:pointer;line-height:1;color:var(--ink)}
.verify{display:grid;gap:.6rem;padding:.8rem;border:1px dashed var(--rule);border-radius:var(--r)}

/* ---------- breaking news ---------- */
.bn-bar{display:flex;align-items:center;gap:.9rem;padding:.7rem max(1.25rem,calc((100% - 1180px)/2));background:#0d0d14;color:#fff;text-decoration:none;position:relative;overflow:hidden;border-bottom:3px solid #000;animation:bnBg 1.2s steps(1) infinite}
.bn-bar:hover{color:#fff}
.bn-bar::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(230,20,30,.55),transparent 35%,transparent 65%,rgba(20,80,255,.55));animation:bnSweep 1.2s steps(1) infinite;pointer-events:none}
.bn-bar>*{position:relative}
@keyframes bnSweep{0%{background:linear-gradient(90deg,rgba(230,20,30,.7),transparent 45%,transparent 100%)}50%{background:linear-gradient(90deg,transparent 0%,transparent 55%,rgba(20,80,255,.7))}}
@keyframes bnBg{0%{border-bottom-color:#e6141e}50%{border-bottom-color:#1450ff}}
.bn-lights{display:inline-flex;gap:4px;flex:none}
.bn-lights i{width:22px;height:14px;border-radius:7px 7px 3px 3px;display:block}
.bn-lights .r{background:#e6141e;box-shadow:0 0 14px 4px rgba(230,20,30,.9);animation:bnR 1.2s steps(1) infinite}
.bn-lights .b{background:#1450ff;box-shadow:0 0 14px 4px rgba(20,80,255,.9);animation:bnB 1.2s steps(1) infinite}
@keyframes bnR{0%{opacity:1}50%{opacity:.18;box-shadow:none}}
@keyframes bnB{0%{opacity:.18;box-shadow:none}50%{opacity:1}}
.bn-tag{flex:none;background:#e6141e;color:#fff;font:800 .82rem/1 var(--font-body);text-transform:uppercase;letter-spacing:.12em;padding:.45rem .6rem;border-radius:3px;animation:bnTag 1.2s steps(1) infinite}
@keyframes bnTag{0%{background:#e6141e}50%{background:#1450ff}}
.bn-ticker{flex:1;min-width:0;font-weight:600;font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bn-go{flex:none;font-weight:700;font-size:var(--text-sm);border:2px solid #fff;border-radius:var(--r);padding:.4rem .75rem}
.bn-bar:hover .bn-go{background:#fff;color:#0d0d14}
.nav .nav-bn{color:#c4141c;font-weight:700}

.news-sec{padding:clamp(2.5rem,5vw,4rem) 0;background:#101018;color:#ece8f2;border-bottom:4px solid #000;position:relative}
.news-sec::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:linear-gradient(90deg,#e6141e 50%,#1450ff 50%);animation:bnStripe 1.2s steps(1) infinite}
@keyframes bnStripe{50%{background:linear-gradient(90deg,#1450ff 50%,#e6141e 50%)}}
.news-sec .sec-h{color:#fff}
.news-sec .sec-sub{color:#c3bed0}
.news-sec>.wrap>.fine{color:#9893a8;margin-top:1.5rem;max-width:62rem}
.news-head{display:flex;gap:1.4rem;align-items:flex-start}
.bn-badge{flex:none;padding-top:.4rem}
.bn-lights.big i{width:38px;height:24px;border-radius:12px 12px 4px 4px}
.bn-kick{color:#ff5a5f!important}
.prize{display:grid;grid-template-columns:auto 1fr auto;gap:1.2rem;align-items:center;background:#fff8ec;color:var(--ink);border:2px solid #000;border-radius:var(--r);box-shadow:6px 6px 0 #1450ff;padding:1.2rem 1.4rem;margin:.6rem 0 2rem}
.prize-cup{color:#00704a}
.prize h3{font-family:var(--font-display);font-size:var(--text-xl);margin:0 0 .3rem;line-height:1.1}
.prize p{margin:0;color:var(--ink-2);font-size:var(--text-sm)}
.prize-stats{display:grid;gap:.6rem;margin:0;min-width:12rem}
.prize-stats dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);font-weight:700}
.prize-stats dd{margin:0;font-weight:700}
.news-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:2rem;align-items:start}
.news-sub{font-family:var(--font-display);color:#fff;font-size:var(--text-lg);margin:0 0 .8rem}
.leaders{list-style:none;margin:0 0 1.8rem;padding:0;display:grid;gap:.5rem;counter-reset:ld}
.leaders li{counter-increment:ld;display:grid;grid-template-columns:2.2rem 1fr auto;gap:.7rem;align-items:center;background:#1b1b26;border:1px solid #2c2c3c;border-radius:6px;padding:.6rem .8rem;cursor:pointer}
.leaders li::before{content:counter(ld);font:900 1.3rem/1 var(--font-display);color:#ff5a5f;text-align:center}
.leaders li:first-child{border-color:#e6141e;box-shadow:0 0 0 1px #e6141e}
.leaders li:first-child::before{content:"1";color:#ffd166}
.leaders .lh{font-weight:600;color:#fff;font-size:var(--text-sm);line-height:1.35}
.leaders .lm{font-size:var(--text-xs);color:#a7a2b8;white-space:nowrap;text-align:right}
.leaders .empty-l{grid-template-columns:1fr;cursor:default;color:#a7a2b8;font-size:var(--text-sm)}
.leaders .empty-l::before{content:none}
.stories{display:grid;gap:.8rem}
.story{background:#1b1b26;border:1px solid #2c2c3c;border-left:4px solid #e6141e;border-radius:6px;padding:.9rem 1rem;cursor:pointer}
.story:nth-child(even){border-left-color:#1450ff}
.story h4{margin:0 0 .3rem;color:#fff;font-size:var(--text-base);line-height:1.3}
.story p{margin:0 0 .45rem;color:#c3bed0;font-size:var(--text-sm);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.story .sm{font-size:var(--text-xs);color:#a7a2b8;display:flex;flex-wrap:wrap;gap:.3rem .8rem}
.story .vchk{color:#7fdc9a;font-weight:700}
.stories .empty{color:#c3bed0;border-color:#34344a}
.stories .empty b{color:#fff}
#news-form{box-shadow:6px 6px 0 #e6141e}
.news-form-h{font-family:var(--font-display);font-size:var(--text-xl);margin:0}
.proof{border:1px dashed var(--rule);border-radius:6px;padding:.8rem 1rem 1rem;margin:0;display:grid;gap:.8rem}
.proof legend{font-weight:700;font-size:var(--text-sm);padding:0 .3rem}
.bn-elig{margin:0}
.story-box{width:min(640px,100%);padding:1.6rem 1.6rem 1.2rem}
.story-box h3{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.15;margin:.2rem 2rem .5rem 0}
.story-box .sb-meta{font-size:var(--text-xs);color:var(--ink-3);margin-bottom:.8rem}
.story-box .sb-body{white-space:pre-line;margin:0 0 1rem}
.story-box .sb-proof{background:var(--paper-2);border-radius:6px;padding:.7rem .9rem;font-size:var(--text-sm);margin-bottom:1rem;display:grid;gap:.2rem}
.story-box .rv-media{margin-bottom:1rem}
.rate{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;font-size:var(--text-sm);font-weight:600}
.rate button{background:none;border:0;font-size:1.7rem;line-height:1;color:var(--rule);cursor:pointer;padding:0 .05rem}
.rate button.on{color:#e0a100}
.rate .form-msg{flex-basis:100%}
@media (max-width:900px){.news-grid{grid-template-columns:1fr}.prize{grid-template-columns:auto 1fr}.prize-stats{grid-column:1/-1;grid-template-columns:1fr 1fr}}
@media (max-width:560px){.bn-go{display:none}.bn-lights i{width:16px;height:11px}.bn-bar{gap:.6rem;padding:.6rem 1rem}.bn-tag{font-size:.72rem;padding:.4rem .5rem}.news-head{flex-direction:column;gap:.6rem}.prize{grid-template-columns:1fr;text-align:left}.prize-cup{display:none}.leaders li{grid-template-columns:1.8rem 1fr}.leaders .lm{grid-column:2;text-align:left}}
@media (prefers-reduced-motion:reduce){.bn-lights .r,.bn-lights .b{opacity:1!important}}

/* ---------- alerts sign-up ---------- */
.alerts-sec{padding:clamp(2.5rem,5vw,4rem) 0;border-bottom:1px solid var(--rule);background:var(--paper-2)}
.alerts-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:2rem;align-items:start}
.alert-how{margin:0 0 1.4rem;padding-left:1.1rem;display:grid;gap:.5rem;color:var(--ink-2)}
.topics,.howto{border:0;padding:0;margin:0;display:grid;gap:.7rem}
.topics legend,.howto legend{font-weight:700;font-size:var(--text-sm);margin-bottom:.5rem;padding:0}
.topic-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.topic-grid label,.kind-grid label{display:flex!important;align-items:center;gap:.5rem!important;font-weight:500!important;background:var(--paper);border:1px solid var(--rule);border-radius:6px;padding:.55rem .7rem;cursor:pointer}
.topic-grid label:has(input:checked){border-color:var(--accent);background:#fbe9de}
.topic-grid input,.kind-grid input{width:18px;height:18px;accent-color:var(--accent);margin:0;flex:none}
.kind-wrap{border-left:3px solid var(--accent);padding-left:.8rem}
.kind-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}
.kind-grid label{padding:.4rem .6rem;font-size:var(--text-xs)!important}
.seg{display:grid;grid-template-columns:repeat(3,1fr);border:2px solid var(--ink);border-radius:var(--r);overflow:hidden}
.seg label{display:flex!important;align-items:center;justify-content:center;gap:.4rem!important;padding:.65rem .4rem;cursor:pointer;font-weight:600!important;text-align:center}
.seg label+label{border-left:2px solid var(--ink)}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg label:has(input:checked){background:var(--ink);color:var(--paper)}
.seg label:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:-3px}
.method-off{color:#a3261a!important;margin:0}
.verify-box{display:grid;gap:.7rem;background:var(--paper);border:1px dashed var(--ink-3);border-radius:6px;padding:.9rem}
.my-alerts{display:grid;gap:.6rem}
.my-alert{background:var(--card);border:2px solid var(--ink);border-radius:var(--r);padding:.8rem 1rem;display:grid;gap:.3rem;font-size:var(--text-sm)}
.my-alert b{font-size:var(--text-base)}
.my-alert .ma-row{display:flex;justify-content:space-between;gap:1rem;align-items:center;flex-wrap:wrap}
.my-alert .ok{color:var(--ok);font-weight:700}
.my-alert .pend{color:#a3261a;font-weight:700}
.my-alert button{background:none;border:0;color:var(--lake);text-decoration:underline;cursor:pointer;font:inherit;padding:0}
@media (max-width:900px){.alerts-grid{grid-template-columns:1fr}}
@media (max-width:560px){.topic-grid,.kind-grid{grid-template-columns:1fr}.seg label{font-size:var(--text-xs)!important;padding:.6rem .2rem}}
[data-m][hidden],.verify-box[hidden],.kind-wrap[hidden]{display:none!important}
.nav a{white-space:nowrap}
.leaders li::before{font:800 1.05rem/1 var(--font-body)}

/* section bar */
.secbar{border-top:1px solid var(--line, #d8d0c0);background:var(--paper)}
.secbar-in{display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:.35rem 0}
.secbar-in::-webkit-scrollbar{display:none}
.secbar a{flex:0 0 auto;white-space:nowrap;text-decoration:none;color:var(--ink);font-size:var(--text-sm);font-weight:600;padding:.45rem .75rem;border-radius:999px;border:1px solid transparent}
.secbar a:hover{border-color:var(--ink)}
.secbar a.on{background:var(--ink);color:var(--paper)}
.secbar a.sb-bn{color:#c4141c}
.secbar a.sb-bn.on{background:#c4141c;color:#fff}
section{scroll-margin-top:130px}
.mast-row{padding:.55rem 0}
/* hero quick actions */
.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:2rem}
.quick a{display:block;text-decoration:none;color:var(--ink);border:1.5px solid var(--ink);padding:.75rem .85rem;background:var(--paper);transition:background .15s}
.quick a:hover{background:#efe9dc}
.quick b{display:block;font-size:var(--text-sm)}
.quick span{display:block;font-size:var(--text-xs);color:var(--ink-3);margin-top:.15rem;line-height:1.35}
.quick a:first-child{background:var(--ink);color:var(--paper)}
.quick a:first-child span{color:#cfc6b4}
@media (max-width:700px){.quick{grid-template-columns:1fr 1fr}.mast-cta{display:none}}
.linkbtn{background:none;border:0;padding:0;color:inherit;text-decoration:underline;cursor:pointer;font:inherit}
.rv-unrated{font-size:var(--text-xs);color:var(--ink-3)}
.rv{min-width:0;overflow-wrap:anywhere}.rv p a{color:var(--lake,#1f5d7a)}

.nf-wrap>summary{list-style:none;display:inline-flex;cursor:pointer;margin-bottom:1rem}
.nf-wrap>summary::-webkit-details-marker{display:none}
.nf-wrap[open]>summary{display:none}
.rules-fold{margin-top:1.2rem}
.rules-fold>summary{cursor:pointer;font-weight:600;font-size:var(--text-sm)}
.rv-more{grid-column:1/-1;text-align:center;padding:.5rem 0}

.map-go{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin:.6rem 0 0}
.map-go span{font-size:var(--text-sm);color:var(--ink-3)}
.pin-when{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.pin-form input[type=date],.pin-form input[type=time]{padding:.5rem .55rem;border:1px solid var(--rule,#cfc6b4);border-radius:4px;font:inherit;background:#fff}
