/* Anecdote — landing page (2026-10 redesign, mockup "L13").
   Desktop (≥1100px): a 12-column grid filling the screen.
     header  : logo 1–3 · the site 4–8 · yours 9–11 · light/dark 12 (admins: site 4–10, Profile 11)
     row 2   : intro panel 1–9 · work of the day 10–12
     row 3   : browse (the drum, or search results) 1–9 · index 10–12
   Below 1100px everything stacks; phones (≤699) use the site menu pill.
   All classes are lp- prefixed so nothing collides with styles.css. */

.lp{--m:clamp(24px,2vw,44px);--i:clamp(12px,.75vw,16px);--g:clamp(12px,.9vw,20px);
  --hair:rgba(var(--ink-rgb),.12);--shadow:0 1px 0 rgba(var(--ink-rgb),.06),0 10px 30px -18px rgba(var(--ink-rgb),.25)}
:root[data-theme="dark"] .lp{--shadow:0 10px 30px -18px rgba(0,0,0,.8)}
.lp [hidden]{display:none !important}
.lp-page{box-sizing:border-box;height:100vh;height:100dvh;min-height:680px;padding:0 var(--m) var(--m);
  display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:clamp(78px,5vw,104px) auto minmax(0,1fr);gap:var(--g)}
.lp-page > *{position:relative;min-width:0;min-height:0}
.lp-k{font-size:clamp(11px,.66vw,14px);font-weight:600;height:clamp(36px,2.2vw,46px);display:flex;align-items:center}
.lp-k .n{color:var(--accent);margin-right:10px}
.lp-k .mu{color:var(--mute);font-weight:500;margin-left:auto}
.lp-panel{background:var(--paper);box-shadow:var(--shadow)}

/* ── header: the grid made visible ── */
.lp-head{grid-column:1/13;grid-row:1;display:grid;grid-template-columns:subgrid;align-items:stretch;border-bottom:1.5px solid var(--ink);z-index:3}
.lp-head > *{grid-row:1}
.lp-wm{grid-column:1/4;align-self:end;display:flex;align-items:baseline;font-weight:900;font-size:clamp(40px,3vw,66px);line-height:.8;letter-spacing:-.045em;padding-bottom:clamp(10px,.75vw,15px)}
.lp-wm i{display:inline-block;width:.16em;height:.16em;background:var(--accent);margin-left:.02em}
.lp-head > a.lp-nl{display:flex;align-items:flex-end;padding:0 var(--i) clamp(12px,.9vw,18px);margin-right:calc(var(--g) * -1);
  border-left:1px solid rgba(var(--ink-rgb),.14);font-size:clamp(13px,.8vw,16px);font-weight:500;white-space:nowrap;overflow:hidden;transition:color .2s,background .2s}
.lp-head > a.lp-nl:hover{background:rgba(var(--ink-rgb),.035);color:var(--accent)}
.lp-head > a.lp-nl.cur{font-weight:700}
.lp-head > a.lp-nl.cur:after{content:"";display:inline-block;width:6px;height:6px;background:var(--accent);margin:0 0 .38em 6px}
.lp-head > a.lp-nl.sec{border-left:1.5px solid var(--ink)}
.lp-head > a.account{color:var(--accent);font-weight:700}
.lp-hsec{align-self:start;padding:clamp(10px,.75vw,15px) 0 0 var(--i);font-size:clamp(10px,.6vw,12px);font-weight:600;color:var(--mute);pointer-events:none}
.lp-head .nav-right{margin:0;grid-column:12;display:flex;align-items:flex-end;justify-content:center;gap:10px;padding-bottom:clamp(12px,.9vw,18px);border-left:1.5px solid var(--ink)}
/* column placement — visitors */
.lp-c4{grid-column:4}.lp-c5{grid-column:5}.lp-c6{grid-column:6}.lp-c7{grid-column:7}.lp-c8{grid-column:8}
.lp-c9{grid-column:9}.lp-c10{grid-column:10}.lp-c11{grid-column:11}
.lp-hs-site{grid-column:4/9}.lp-hs-me{grid-column:9/12}
/* admins: Saves/Notes hide (data-guest-only), Combinations + Shop join the site */
.lp-admin{display:none !important}
:root.role-admin .lp-admin{display:flex !important}
:root.role-admin .lp-a5{grid-column:5}:root.role-admin .lp-a6{grid-column:6}:root.role-admin .lp-a7{grid-column:7}
:root.role-admin .lp-a8{grid-column:8}:root.role-admin .lp-a9{grid-column:9}:root.role-admin .lp-a10{grid-column:10}
:root.role-admin .lp-hs-site{grid-column:4/11}:root.role-admin .lp-hs-me{grid-column:11/12}
:root.role-admin .lp-c11{border-left:1.5px solid var(--ink)}

/* ── 01 intro ── */
.lp-intro{grid-column:1/10;grid-row:2;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));align-content:start;padding:clamp(10px,.8vw,18px) var(--i) clamp(12px,1vw,20px)}
.lp-intro > *{grid-column:1/10}
.lp-intro h1{margin:2px 0 0;font-size:clamp(30px,2.75vw,70px);font-weight:700;letter-spacing:-.045em;line-height:1}
.lp-lead{grid-column:1/7 !important;margin:8px 0 0;font-size:clamp(13px,.82vw,17px);line-height:1.45;color:rgba(var(--ink-rgb),.7)}
.lp-sbox{grid-column:1/5 !important;position:relative;margin-top:12px}
.lp-sbox input{width:100%;height:clamp(42px,2.5vw,54px);background:none;border:0;border-bottom:2px solid var(--ink);padding:0;
  font:inherit;font-size:clamp(17px,1.05vw,21px);font-weight:600;letter-spacing:-.02em;color:var(--ink);outline:none;border-radius:0}
.lp-sbox input::placeholder{color:rgba(var(--ink-rgb),.3)}
.lp-sbox input:focus{border-color:var(--accent)}
.lp-btn{grid-column:5/7 !important;margin-top:12px;height:clamp(42px,2.5vw,54px);display:flex;align-items:center;justify-content:space-between;
  padding:0 var(--i);background:var(--ink);color:var(--bg);font-weight:700;font-size:clamp(13px,.8vw,16px);transition:background .2s}
.lp-btn:hover{background:var(--accent);color:#fff}
.lp-nums{grid-column:7/10 !important;margin-top:12px;align-self:end;display:grid;grid-template-columns:repeat(3,auto);justify-content:start;padding-left:clamp(14px,1vw,22px)}
.lp-st{padding:0 clamp(12px,1vw,22px);border-left:1px solid rgba(var(--ink-rgb),.16)}
.lp-st:first-child{padding-left:0;border-left:0}
.lp-st b{display:block;font-size:clamp(22px,1.7vw,40px);font-weight:300;letter-spacing:-.04em;line-height:1}
.lp-st span{display:block;margin-top:5px;font-size:clamp(9px,.52vw,11px);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}

/* ── work of the day ── */
.lp-day{grid-column:10/13;grid-row:2;background:var(--accent);color:#fff;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;
  box-shadow:0 14px 34px -18px rgba(var(--accent-rgb),.7);min-height:0}
.lp-day-hd{grid-column:1/3;display:flex;justify-content:space-between;padding:10px var(--i) 8px;font-size:clamp(11px,.66vw,14px);font-weight:600}
.lp-day-hd span{opacity:.85;font-weight:500}
.lp-day-im{position:relative;overflow:hidden;display:block}
.lp-day-ph{position:absolute;inset:0;background:center/cover;filter:grayscale(1) contrast(1.25) brightness(1.05);mix-blend-mode:multiply;transition:transform 1s cubic-bezier(.2,.8,.2,1)}
.lp-day-im:hover .lp-day-ph{transform:scale(1.04)}
.lp-day-cap{padding:0 var(--i) 12px;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;font-size:clamp(11px,.66vw,14px)}
.lp-day-cap b{font-size:clamp(14px,.95vw,20px);line-height:1.15;letter-spacing:-.01em}
.lp-day-cap span{opacity:.85}
.lp-day-row{display:flex;justify-content:space-between;margin-top:6px;font-weight:700}
.lp-day-row button{background:none;border:0;padding:0;color:#fff;font:inherit;font-weight:600;cursor:pointer;opacity:.85}
.lp-day-row button:hover{opacity:1}

/* ── 02 browse: the drum, or search results ── */
.lp-browse{grid-column:1/10;grid-row:3;display:flex;flex-direction:column;padding:clamp(8px,.6vw,14px) clamp(14px,1vw,22px) clamp(14px,1vw,22px)}
.lp-drum{flex:1;position:relative;display:block;overflow:hidden;min-height:0;cursor:pointer;background:var(--bg);border:1px solid rgba(var(--ink-rgb),.14)}
.lp-drum-lab{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;pointer-events:none;text-align:center;padding:0 var(--i);transition:opacity .45s,transform .45s}
.lp-drum-lab.out{opacity:0;transform:translateY(-10px)}
.lp-dl-name{font-size:clamp(30px,3.8vw,96px);font-weight:800;letter-spacing:.04em;text-transform:uppercase;line-height:1;opacity:.34}
.lp-dl-count{font-size:clamp(10px,.6vw,13px);font-weight:700;letter-spacing:.2em;text-transform:uppercase;opacity:.45}
.lp-drum-cards{position:absolute;inset:0;pointer-events:none}
.lp-dc{position:absolute;left:0;top:0;width:var(--cw,120px);background:var(--paper);border-radius:6px;padding:3px 3px 0;will-change:transform,opacity;box-shadow:0 6px 16px -10px rgba(0,0,0,.35)}
.lp-dc img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;border-radius:4px;filter:grayscale(.15)}
.lp-dc span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;border-left:2px solid var(--dsec,#888);
  margin:5px 2px 6px;padding-left:6px;font-size:clamp(8.5px,.55vw,12px);font-weight:700;line-height:1.2}
.lp-drum-go{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);font-size:clamp(12px,.75vw,15px);font-weight:700;background:var(--ink);color:var(--bg);padding:10px 14px;opacity:0;transition:opacity .3s;z-index:5}
.lp-drum:hover .lp-drum-go{opacity:1}
.lp-found{flex:1;min-height:0;overflow:auto;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:min-content;gap:clamp(10px,.8vw,16px);align-content:start;padding:2px 0}
.lp-fr{display:flex;flex-direction:column;background:var(--bg);border-radius:6px;overflow:hidden;box-shadow:0 8px 20px -14px rgba(0,0,0,.4);
  opacity:0;transform:translateY(8px);animation:lpIn .35s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:var(--d);transition:box-shadow .2s}
@keyframes lpIn{to{opacity:1;transform:none}}
.lp-fr-ph{aspect-ratio:4/3;background:var(--paper) center/cover;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:22px;color:var(--mute)}
.lp-fr-t{padding:9px 11px 11px}
.lp-fr-t b{display:block;font-size:clamp(13px,.8vw,16px);letter-spacing:-.01em;line-height:1.2}
.lp-fr-t span{display:block;margin-top:3px;font-size:clamp(10px,.6vw,12px);color:var(--mute)}
.lp-fr:hover,.lp-fr.sel{box-shadow:0 0 0 2px var(--accent),0 12px 26px -14px rgba(0,0,0,.45)}
.lp-fr:hover b,.lp-fr.sel b{color:var(--accent)}

/* ── index ── */
.lp-index{grid-column:10/13;grid-row:3;display:flex;flex-direction:column;padding:clamp(8px,.6vw,14px) 0 clamp(10px,.8vw,16px)}
.lp-index .lp-k{padding:0 var(--i);flex:none}
.lp-fields{list-style:none;margin:0;padding:0;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;border-top:1px solid rgba(var(--ink-rgb),.25)}
.lp-fields li{flex:1 1 0;min-height:0;display:flex}
.lp-fields li.grp{flex:0 0 auto;display:block;padding:clamp(8px,.7vw,14px) var(--i) 4px;font-size:clamp(9px,.52vw,11px);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.lp-fields a{flex:1;position:relative;display:flex;align-items:center;gap:10px;min-height:22px;padding:0 var(--i);font-size:clamp(11.5px,.72vw,15px);font-weight:500;transition:background .2s}
.lp-fields a:hover{background:rgba(var(--ink-rgb),.03)}
.lp-fields .sw{width:8px;height:8px;border-radius:50%;background:var(--fc);flex:none;transition:transform .2s}
.lp-fields .nm{flex:1;min-width:0}
.lp-fields .c{color:var(--mute);font-size:clamp(10px,.6vw,13px);font-variant-numeric:tabular-nums}
.lp-fields .bar{position:absolute;left:var(--i);right:var(--i);bottom:3px;height:2px;background:rgba(var(--ink-rgb),.07);border-radius:2px;overflow:hidden}
.lp-fields .bar:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--fw);background:var(--fc);opacity:.55;border-radius:2px;transition:opacity .2s}
.lp-fields a:hover .sw{transform:scale(1.5)}
.lp-fields a:hover .bar:after{opacity:1}

/* ── featured this week (stacked layouts only) ── */
.lp-feat{display:none}
.lp-fi{border-top:1px solid rgba(var(--ink-rgb),.12)}
.lp-fi-h{display:grid;grid-template-columns:22px 44px 1fr 22px;gap:10px;align-items:center;width:100%;padding:10px 0;background:none;border:0;text-align:left;cursor:pointer;color:var(--ink);font:inherit}
.lp-fi-n{font-size:11px;font-weight:600;color:var(--accent)}
.lp-fi-th{width:44px;height:44px;border-radius:4px;background:var(--bg) center/cover}
.lp-fi-nm b{display:block;font-size:16px;letter-spacing:-.01em}
.lp-fi-nm span{display:block;font-size:11px;color:var(--mute);margin-top:2px}
.lp-fi-pl{position:relative;width:14px;height:14px;justify-self:end}
.lp-fi-pl:before,.lp-fi-pl:after{content:"";position:absolute;left:0;right:0;top:6px;height:1.5px;background:var(--ink);transition:transform .3s}
.lp-fi-pl:after{transform:rotate(90deg)}
.lp-fi.on .lp-fi-pl:after{transform:rotate(0)}
.lp-fi-b{max-height:0;overflow:hidden;transition:max-height .35s ease}
.lp-fi.on .lp-fi-b{max-height:320px}
.lp-fi-b p{margin:0 0 8px 32px;font-size:13px;line-height:1.5;color:rgba(var(--ink-rgb),.75)}
.lp-fi-b .tg{font-style:italic;color:var(--ink);border-left:2px solid var(--accent);padding-left:8px}
.lp-fi-b a{display:inline-block;margin:0 0 12px 32px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}

/* ── laptops: a little tighter header ── */
@media (max-width:1399px){ .lp-head > a.lp-nl{font-size:12.5px;padding-left:10px;padding-right:6px} .lp-hsec{padding-left:10px} }

/* ── tablets + phones: stacked ── */
@media (max-width:1099px){
  .lp{--m:14px;--i:0px;--g:10px}
  .lp-page{display:flex;flex-direction:column;height:auto;min-height:0;padding-bottom:28px}
  .lp-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;border-bottom:1.5px solid var(--ink);padding:10px 0 0}
  .lp-wm{font-size:34px;line-height:1;padding:0;align-self:center}
  .lp-hsec{display:none}
  .lp-head .nav-right{order:2;border:0;padding:0;align-items:center}
  .lp-head > a.lp-nl,.lp-head > a.lp-nl.sec,:root.role-admin .lp-c11{order:3;border:0;margin:0;padding:12px 18px 10px 0;font-size:13px}
  .lp-head > a.lp-nl.cur:after{margin-bottom:2px}
  .lp-head:after{content:"";order:2;flex-basis:100%}
  .lp-k{height:28px}
  .lp-intro{display:block;padding:12px 14px 14px}
  .lp-intro h1{font-size:clamp(28px,5vw,44px);line-height:1.02}
  .lp-lead{display:none}
  .lp-sbox input{height:44px;font-size:16px}
  .lp-btn{margin-top:8px;height:44px;padding:0 14px}
  .lp-nums{padding:12px 0 0;margin-top:0}
  .lp-st b{font-size:22px}
  .lp-browse{order:2;padding:8px 10px 10px}
  .lp-browse .lp-k .mu{display:none}
  .lp-drum{flex:none;height:min(74vw,520px)}
  .lp-dl-name{font-size:clamp(20px,6.4vw,44px)}
  .lp-drum-go{display:none}
  .lp-found{grid-template-columns:1fr 1fr;max-height:min(110vw,620px);gap:6px}
  .lp-fr{flex-direction:row;align-items:center}
  .lp-fr-ph{width:52px;flex:none;aspect-ratio:1;font-size:15px}
  .lp-fr-t{padding:6px 10px}
  .lp-day{order:3;grid-template-columns:38% 1fr}
  .lp-day-im{min-height:min(30vw,220px);max-height:260px}
  .lp-day-cap{padding:0 12px 10px}
  .lp-day-hd{padding:8px 12px 6px}
  .lp-day-cap b{font-size:15px}
  .lp-index{display:none}
  .lp-feat{display:block;order:4;padding:6px 12px 4px}
  .lp-feat .lp-k{padding:0}
}
/* phones: the site menu pill takes over the links */
@media (max-width:699px){
  .lp-head{height:58px;padding:0;flex-wrap:nowrap}
  .lp-head:after{display:none}
  .lp-head > a.lp-nl{display:none !important}
  .lp-wm{font-size:30px}
  .lp-head .nav-right{gap:12px}
  .lp-intro h1{font-size:7.6vw}
  .lp-found{grid-template-columns:1fr;max-height:74vw}
  .lp-drum{height:74vw}
}
.lp-sbox input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}
