  :root{
    --black:#010101;--white:#FFFFFF;--pink:#F50083;
    --butter:#FDFD95;--acid:#DFFC00;--blue:#2163CB;
    --grey:#6b6b6b;--pad:clamp(1.1rem,4vw,3.5rem);
    --prog-h:2.3rem;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{font-family:'Satoshi',Helvetica,Arial,sans-serif;background-color:var(--white);
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='700' height='700'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.012' numOctaves='5' seed='7'/%3E%3CfeDiffuseLighting lighting-color='%23ffffff' surfaceScale='1.6'%3E%3CfeDistantLight azimuth='45' elevation='60'/%3E%3C/feDiffuseLighting%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23p)'/%3E%3Crect width='100%25' height='100%25' fill='white' opacity='0.84'/%3E%3C/svg%3E");
    background-size:700px 700px;
    color:var(--black);-webkit-font-smoothing:antialiased;overflow-x:hidden;}
  ::selection{background:var(--pink);color:var(--white);}
  a{color:inherit;text-decoration:none;}

  .grain{position:fixed;inset:-50%;width:200%;height:200%;pointer-events:none;z-index:2000;opacity:.055;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    animation:grain 8s steps(10) infinite;}
  @keyframes grain{0%,100%{transform:translate(0,0);}20%{transform:translate(-2%,2%);}40%{transform:translate(2%,-1%);}60%{transform:translate(-1%,-2%);}80%{transform:translate(1%,2%);}}

  /* ---------- reading progress bar ---------- */
  .progress{
    position:fixed;top:0;left:0;right:0;height:var(--prog-h);
    z-index:1500;background:#b9b9b9;
    display:flex;align-items:center;
    transform:translateY(-100%);transition:transform .35s ease;
    overflow:hidden;
  }
  .progress.show{transform:translateY(0);}
  .prog-fill{
    position:absolute;inset:0;width:0%;
    background:#6f6f6f;transition:width .12s linear;
  }
  .progress.done .prog-fill{background:var(--pink);}
  .prog-text{
    position:relative;z-index:1;
    padding-left:var(--pad);
    font-size:.74rem;font-weight:500;color:var(--white);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    flex:1;
  }
  .prog-text b{font-weight:900;}
  .prog-share{
    position:relative;z-index:1;
    display:flex;align-items:center;gap:.9rem;
    padding-right:var(--pad);padding-left:1rem;
    font-size:.74rem;font-weight:500;color:var(--white);
  }
  .prog-share a{display:flex;align-items:center;font-weight:700;}
  .prog-share a:hover{color:var(--acid);}
  .prog-share svg{width:14px;height:14px;stroke:currentColor;}

  /* ---------- image placeholders ---------- */
  .ph{position:relative;overflow:hidden;background:#111;display:block;width:100%;}
  .ph::after{content:"";position:absolute;inset:0;opacity:.5;mix-blend-mode:overlay;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
  .ph .credit{position:absolute;bottom:.7rem;left:.8rem;z-index:1;font-size:.6rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.85);}
  .ph-1{background:linear-gradient(160deg,#2b2b2e 0%,#6e6a66 45%,#c9c2b8 100%);}
  .ph-2{background:linear-gradient(200deg,#101014 0%,#3c3c46 55%,#8d8da0 100%);}
  .ph-3{background:linear-gradient(150deg,#3d2630 0%,#9c5a72 55%,#e7c4ce 100%);}
  .ph-4{background:linear-gradient(210deg,#1d2533 0%,#46618a 60%,#aebcd2 100%);}
  .ph-5{background:linear-gradient(170deg,#33301f 0%,#7d7647 55%,#d6d0a4 100%);}
  .ph-6{background:linear-gradient(190deg,#222018 0%,#5f5648 50%,#bfae97 100%);}
  .ph-7{background:linear-gradient(160deg,#14181a 0%,#39555a 60%,#9fc3c6 100%);}
  .ph-8{background:linear-gradient(200deg,#2e1a26 0%,#7c3b63 55%,#d79ebd 100%);}
  /* real photography dropped into a placeholder box */
  .ph.real{background-size:cover;background-position:center;background-repeat:no-repeat;}
  .ph.real .credit{text-shadow:0 1px 8px rgba(0,0,0,.55);}

  /* ---------- article hero + title ---------- */
  .hero-img{display:block;width:100%;height:clamp(320px,72vh,760px);}
  .title-block{
    padding:clamp(1rem,2.5vw,2rem) var(--pad) clamp(1.6rem,3vw,2.6rem);
    position:relative;
  }
  .title-block h1{
    font-size:clamp(2.6rem,9.5vw,8.2rem);
    font-weight:900;line-height:.92;letter-spacing:-.04em;
    position:relative;display:inline-block;
  }
  .title-block h1 i{font-style:normal;color:var(--pink);}
  /* longer editorial titles get a calmer scale */
  .title-block h1.long{font-size:clamp(2rem,6vw,4.8rem);line-height:.98;}
  .title-block h1 svg{position:absolute;left:1%;bottom:-.16em;width:55%;height:.16em;}
  .title-row{margin-top:1.5rem;padding-top:1.05rem;border-top:1.5px solid var(--black);}
  .subtitle{
    max-width:680px;margin:0 auto 2.3em;
    font-size:clamp(1.2rem,2.6vw,1.5rem);
    font-weight:500;line-height:1.45;letter-spacing:-.015em;
    color:#1b1b1b;text-align:left;
  }
  .byline{
    font-size:.82rem;font-weight:500;line-height:1.95;
    white-space:nowrap;
  }
  .byline b{font-weight:900;}
  .byline .sec{display:block;font-size:.63rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--pink);margin-bottom:.55rem;}
  .scr-star{position:absolute;top:.4rem;right:var(--pad);width:clamp(34px,4.5vw,62px);transform:rotate(12deg);pointer-events:none;}

  /* ---------- body ---------- */
  .body-wrap{padding:clamp(1.5rem,3vw,3rem) var(--pad) clamp(3rem,6vw,5rem);position:relative;}
  .article-body{
    max-width:680px;margin:0 auto;
    font-size:1.04rem;font-weight:500;line-height:1.85;color:#1b1b1b;
    text-align:justify;
  }
  .article-body p{margin-bottom:1.7em;font-size:1.24rem;}
  .article-body h2{
    font-size:clamp(1.35rem,2.6vw,1.9rem);font-weight:900;letter-spacing:-.02em;line-height:1.1;
    margin:2.4em 0 1em;
  }
  .article-body h2::after{content:"";color:var(--pink);font-weight:400;}
  .article-body .lead{font-weight:900;}
  .article-body a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px;transition:color .18s;}
  .article-body a:hover{color:var(--pink);}
  .article-body em{font-style:italic;}
  .pull{
    margin:2.6em 0;
    font-size:clamp(1.4rem,3vw,2rem);font-weight:900;line-height:1.15;letter-spacing:-.02em;
    padding:.2em .35em;
    background:linear-gradient(transparent 8%,var(--butter) 8% 92%,transparent 92%);
    transform:rotate(-.6deg);
  }
  .pull span{color:var(--pink);}

  /* in-article images */
  figure.inline{margin:2.8em 0;}
  figure.inline .ph{aspect-ratio:4/5;}
  figure.wide{
    margin:3.2em auto;max-width:980px;
    width:calc(100vw - 2*var(--pad));
    position:relative;left:50%;transform:translateX(-50%);
  }
  figure.wide .ph{aspect-ratio:16/10;}
  figcaption{
    margin-top:.7rem;
    font-size:.68rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--grey);
  }
  figcaption b{color:var(--pink);font-weight:700;}

  /* scrolling gallery (full-bleed) */
  .gallery-wrap{
    margin:3.2em calc(-1*var(--pad));
    padding:0 var(--pad);
  }
  .gallery{
    display:flex;gap:1rem;overflow-x:auto;
    scrollbar-width:none;-ms-overflow-style:none;
  }
  .gallery::-webkit-scrollbar{display:none;}
  .gallery .ph{
    flex:0 0 clamp(230px,32vw,400px);aspect-ratio:3/4;
  }
  .gal-nav{display:flex;gap:.6rem;}
  .gal-nav button{
    width:44px;height:44px;border-radius:50%;
    border:1.5px solid var(--black);background:var(--white);
    cursor:pointer;display:flex;align-items:center;justify-content:center;
    transition:background .2s,border-color .2s,opacity .2s;
  }
  .gal-nav button svg{width:17px;height:17px;stroke:var(--black);transition:stroke .2s;}
  .gal-nav button:hover{background:var(--pink);border-color:var(--pink);}
  .gal-nav button:hover svg{stroke:var(--white);}
  .gal-nav button:disabled{opacity:.25;pointer-events:none;}
  .gallery-cap{
    display:flex;justify-content:space-between;align-items:center;gap:1rem;
    margin-top:.7rem;
    font-size:.68rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--grey);
  }
  .gallery-cap .swipe{font-weight:700;color:var(--black);white-space:nowrap;}
  .gallery-cap .swipe i{font-style:normal;color:var(--pink);}

  /* filed under */
  .filed{
    max-width:680px;margin:0 auto;padding-top:1.6rem;border-top:1px solid var(--black);
    display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;
    font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  }
  .filed a{border:1.5px solid var(--black);border-radius:100px;padding:.45em 1.1em;transition:background .2s,border-color .2s,color .2s;}
  .filed a:hover{background:var(--pink);border-color:var(--pink);color:var(--white);}

  /* ---------- next article preview (split layout) ---------- */
  .next-hero{
    display:grid;grid-template-columns:1.05fr 1fr;
    min-height:92vh;border-top:6px solid var(--black);
    margin-top:clamp(2rem,5vw,4rem);
  }
  .next-hero .ph{height:100%;min-height:420px;}
  .next-side{
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    text-align:center;padding:clamp(2rem,5vw,4rem);
    position:relative;
  }
  .next-side .nextlab{
    font-size:.64rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
    color:var(--pink);margin-bottom:1.4rem;
  }
  .next-side h2{
    font-size:clamp(1.9rem,3.8vw,3.3rem);
    font-weight:900;line-height:1.02;letter-spacing:-.025em;
    max-width:12em;
  }
  .next-side .ndek{
    margin-top:1.2rem;font-size:clamp(.95rem,1.3vw,1.05rem);font-weight:500;line-height:1.6;
    color:#2c2c2c;max-width:32em;
  }
  .next-side .nshare{
    margin-top:2.2rem;display:flex;align-items:center;gap:1rem;
    font-size:.8rem;font-weight:700;
  }
  .next-side .nshare a{display:flex;align-items:center;}
  .next-side .nshare a:hover{color:var(--pink);}
  .next-side .nshare svg{width:16px;height:16px;stroke:currentColor;}
  .next-side .readnext{
    font-size:.78rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;
    color:var(--pink);transition:color .18s;
  }
  .next-side .readnext:hover{color:var(--black);}
  .next-side>a h2:hover{color:var(--pink);}
  .next-side .next-squig{position:absolute;bottom:8%;right:10%;width:clamp(44px,6vw,84px);transform:rotate(-8deg);pointer-events:none;}
  .next-meta{
    text-align:center;
    padding:1.6rem var(--pad) 0;
    font-size:.66rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  }
  .next-meta i{font-style:normal;color:var(--pink);}

  /* scribbles */
  .body-scribble{position:absolute;pointer-events:none;}
  .bs-loop{top:10%;left:4%;width:clamp(50px,7vw,100px);transform:rotate(-10deg);}
  .bs-arrow{bottom:14%;right:4.5%;width:clamp(44px,6vw,86px);transform:rotate(8deg);}

  /* ---------- comments ---------- */
  .comments{background:var(--butter);padding:clamp(2.6rem,6vw,4.5rem) var(--pad);position:relative;overflow:hidden;}
  .comments .inner{max-width:680px;margin:0 auto;position:relative;}
  .comments h2{font-size:clamp(1.6rem,3.6vw,2.6rem);font-weight:900;letter-spacing:-.02em;}
  .comments h2 span{color:var(--pink);}
  .comments .note{margin-top:.5rem;font-size:.85rem;font-weight:500;color:#333;}
  .comment{margin-top:1.8rem;padding-top:1.4rem;border-top:1.5px solid rgba(1,1,1,.25);}
  .comment .who{font-size:.66rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;}
  .comment .who span{color:var(--blue);font-weight:500;letter-spacing:.08em;margin-left:.6rem;}
  .comment p{margin-top:.45rem;font-size:.92rem;font-weight:500;line-height:1.6;color:#1d1d1d;}
  .c-pending{margin-top:1.6rem;padding:.9rem 1.1rem;border:1.5px dashed var(--pink);border-radius:14px;background:rgba(245,0,131,.06);font-size:.86rem;font-weight:600;color:#1d1d1d;line-height:1.5;}
  .c-form{margin-top:2.2rem;display:grid;gap:.7rem;}
  .c-form input,.c-form textarea{font:inherit;font-weight:500;padding:.8rem 1.1rem;border:1.5px solid var(--black);border-radius:14px;background:var(--white);outline:none;resize:vertical;}
  .c-form input:focus,.c-form textarea:focus{border-color:var(--pink);}
  .c-form button{justify-self:start;font:inherit;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;padding:.8rem 1.8rem;border-radius:100px;border:1.5px solid var(--black);background:var(--black);color:var(--white);cursor:pointer;transition:background .2s,border-color .2s;}
  .c-form button:hover{background:var(--pink);border-color:var(--pink);}

  /* ---------- floating tab bar ---------- */
  .tabbar{
    position:fixed;left:50%;transform:translateX(-50%);
    bottom:1.2rem;z-index:1000;
    display:flex;align-items:center;gap:.25rem;
    padding:.4rem .5rem;border-radius:100px;
    background:rgba(255,255,255,.72);
    -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
    border:1px solid rgba(1,1,1,.12);
    box-shadow:0 8px 30px rgba(0,0,0,.10);
  }
  .tabbar a,.tabbar button{
    font:inherit;border:none;background:none;cursor:pointer;
    font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
    padding:.5rem 1.05rem;border-radius:100px;
    transition:background .2s,color .2s;display:flex;align-items:center;
  }
  .tabbar a:hover,.tabbar button:hover{background:rgba(1,1,1,.06);}
  .tabbar .home-mini{font-weight:900;letter-spacing:-.02em;text-transform:none;font-size:.95rem;}
  .tabbar .home-mini span{color:var(--pink);}

  /* ---------- footer ---------- */
  footer{background:var(--black);color:var(--white);padding:clamp(3rem,6vw,5rem) var(--pad) 7rem;}
  footer .fmast{font-size:clamp(2.6rem,9vw,7.5rem);font-weight:900;letter-spacing:-.035em;line-height:.92;}
  footer .fmast span{color:var(--pink);}
  .fcols{display:grid;grid-template-columns:repeat(3,auto);gap:3rem;justify-content:start;margin-top:3rem;font-size:.85rem;font-weight:500;}
  .fcols h4{font-size:.66rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#8b8b8b;margin-bottom:.9rem;}
  .fcols li{list-style:none;margin-bottom:.5rem;}
  .fcols a:hover{color:var(--acid);}
  .fbottom{margin-top:3.5rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.68rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#8b8b8b;}

  /* ---------- search overlay ---------- */
  .search-overlay{position:fixed;inset:0;z-index:3000;background:rgba(255,255,255,.92);
    -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
    display:none;align-items:center;justify-content:center;padding:var(--pad);}
  .search-overlay.open{display:flex;}
  .search-box{width:min(760px,100%);}
  .search-box label{display:block;font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin-bottom:1rem;color:var(--pink);}
  .search-box input{width:100%;font-family:inherit;font-weight:900;letter-spacing:-.02em;font-size:clamp(1.8rem,5vw,3.4rem);border:none;border-bottom:3px solid var(--black);background:transparent;outline:none;padding:.2em 0;}
  .search-box .hint{margin-top:1rem;font-size:.8rem;font-weight:500;color:var(--grey);}
  .search-close{position:absolute;top:1.4rem;right:1.6rem;font:inherit;font-weight:900;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;background:none;border:1.5px solid var(--black);border-radius:100px;padding:.55rem 1.2rem;cursor:pointer;}
  .search-close:hover{background:var(--pink);border-color:var(--pink);color:var(--white);}

  .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease;}
  .reveal.in{opacity:1;transform:none;}

  @media (max-width:760px){
    .title-row{grid-template-columns:1fr;align-items:start;gap:1.1rem;}
    .byline{padding-bottom:0;}
    .next-hero{grid-template-columns:1fr;min-height:0;}
    .next-hero .ph{min-height:0;aspect-ratio:4/3;}
    .prog-share .share-word{display:none;}
    .fcols{grid-template-columns:1fr 1fr;gap:2rem;}
    .tabbar{max-width:calc(100vw - 1.2rem);padding:.3rem .35rem;gap:.1rem;bottom:calc(.8rem + env(safe-area-inset-bottom));}
    .tabbar a,.tabbar button{font-size:.7rem;padding:.45rem .7rem;letter-spacing:.04em;}
    .tabbar .home-mini{font-size:.85rem;}
  }
  @media (max-width:380px){.tabbar .home-mini{display:none;}}

  .xshare{font-weight:900;}


/* ================= glossy refresh — Apple-inspired ================= */
:root{
  --head:-apple-system,BlinkMacSystemFont,'SF Pro Display','Segoe UI',Roboto,'Helvetica Neue',Helvetica,Arial,sans-serif;
}
body{
  font-family:-apple-system,BlinkMacSystemFont,'SF Pro Text','Segoe UI',Roboto,'Helvetica Neue',Helvetica,Arial,sans-serif;
  background-image:none;
  background-color:#fbfbfd;
  color:#1d1d1f;
}
/* clean, smooth surfaces: no film grain, no paper texture */
.grain{display:none;}
.ph::after{display:none;}
/* refined type: tighter tracking, calmer weights */
h1,h2,h3,h4{letter-spacing:-.025em;}

.title-block h1{font-weight:800;}
footer .fmast{font-weight:800;}
.article-body{color:#1d1d1f;}
.next-hero{border-top:none;}


/* ================= dark mode ================= */
html[data-theme="dark"]{
  --black:#f5f5f7;
  --white:#131317;
  --grey:#a1a1a8;
  --hairline:#2c2c33;
  color-scheme:dark;
}
html[data-theme="dark"] body{background-color:#0b0b0d;color:#f5f5f7;}
html[data-theme="dark"] .tabbar{background:rgba(22,22,26,.72);border-color:rgba(255,255,255,.14);box-shadow:0 8px 30px rgba(0,0,0,.5);}
html[data-theme="dark"] .tabbar a:hover,html[data-theme="dark"] .tabbar button:hover{background:rgba(255,255,255,.09);}
html[data-theme="dark"] .search-overlay{background:rgba(12,12,15,.92);}
html[data-theme="dark"] footer{background:#000;color:#f5f5f7;}
html[data-theme="dark"] footer .fmast span{color:var(--pink);}
html[data-theme="dark"] .creators{background:#000;color:#f5f5f7;}
html[data-theme="dark"] .creators-btn{border-color:#f5f5f7;color:#f5f5f7;}
html[data-theme="dark"] .comments{background:#17171c;}
html[data-theme="dark"] .comments .note{color:#b5b5bc;}
html[data-theme="dark"] .comment{border-top-color:rgba(255,255,255,.18);}
html[data-theme="dark"] .comment p{color:#d6d6db;}
html[data-theme="dark"] .c-pending{background:rgba(245,0,131,.12);color:#e9e9ee;}
html[data-theme="dark"] .article-body{color:#d9d9de;}
html[data-theme="dark"] .pull{color:#111;}
html[data-theme="dark"] .pull span{color:var(--pink);}
html[data-theme="dark"] mark{color:#111;}
html[data-theme="dark"] .progress{background:#2c2c33;}
html[data-theme="dark"] .prog-fill{background:#4a4a52;}
html[data-theme="dark"] .mani-body p,
html[data-theme="dark"] .dek,
html[data-theme="dark"] .mani-foot .statement,
html[data-theme="dark"] .look-desc,
html[data-theme="dark"] .look-cap,
html[data-theme="dark"] .spot .cap,
html[data-theme="dark"] .sl-intro,
html[data-theme="dark"] .sr-body p,
html[data-theme="dark"] .ndek,
html[data-theme="dark"] .next-side .ndek,
html[data-theme="dark"] .nl-form input{color:#c4c4cb;}
html[data-theme="dark"] .kicker{color:#9a9aa2;}
html[data-theme="dark"] .kicker::after{background:#34343b;}
html[data-theme="dark"] .creators .kicker::after{background:rgba(255,255,255,.35);}
html[data-theme="dark"] .tile{background:#1d1d23;}
/* floating toggle (pages without the tab bar) */
.theme-toggle.floating{
  position:fixed;bottom:1.2rem;right:1.2rem;z-index:1500;
  width:46px;height:46px;border-radius:50%;
  border:1px solid rgba(127,127,127,.35);cursor:pointer;
  background:var(--white);color:var(--black);font-size:1.05rem;
  box-shadow:0 8px 30px rgba(0,0,0,.18);
}
.tabbar .theme-toggle{font-size:1rem;}

/* article tags */
.filed .tagpill{border:1.5px dashed var(--grey);color:var(--grey);}
.filed .tagpill:hover{background:none;border-color:var(--pink);color:var(--pink);}

/* ================= share buttons ================= */
.prog-share a{font-weight:900;font-style:normal;}
.prog-share .fbshare,.prog-share .lishare{font-size:.85rem;letter-spacing:0;}
.prog-share .subshare svg{width:13px;height:13px;}
.prog-share a.copied{color:var(--acid);}
.share-row{
  max-width:680px;margin:2.2rem auto 0;
  display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;
  font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
}
.share-row span{color:var(--pink);}
.share-row a{
  border:1.5px solid var(--black);border-radius:100px;padding:.45em 1.1em;
  transition:background .2s,border-color .2s,color .2s;
}
.share-row a:hover{background:var(--pink);border-color:var(--pink);color:var(--white);}
.share-row a.copied{background:var(--acid);border-color:var(--acid);color:var(--black);}

/* ---------- performance & responsive safety (Stage E) ---------- */
img,video{max-width:100%;height:auto;}
@media (prefers-reduced-motion: reduce){
  .grain{animation:none !important;}
  *{scroll-behavior:auto !important;}
}
