/* Review Desk: site styles. One set of color tokens per theme; everything below reads from them. */
:root,[data-theme="den"]{
  --bg:#0E1813; --panel:#15231C; --panel2:#1B2D24; --field:#0F1B15;
  --ink:#F3E8D5; --muted:#B4AA95; --faint:#7F8B80;
  --gold:#D4AF37; --honey:#E9A04C; --line:rgba(212,175,55,.22); --line2:rgba(243,232,213,.10);
  --chip:#26372D; --ok:#7FB38A; --err:#E9875F; --onaccent:#0E1813; --shadow:0 18px 40px rgba(0,0,0,.35);
  color-scheme:dark;
}
[data-theme="oak"]{--bg:#1A120C;--panel:#241912;--panel2:#2E2017;--field:#170F0A;--ink:#F6E7D2;--muted:#C3A88A;--faint:#8E7A66;--gold:#E0913F;--honey:#F2C38A;--line:rgba(224,145,63,.24);--line2:rgba(246,231,210,.10);--chip:#3A2819;--onaccent:#1A120C}
[data-theme="midnight"]{--bg:#0B1020;--panel:#131A30;--panel2:#1A233D;--field:#0A0F1E;--ink:#EEF1F8;--muted:#A9B1C6;--faint:#737D96;--gold:#C9A86A;--honey:#9FB6EA;--line:rgba(201,168,106,.24);--line2:rgba(238,241,248,.10);--chip:#24304F;--onaccent:#0B1020}
[data-theme="ember"]{--bg:#140C0B;--panel:#1F1312;--panel2:#291917;--field:#120A09;--ink:#F8E9E0;--muted:#C3A39A;--faint:#8C716A;--gold:#E2603A;--honey:#F3B07A;--line:rgba(226,96,58,.26);--line2:rgba(248,233,224,.10);--chip:#3A201C;--onaccent:#140C0B}
[data-theme="smoke"]{--bg:#151515;--panel:#1E1E1E;--panel2:#262626;--field:#121212;--ink:#F2F0EC;--muted:#A9A59E;--faint:#77736D;--gold:#C8C2B6;--honey:#E6DCC8;--line:rgba(200,194,182,.22);--line2:rgba(242,240,236,.09);--chip:#303030;--onaccent:#151515}
[data-theme="paper"]{--bg:#EDE6D8;--panel:#F8F3EA;--panel2:#F1E9DB;--field:#FFFDF8;--ink:#1E2A22;--muted:#5E5A4E;--faint:#8C8676;--gold:#8E6A10;--honey:#A65A12;--line:rgba(142,106,16,.28);--line2:rgba(30,42,34,.10);--chip:#DCD3C2;--ok:#2F7A44;--err:#A6401A;--onaccent:#FFFDF8;--shadow:0 14px 34px rgba(60,45,20,.14);color-scheme:light}
:root{--display:"Libre Baskerville",Georgia,"Times New Roman",serif;--sans:Montserrat,"Helvetica Neue",Arial,sans-serif;--mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}
img{max-width:100%}
a{color:var(--gold)}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--honey);outline-offset:2px}
[hidden]{display:none!important}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:20;background:var(--panel);padding:8px 12px}
.inner{max-width:1240px;margin:0 auto;padding-left:max(18px,env(safe-area-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--display);line-height:1.2;text-wrap:balance;margin:0 0 .4em}
h1{font-size:clamp(30px,4.4vw,48px)}
h2{font-size:clamp(22px,2.6vw,28px)}
h3{font-size:19px}
.eyebrow{display:block;font-size:11px;letter-spacing:.22em;font-weight:700;color:var(--label,var(--honey));text-transform:uppercase;margin-bottom:8px}
.lede{color:var(--muted);font-size:18px;max-width:62ch;margin:0 0 18px}
.lede.small{font-size:15px}
.hint{color:var(--faint);font-size:13px;margin:6px 0 12px}
.hint em,.lbl em{font-style:normal}

/* buttons and fields */
.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--panel);color:var(--ink);padding:9px 16px;border-radius:8px;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;white-space:nowrap}
.btn:hover{border-color:var(--gold)}
.btn.primary{background:var(--gold);border-color:var(--gold);color:var(--onaccent)}
.btn.ghost{background:none}
.btn.big{padding:12px 22px;font-size:15px}
.btn.danger,.linkbtn.danger{color:var(--err)}
.btn[disabled]{opacity:.45;cursor:default}
.linkbtn{background:none;border:0;padding:0;color:var(--gold);cursor:pointer;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.f{display:flex;flex-direction:column;gap:5px;margin-bottom:14px;min-width:0}
.lbl{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--label,var(--gold))}
.lbl em{text-transform:none;letter-spacing:0;font-weight:500;color:var(--faint);margin-left:4px}
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea{width:100%;min-width:0;background:var(--field);border:1px solid var(--line2);border-radius:8px;padding:10px 12px}
textarea{resize:vertical;line-height:1.55}
textarea.mono{font-family:var(--mono);font-size:13px}
input::placeholder,textarea::placeholder{color:var(--faint)}
input[type=file]{font-size:14px;max-width:100%}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:0 14px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:15px;cursor:pointer;margin-bottom:10px}
.check input{accent-color:var(--gold);width:17px;height:17px;margin-top:3px;flex:none}
.check em{font-style:normal;color:var(--faint);font-size:13px}
.pill{display:inline-block;border:1px solid var(--line);color:var(--gold);border-radius:999px;padding:3px 12px;font-size:12px;font-weight:700;letter-spacing:.06em}

/* header */
.site-head{border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:10}
.head-in{display:flex;align-items:center;gap:18px;padding-block:12px;flex-wrap:wrap}
.lockup{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);margin-right:auto;min-width:0}
.lockup .logo{width:46px;height:46px;object-fit:contain;flex:none}
.lockup .glassmark,.foot-brand .glassmark{color:var(--gold);flex:none}
.lockup .name{display:block;font-family:var(--display);font-weight:700;font-size:20px;line-height:1.15}
.lockup .tline{display:block;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:46ch}
.nav{display:flex;flex-wrap:wrap;gap:2px}
.nav a{color:var(--muted);text-decoration:none;font-weight:600;font-size:14px;padding:7px 11px;border-radius:7px}
.nav a:hover{color:var(--ink)}
.nav a.here{color:var(--ink);background:var(--panel);box-shadow:inset 0 -2px 0 var(--gold)}
.nav a.owner{color:var(--gold)}
.nav-toggle{display:none;background:none;border:1px solid var(--line);border-radius:8px;padding:7px 12px;font-weight:600;cursor:pointer}
@media (max-width:880px){
  .nav-toggle{display:block}
  .nav{display:none;flex-basis:100%;flex-direction:column;padding-bottom:6px}
  .nav.open{display:flex}
  .lockup .tline{display:none}
}

/* hero */
.hero{position:relative;border-bottom:1px solid var(--line);overflow:hidden;background:radial-gradient(ellipse at 20% 0%,color-mix(in srgb,var(--gold) 14%,transparent),transparent 60%),var(--bg)}
.hero-in{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);gap:40px;align-items:center;padding-block:56px 48px}
.hero h1{font-size:clamp(34px,5.4vw,60px);max-width:16ch}
.hero.has-img .hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28}
.hero.has-img::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 30%,color-mix(in srgb,var(--bg) 40%,transparent))}
.hero .hero-in{position:relative;z-index:1}
.latest{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow)}
.latest img{border-radius:8px;aspect-ratio:4/3;object-fit:cover;width:100%}
.latest-row{display:flex;justify-content:space-between;gap:12px;align-items:flex-end}
.latest .maker{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-weight:600}
.latest b{font-family:var(--display);font-size:22px;line-height:1.2}
.latest .eyebrow{margin:0}
@media (max-width:820px){.hero-in{grid-template-columns:minmax(0,1fr);padding-block:36px}}

/* blocks and cards */
.block{padding-block:36px 8px}
.block-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:18px;border-bottom:1px solid var(--line);padding-bottom:10px}
.block-head h2{margin:0}
.block-head a{font-weight:600;font-size:14px;text-decoration:none}
.page-head{padding-block:40px 8px}
.page-narrow{max-width:820px}
.rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:18px}
.rcard{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);background:var(--panel);border:1px solid var(--line2);border-radius:12px;overflow:hidden;transition:border-color .15s,transform .15s}
.rcard:hover{border-color:var(--gold);transform:translateY(-2px)}
.rcard-img{position:relative;aspect-ratio:4/5;background:var(--panel2);display:block}
.rcard-img img{width:100%;height:100%;object-fit:cover;display:block}
.noimg{display:grid;place-items:center;width:100%;height:100%;color:var(--gold);opacity:.6}
.score{position:absolute;right:10px;top:10px;background:color-mix(in srgb,var(--bg) 88%,transparent);border:1px solid var(--gold);border-radius:999px;padding:4px 11px;font-variant-numeric:tabular-nums}
.score b{font-family:var(--display);color:var(--gold);font-size:17px}
.score small{color:var(--muted);font-size:12px}
.score.big{position:static;border:0;background:none;padding:0}
.score.big b{font-size:46px;line-height:1}
.score.big small{font-size:18px}
.rcard-body{display:flex;flex-direction:column;gap:4px;padding:14px 16px 16px}
.rcard-body .eyebrow{margin:0;font-size:10.5px}
.rcard-title{font-family:var(--display);font-weight:700;font-size:17px;line-height:1.25}
.rcard-meta{font-size:13px;color:var(--muted)}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:18px}
.pcard{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);background:var(--panel);border:1px solid var(--line2);border-radius:12px;overflow:hidden}
.pcard:hover{border-color:var(--gold)}
.pcard-img img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.pcard-body{display:flex;flex-direction:column;gap:6px;padding:16px}
.pcard .date{font-size:12px;color:var(--faint);letter-spacing:.06em}
.pcard-title{font-family:var(--display);font-size:19px;font-weight:700;line-height:1.25}
.pcard-ex{color:var(--muted);font-size:14px}
.photogrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:10px}
.photogrid a{position:relative;display:block;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--panel2);color:#fff;text-decoration:none}
.photogrid img{width:100%;height:100%;object-fit:cover}
.photogrid span:last-child{position:absolute;inset:auto 0 0;padding:28px 12px 10px;background:linear-gradient(transparent,rgba(0,0,0,.75));font-weight:600;font-size:14px}
.about-teaser{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;align-items:start;padding-bottom:56px}
.about-teaser p{color:var(--muted);max-width:60ch}
.cta-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px}
.cta-card p{color:var(--muted)}
@media (max-width:820px){.about-teaser{grid-template-columns:minmax(0,1fr)}}
.empty{text-align:center;border:1px dashed var(--line);border-radius:14px;padding:40px 20px;color:var(--muted)}
.empty .glassmark{color:var(--gold);opacity:.7}
.empty h3{margin:10px 0 4px;color:var(--ink)}
.filters{display:grid;grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}
@media (max-width:640px){.filters{grid-template-columns:minmax(0,1fr)}}
.none{color:var(--muted);text-align:center;padding:30px}

/* a post */
.post{padding-block:28px 56px}
.crumbs{font-size:13px;margin-bottom:14px}
.crumbs a{text-decoration:none;font-weight:600}
.crumbs a::before{content:"← "}
.notice{background:var(--panel);border:1px solid var(--honey);border-radius:8px;padding:10px 14px;font-size:14px;color:var(--ink)}
.post-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;margin-bottom:20px}
.post-head h1{margin-bottom:6px}
.byline{color:var(--faint);font-size:14px;margin:0}
.scorebox{display:flex;flex-direction:column;align-items:flex-end;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 18px;min-width:150px}
.scorebox .word{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--ink)}
@media (max-width:640px){.post-head{grid-template-columns:minmax(0,1fr)}.scorebox{align-items:flex-start}}
.cover{margin:0 0 24px}
.cover img{width:100%;max-height:640px;object-fit:cover;border-radius:12px;display:block}
.cover figcaption,.prose figcaption{font-size:13px;color:var(--faint);margin-top:8px}
.specs{display:flex;flex-wrap:wrap;gap:1px;background:var(--line2);border:1px solid var(--line2);border-radius:12px;overflow:hidden;margin:0 0 28px}
.specs div{background:var(--panel);padding:12px 14px;flex:1 1 170px}
.specs dt{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--gold)}
.specs dd{margin:3px 0 0;font-family:var(--display);font-size:16px}
.prose{max-width:70ch;font-size:17px;line-height:1.7}
.prose h2{margin-top:1.6em;font-size:24px}
.prose h3{margin-top:1.4em}
.prose hr{border:0;border-top:1px solid var(--line);margin:2em 0}
.prose img{border-radius:10px;display:block}
.prose figure{margin:1.4em 0}
.prose blockquote{margin:1.2em 0;padding-left:16px;border-left:3px solid var(--honey);color:var(--muted)}
.prose code{font-family:var(--mono);font-size:.9em;background:var(--panel2);padding:1px 5px;border-radius:4px}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:24px}
.tags span{font-size:12px;border:1px solid var(--line2);border-radius:999px;padding:3px 10px;color:var(--muted)}
.owner-bar{display:flex;gap:8px;margin-top:20px}
.pager{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:40px;border-top:1px solid var(--line);padding-top:20px}
.pager a{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);font-family:var(--display);font-weight:700}
.pager a span{font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:700}
.pager .next{text-align:right}
.contact{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}
.contact .lbl{margin-right:8px}
.toc{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.toc a{border:1px solid var(--line);border-radius:999px;padding:5px 14px;font-size:14px;font-weight:600;text-decoration:none}
.guide{font-size:17px;line-height:1.7}
.guide h2{margin-top:1.8em;padding-top:10px;border-top:1px solid var(--line)}
.guide li{margin-bottom:8px}
.guide .steps{padding-left:22px}
.guide .steps li::marker{color:var(--gold);font-weight:700}

/* footer */
.site-foot{border-top:1px solid var(--line);margin-top:20px}
.foot-in{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center;justify-content:space-between;padding-block:24px 30px}
.foot-brand{display:flex;gap:12px;align-items:center}
.foot-brand .logo{width:40px;height:40px;object-fit:contain}
.foot-brand b{display:block;font-family:var(--display)}
.foot-brand .small{display:block;font-size:13px;color:var(--muted)}
.foot-links{display:flex;gap:16px;flex-wrap:wrap}
.foot-links a{font-size:14px;color:var(--muted);text-decoration:none}
.foot-links a:hover{color:var(--ink)}
.made{flex-basis:100%;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}

/* Your Desk */
.admin-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding-block:28px 6px}
.admin-head h1{margin:0;font-size:clamp(26px,3vw,34px)}
.admin-tabs{display:flex;gap:2px;overflow-x:auto;border-bottom:1px solid var(--line);margin-bottom:22px;scrollbar-width:thin}
.admin-tabs a{padding:10px 12px;color:var(--muted);text-decoration:none;font-weight:600;font-size:14px;white-space:nowrap;border-bottom:2px solid transparent}
.admin-tabs a[aria-current]{color:var(--ink);border-bottom-color:var(--gold)}
.flash{background:var(--panel);border:1px solid var(--ok);color:var(--ink);border-radius:8px;padding:10px 14px;font-size:14px;margin:0 0 18px}
.flash.err{border-color:var(--err)}
.quick{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.table-wrap{overflow-x:auto;border:1px solid var(--line2);border-radius:12px;margin-bottom:40px}
table.list{width:100%;border-collapse:collapse;font-size:15px}
.list th{text-align:left;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);padding:12px 14px;background:var(--panel)}
.list td{padding:12px 14px;border-top:1px solid var(--line2);vertical-align:middle}
.list td a{color:var(--ink);text-decoration:none}
.list td.num{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}
.list .acts{white-space:nowrap;text-align:right}
.list .acts a,.list .acts .linkbtn{margin-left:12px;font-size:13px;color:var(--gold)}
form.inline{display:inline}
.tag-draft,.tag-ex{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;border-radius:4px;padding:2px 6px;margin-left:6px;vertical-align:middle}
.tag-draft{background:var(--honey);color:var(--onaccent)}
.tag-ex{border:1px solid var(--line);color:var(--muted)}
.card-form{background:var(--panel);border:1px solid var(--line2);border-radius:14px;padding:22px;margin-bottom:22px;max-width:760px}
.card-form.wide{max-width:none}
.card-form h2{font-size:20px;margin:22px 0 8px;padding-top:16px;border-top:1px solid var(--line)}
.card-form h2:first-child,.card-form input[type=hidden]+h2,.card-form input[type=hidden]+input[type=hidden]+h2{margin-top:0;padding-top:0;border-top:0}
.card-form fieldset{border:0;padding:0;margin:0 0 18px}
.card-form legend{font-family:var(--display);font-size:19px;font-weight:700;margin-bottom:12px}
.card-form fieldset.gal{border-bottom:1px solid var(--line2);padding-bottom:12px}
.card-form fieldset.gal legend small{font-family:var(--sans);font-size:12px;color:var(--faint);font-weight:500;margin-left:6px}
.actions.small .btn{padding:6px 12px;font-size:13px}
.upload-row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.upload-row .f{margin:0;flex:1;min-width:220px}
.setup{max-width:780px;padding-block:40px 60px}
.setup.narrow{max-width:460px}
.topic-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-bottom:8px}
.topic{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 8px;border:1px solid var(--line2);border-radius:10px;background:var(--panel2);cursor:pointer;font-weight:600;font-size:14px;text-align:center}
.topic .em{font-size:26px}
.topic input{position:absolute;opacity:0;pointer-events:none}
.topic:has(input:checked){border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset}
.topic:has(input:focus-visible){outline:2px solid var(--honey)}
.theme-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin:6px 0 16px}
.theme-sw{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;border:1px solid var(--line2);border-radius:8px;background:var(--panel2);cursor:pointer;font-size:12px;color:var(--muted)}
.theme-sw input{position:absolute;opacity:0;pointer-events:none}
.theme-sw i{width:36px;height:36px;border-radius:50%;border:2px solid;display:block}
.theme-sw[data-t="den"] i{background:#0E1813;border-color:#D4AF37}.theme-sw[data-t="oak"] i{background:#1A120C;border-color:#E0913F}.theme-sw[data-t="midnight"] i{background:#0B1020;border-color:#C9A86A}
.theme-sw[data-t="ember"] i{background:#140C0B;border-color:#E2603A}.theme-sw[data-t="smoke"] i{background:#151515;border-color:#C8C2B6}.theme-sw[data-t="paper"] i{background:#EDE6D8;border-color:#8E6A10}
.theme-sw:has(input:checked){border-color:var(--gold);color:var(--ink);box-shadow:0 0 0 1px var(--gold) inset}
.theme-sw:has(input:focus-visible){outline:2px solid var(--honey)}
.logo-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.logo-prev{width:80px;height:80px;border:1px dashed var(--line);border-radius:10px;display:grid;place-items:center;background:var(--field);color:var(--gold)}
.logo-prev .logo{width:64px;height:64px;object-fit:contain}
.cover-prev{max-width:220px;border-radius:8px;display:block;margin-bottom:8px}
.editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:24px;align-items:start}
@media (max-width:900px){.editor{grid-template-columns:minmax(0,1fr)}}
.editor-side{background:var(--panel);border:1px solid var(--line2);border-radius:12px;padding:16px}
.md-tools{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}
.md-tools button{border:1px solid var(--line2);background:var(--panel);border-radius:6px;padding:4px 10px;font-size:13px;cursor:pointer}
.md-tools .pv{margin-left:auto}
.preview{border:1px solid var(--line2);border-radius:10px;padding:16px;background:var(--panel)}
.media-pick{margin:24px 0 40px}
.media-pick summary{cursor:pointer;font-weight:600;color:var(--gold)}
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:40px}
.mgrid figure{margin:0;background:var(--panel);border:1px solid var(--line2);border-radius:10px;overflow:hidden}
.mgrid img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.mgrid figcaption{display:flex;flex-direction:column;gap:4px;padding:8px 10px;font-size:12px;color:var(--muted)}
.mgrid .mono{font-family:var(--mono);font-size:11px;overflow-wrap:anywhere;color:var(--ink)}
.mgrid .acts{display:flex;gap:12px}
.mgrid.small{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:6px;margin-top:10px}
.mgrid.small button{padding:0;border:1px solid var(--line2);border-radius:6px;overflow:hidden;cursor:pointer;background:none}
.secs{display:grid;gap:6px;margin-bottom:12px}
.sec{display:grid;grid-template-columns:auto 60px minmax(0,1fr) auto;gap:8px;align-items:center;background:var(--panel2);border:1px solid var(--line2);border-radius:8px;padding:6px 8px}
.sec input[type=checkbox]{accent-color:var(--gold);width:18px;height:18px}
.sec .em{text-align:center}
.sec .mv{display:flex;gap:2px}
.sec .mv button{border:1px solid var(--line2);background:none;border-radius:6px;width:32px;height:32px;cursor:pointer;color:var(--muted)}
.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:0 14px}
.loading{color:var(--muted);padding:40px 0}
.admin .desk-intro{display:none}
.admin .desk-top{padding-top:0;justify-content:flex-start}

.tag-pending{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;border-radius:4px;padding:2px 6px;margin-left:6px;vertical-align:middle;border:1px solid var(--honey);color:var(--honey)}
.small{font-size:12px;color:var(--faint)}
.mono{font-family:var(--mono);font-size:13px}
.roles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:10px;margin-bottom:18px}
.roles div{background:var(--panel);border:1px solid var(--line2);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;font-size:14px;color:var(--muted)}
.roles b{color:var(--gold);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.people-list tr.off td{opacity:.55}
.people-list .acts{text-align:left;min-width:120px}
.edit-person summary{cursor:pointer;color:var(--gold);font-weight:600;font-size:13px}
.edit-person[open]{min-width:min(420px,80vw)}
.edit-person .card-form{margin:10px 0;padding:14px}
.people{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:12px;margin:10px 0 20px}
.person{display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:var(--panel);border:1px solid var(--line2);border-radius:12px;text-decoration:none;color:var(--ink)}
.person:hover{border-color:var(--gold)}
.person b{font-family:var(--display);font-size:17px}
.person span{font-size:13px;color:var(--muted)}
.person .bio{color:var(--faint)}
.byline a{color:inherit}

/* Learn */
.learn-hero{border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 15% 0%,color-mix(in srgb,var(--gold) 14%,transparent),transparent 60%),var(--bg)}
.learn-hero .inner{padding-block:44px 34px}
.learn-hero h1{max-width:18ch}
.learn{padding-block:28px 60px}
.learn > p, .learn > .toc{max-width:80ch}
.learn-lead{font-size:18px;max-width:68ch}
.learn h2{margin-top:1.8em;padding-top:14px;border-top:1px solid var(--line)}
.overview{list-style:none;padding:0;margin:20px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:12px}
.overview li{display:flex;flex-direction:column;gap:6px;background:var(--panel);border:1px solid var(--line2);border-radius:12px;padding:16px}
.overview .n{font-family:var(--display);font-size:28px;color:var(--gold);line-height:1}
.overview b{font-size:16px}
.overview span:last-child{color:var(--muted);font-size:14px}
.stepcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:14px}
.stepcard{background:var(--panel);border:1px solid var(--line2);border-radius:12px;padding:18px}
.stepcard .em{font-size:26px;display:block;margin-bottom:6px}
.stepcard h3{margin:0 0 6px}
.stepcard p{margin:0 0 10px;color:var(--ink);font-size:15px}
.stepcard .tip{margin:0;font-size:13px;color:var(--muted);border-left:3px solid var(--honey);padding-left:10px}
.tiers{list-style:none;padding:0;margin:14px 0 20px;border:1px solid var(--line2);border-radius:12px;overflow:hidden}
.tiers .tier{display:grid;grid-template-columns:90px minmax(0,180px) minmax(0,1fr);gap:12px;align-items:baseline;padding:10px 16px;border-top:1px solid var(--line2);background:var(--panel)}
.tiers .tier:first-child{border-top:0}
.tiers .n{font-family:var(--display);font-weight:700;color:var(--gold);font-variant-numeric:tabular-nums}
.tiers span:last-child{color:var(--muted)}
@media (max-width:600px){.tiers .tier{grid-template-columns:70px minmax(0,1fr)}.tiers span:last-child{grid-column:2}}
.valuecalls{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:10px;margin:10px 0}
.valuecalls div{background:var(--panel);border:1px solid var(--line2);border-radius:10px;padding:12px 14px}
.valuecalls dt{font-weight:700;color:var(--gold)}
.valuecalls dd{margin:4px 0 0;color:var(--muted);font-size:14px}
.make{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin-bottom:16px}
.make > div{background:var(--panel);border:1px solid var(--line2);border-radius:12px;padding:18px}
.make h3{margin-top:0}
.make p{color:var(--muted);font-size:15px}
pre.mdx{font-family:var(--mono);font-size:12.5px;line-height:1.6;background:var(--field);border:1px solid var(--line2);border-radius:10px;padding:14px 16px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:440px;overflow:auto}
.learn .steps{padding-left:22px}
.learn .steps li{margin-bottom:8px}
.ov-edit{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px}
/* pages editor */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
@media (max-width:640px){.grid2{grid-template-columns:1fr}}
.card-form h2 em.sub{font-size:.6em;font-style:normal;font-weight:500;color:var(--muted);letter-spacing:0}
.pages-form h2{scroll-margin-top:90px;margin-top:34px;padding-top:22px;border-top:1px solid var(--line)}
.pages-form h2:first-of-type{border-top:0;margin-top:10px}
.sticky-actions{position:sticky;bottom:0;background:var(--panel);padding:12px 0;border-top:1px solid var(--line);z-index:2}
.guide .prose h2{scroll-margin-top:90px}
/* Learn: closer to the original tasting room look */
.learn-hero.has-banner{position:relative;background:linear-gradient(90deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 88%,transparent) 42%,color-mix(in srgb,var(--bg) 10%,transparent) 75%),var(--banner) right center/cover no-repeat,var(--bg)}
.learn-hero.has-banner .inner{padding-block:60px 54px}
.learn-hero h1{font-size:clamp(34px,6vw,62px);line-height:1.05}
.learn-hero .lede{max-width:46ch}
@media (max-width:700px){.learn-hero.has-banner{background:linear-gradient(color-mix(in srgb,var(--bg) 82%,transparent),var(--bg)),var(--banner) center/cover no-repeat,var(--bg)}}
.overview li{flex-direction:row;align-items:flex-start;gap:12px}
.overview li > div{display:flex;flex-direction:column;gap:6px}
.overview .n{flex:none;width:30px;height:30px;border-radius:50%;background:var(--gold);color:var(--onaccent);font-size:16px;display:grid;place-items:center;font-weight:700}
.overview b{font-family:var(--display);font-size:19px}
.stepcard .tip{border-left:0;padding-left:0;font-style:italic;color:var(--gold)}
.scalewrap.two{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:18px;align-items:start}
.valuecard{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:18px}
.valuecard h3{margin:0 0 8px}
.valuecard .valuecalls{display:block;margin:0}
.valuecard .valuecalls div{background:none;border:0;padding:0 0 10px}
@media (max-width:860px){.scalewrap.two{grid-template-columns:1fr}}
.scalewrap .tiers{margin-top:6px}
.tiers .tier{grid-template-columns:48px minmax(0,1fr);align-items:center}
.tiers .tier p{margin:0}
.tiers .tier p span{color:var(--muted)}
.tiers .tier > span.n{font-size:22px;text-align:center}
@media (max-width:600px){.tiers .tier{grid-template-columns:48px minmax(0,1fr)}}
.learn p.narrow{max-width:68ch}
.make-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.make-head h3{margin:0}
.make pre.mdx{margin-top:12px}
/* custom theme extras */
.pattern-strip{display:none;height:74px;background:var(--bg) center/auto 100% repeat-x;border-top:1px solid var(--line);margin-top:30px}
.site-head{background-color:var(--bg)}
.site-foot{background-color:var(--bg)}
.hero{isolation:isolate}
.mode-toggle{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;flex:none}
.mode-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.mode-toggle .mi-moon{fill:currentColor;stroke:none}
[data-mode="dark"] .mode-toggle .mi-moon,[data-mode="light"] .mode-toggle .mi-sun{display:none}
.mode-toggle:hover{border-color:var(--gold)}
@media (min-width:881px){.mode-toggle{order:3;margin-left:6px}}
/* Look: custom theme editor */
.custom-sw i{border:1px solid var(--line2)}
.seg{display:inline-flex;flex-wrap:wrap;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:4px 0 6px}
.seg label{position:relative;cursor:pointer}
.seg input{position:absolute;opacity:0}
.seg span{display:block;padding:8px 14px;font-weight:600;font-size:14px;color:var(--muted)}
.seg input:checked + span{background:var(--gold);color:var(--onaccent)}
.seg input:focus-visible + span{outline:2px solid var(--honey);outline-offset:-2px}
.modes2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px;margin:12px 0}
.palette{border:1px solid var(--line2);border-radius:12px;padding:12px 14px;margin:0}
.palette legend{font-weight:700;padding:0 6px}
.colorf{display:flex;align-items:center;gap:12px;padding:6px 0;border-top:1px solid var(--line2);cursor:pointer}
.colorf:first-of-type{border-top:0}
.colorf input{width:44px;height:34px;padding:0;border:1px solid var(--line2);border-radius:8px;background:none;cursor:pointer;flex:none}
.colorf span{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;font-size:14px}
.colorf em{font-style:normal;color:var(--muted);font-size:12.5px}
.colorf code{font-family:var(--mono);font-size:12px;color:var(--faint);margin-left:auto}
.base-row{align-items:flex-end}
.base-row .btn{margin-bottom:14px}
.theme-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px}
.tp{background:var(--bg);color:var(--ink);border:1px solid var(--line2);border-radius:12px;overflow:hidden;font-size:13px}
.tp-head{display:flex;gap:12px;align-items:center;padding:10px 14px;background:var(--bg);color:var(--ink);border-bottom:1px solid var(--line)}
.tp-head b{margin-right:auto;font-size:15px}
.tp-head span{color:var(--muted);font-weight:600}
.tp-hero{display:flex;flex-direction:column;gap:6px;padding:16px 14px;background:var(--bg);color:var(--ink);border-bottom:1px solid var(--line)}
.tp-eye{font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--honey)}
.tp-h{font-size:22px;font-weight:700}
.tp-btn{align-self:flex-start;background:var(--gold);color:var(--onaccent);border-radius:8px;padding:6px 12px;font-weight:700}
.tp-body{padding:14px}
.tp-card{display:flex;flex-direction:column;gap:4px;background:var(--panel);border:1px solid var(--line2);border-radius:10px;padding:12px}
.tp-score{font-size:20px;font-weight:700;color:var(--gold)}
.tp-mut{color:var(--muted)}
#contrast-note{color:var(--err)}
.dark-well{background:#1b1b1b;color:#eee;border-radius:10px;padding:10px 12px}
.dark-well .lbl,.dark-well em{color:#ccc}
.file-prev{max-height:56px;max-width:120px;object-fit:contain}
.logos{align-items:start}
/* media library */
.m-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}
.m-bar .hint{margin:0 auto 0 0}
.m-up{display:flex;gap:8px;align-items:center}
.m-up select{background:var(--field);border:1px solid var(--line2);border-radius:8px;padding:8px 10px}
.pills{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px;align-items:center}
.pill{border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:13.5px;font-weight:600;text-decoration:none;color:var(--muted)}
.pill[aria-current]{background:var(--gold);border-color:var(--gold);color:var(--onaccent)}
.pill-sep{width:1px;height:22px;background:var(--line);margin:0 4px}
.mlib{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:14px}
.mtile{margin:0;background:var(--panel);border:1px solid var(--line2);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.mtile.unused{border-style:dashed}
.m-img{display:block;aspect-ratio:4/3;background:var(--panel2) repeating-conic-gradient(var(--panel2) 0 25%,var(--panel) 0 50%) 0 0/18px 18px}
.m-img img{width:100%;height:100%;object-fit:contain;display:block}
.mtile figcaption{display:flex;flex-direction:column;gap:8px;padding:10px 12px 12px}
.mtile .small{font-size:12px;color:var(--muted)}
.m-uses{margin:0;padding-left:18px;font-size:13.5px}
.chip-unused{align-self:flex-start;font-size:12px;font-weight:600;border:1px dashed var(--line);border-radius:999px;padding:2px 10px;color:var(--muted)}
.m-tags{display:flex;flex-wrap:wrap;gap:4px}
.mt{font-size:11.5px;border:1px solid var(--line2);background:none;border-radius:999px;padding:2px 9px;color:var(--muted);cursor:pointer}
.mt.on{background:var(--chip);color:var(--ink);border-color:var(--line)}
.mt-add{width:70px;font-size:11.5px;border:1px dashed var(--line2);background:none;border-radius:999px;padding:2px 9px}
.m-row{display:flex;gap:6px;align-items:center}
.m-row input{flex:1;min-width:0;background:var(--field);border:1px solid var(--line2);border-radius:7px;padding:6px 8px;font-size:13.5px}
.m-ext{font-family:var(--mono);font-size:12px;color:var(--faint)}
.m-acts{display:flex;flex-wrap:wrap;gap:6px}
.btn.small{padding:5px 10px;font-size:13px}
.danger-btn{color:var(--err);border-color:color-mix(in srgb,var(--err) 50%,transparent)}
/* Your Desk: side menu */
.desk-wrap{display:grid;grid-template-columns:210px minmax(0,1fr);gap:30px;align-items:start;padding-top:22px}
.desk-main .inner{padding-left:0;padding-right:0;max-width:none}
.desk-main .admin-head{padding-top:4px}
.desk-nav{position:sticky;top:calc(var(--head-h,70px) + 14px);display:flex;flex-direction:column;gap:14px;padding:14px 10px;background:var(--panel);border:1px solid var(--line2);border-radius:14px}
.dn-group{display:flex;flex-direction:column;gap:1px}
.dn-lab{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--label,var(--honey));padding:0 10px 4px}
.desk-nav a{color:var(--muted);text-decoration:none;font-weight:600;font-size:14px;padding:7px 10px;border-radius:8px}
.desk-nav a:hover{color:var(--ink);background:var(--panel2)}
.desk-nav a[aria-current]{color:var(--ink);background:var(--chip);box-shadow:inset 3px 0 0 var(--gold)}
.desk-nav .dn-site{border-top:1px solid var(--line2);border-radius:0;padding-top:12px;font-size:13px}
@media (max-width:900px){
  .desk-wrap{grid-template-columns:minmax(0,1fr);gap:8px;padding-top:12px}
  .desk-nav{position:static;flex-direction:row;overflow-x:auto;gap:4px;padding:8px;scrollbar-width:thin}
  .dn-group{flex-direction:row;gap:2px}
  .dn-lab{display:none}
  .desk-nav a{white-space:nowrap}
  .desk-nav .dn-site{border-top:0;padding-top:7px}
}
/* dashboard */
.dash-date{margin:-6px 0 16px;color:var(--muted)}
.dquick{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.dstats{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr));gap:10px;margin-bottom:20px}
.dstat{display:flex;flex-direction:column;gap:2px;background:var(--panel);border:1px solid var(--line2);border-radius:12px;padding:14px 16px;text-decoration:none;color:var(--ink)}
.dstat:hover{border-color:var(--gold)}
.dstat .lbl{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--label,var(--honey))}
.dstat b{font-family:var(--display);font-size:30px;line-height:1.1}
.dstat .small{font-size:12.5px;color:var(--muted)}
.dgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:14px}
.dcard{background:var(--panel);border:1px solid var(--line2);border-radius:14px;padding:16px 18px}
.dc-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px}
.dc-head h2{font-size:19px;margin:0}
.dc-head a,.dc-head .small{font-size:13px;color:var(--muted)}
.dlist{list-style:none;margin:0;padding:0}
.dlist li{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line2)}
.dlist li:first-child{border-top:0}
.dlist li > a{display:flex;flex-direction:column;gap:1px;text-decoration:none;color:var(--ink);flex:1;min-width:0}
.dlist li > a span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dlist .dl-k{font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--muted)}
.dlist .small{font-size:12.5px;color:var(--faint);white-space:nowrap}
.dtop{margin:0;padding-left:22px}
.dtop li{display:flex;justify-content:space-between;gap:10px;padding:5px 0}
.dtop b{color:var(--gold);font-variant-numeric:tabular-nums}
/* post types */
.tlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:12px;margin-bottom:22px}
.tcard{display:flex;flex-direction:column;gap:4px;background:var(--panel);border:1px solid var(--line2);border-radius:12px;padding:16px;text-decoration:none;color:var(--ink)}
.tcard:hover{border-color:var(--gold)}
.tcard .em{font-size:26px}
.tcard b{font-family:var(--display);font-size:18px}
.tcard .small{font-size:13px;color:var(--muted)}
.tpl-row{display:flex;flex-wrap:wrap;gap:8px}
.type-form .emo{max-width:90px}
.frows{display:flex;flex-direction:column;gap:8px}
.frow{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;background:var(--panel2);border:1px solid var(--line2);border-radius:10px;padding:10px 12px}
.frow .f{margin:0;flex:1 1 150px}
.frow .check{margin:0 0 8px}
.frow .mv{align-self:center;background:none;border:1px solid var(--line2);border-radius:6px;color:var(--muted);cursor:pointer;padding:2px 7px}
.frow .fopt,.frow .funit{display:none}
.frow[data-kind="select"] .fopt,.frow[data-kind="multi"] .fopt{display:block;flex-basis:240px}
.frow[data-kind="number"] .funit{display:block;max-width:150px}
.frow .del span{color:var(--err)}
/* details on posts and in the editor */
.type-box{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:0 0 14px}
.type-box legend{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--honey);padding:0 6px}
.type-box .chips{display:flex;flex-wrap:wrap;gap:6px 12px}
.type-details{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin:0 0 24px}
.type-details dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px 18px;margin:8px 0 0}
.type-details dl > div.wide{grid-column:1/-1}
.type-details dt{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--muted)}
.type-details dd{margin:2px 0 0;font-weight:600}
.type-bits{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12.5px;color:var(--muted)}
.type-bits span + span::before{content:"·";margin-right:10px;color:var(--faint)}
.row .f.wide{grid-column:1/-1}
.hero-emblem{display:block;margin-bottom:14px}
.hero-emblem img{height:clamp(96px,14vw,150px);width:auto;display:inline-block}
.look-form .colorf{display:flex;align-items:center;gap:12px;margin:0}
.look-form .colorf input[type=color]{width:46px;min-width:46px;height:34px;padding:2px;flex:0 0 46px;border-radius:8px}
.look-form .colorf span{flex:1;min-width:0}
body.admin .pattern-strip{display:none!important}
.pattern-strip{height:110px}
.hero{background:radial-gradient(ellipse at 20% 0%,color-mix(in srgb,var(--honey) 12%,transparent),transparent 60%),var(--bg)}
.m-img{height:210px;aspect-ratio:auto;overflow:hidden;background:#8d8d8d repeating-conic-gradient(#7f7f7f 0 25%,#9b9b9b 0 50%) 0 0/18px 18px}
.m-img img{width:100%;height:100%;object-fit:contain}
/* ---------- layout options ---------- */
/* stacked header: brand row, then the menu */
.hd-stacked .head-in{padding-block:16px 0;gap:10px 18px}
.lockup.stacked{gap:16px}
.lockup.stacked .logo{width:64px;height:64px}
.wordmark{display:flex;flex-direction:column;line-height:1}
.wm-name{font-family:var(--display);font-weight:700;font-size:clamp(24px,3.2vw,38px);text-transform:uppercase;letter-spacing:.02em;line-height:1}
.wm-sub{font-size:12px;letter-spacing:.42em;text-transform:uppercase;color:var(--muted);margin-top:6px;padding-left:.2em}
.wordmark.wm-sm .wm-name{font-size:22px}
.wordmark.wm-sm .wm-sub{font-size:10px;letter-spacing:.36em;margin-top:4px}
.wordmark.wm-big{align-items:center;text-align:center}
.wordmark.wm-big .wm-name{font-size:clamp(30px,4vw,44px)}
.head-note{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink);margin-left:auto}
.head-note::before,.head-note::after{content:"";width:28px;height:1px;background:var(--honey)}
.hd-stacked .lockup{margin-right:0}
.hd-stacked .mode-toggle{order:2}
.hd-stacked .nav{flex-basis:100%;order:5;justify-content:space-between;border-top:1px solid var(--line2);padding-block:10px;margin-top:4px}
@media (min-width:881px){.hd-stacked .mode-toggle{margin-left:12px}.hd-stacked .head-note + .mode-toggle{margin-left:12px}.hd-stacked .lockup + .mode-toggle{margin-left:auto}}
@media (max-width:880px){.hd-stacked .head-note{display:none}.hd-stacked .mode-toggle{margin-left:auto}.hd-stacked .nav{justify-content:flex-start;border-top:0}}
/* menu styles */
.nav-spaced .nav a{font-family:var(--display);font-weight:400;letter-spacing:.08em;font-size:14.5px;background:none;box-shadow:none;border-radius:0;padding:8px 10px}
.nav-spaced .nav a.here{color:var(--gold);background:none;box-shadow:inset 0 -2px 0 var(--gold)}
.nav-caps .nav a{text-transform:uppercase;letter-spacing:.16em;font-size:12px}
.nav a.navbtn{background:var(--gold);color:var(--onaccent);border-radius:6px;box-shadow:none;padding-inline:18px}
.nav a.navbtn:hover{color:var(--onaccent);filter:brightness(1.08)}
.nav a.navbtn.here{box-shadow:inset 0 -2px 0 var(--onaccent);color:var(--onaccent);background:var(--gold)}
/* rule lines beside small headings */
.lines .eyebrow{display:flex;align-items:center;gap:12px}
.lines .eyebrow::after{content:"";width:44px;height:1px;background:var(--honey);flex:none}
.lines .block-head{justify-content:flex-start;align-items:center;border-bottom:0;gap:18px}
.lines .block-head::before{content:"";width:40px;height:1px;background:var(--honey);flex:none}
.lines .block-head h2{padding-right:20px;border-right:1px solid var(--line)}
.lines .rcard-body .eyebrow::after,.lines .latest .eyebrow::after,.lines .dstat .lbl::after{display:none}
/* hero: the latest pour as a big photo */
.hero-photo .hero-in{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding-block:0;align-items:stretch;gap:20px}
.hero-photo .hero-txt{padding-block:64px 56px;align-self:center}
.hero-photo .lede{font-family:var(--display);font-size:clamp(17px,1.6vw,20px);color:var(--ink)}
.latest-photo{position:relative;display:block;min-height:380px;margin-block:14px;border-radius:6px;overflow:hidden;text-decoration:none;color:#F3EEE4;background:#111}
.latest-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.latest-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25) 0,transparent 30%,transparent 55%,rgba(0,0,0,.75))}
.lp-label{position:absolute;top:22px;right:24px;z-index:1;display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:600}
.lp-label::after{content:"";width:30px;height:1px;background:currentColor}
.lp-bar{position:absolute;left:14px;right:14px;bottom:14px;z-index:1;display:flex;justify-content:space-between;align-items:flex-end;gap:14px;background:rgba(20,20,20,.72);backdrop-filter:blur(4px);border-radius:4px;padding:12px 16px}
.lp-bar b{display:block;font-family:var(--display);font-size:clamp(19px,2vw,26px);line-height:1.15}
.lp-bits{display:flex;gap:10px;font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;margin-top:6px}
.lp-bits i{font-style:normal;opacity:.6}
.lp-go{white-space:nowrap;font-size:13.5px;border-bottom:1px solid currentColor;padding-bottom:1px}
@media (max-width:820px){.hero-photo .hero-in{grid-template-columns:minmax(0,1fr)}.hero-photo .hero-txt{padding-block:36px 6px}.latest-photo{min-height:300px;margin-block:0 22px}}
.hero-none .hero-in{grid-template-columns:minmax(0,1fr)}
/* side-by-side review cards */
.rgrid.wide{grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr))}
.rcard-wide{flex-direction:row;padding:12px;gap:4px;border-radius:6px}
.rcard-wide .rcard-img{flex:0 0 48%;aspect-ratio:auto;min-height:220px;border-radius:3px;overflow:hidden}
.rcard-wide .rcard-body{flex:1;padding:14px 8px 4px 18px;gap:8px}
.rcard-wide .rcard-title{font-size:clamp(20px,2vw,25px);line-height:1.15}
.rcard-wide .rule{width:30px;height:1px;background:var(--honey);margin:4px 0}
.rcard-wide .rcard-meta{font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.wscore{margin-top:auto;align-self:flex-end;font-family:var(--display);padding-bottom:8px;border-bottom:1px solid var(--honey)}
.wscore b{font-size:30px}
.wscore small{font-size:17px;color:var(--ink)}
@media (max-width:520px){.rcard-wide{flex-direction:column}.rcard-wide .rcard-img{min-height:200px}.rcard-wide .rcard-body{padding:12px 4px 4px}}
/* gallery feature */
.feature-band{border-block:1px solid var(--line2);background:var(--panel2);margin-block:28px 0}
.feature{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:30px;align-items:center;padding-block:18px}
.feature.no-img{grid-template-columns:minmax(0,1fr)}
.feature-txt{padding-block:24px}
.feature-txt h2{font-size:clamp(28px,3.6vw,44px);line-height:1.05;margin:6px 0 10px}
.feature-txt h2 a{color:var(--ink);text-decoration:none}
.feature-sub{display:block;font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.feature-txt p{color:var(--ink);max-width:52ch}
.feature-links{display:flex;flex-wrap:wrap;gap:8px 22px}
.feature-links a{font-family:var(--display);font-size:17px;text-underline-offset:4px}
.feature-img{display:block;border-radius:4px;overflow:hidden;min-height:280px}
.feature-img img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:16/8}
@media (max-width:820px){.feature{grid-template-columns:minmax(0,1fr)}.feature-img{order:-1;min-height:0}}
.about-teaser.solo{grid-template-columns:minmax(0,1fr)}
/* try-it band */
.cta-band{background:var(--bg);color:var(--ink);border-top:1px solid var(--line);margin-top:30px}
.cta-band-in{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr);gap:30px;align-items:center;padding-block:40px}
.cta-txt h2{font-size:clamp(30px,4.4vw,52px);line-height:1.05;margin:6px 0 12px}
.cta-txt p{max-width:60ch}
.cta-lockup{display:flex;flex-direction:column;align-items:center;gap:10px;border-left:1px solid var(--line);padding-left:30px}
.cta-lockup .hero-emblem{margin:0}
.cta-note{display:flex;align-items:center;gap:10px;font-size:10.5px;letter-spacing:.3em;text-transform:uppercase}
.cta-note::before,.cta-note::after{content:"";width:22px;height:1px;background:var(--honey)}
@media (max-width:820px){.cta-band-in{grid-template-columns:minmax(0,1fr)}.cta-lockup{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:24px}}
/* footer in one row */
.foot-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 30px;padding-block:22px}
.foot-row .foot-brand{text-decoration:none;color:var(--ink)}
.foot-row .foot-links{gap:6px 22px}
.foot-row .foot-links a{font-family:var(--display);font-size:13.5px}
.foot-row .made{flex-basis:auto;display:flex;align-items:center;gap:12px;font-size:10px}
.foot-row .made::before{content:"";width:30px;height:1px;background:var(--honey)}
/* Layout tab */
.choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:10px;margin:6px 0 14px}
.choice{position:relative;display:flex;flex-direction:column;gap:3px;border:1px solid var(--line2);border-radius:12px;padding:12px;cursor:pointer;background:var(--panel2)}
.choice input{position:absolute;opacity:0}
.choice .pic{display:block;background:var(--field);border-radius:8px;padding:8px;margin-bottom:6px}
.choice svg{display:block;width:100%;height:auto;fill:var(--ink);opacity:.8}
.choice b{font-size:14.5px}
.choice em{font-style:normal;font-size:12.5px;color:var(--muted)}
.choice:has(input:checked){border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset}
.choice:has(input:checked) svg{fill:var(--gold);opacity:1}
.choice:has(input:focus-visible){outline:2px solid var(--honey)}
.layout-form .sec{grid-template-columns:minmax(0,1fr) auto}
.narrow-f{max-width:200px}
/* ---------- feature review page ---------- */
.rv-hero{position:relative;background:var(--bg);color:var(--ink);border-bottom:1px solid var(--line);overflow:hidden}
.rv-img{position:absolute;top:0;right:0;bottom:0;width:56%}
.rv-img img{width:100%;height:100%;object-fit:cover;display:block}
.rv-img::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 0,color-mix(in srgb,var(--bg) 70%,transparent) 22%,transparent 55%);z-index:1}
.rv-hero-in{position:relative;z-index:2;padding-block:28px 40px}
.rv-hero.has-img .rv-hero-in > *{max-width:min(560px,52%)}
.rv-hero .crumbs{font-family:var(--display);font-size:13px;color:var(--muted);margin-bottom:18px;display:flex;gap:8px}
.rv-hero .crumbs a{color:var(--muted)}
.rv-hero h1{font-size:clamp(36px,5.4vw,66px);line-height:1;margin:8px 0 12px}
.rv-sub{font-family:var(--display);font-size:clamp(18px,1.9vw,24px);margin:0 0 10px}
.rv-by{font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin:0 0 18px}
.rv-by a{color:var(--muted)}
.rv-stats{display:flex;flex-wrap:wrap;gap:12px 0;margin:0 0 18px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.rv-stats div{padding:0 22px;border-left:1px solid var(--line)}
.rv-stats div:first-child{padding-left:0;border-left:0}
.rv-stats dt,.lbl-sm{display:block;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}
.rv-stats dd{margin:4px 0 0;font-family:var(--display);font-size:clamp(17px,1.7vw,21px);font-weight:700}
.rv-score{display:flex;align-items:center;gap:26px}
.rv-score > div{padding-right:26px;border-right:1px solid var(--line)}
.big{display:block;font-family:var(--display);line-height:1}
.big b{font-size:clamp(46px,6vw,72px)}
.big small{font-size:clamp(22px,2.4vw,30px)}
.value-pill{display:inline-block;background:var(--gold);color:var(--onaccent);border-radius:999px;padding:9px 24px;font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:700}
@media (max-width:820px){.rv-img{position:relative;width:100%;height:300px}.rv-img::before{background:linear-gradient(0deg,var(--bg) 0,transparent 40%)}.rv-hero.has-img .rv-hero-in > *{max-width:none}.rv-hero-in{padding-top:18px}}
.rv-body{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:40px;padding-block:36px 20px}
.rv-main{min-width:0}
.rv-intro{font-family:var(--display);font-size:clamp(17px,1.5vw,19.5px);line-height:1.55;padding-bottom:14px;border-bottom:1px solid var(--line)}
.rv-steps{counter-reset:step}
.rv-steps h2,.rv-steps h3{counter-increment:step;display:flex;align-items:baseline;gap:14px;font-size:clamp(24px,2.6vw,32px);padding-top:18px;margin-top:22px;border-top:1px solid var(--line2)}
.rv-steps h2::before,.rv-steps h3::before{content:counter(step,decimal-leading-zero) " /";color:var(--honey);font-size:.72em;font-weight:700;flex:none}
.rv-steps h2:first-child,.rv-steps h3:first-child{border-top:0;margin-top:6px}
.rv-verdict{display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--panel);border:1px solid var(--line2);color:var(--ink);border-radius:4px;padding:26px 28px;margin:30px 0 20px}
.rv-verdict .v-line{font-family:var(--display);font-weight:700;font-size:clamp(22px,2.6vw,32px);line-height:1.15;margin:8px 0 10px}
.rv-verdict .hero-emblem{margin:0;flex:none;padding-left:24px;border-left:1px solid var(--line)}
.rv-verdict .hero-emblem img{height:110px}
.rv-side{display:flex;flex-direction:column;gap:18px;border-left:1px solid var(--line2);padding-left:30px}
.glance{background:var(--panel);border:1px solid var(--line2);color:var(--ink);border-radius:4px;padding:22px 24px}
.glance .block-head{margin-bottom:12px}
.glance .lbl-sm{margin:10px 0 14px}
.glance dl{margin:0}
.glance dl div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-top:1px solid var(--line);padding:10px 0}
.glance dd{margin:0;font-family:var(--display);font-size:18px;font-weight:700}
.glance dt{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);text-align:right}
.note-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.note-chips span{font-family:var(--display);font-size:14px;border:1px solid var(--ink);border-radius:8px;padding:6px 14px}
.rv-acts{display:flex;flex-direction:column;gap:10px}
.rv-acts .btn{justify-content:center;padding-block:13px;border-radius:4px}
.rv-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;border-top:1px solid var(--line);padding-block:18px 26px;font-family:var(--display)}
.rv-foot a,.rv-foot .linkbtn{text-decoration:none;color:var(--gold);font-family:var(--display);font-size:15px}
.rv-foot-r{display:flex;flex-wrap:wrap;gap:10px 24px}
@media (max-width:900px){.rv-body{grid-template-columns:minmax(0,1fr)}.rv-side{border-left:0;padding-left:0}}
@media (max-width:560px){.rv-verdict{flex-direction:column;align-items:flex-start}.rv-verdict .hero-emblem{border-left:0;padding-left:0}.rv-stats div{padding:0 14px}.rv-score{gap:16px}.rv-score > div{padding-right:16px}}
.ctrows{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}
.ctrow{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 14px;background:var(--panel2);border:1px solid var(--line2);border-radius:10px;padding:10px 12px}
.ctrow .f{margin:0;flex:1 1 140px}
.ctrow .check{margin:0 0 8px}
.ct-sw{display:grid;place-items:center;width:46px;height:46px;border-radius:8px;font-family:var(--display);font-weight:700;border:1px solid var(--line2);flex:none}
.look-form .colorf.mini{flex-direction:column;align-items:flex-start;gap:4px;border:0;padding:0}
.look-form .colorf.mini span{font-size:11px;letter-spacing:.12em;text-transform:uppercase}

.rv-steps h4{font-size:18px}
.rv-steps hr{display:none}
.rv-verdict .v-sub{margin:0 0 12px;max-width:60ch}
/* ---------- one heading style for every inner page ---------- */
.page-band{border-bottom:1px solid var(--line2)}
.page-band-in{padding-block:38px 30px}
.page-band h1{font-size:clamp(32px,4.6vw,54px);line-height:1.05;margin:6px 0 10px}
.page-band .lede{max-width:64ch;margin:0}
.page-band .crumbs{margin-bottom:12px}
.page-band .toc,.page-band .actions,.page-band .type-pills{margin:18px 0 0}
.page-band.is-band{background:var(--bg);color:var(--ink);border-bottom-color:var(--line)}
.page-band .toc a{color:var(--ink)}
.type-pills{display:flex;flex-wrap:wrap;gap:6px}
.band-stats{margin:20px 0 0;padding:0;border:0}
.page-narrow{max-width:1240px}
.page-narrow > *{max-width:820px}
.page-narrow > .rgrid,.page-narrow > .people{max-width:none}
.cover img{max-height:min(560px,70vh)}
.app-page #app{padding-top:22px}
.app-page .page-band-in{padding-block:30px 24px}
.rv-body.one{grid-template-columns:minmax(0,1fr)}
.rv-body.one .rv-main{max-width:820px}
.rv-intro-post{font-size:17px}
.long-detail{margin:0;color:var(--ink)}
.rv-post .rv-hero h1{font-size:clamp(32px,4.6vw,56px)}

/* the header always stays at the top; a stacked header tucks in once you scroll */
.site-head{position:sticky;top:0;z-index:20}
.hd-stacked .lockup.stacked .logo,.hd-stacked .wm-name,.hd-stacked .wm-sub,.hd-stacked .head-in{transition:all .2s ease}
.hd-stacked.scrolled .head-in{padding-top:8px;row-gap:4px}
.hd-stacked.scrolled .lockup.stacked .logo{width:40px;height:40px}
.hd-stacked.scrolled .lockup.stacked .wm-name{font-size:22px}
.hd-stacked.scrolled .lockup.stacked .wm-sub{font-size:0;margin:0;letter-spacing:0;opacity:0}
.hd-stacked.scrolled .nav{padding-block:6px;margin-top:0}
:target,h2[id],h3[id]{scroll-margin-top:calc(var(--head-h,70px) + 16px)}
/* boxed: the page sits in a column over a backdrop */
body.boxed{background:var(--backdrop,color-mix(in srgb,var(--bg) 72%,#000))}
[data-mode="light"] body.boxed{background-color:var(--backdrop,var(--bg))}
[data-mode="light"] body.boxed main#main{box-shadow:0 0 40px rgba(34,34,34,.10)}
body.boxed main#main{max-width:var(--box-w,1320px);margin:0 auto;background:var(--bg);border-inline:1px solid var(--line2);box-shadow:0 0 60px rgba(0,0,0,.28);min-height:60vh}
body.boxed .pattern-strip{max-width:var(--box-w,1320px);margin-inline:auto;margin-top:0;border-inline:1px solid var(--line2)}
body.boxed .site-foot{margin-top:0}
@media (max-width:1360px){body.boxed main#main{border-inline:0;box-shadow:none}}
/* the footer sits at the bottom of the window on short pages, and after the content on long ones */
body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
body > main#main{flex:1 0 auto;width:100%}
body.boxed > main#main{width:auto;align-self:stretch;margin-inline:auto;max-width:var(--box-w,1320px);width:100%}
.site-head,.pattern-strip,.site-foot{flex-shrink:0}
body.boxed .pattern-strip{width:100%;align-self:center}
body.backdrop-pattern .pattern-strip{display:none!important}
/* level names and the rating scale box */
.rcard-level{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gold)}
.wscore em{display:block;font-style:normal;font-family:var(--sans);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--label,var(--honey));text-align:right;margin-top:2px}
.rv-score .level,.glance .level{display:block;font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:700;color:var(--label,var(--honey));margin-top:6px}
.scale-box{border:1px solid var(--line);border-radius:6px;background:var(--panel);margin:0 0 20px}
.scale-box summary{display:flex;justify-content:space-between;align-items:baseline;gap:10px;cursor:pointer;padding:12px 16px;font-family:var(--display);font-weight:700;list-style:none}
.scale-box summary::-webkit-details-marker{display:none}
.scale-box summary::after{content:"+";font-family:var(--sans);color:var(--gold);font-weight:700}
.scale-box[open] summary::after{content:"–"}
.scale-box summary em{font-style:normal;font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-left:auto;margin-right:10px}
.scale-box ol{list-style:none;margin:0;padding:0 16px 12px}
.scale-box li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;padding:7px 0;border-top:1px solid var(--line2);font-size:14px}
.scale-box li b{font-family:var(--display);color:var(--gold);text-align:center}
.scale-box li span{color:var(--muted)}
.scale-box li strong{color:var(--ink)}
.scale-box li.on{background:color-mix(in srgb,var(--gold) 12%,transparent);border-radius:6px}
/* age check */
.age-gate{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:color-mix(in srgb,var(--bg) 82%,#000 18%);backdrop-filter:blur(6px)}
.age-card{max-width:440px;text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:34px 28px;box-shadow:var(--shadow)}
.age-card .hero-emblem,.age-card .glassmark,.age-card .logo{margin:0 auto 14px}
.age-card .hero-emblem img{height:110px}
.age-card .eyebrow{justify-content:center}
.age-card h2{font-size:30px;margin:6px 0 10px}
.age-card p{color:var(--muted)}
.age-card .actions{justify-content:center;margin:20px 0 10px}
.age-card .small{font-size:12px;color:var(--faint);margin:0}
body:has(.age-gate){overflow:hidden}
/* invite links */
.invites{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.invites li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto auto;gap:10px;align-items:center;background:var(--panel2);border:1px solid var(--line2);border-radius:8px;padding:10px 12px}
.invites li > span{display:flex;flex-direction:column}
.invites .small{font-size:12px;color:var(--muted)}
.invites input{font-size:12px;padding:7px 8px}
@media (max-width:760px){.invites li{grid-template-columns:minmax(0,1fr) auto auto}.invites input{grid-column:1/-1;order:5}}

/* the owner can turn off the frozen header */
body.no-stick .site-head{position:relative}

/* header images: one height for every page, so they all match */
body{--pb-h:clamp(220px,24vw,300px)}
body.pbh-short{--pb-h:clamp(170px,18vw,220px)}
body.pbh-tall{--pb-h:clamp(280px,30vw,380px)}
.page-band.has-img{position:relative;overflow:hidden;min-height:var(--pb-h);display:flex;align-items:flex-end;background:#15130f;color:#fff;border-bottom:0}
.page-band.has-img .pb-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.page-band.has-img::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(12,10,8,.82) 0%,rgba(12,10,8,.55) 45%,rgba(12,10,8,.08) 85%),linear-gradient(0deg,rgba(12,10,8,.55),rgba(12,10,8,0) 55%)}
.page-band.has-img .page-band-in{position:relative;z-index:2;width:100%}
.page-band.has-img h1,.page-band.has-img .lede,.page-band.has-img .eyebrow,.page-band.has-img .crumbs a,.page-band.has-img .toc a{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.55)}
.page-band.has-img .lede{color:rgba(255,255,255,.88)}
.learn-hero.has-banner{min-height:var(--pb-h);display:flex;align-items:flex-end}
.learn-hero.has-banner>.inner{width:100%}
@media (max-width:700px){.page-band.has-img::before{background:linear-gradient(0deg,rgba(12,10,8,.85),rgba(12,10,8,.35))}}
.heads-list{display:grid;gap:12px}
.head-slot{display:grid;grid-template-columns:200px 1fr;gap:14px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:10px}
.hs-prev{aspect-ratio:4/1;border-radius:6px;overflow:hidden;background:var(--panel);display:grid;place-items:center;font-size:12px;color:var(--muted,inherit)}
.hs-prev img{width:100%;height:100%;object-fit:cover}
.hs-ctl{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;min-width:0}
.hs-ctl b{flex-basis:100%}
.hs-ctl select{max-width:100%}
@media (max-width:600px){.head-slot{grid-template-columns:1fr}}
.hs-prev span{opacity:.7}.hs-ctl select{width:auto;flex:1 1 220px}

/* The Shelf */
.shelf-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:22px;border:1px solid var(--line2);border-radius:12px;overflow:hidden;background:var(--panel)}
.shelf-stats .ss{display:flex;flex-direction:column;gap:2px;padding:14px 18px;border-left:1px solid var(--line2)}
.shelf-stats .ss:first-child{border-left:0}
.shelf-stats b{font:700 clamp(26px,3vw,34px)/1 var(--display);color:var(--ink)}
.shelf-stats span{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.shelf-stats small{font-size:12px;color:var(--faint,var(--muted))}
.shelf-stats .ss-open b{color:#5FB37E}.shelf-stats .ss-sealed b{color:var(--gold)}.shelf-stats .ss-finished b{color:var(--muted)}
.page-band.has-img .shelf-stats{background:rgba(12,10,8,.55);border-color:rgba(255,255,255,.18)}
.page-band.has-img .shelf-stats .ss{border-color:rgba(255,255,255,.18)}
.page-band.has-img .shelf-stats span,.page-band.has-img .shelf-stats small{color:rgba(255,255,255,.75)}
.page-band.has-img .shelf-stats b{color:#fff}
.shelf-state{position:absolute;left:10px;top:10px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:rgba(0,0,0,.62);color:#fff}
.st-open .shelf-state{background:#2F7350}.st-sealed .shelf-state{background:#8A6A1E}.st-finished .shelf-state{background:rgba(60,60,60,.85)}
.st-finished .rcard-img img{filter:grayscale(.5) brightness(.85)}
div.shelf-card:hover{transform:none;border-color:var(--line2)}
@media (max-width:640px){.shelf-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.shelf-stats .ss:nth-child(3){border-left:0}.shelf-stats .ss:nth-child(n+3){border-top:1px solid var(--line2)}}
/* the shelf in Your Desk */
.shelf-edit{display:flex;flex-direction:column;gap:10px}
.se-row{display:grid;grid-template-columns:72px 1fr;gap:14px;padding:12px;border:1px solid var(--line);border-radius:10px}
.se-img{width:72px;height:90px;border-radius:6px;overflow:hidden;background:var(--panel2);display:grid;place-items:center}
.se-img img{width:100%;height:100%;object-fit:cover}
.se-fields{display:flex;flex-direction:column;gap:8px;min-width:0}
@media (max-width:600px){.se-row{grid-template-columns:1fr}.se-img{width:56px;height:70px}}
/* re-ratings */
.rerate{margin:10px 0 0;font-size:13.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline}
.rr-tag{font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--onaccent);background:var(--gold);border-radius:4px;padding:2px 7px}
.rr-note{flex-basis:100%;font-style:italic}
.rr-mini{font-style:normal;font-size:9.5px;letter-spacing:.12em;opacity:.75;margin-left:4px}
.rv-hero .rerate,.rv-hero .rr-note{color:inherit;opacity:.9}
/* The Hunt */
.hunt-stats .ss-found b{color:#5FB37E}.hunt-stats .ss-hunting b{color:var(--gold)}.hunt-stats .ss-missed b{color:#C9645A}
.hunt-result{position:absolute;left:10px;top:10px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:#8A6A1E}
.hr-found .hunt-result{background:#2F7350}.hr-missed .hunt-result{background:#8E3B33}
.hr-missed .rcard-img img{filter:grayscale(.6) brightness(.85)}
.hunt-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin:0 0 26px}
.hb-box{background:var(--panel);border:1px solid var(--line2);border-radius:12px;padding:18px 20px}
.hb-big{margin:4px 0 6px;font:700 clamp(28px,3vw,38px)/1 var(--display);color:var(--ink)}
.hb-big small{font:600 14px var(--sans);color:var(--muted);letter-spacing:.06em}
.hb-sub{margin:0;font-size:13.5px;color:var(--muted)}
.hb-stores{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.hb-stores li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid var(--line2);font-size:14.5px}
.hb-stores li:last-child{border-bottom:0}
.hb-stores b{font-family:var(--display);color:var(--gold)}
.make-card{display:block;width:100%;max-width:360px;border-radius:10px;border:1px solid var(--line2);margin:6px 0 14px;box-shadow:0 12px 30px rgba(0,0,0,.25)}
/* Instagram feed */
.ig-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr));gap:10px}
.ig-grid a{display:block;aspect-ratio:1;overflow:hidden;border-radius:8px;border:1px solid var(--line2);background:var(--panel2)}
.ig-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.ig-grid a:hover img{transform:scale(1.04)}
/* Instagram feed */
.ig-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr));gap:10px}
.ig-grid a{display:block;aspect-ratio:1;overflow:hidden;border-radius:8px;border:1px solid var(--line2);background:var(--panel2)}
.ig-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.ig-grid a:hover img{transform:scale(1.04)}
/* compact review cards */
.rgrid.compact{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px}
.rcard-compact{flex-direction:row;gap:14px;padding:12px;align-items:stretch}
.rcard-compact:hover{transform:none}
.cc-img{flex:0 0 74px;height:96px;border-radius:6px;overflow:hidden;background:var(--panel2);display:grid;place-items:center;color:var(--gold)}
.cc-img img{width:100%;height:100%;object-fit:cover}
.cc-body{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:8px;min-width:0}
.cc-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.cc-name{display:flex;flex-direction:column;gap:3px;min-width:0}
.cc-name b{font-family:var(--display);font-size:16.5px;line-height:1.2}
.cc-name small{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-score{display:flex;flex-direction:column;align-items:flex-end;line-height:1}
.cc-score b{font:700 26px var(--display);color:var(--ink)}
.cc-score small{font-size:11.5px;color:var(--muted);margin-top:3px}
.cc-foot{display:flex;justify-content:space-between;gap:10px;font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.cc-foot span:last-child{font-weight:500;letter-spacing:.04em;text-transform:none}
/* the home photo at full strength */
.hero.has-img.img-full .hero-img{opacity:1}
.hero.has-img.img-full::after{background:linear-gradient(90deg,rgba(12,10,8,.9) 0%,rgba(12,10,8,.72) 38%,rgba(12,10,8,.2) 72%,rgba(12,10,8,.05) 100%)}
.hero.has-img.img-full .hero-txt h1,.hero.has-img.img-full .hero-txt .lede{color:#F6F1E7}
.hero.has-img.img-full .hero-txt .lede{opacity:.9}
@media (max-width:760px){.hero.has-img.img-full::after{background:linear-gradient(0deg,rgba(12,10,8,.92) 20%,rgba(12,10,8,.45))}}
/* backdrop materials */
body.backdrop-pinstripe{background-image:repeating-linear-gradient(90deg,color-mix(in srgb,var(--ink) 7%,transparent) 0 1px,transparent 1px 16px);background-attachment:fixed}
body.backdrop-linen{background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(0,0,0,.08) 0 1px,transparent 1px 3px),linear-gradient(var(--backdrop,#1d1d1d),var(--backdrop,#1d1d1d));background-attachment:fixed}
body.backdrop-paper{background-color:#EDE6D8;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .3 0 0 0 0 .22 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");background-attachment:fixed}
body.backdrop-walnut{background-color:#2A1A10;background-image:repeating-linear-gradient(92deg,rgba(0,0,0,.18) 0 2px,transparent 2px 9px,rgba(255,200,150,.04) 9px 11px,transparent 11px 23px),linear-gradient(180deg,#2E1C12,#21140C);background-attachment:fixed}
/* the age check: a full landing screen on the first visit */
.age-gate{background:color-mix(in srgb,var(--bg) 70%,#000 30%);backdrop-filter:none}
.age-gate.has-photo{background:#0d0b09}
.age-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.age-gate.has-photo::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(12,10,8,.35),rgba(12,10,8,.85))}
.age-gate .age-card{position:relative;z-index:1;max-width:480px;width:100%}
.age-card h2{font-size:clamp(24px,3.4vw,30px)}
.age-form{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:18px}
.age-dob{display:flex;gap:10px;justify-content:center;border:0;margin:0;padding:0}
.age-dob label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.age-dob input{width:68px;text-align:center;font-size:22px;padding:10px 6px;border:1px solid var(--line);border-radius:8px;background:var(--field,var(--bg));color:var(--ink);font-variant-numeric:tabular-nums}
.age-dob .yr input{width:96px}
.age-remember{font-size:13.5px;color:var(--muted)}
.age-form .btn{min-width:180px;justify-content:center}
.age-err{color:var(--err,#C0392B);font-weight:600;font-size:14px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.radio-list{display:flex;flex-direction:column;gap:8px;margin-top:6px}.radio-list em{font-style:normal;color:var(--muted);font-size:13px}.shelf-by{font-size:12px;letter-spacing:.04em}
/* reviewer pages */
.pf-about{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:start}
.pf-side{display:flex;flex-direction:column;gap:14px}
.pf-photo{width:100%;max-width:220px;aspect-ratio:1;object-fit:cover;border-radius:14px;border:1px solid var(--line2);background:var(--panel)}
.pf-initials{display:grid;place-items:center;font-family:var(--serif,Georgia,serif);font-size:64px;color:var(--gold);letter-spacing:.04em}
.pf-facts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:.95rem}
.pf-facts .lbl{display:block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.pf-text{max-width:68ch}
.pf-text .muted{color:var(--muted)}
.person-photo{width:56px;height:56px;border-radius:50%;object-fit:cover;border:1px solid var(--line2);margin-bottom:6px;flex:none}
.person-photo.pf-initials{font-size:20px;background:var(--bg2,rgba(0,0,0,.2))}
.pf-edit-photo{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:10px 0}
.pf-edit-photo .pf-photo{width:96px;max-width:96px}
.pf-edit-photo .pf-initials{font-size:32px}
@media (max-width:720px){.pf-about{grid-template-columns:1fr}.pf-photo{max-width:160px}}
/* events and the members area */
.ev-list{display:flex;flex-direction:column;gap:12px}
.ev-card{display:flex;gap:18px;align-items:center;padding:16px 18px;background:var(--panel);border:1px solid var(--line2);border-radius:12px;text-decoration:none;color:var(--ink);transition:border-color .2s}
.ev-card:hover{border-color:var(--gold)}
.ev-card.past{opacity:.7}
.ev-date{flex:none;width:64px;height:64px;border:1px solid var(--gold);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}
.ev-date b{font-family:var(--serif,Georgia,serif);font-size:28px;color:var(--gold)}
.ev-date span{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;margin-top:4px}
.ev-body{display:flex;flex-direction:column;gap:3px;min-width:0}
.ev-title{font-family:var(--serif,Georgia,serif);font-size:1.25rem}
.ev-meta,.ev-seats{font-size:.9rem;color:var(--muted)}
.ev-mine{font-size:.8rem;font-weight:600;color:var(--gold);letter-spacing:.04em}
.ev-page{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px;align-items:start}
.ev-photo{width:100%;border-radius:12px;margin-bottom:18px;border:1px solid var(--line2)}
.ev-side{display:flex;flex-direction:column;gap:14px;position:sticky;top:110px}
.ev-box{padding:18px;background:var(--panel);border:1px solid var(--line2);border-radius:12px}
.ev-box p{margin:2px 0 12px}
.ev-box h2{margin:0 0 10px;font-size:1.3rem}
.ev-rsvp{border-color:var(--gold)}
.ev-rsvp .f{margin-bottom:10px}
.ev-who{margin:6px 0 0;padding-left:18px}
.ev-cancelled{display:inline-block;padding:6px 12px;border-radius:6px;background:#7a2020;color:#fff;font-weight:600}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.ev-mem-note{margin-top:16px}
.mem-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:start}
.mem-side{display:flex;flex-direction:column;gap:12px}
.news-card{padding:20px 22px;background:var(--panel);border:1px solid var(--line2);border-radius:12px;margin-bottom:14px}
.news-card.pinned{border-color:var(--gold)}
.news-card h3{margin:4px 0 8px;font-size:1.3rem}
.news-admin{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px}
@media (max-width:860px){.ev-page,.mem-grid{grid-template-columns:1fr}.ev-side{position:static}}
/* Your Desk → Modules */
.mod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:12px;margin:8px 0 26px}
.mod-card{display:flex;flex-direction:column;gap:8px;padding:16px 18px;background:var(--panel);border:1px solid var(--line2);border-radius:12px;cursor:pointer;position:relative}
.mod-card.on,.mod-card:has(input:checked){border-color:var(--gold)}
.mod-card:has(input):not(:has(input:checked)){border-color:var(--line2)}
.mod-card.locked{cursor:default}
.mod-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.mod-top b{font-family:var(--display,Georgia,serif);font-size:1.15rem}
.mod-top input{position:absolute;opacity:0;pointer-events:none}
.mod-sw{flex:none;width:44px;height:24px;border-radius:12px;background:color-mix(in srgb,var(--ink) 22%,transparent);position:relative;transition:background .2s}
.mod-sw::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:left .2s}
.mod-top input:checked+.mod-sw{background:var(--gold)}
.mod-top input:checked+.mod-sw::after{left:23px}
.mod-top input:focus-visible+.mod-sw{outline:2px solid var(--gold);outline-offset:2px}
.mod-desc{font-size:.92rem;color:var(--muted)}
.mod-foot{display:flex;justify-content:space-between;gap:10px;font-size:.85rem;margin-top:auto}
.mod-foot em{color:var(--gold)}
.mod-foot a{margin-left:auto}
.mod-grid.soon .mod-card{opacity:.7}
/* sign in / account menu, top right */
.acct-btn{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px 0 6px;border:1px solid color-mix(in srgb,currentColor 35%,transparent);border-radius:20px;color:inherit;text-decoration:none;font-size:.9rem;font-weight:600;letter-spacing:.02em;cursor:pointer;list-style:none;white-space:nowrap;background:transparent}
.acct-btn::-webkit-details-marker{display:none}
.acct-btn:hover,.acct[open] .acct-btn,.acct-btn.here{border-color:var(--gold)}
.acct-in{padding-left:12px}
.acct-in svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}
.acct{position:relative}
.acct-ava{width:28px;height:28px;border-radius:50%;object-fit:cover;flex:none;font-size:12px!important;display:grid;place-items:center;background:var(--gold);color:var(--onaccent,#fff)}
.acct-car{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .2s}
.acct[open] .acct-car{transform:rotate(180deg)}
.acct-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:230px;background:var(--panel);color:var(--ink);border:1px solid var(--line2);border-radius:12px;box-shadow:0 14px 40px rgba(0,0,0,.28);padding:8px;z-index:60;display:flex;flex-direction:column}
.acct-who{display:flex;flex-direction:column;padding:8px 10px 10px;border-bottom:1px solid var(--line2);margin-bottom:6px}
.acct-who span{font-size:.8rem;color:var(--muted)}
.acct-menu a,.acct-out{display:block;padding:9px 10px;border-radius:8px;color:var(--ink);text-decoration:none;font-size:.92rem;text-align:left;background:none;border:0;font:inherit;cursor:pointer;width:100%}
.acct-menu a:hover,.acct-out:hover{background:var(--panel2)}
.acct-menu form{margin:6px 0 0;padding-top:6px;border-top:1px solid var(--line2)}
.acct-out{color:var(--err,#b3261e);font-weight:600}
@media (max-width:720px){.acct-name{display:none}.acct-btn{padding:0 10px 0 5px}.acct-in span{display:none}.acct-in{padding:0 10px}}
/* The Blinds */
.blind-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--muted);font-size:14px}
.blind-serve{padding:12px 16px;border:1px dashed var(--line2);border-radius:10px;background:var(--panel2)}
.blind-serve .eyebrow{display:block;margin-bottom:4px}
.blind-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin:16px 0}
.blind-card{padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.blind-card.reveal{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset}
.blind-card.sealed{border-style:dashed;margin:16px 0}
.blind-card img{width:100%;max-height:320px;object-fit:cover;border-radius:8px;margin:8px 0}
.blind-card h2{margin:6px 0 4px}
.blind-score{font-family:var(--display,serif);font-size:56px;line-height:1;color:var(--gold);margin:8px 0 12px}
.blind-score small{font-size:22px;color:var(--muted)}
.blind-story{font-style:italic;color:var(--muted)}
.blind-vs{width:100%;border-collapse:collapse;margin:8px 0 18px}
.blind-vs th,.blind-vs td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.blind-vs th{color:var(--muted);font-weight:600;font-size:14px}
.blind-list{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-direction:column;gap:6px}
.blind-list li{padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.changelog{margin-top:14px}
.changelog summary{cursor:pointer;color:var(--gold);font-weight:600}
.changelog h3{margin:16px 0 4px;font-size:17px}
.changelog ul{margin:0 0 6px;padding-left:20px;color:var(--muted);font-size:14px}
/* module tiers and packages */
.mod-tier{align-self:flex-start;font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px;border:1px solid var(--line2);color:var(--muted)}
.mod-tier.t-paid,.mod-tier.t-addon{border-color:var(--gold);color:var(--gold)}
.mod-tier.t-forever{border-color:color-mix(in srgb,var(--gold) 55%,transparent);color:var(--gold)}
.lic-box{border:1px solid var(--line2);border-radius:12px;padding:16px 18px;margin:0 0 28px;display:grid;gap:6px}
.lic-box.ok{border-color:color-mix(in srgb,var(--gold) 60%,transparent)}
.lic-box p{margin:0}
.lic-form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-top:8px}
.lic-form .f{flex:1 1 260px;margin:0}
.lic-form input{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:13px}
.err-text{color:var(--err)}
.pkg-list{list-style:none;padding:0;margin:0 0 14px;display:flex;flex-direction:column;gap:6px}
.pkg-list li{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.pkg-list li.bad{border-color:var(--err)}
.pkg-list li form{margin-left:auto}
/* rooms: list and feature layouts */
.room-rows{display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--line)}
.room-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}
.room-row img,.room-row .noimg{width:120px;height:90px;object-fit:cover;border-radius:8px;background:var(--panel2);display:grid;place-items:center}
.room-row b{display:block;font-family:var(--display);font-size:1.3rem;margin:2px 0 4px}
.room-row small{color:var(--muted);font-size:.95rem}
.room-row:hover b{color:var(--gold)}
@media (max-width:560px){.room-row{grid-template-columns:84px minmax(0,1fr);gap:12px}.room-row img,.room-row .noimg{width:84px;height:70px}}
.room-lead{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:28px;align-items:center;margin-bottom:28px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);text-decoration:none}
.room-lead img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.room-lead b{display:block;font-family:var(--display);font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.15;margin:6px 0 10px}
.room-lead small{color:var(--muted);font-size:1rem;line-height:1.55}
@media (max-width:760px){.room-lead{grid-template-columns:minmax(0,1fr)}}
/* Your Desk: rooms */
.room-list{display:flex;flex-direction:column;gap:8px;margin-bottom:22px}
.room-card{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.room-main{flex:1;display:flex;align-items:center;gap:14px;color:var(--ink);text-decoration:none;min-width:0}
.room-main img,.room-noimg{width:120px;height:44px;object-fit:cover;border-radius:6px;background:var(--panel2);flex:none}
.room-main b{display:block}.room-main small{color:var(--muted);font-size:13px}
.room-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:8px;margin-bottom:14px}
.room-opt{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line2);border-radius:10px;background:var(--panel2);cursor:pointer}
.room-opt:has(input:checked){border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset}
.room-opt b{display:block}.room-opt small{color:var(--muted);font-size:13px}
.color-f input[type=color]{width:100%;height:42px;padding:2px;border-radius:8px;border:1px solid var(--line2);background:var(--field)}
.room-types{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-direction:column;gap:6px}
.room-types li{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line2);border-radius:10px}
.room-types li .btn{margin-left:auto}
.room-edit:has(input[name=lookmode][value=site]:checked) .room-cols{display:none}
.room-edit:has(input[name=lookmode][value=accent]:checked) .room-cols[data-for="palette"]{display:none}
/* Career page (package) */
.career-head{margin:.2rem 0 0;font:italic 400 1.15rem var(--display);color:var(--gold)}
.career-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:40px;align-items:start}
.career-side{display:flex;flex-direction:column;gap:14px;position:sticky;top:100px}
.career-box{padding:16px 18px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.career-box.accent{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 10%,var(--panel))}
.career-box p{margin:6px 0 0;overflow-wrap:anywhere}
.career-exp{list-style:none;padding:0;margin:0 0 24px;display:flex;flex-direction:column;gap:22px}
.career-exp li{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px;padding-top:18px;border-top:1px solid var(--line)}
.career-when{font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.career-exp h3{margin:0}.career-org{margin:2px 0 8px;color:var(--gold);font-size:.95rem}
.career-skills{display:flex;flex-wrap:wrap;gap:6px}
@media (max-width:860px){.career-grid{grid-template-columns:minmax(0,1fr)}.career-side{position:static}.career-exp li{grid-template-columns:minmax(0,1fr);gap:4px}}
.coll-tabs{margin-top:14px}

/* Hearth credit links */
.made a,.made-hint a{white-space:nowrap;color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,currentColor 45%,transparent)}
.made a:hover,.made a:focus-visible,.made-hint a:hover,.made-hint a:focus-visible{color:var(--honey);text-decoration-color:currentColor}

/* Learn: the in-depth guides */
.learn .deep-guide{max-width:76ch}
.learn .deep-guide h3{margin:1.4em 0 .4em}
.learn .deep-guide li{margin-bottom:6px}
#scoreTier{margin:6px 0 0}
#scoreTier b{color:var(--honey)}

/* Fox & Barrel review fixes (Nov 2026): phone overflow + link contrast on dark */
.block-head{flex-wrap:wrap}
.block-head a{overflow-wrap:anywhere}
html[data-mode="dark"] .feature-links a,html[data-mode="dark"] .block-head a{color:color-mix(in srgb,var(--gold) 72%,#fff)}
html[data-mode="dark"] .feature-links a:hover,html[data-mode="dark"] .block-head a:hover{color:color-mix(in srgb,var(--gold) 45%,#fff)}
html[data-mode="dark"] .made{color:color-mix(in srgb,var(--faint) 50%,var(--ink))}
.foot-row .made{font-size:11px}

/* ---------- Library theme (damask): forest, espresso, parchment, copper and brass ---------- */
[data-theme="library"]{--bg:#1C130E;--panel:#231711;--panel2:#2D211A;--field:#17100B;--ink:#E7D9C3;--muted:#A69A89;--faint:#928677;--gold:#C36A2D;--honey:#B08D57;--label:#C2A06A;--line:rgba(176,141,87,.30);--line2:rgba(231,217,195,.11);--chip:#372A23;--onaccent:#111111;--ok:#7FB38A;--err:#E9875F;--shadow:0 14px 34px rgba(0,0,0,.32);color-scheme:dark;--display:"Cormorant Garamond",Georgia,serif;--headline:"Cinzel",Georgia,serif;--sans:Montserrat,"Helvetica Neue",Arial,sans-serif;--editorial:"Cormorant Garamond",Georgia,serif;--backdrop:#0E170F}
[data-theme="library"] .site-head,[data-theme="library"] .site-foot,[data-theme="library"] .cta-band{--bg:#0F3D2E;--panel:#1E4838;--panel2:#284F3F;--field:#0C3226;--muted:#B4B8A5;--faint:#A2A793;--line:rgba(176,141,87,.38);background-color:var(--bg);color:var(--ink)}
html[data-theme="library"] body{background-color:#0E170F;background-image:linear-gradient(rgba(10,14,9,.18),rgba(10,14,9,.18)),url("../uploads/damask-tile.webp");background-size:auto,627px;background-repeat:repeat;background-attachment:fixed}
html[data-theme="library"] body .pattern-strip{display:none!important}
[data-theme="library"] body.boxed main#main{border-inline:1px solid rgba(176,141,87,.28);box-shadow:0 0 70px rgba(0,0,0,.55)}
[data-theme="library"] h1,[data-theme="library"] h2,[data-theme="library"] h3,[data-theme="library"] .wm-name,[data-theme="library"] .lockup .name{font-family:var(--headline);font-weight:600;letter-spacing:.01em}
[data-theme="library"] .lg-l{display:none!important}
[data-theme="library"] .hero p,[data-theme="library"] .feature-txt p,[data-theme="library"] blockquote{font-family:var(--editorial);font-size:1.22em;line-height:1.5}
[data-theme="library"] .theme-sw[data-t="library"] i,.theme-sw[data-t="library"] i{background:#0F3D2E;border-color:#B08D57}

/* ---------- Library light themes: parchment (forest bands) and ivory (oxblood bands) ---------- */
[data-theme="library-parchment"]{--bg:#EFE5D3;--panel:#F8F1E4;--panel2:#F4ECDC;--field:#FCF9F4;--ink:#2A1C14;--muted:#695C51;--faint:#72655A;--gold:#8B3E1F;--honey:#0F3D2E;--label:#0F3D2E;--line:rgba(15,61,46,.32);--line2:rgba(42,28,20,.11);--chip:#E3DCCF;--onaccent:#FFFFFF;--ok:#2F7A44;--err:#A6401A;--shadow:0 14px 34px rgba(40,30,15,.14);color-scheme:light;--backdrop:#E6DAC4;--damask:url("../uploads/damask-parchment.webp")}
[data-theme="library-ivory"]{--bg:#F7F2E8;--panel:#FFFCF6;--panel2:#FBF8F0;--field:#FFFEFB;--ink:#1E1A16;--muted:#635F59;--faint:#6E6963;--gold:#9A4F1C;--honey:#5A1E22;--label:#5A1E22;--line:rgba(90,30,34,.30);--line2:rgba(30,26,22,.11);--chip:#E9E5E0;--onaccent:#FFFFFF;--ok:#2F7A44;--err:#A6401A;--shadow:0 14px 34px rgba(40,30,15,.14);color-scheme:light;--backdrop:#EFE8DB;--damask:url("../uploads/damask-ivory.webp")}
[data-theme="library-parchment"] .site-head,[data-theme="library-parchment"] .site-foot,[data-theme="library-parchment"] .cta-band{--bg:#0F3D2E;--panel:#1E4838;--panel2:#284F3F;--field:#0C3226;--ink:#E7D9C3;--muted:#B4B8A5;--faint:#A2A793;--gold:#C36A2D;--honey:#B08D57;--label:#C9A86E;--line:rgba(176,141,87,.38);--line2:rgba(231,217,195,.11);--chip:#325746;--onaccent:#111111;color-scheme:dark;background-color:var(--bg);color:var(--ink)}
[data-theme="library-ivory"] .site-head,[data-theme="library-ivory"] .site-foot,[data-theme="library-ivory"] .cta-band{--bg:#5A1E22;--panel:#652C2F;--panel2:#6C3537;--field:#4A191C;--ink:#F3E8D6;--muted:#D2BBB0;--faint:#C2A79C;--gold:#C36A2D;--honey:#D9B98A;--label:#D9B98A;--line:rgba(217,185,138,.34);--line2:rgba(243,232,214,.11);--chip:#733F40;--onaccent:#111111;color-scheme:dark;background-color:var(--bg);color:var(--ink)}
html[data-theme^="library-"] body{background-color:var(--backdrop);background-image:var(--damask);background-size:627px;background-repeat:repeat;background-attachment:fixed}
html[data-theme^="library-"] body .pattern-strip{display:none!important}
[data-theme^="library-"] body.boxed main#main{border-inline:1px solid var(--line);box-shadow:0 0 50px rgba(60,40,20,.16)}
[data-theme^="library"]{--display:"Cormorant Garamond",Georgia,serif;--headline:"Cinzel",Georgia,serif;--editorial:"Cormorant Garamond",Georgia,serif}
[data-theme^="library-"] h1,[data-theme^="library-"] h2,[data-theme^="library-"] h3,[data-theme^="library-"] .wm-name,[data-theme^="library-"] .lockup .name{font-family:var(--headline);font-weight:600;letter-spacing:.01em}
[data-theme^="library-"] .hero p,[data-theme^="library-"] .feature-txt p,[data-theme^="library-"] blockquote{font-family:var(--editorial);font-size:1.22em;line-height:1.5}
.theme-sw[data-t="library-parchment"] i{background:#EFE5D3;border-color:#0F3D2E}.theme-sw[data-t="library-ivory"] i{background:#F7F2E8;border-color:#5A1E22}
[data-theme^="library-"] .hero.has-img .hero-txt{--label:#D9B98A;--line:rgba(217,185,138,.5)}

/* ---------- Library, light side (the switch): parchment pages, forest bands, light damask ---------- */
[data-theme="library"][data-mode="light"]{--bg:#EFE5D3;--panel:#F8F1E4;--panel2:#F4ECDC;--field:#FCF9F4;--ink:#2A1C14;--muted:#695C51;--faint:#72655A;--gold:#8B3E1F;--honey:#0F3D2E;--label:#0F3D2E;--line:rgba(15,61,46,.32);--line2:rgba(42,28,20,.11);--chip:#E3DCCF;--onaccent:#FFFFFF;--ok:#2F7A44;--err:#A6401A;--shadow:0 14px 34px rgba(40,30,15,.14);color-scheme:light;--backdrop:#E6DAC4}
[data-theme="library"][data-mode="light"] .site-head,[data-theme="library"][data-mode="light"] .site-foot,[data-theme="library"][data-mode="light"] .cta-band{--bg:#0F3D2E;--panel:#1E4838;--panel2:#284F3F;--field:#0C3226;--ink:#E7D9C3;--muted:#B4B8A5;--faint:#A2A793;--gold:#C36A2D;--honey:#B08D57;--label:#C9A86E;--line:rgba(176,141,87,.38);--line2:rgba(231,217,195,.11);--chip:#325746;--onaccent:#111111;color-scheme:dark;background-color:var(--bg);color:var(--ink)}
html[data-theme="library"][data-mode="light"] body{background-color:#E6DAC4;background-image:url("../uploads/damask-parchment.webp");background-size:627px}
[data-theme="library"][data-mode="light"] body.boxed main#main{border-inline:1px solid var(--line);box-shadow:0 0 50px rgba(60,40,20,.16)}
[data-theme="library"][data-mode="light"] .hero.has-img .hero-txt,[data-theme="library"] .hero.has-img .hero-txt{--label:#D9B98A;--line:rgba(217,185,138,.5)}
[data-theme^="library"] .mode-toggle{border-color:rgba(176,141,87,.55);color:#E7D9C3}
[data-theme^="library"] .mode-toggle:hover{border-color:#C36A2D}
[data-theme^="library"] .hero.has-img .hero-txt{--honey:#D9B98A}

/* ---------- Library polish: Review Desk standard (Nov 2026) ---------- */
/* type: Cinzel stays on the wordmark and page titles; every other heading is Cormorant, in title case */
[data-theme^="library"] h2,[data-theme^="library"] h3{font-family:var(--display);font-weight:600;letter-spacing:0}
[data-theme^="library"] h1,[data-theme^="library"] .wm-name,[data-theme^="library"] .lockup .name{font-family:var(--headline)}
/* header: account and light/dark switch sit together on the right, like Review Desk */
@media (min-width:881px){
  [data-theme^="library"] .hd-stacked .head-in > .acct,[data-theme^="library"] .hd-stacked .head-in > .acct-in{order:1;margin-left:auto}
  [data-theme^="library"] .hd-stacked .lockup + .mode-toggle{margin-left:12px}
}
/* nav: spaced serif links with a copper underline on the current page */
[data-theme^="library"] .nav a{font-family:var(--display);font-weight:500;letter-spacing:.06em;font-size:15.5px;background:none;box-shadow:none;border-radius:0;padding:8px 8px;color:var(--muted)}
[data-theme^="library"] .nav a:hover{color:var(--ink)}
[data-theme^="library"] .nav a.here{color:var(--ink);background:none;box-shadow:inset 0 -2px 0 var(--gold)}
[data-theme^="library"] .nav a.navbtn{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.02em;background:var(--gold);color:var(--onaccent);border-radius:6px;padding:8px 16px}
[data-theme^="library"] .nav a.navbtn:hover{color:var(--onaccent)}
/* hero: shorter, with a slimmer Latest pour card */
[data-theme^="library"] .hero-in{grid-template-columns:minmax(0,1.5fr) minmax(0,.75fr);gap:48px;padding-block:44px 40px}
[data-theme^="library"] .hero .latest{padding:16px;gap:8px;border-radius:10px}
[data-theme^="library"] .hero .latest img{aspect-ratio:16/10}
[data-theme^="library"] .hero .latest-row > span:first-child > b{font-size:20px}
@media (max-width:820px){[data-theme^="library"] .hero-in{grid-template-columns:minmax(0,1fr);padding-block:32px}}
/* feature sections: no dark gaps, alternating background and image side, calmer headings */
[data-theme^="library"] .feature-band{margin-block:0;border-block:0;border-top:1px solid var(--line2)}
[data-theme^="library"] .feature-band:nth-of-type(even){background:var(--bg)}
[data-theme^="library"] .feature{gap:48px;padding-block:36px}
[data-theme^="library"] .feature-txt{padding-block:0}
[data-theme^="library"] .feature-txt h2{font-size:clamp(28px,3vw,40px);line-height:1.1;margin:4px 0 10px}
[data-theme^="library"] .feature-img{min-height:0;border-radius:6px}
[data-theme^="library"] .feature-img img{aspect-ratio:16/9}
@media (min-width:821px){
  [data-theme^="library"] .feature-band:nth-of-type(even) .feature:not(.no-img){grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
  [data-theme^="library"] .feature-band:nth-of-type(even) .feature-img{order:-1}
}
[data-theme^="library"] .feature-band + :not(.feature-band){border-top:1px solid var(--line2)}
/* room and page headers over a photo: brass label and readable filter chips in light mode too */
[data-theme^="library"] .page-band.has-img{--label:#D9B98A;--honey:#D9B98A;--line:rgba(217,185,138,.5)}
[data-theme^="library"] .page-band.has-img .toc a:not(.here):not([aria-current]){color:#F3E8D6;border-color:rgba(243,232,214,.45);background:rgba(20,14,10,.35)}
[data-theme^="library"] .page-band.has-img .type-pills .pill:not([aria-current]){color:#F3E8D6;border-color:rgba(243,232,214,.45);background:rgba(20,14,10,.35)}


/* ---------- 1.7.2.0: header and footer width, see-through page, grouped menu, search ---------- */
/* header and footer matched to the page column */
body.boxed.bands-page .site-head,body.boxed.bands-page .site-foot{max-width:var(--box-w,1320px);width:100%;margin-inline:auto;align-self:center;border-inline:1px solid var(--line)}
body.boxed.bands-page .site-head{box-shadow:0 10px 30px rgba(0,0,0,.28)}
[data-mode="light"] body.boxed.bands-page .site-head{box-shadow:0 8px 24px rgba(40,30,15,.14)}
@media (max-width:1360px){body.boxed.bands-page .site-head,body.boxed.bands-page .site-foot{border-inline:0;box-shadow:none}}
/* see-through page: the backdrop shows through the page; reading, forms, tables and tools stay solid; the sticky header stays solid */
body.boxed.see-soft{--see:86%}
body.boxed.see-strong{--see:70%}
body.boxed:is(.see-soft,.see-strong) main#main{background:color-mix(in srgb,var(--bg) var(--see),transparent)}
body.boxed:is(.see-soft,.see-strong) .feature-band{background:color-mix(in srgb,var(--panel2) var(--see),transparent)}
body.boxed:is(.see-soft,.see-strong) .cta-band{background-color:color-mix(in srgb,var(--bg) calc(var(--see) + 6%),transparent)}
body.boxed:is(.see-soft,.see-strong) .site-foot{background-color:color-mix(in srgb,var(--bg) calc(var(--see) + 8%),transparent)}
body.boxed:is(.see-soft,.see-strong) :is(.rv-body,article.post,.prose,table,.card-form){background-color:var(--bg)}
/* grouped menu */
.nav-grouped{align-items:center}
.hd-stacked .nav.nav-grouped{justify-content:flex-start}
.nav .ng{position:relative}
.nav .ng-btn{font:inherit;color:var(--muted);background:none;border:0;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:14px;padding:7px 11px;border-radius:7px}
.nav .ng-btn:hover,.nav .ng.open > .ng-btn{color:var(--ink)}
.nav .ng.here > .ng-btn{color:var(--ink);box-shadow:inset 0 -2px 0 var(--gold)}
.ng-car{width:10px;height:10px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .15s ease}
.ng.open .ng-car{transform:rotate(180deg)}
.nav .ng-menu{display:none;position:absolute;top:calc(100% + 6px);left:0;z-index:40;min-width:240px;flex-direction:column;gap:2px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:6px;box-shadow:var(--shadow)}
.nav .ng.open .ng-menu{display:flex}
.nav .ng-menu a{display:flex;flex-direction:column;gap:2px;padding:9px 12px;border-radius:6px;color:var(--ink);font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;background:none;box-shadow:none;white-space:normal}
.nav .ng-menu a small{font-weight:400;font-size:12.5px;color:var(--muted);line-height:1.35}
.nav .ng-menu a:hover,.nav .ng-menu a:focus-visible{background:var(--panel2);color:var(--ink)}
.nav .ng-menu a.here{background:var(--panel2);box-shadow:inset 2px 0 0 var(--gold)}
.ng-end{margin-left:auto;display:inline-flex;align-items:center;gap:10px}
.nav .nav-search{display:inline-grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid var(--line);border-radius:999px;color:var(--ink);background:none;box-shadow:none}
.nav .nav-search:hover,.nav .nav-search.here{border-color:var(--gold)}
.nav .nav-search svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.nav .nav-search .ns-l{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nav-spaced .nav .ng-btn{font-family:var(--display);font-weight:400;letter-spacing:.08em;font-size:14.5px;padding:8px 10px;border-radius:0}
.nav-caps .nav .ng-btn{text-transform:uppercase;letter-spacing:.16em;font-size:12px}
@media (max-width:880px){
  .nav.nav-grouped{align-items:stretch}
  .nav .ng-btn{width:100%;justify-content:space-between;padding:10px 11px}
  .nav .ng-menu{position:static;min-width:0;box-shadow:none;border:0;background:none;padding:0 0 6px 10px}
  .ng-end{margin-left:0;padding-top:8px;flex-wrap:wrap}
  .nav .nav-search{width:auto;height:auto;padding:8px 14px;border-radius:8px;display:inline-flex;gap:8px;align-items:center}
  .nav .nav-search .ns-l{position:static;width:auto;height:auto;clip:auto;overflow:visible}
}
@media (prefers-reduced-motion:reduce){.ng-car{transition:none}}
/* search page */
.search-form{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;max-width:640px}
.search-form input{flex:1 1 260px;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--field);color:var(--ink);font-size:16px}
.search-count{color:var(--muted);margin:0 0 18px}
.search-h{margin:28px 0 14px}
/* admin: the menu groups table */
.mg-rows{display:flex;flex-direction:column;gap:8px;margin:10px 0 18px}
.mg-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1.6fr);gap:8px 10px;align-items:center}
.mg-row.ml{grid-template-columns:minmax(0,.9fr) minmax(0,1.5fr) minmax(0,.9fr) minmax(0,1.3fr)}
.mg-row > span{font-weight:600}
.mg-row input{width:100%;min-width:0}
.mg-head > span{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
@media (max-width:720px){.mg-row,.mg-row.ml{grid-template-columns:minmax(0,1fr)}.mg-head{display:none}}

/* ---------- Library: brand-sheet palette, with Whiskey Gold #C36A2D and Fox Copper #8B3E1F ---------- */
[data-theme="library"]{--bg:#1F100C;--panel:#2B1913;--panel2:#3E2A1F;--field:#1A0C08;--chip:#4A3226;--line:rgba(176,141,87,.32);--line2:rgba(107,74,46,.55)}
[data-theme="library"][data-mode="light"]{--bg:#E7D9C3;--panel:#F3EBDD;--panel2:#EDE2CF;--chip:#DCCDB4;--muted:#5E5045;--faint:#5E5045;--line:rgba(107,74,46,.35);--line2:rgba(107,74,46,.22);--backdrop:#DCCBB0}
[data-theme="library"] .rcard{border-color:rgba(107,74,46,.8)}
[data-theme="library"][data-mode="light"] .rcard{border-color:rgba(107,74,46,.4)}
[data-theme="library"] .value-pill{background:#8B3E1F;color:#F3E8D6}
[data-theme="library"] .hero .latest{background:#5A1E22;border-color:rgba(176,141,87,.55);--ink:#F3E8D6;--muted:#D9C3B0;--label:#E2C392;color:#F3E8D6}
[data-theme="library"] .hero .latest .score,[data-theme="library"] .hero .latest .score b{color:#F2BE8C}
[data-theme="library"] .feature-band:has(a[href$="/g/hunts"]){background:#5A1E22;--ink:#F3E8D6;--muted:#D9C3B0;--label:#E2C392;--line:rgba(226,195,146,.45)}
[data-theme="library"] .feature-band:has(a[href$="/g/hunts"]) .feature-links a{color:#F2BE8C}
[data-theme="library"] body.boxed:is(.see-soft,.see-strong) .feature-band:has(a[href$="/g/hunts"]){background:color-mix(in srgb,#5A1E22 var(--see),transparent)}
[data-theme="library"][data-mode="light"] .feature-band:nth-of-type(even){background:#E7D9C3}
[data-theme="library"] body.boxed:is(.see-soft,.see-strong) .feature-band:nth-of-type(even){background:transparent}
html[data-theme="library"][data-mode="dark"] .rcard-level{color:color-mix(in srgb,var(--gold) 72%,#fff)}
[data-theme^="library"] .nav .ng-btn{font-family:var(--display);font-weight:500;letter-spacing:.06em;font-size:15.5px;padding:8px 10px;border-radius:0;color:var(--muted)}
[data-theme^="library"] .nav .ng.here > .ng-btn,[data-theme^="library"] .nav .ng.open > .ng-btn{color:var(--ink)}
[data-theme^="library"] .nav .ng-menu{background:var(--panel2)}
[data-theme^="library"] .nav .ng-menu a:hover,[data-theme^="library"] .nav .ng-menu a:focus-visible,[data-theme^="library"] .nav .ng-menu a.here{background:color-mix(in srgb,var(--ink) 8%,var(--panel2))}

/* ---------- 1.7.2.1: the intro (splash) on Library themes: the damask wall behind it, lamp-lit, and no Skip intro (Step inside already enters) ---------- */
[data-theme^="library"] .hsplash-b{background:radial-gradient(ellipse 70% 60% at 50% 45%,rgba(10,8,6,.30),rgba(10,8,6,.86) 100%),var(--hs-photo,none) center/cover no-repeat,url("../uploads/damask-tile.webp") center/627px repeat,#0E170F}
[data-theme^="library"] .hsplash-b .hsplash-skip{display:none}
[data-theme^="library"] .hsplash-card .note{background:rgba(14,10,8,.82);border:1px solid rgba(176,141,87,.35)}


/* ---------- 1.7.3.0: Learn, guided layout ---------- */
.learn.gd{display:grid;grid-template-columns:240px minmax(0,1fr);gap:48px;align-items:start;padding-block:36px 64px}
.gd-side{position:sticky;top:calc(var(--head-h,120px) + 20px);display:flex;flex-direction:column;gap:12px;padding:18px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.gd-side ol,.gd-side ul{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:2px}
.gd-side ol a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;color:var(--ink);text-decoration:none;font-family:var(--display);font-size:18px;font-weight:600}
.gd-side ol a:hover{background:var(--panel2)}
.gd-side ol a span{flex:none;display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid var(--line);font-family:var(--sans);font-size:12px;font-weight:700;color:var(--label)}
.gd-side ol a.on{background:var(--panel2);box-shadow:inset 2px 0 0 var(--gold)}
.gd-side ol a.on span{background:var(--gold);border-color:var(--gold);color:var(--onaccent)}
.gd-files a{display:block;padding:6px 10px;font-size:13.5px;color:var(--muted);text-decoration:none}
.gd-files a:hover{color:var(--ink)}
.gd-cta{text-align:center}
.gd-main{min-width:0;display:flex;flex-direction:column;gap:18px}
.gd-main > p{max-width:68ch;margin:0}
.gd-main > .overview{margin:6px 0 4px}
.gd-part{display:flex;flex-direction:column;gap:18px;padding-top:34px;margin-top:18px;border-top:1px solid var(--line);scroll-margin-top:calc(var(--head-h,120px) + 16px)}
.gd-part-head{display:flex;gap:18px;align-items:flex-start}
.learn .gd-part-head h2{margin:2px 0 6px;padding-top:0;border-top:0;font-size:clamp(26px,3vw,38px)}
.gd-part-head .lede{margin:0;max-width:60ch}
.gd-num{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:1px solid var(--line);font-family:var(--display);font-size:26px;font-weight:600;color:var(--gold);background:var(--panel)}
html[data-mode="dark"] .gd-num{color:color-mix(in srgb,var(--gold) 72%,#fff)}
.gd-sub{margin:10px 0 0}
.gd-deeper{border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden;scroll-margin-top:calc(var(--head-h,120px) + 16px)}
.gd-deeper summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px}
.gd-deeper summary::-webkit-details-marker{display:none}
.gd-deeper summary span{display:flex;flex-direction:column;gap:3px}
.gd-deeper summary b{font-family:var(--display);font-size:20px;font-weight:600}
.gd-deeper summary small{color:var(--muted);font-size:13.5px}
.gd-deeper summary svg{flex:none;width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .15s ease}
.gd-deeper[open] summary svg{transform:rotate(180deg)}
.gd-deeper summary:focus-visible{outline:2px solid var(--honey);outline-offset:-4px}
.gd-deeper-body{padding:4px 22px 22px;border-top:1px solid var(--line2)}
.gd-box{border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:20px 22px}
.gd-box h3{margin:0 0 12px}
.gd-box .actions{margin:14px 0 0}
.gd-example{margin-top:10px}
.gd-example summary{cursor:pointer;font-weight:600;font-size:14px;color:var(--gold)}
html[data-mode="dark"] .gd-example summary{color:color-mix(in srgb,var(--gold) 72%,#fff)}
.gd-example pre{margin-top:10px}
.learn-studio ol{list-style:none;counter-reset:ls;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px 22px}
.learn-studio ol li{counter-increment:ls;position:relative;padding-left:38px;margin:0;line-height:1.5;font-size:15px}
.learn-studio ol li::before{content:counter(ls);position:absolute;left:0;top:0;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--panel2);border:1px solid var(--line);font-size:12px;font-weight:700;color:var(--label)}
@media (max-width:980px){
  .learn.gd{grid-template-columns:minmax(0,1fr);gap:22px}
  .gd-side{position:static}
  .gd-side ol{flex-direction:row;flex-wrap:wrap}
}
@media (max-width:560px){.gd-part-head{gap:12px}.gd-num{width:40px;height:40px;font-size:20px}}
@media (prefers-reduced-motion:reduce){.gd-deeper summary svg{transition:none}}
/* 1.7.3.1: Learn's copper tips, score numbers and value calls read clearly on Library's dark panels */
html[data-theme="library"][data-mode="dark"] .learn :is(.stepcard .tip,.tier .n,.valuecalls dt){color:color-mix(in srgb,var(--gold) 72%,#fff)}
/* inside Learn's panels the words sit on the panel, even with a see-through page */
body.boxed:is(.see-soft,.see-strong) .learn :is(.gd-box,.gd-deeper) .prose,.learn :is(.gd-box,.gd-deeper) .prose{background-color:transparent}

/* 1.7.3.3: a long button label wraps inside its button instead of running out of it */
.gd-side .btn,.actions .btn{white-space:normal;text-align:center;line-height:1.3}

/* 1.7.4.0: the Band page heading shows in every theme; header photo names in Layout */
.page-band.is-band:not(.has-img){background:var(--chip,var(--panel2));border-bottom:1px solid var(--line)}
.hs-ctl{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}
.hs-ctl > b{flex-basis:100%;margin-bottom:-4px}
.hs-name{flex-basis:100%;font-size:12.5px;color:var(--muted);word-break:break-all}
.hs-ctl input[type=file]{flex:1 1 220px;min-width:0}

/* 1.7.5.0: Write a review / Make a card tabs over the writing tools */
.tool-tabs{border-bottom:1px solid var(--line2);background:var(--bg)}
.tool-tabs-in{display:flex;gap:8px;padding-top:14px}
.tool-tabs a{display:flex;flex-direction:column;gap:2px;padding:10px 20px 12px;border:1px solid var(--line2);border-bottom:0;border-radius:10px 10px 0 0;text-decoration:none;color:var(--muted);background:var(--panel);margin-bottom:-1px;min-width:0}
.tool-tabs a b{font-family:var(--display);font-size:19px;font-weight:600;color:var(--ink);line-height:1.2}
.tool-tabs a small{font-size:12.5px;line-height:1.35}
.tool-tabs a:hover b{color:var(--gold)}
.tool-tabs a[aria-current]{background:var(--bg);border-color:var(--line);box-shadow:inset 0 3px 0 var(--gold)}
@media (max-width:600px){.tool-tabs a{flex:1;padding:9px 12px 11px}.tool-tabs a b{font-size:16px}.tool-tabs a small{display:none}}

/* ---------- 1.8.0.0: Your Desk dressed like the rest of the site ---------- */
/* the same page column, brass-lined panels and serif headings as the public pages */
body.admin main#main{padding-bottom:56px}
.desk-wrap{grid-template-columns:250px minmax(0,1fr);gap:40px;padding-top:30px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* the menu: grouped, serif links with a copper mark on the current page, like Learn's side panel */
.desk-nav{position:static;padding:0;gap:0;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
/* the menu stays beside you only when the whole of it fits on screen */
@media (min-width:901px) and (min-height:1060px){.desk-nav{position:sticky;top:calc(var(--head-h,120px) + 20px)}}
.dn-wrap{display:block}
.dn-toggle{display:none}
.dn-body{display:flex;flex-direction:column;gap:14px;padding:16px 14px}
.dn-group{display:flex;flex-direction:column;gap:1px}
.dn-group + .dn-group{padding-top:12px;border-top:1px solid var(--line2)}
.dn-lab,.dn-k{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--label)}
.dn-lab{padding:0 10px 6px}
.desk-nav .dn-group a{font-family:var(--display);font-size:17px;font-weight:600;color:var(--muted);padding:6px 10px;border-radius:6px;line-height:1.25}
.desk-nav .dn-group a:hover{color:var(--ink);background:var(--panel2)}
.desk-nav .dn-group a[aria-current]{color:var(--ink);background:var(--panel2);box-shadow:inset 2px 0 0 var(--gold)}
.dn-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-top:12px;border-top:1px solid var(--line2)}
.desk-nav .dn-foot .dn-site{border:0;padding:6px 4px;font-size:13px}
.dn-out{font:inherit;font-size:13px;font-weight:600;background:none;border:1px solid var(--line);color:var(--muted);border-radius:6px;padding:6px 12px;cursor:pointer}
.dn-out:hover{color:var(--ink);border-color:var(--gold)}
/* Find a setting */
.dn-find{position:relative}
.dn-find input{width:100%;box-sizing:border-box;padding:9px 12px;border:1px solid var(--line);border-radius:6px;background:var(--field);color:var(--ink);font:inherit;font-size:14px}
.dn-find input:focus-visible{outline:2px solid var(--honey);outline-offset:1px}
.dn-res{list-style:none;margin:6px 0 0;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--panel2);display:flex;flex-direction:column;gap:1px;max-height:340px;overflow:auto}
.dn-res a{display:flex;flex-direction:column;gap:1px;padding:7px 9px;border-radius:5px;text-decoration:none;color:var(--ink)}
.dn-res a b{font-weight:600;font-size:14px;line-height:1.3}
.dn-res a small{color:var(--muted);font-size:12px}
.dn-res a:hover,.dn-res a.on{background:color-mix(in srgb,var(--ink) 9%,var(--panel2))}
.dn-res .none{padding:8px 9px;color:var(--muted);font-size:13px}
/* page heading: eyebrow, title and one line on what the page is for */
.desk-main .admin-head{display:block;padding:2px 0 20px;margin-bottom:24px;border-bottom:1px solid var(--line)}
.desk-main .admin-head h1{font-size:clamp(28px,3.2vw,40px);margin:8px 0 0}
.admin-about{margin:8px 0 0;color:var(--muted);max-width:68ch;font-family:var(--editorial,var(--display));font-size:18.5px;line-height:1.45}
/* panels, forms and tables share the public site's shape */
body.admin :is(.card-form,.dcard,.dstat,.type-box,.edit-person){border-radius:10px;border-color:var(--line)}
body.admin .card-form{max-width:none;padding:26px 28px}
body.admin .card-form h2{font-family:var(--display);font-weight:600;font-size:24px;margin:30px 0 14px;padding-top:24px}
body.admin .card-form h2:first-child,body.admin .card-form input[type=hidden] + h2{margin-top:0;padding-top:0}
body.admin .desk-main h2[id]{scroll-margin-top:calc(var(--head-h,120px) + 24px)}
body.admin .desk-main h2.dn-hit{color:var(--gold);transition:color .6s ease}
body.admin .desk-main table{border-color:var(--line);border-radius:10px;overflow:hidden}
body.admin .flash{border-radius:8px}
/* dashboard */
.dquick{align-items:center;gap:10px;margin-bottom:22px}
.dq-more{position:relative}
.dq-more summary{list-style:none;display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.dq-more summary::-webkit-details-marker,.dn-toggle::-webkit-details-marker{display:none}
.dq-more summary svg,.dn-toggle svg{width:10px;height:10px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .15s ease}
.dq-more[open] summary svg,.dn-wrap[open] .dn-toggle svg{transform:rotate(180deg)}
.dq-menu{position:absolute;z-index:30;top:calc(100% + 6px);left:0;min-width:240px;display:flex;flex-direction:column;gap:1px;padding:6px;background:var(--panel2);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}
.dq-menu a{padding:8px 12px;border-radius:5px;color:var(--ink);text-decoration:none;font-size:14px;font-weight:600}
.dq-menu a:hover,.dq-menu a:focus-visible{background:color-mix(in srgb,var(--ink) 9%,var(--panel2))}
.dstats{grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr))}
.dstat:hover{border-color:var(--gold)}
.dcard .dc-head h2{font-family:var(--display);font-weight:600}
/* phones and tablets: the menu folds into one button that says where you are */
@media (max-width:900px){
  .desk-wrap{grid-template-columns:minmax(0,1fr);gap:16px;padding-top:16px}
  .desk-nav{position:static;max-height:none;overflow:visible;flex-direction:column;padding:0}
  .dn-toggle{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;list-style:none}
  .dn-toggle b{font-family:var(--display);font-size:19px;font-weight:600;flex:1}
  .dn-wrap[open] .dn-toggle{border-bottom:1px solid var(--line2)}
  .dn-body{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px 12px}
  .dn-find,.dn-foot{grid-column:1/-1}
  .dn-group + .dn-group{border-top:0;padding-top:0}
  .desk-nav .dn-group a{white-space:normal}
  body.admin .card-form{padding:18px}
  .admin-about{font-size:17px}
}
@media (prefers-reduced-motion:reduce){.dq-more summary svg,.dn-toggle svg,body.admin .desk-main h2.dn-hit{transition:none}}

/* ---------- 1.8.2.0: every page follows the see-through setting ---------- */
/* Your Desk, the Review Desk, Card Studio and the tasting sheet let the backdrop show like every other page;
   the parts you read and work in (menu, forms, panels, tables, the tool panes and the sheet itself) stay solid */
body.boxed:is(.see-soft,.see-strong).admin :is(.desk-nav,.card-form,.dcard,.dstat,.type-box,.edit-person,.gd-box){background-color:var(--panel)}
body.boxed:is(.see-soft,.see-strong).admin :is(.dn-res,.dq-menu){background-color:var(--panel2)}
body.boxed:is(.see-soft,.see-strong).admin .flash{background-color:var(--panel)}

/* 1.8.4.0: one page column and one reading column on every page */
:root{--page-w:1240px;--read-w:820px;--lede-w:64ch}
.inner{max-width:var(--page-w)}
.page-narrow{max-width:var(--page-w)}
.prose,.page-narrow > *,.rv-body.one .rv-main,.learn .deep-guide,.learn > p,.learn > .toc,.learn-lead,.learn p.narrow,.career .prose:not(.small),.setup{max-width:var(--read-w)}
.lede,.page-band .lede,.learn-hero .lede,.gd-part-head .lede,.admin-about,.rv-verdict .v-sub{max-width:var(--lede-w)}
/* footer links editor */
.foot-rows .fl-row{grid-template-columns:minmax(0,1fr) auto}
.foot-rows .fl-row:has(.fl-own){grid-template-columns:auto minmax(0,1fr) auto}
.fl-own{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:8px}
.fl-own input{min-width:0}
.fl-row .check em{font-style:normal;color:var(--muted);font-size:12px;margin-left:6px}
.fl-new{border-style:dashed}
@media (max-width:600px){.fl-own{grid-template-columns:1fr}}

/* 1.8.5.0: light and dark, one click */
.mode-quick{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.mq-now{display:flex;flex-direction:column;gap:2px;min-width:150px}
.mq-now span{color:var(--muted);font-size:13px}
.mq-btns{display:flex;gap:6px;flex-wrap:wrap}
.mq-btns form{margin:0}
.mq-start{display:flex;align-items:center;gap:8px;margin:0;flex-wrap:wrap}
.mq-start label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.mq-start select{width:auto}
.dlist .dl-mode{display:block;padding:10px 0}
.mode-card{margin-bottom:18px}
.mode-card .hint{margin:10px 0 0}
.mode-quick .btn.primary,.mode-quick .btn.primary:hover{background:var(--gold);border-color:var(--gold);color:var(--onaccent)}
.dl-mode .mq-now b{font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--muted)}
.dl-mode .mq-now span{color:var(--ink);font-size:14px}
/* 1.8.6.0: background pattern tiles in Layout & menu */
.pattern-list .pat-prev{aspect-ratio:3/1;background-color:var(--panel2);background-repeat:repeat;background-size:90px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;margin:12px 0}
@media (max-width:760px){.grid3{grid-template-columns:1fr}}

/* 1.8.7.0: Card Studio, download a series as one .zip */
.cs-dl{margin-top:14px;padding-top:12px;border-top:1px solid var(--line2)}
.cs-dl-pick{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.cs-dl-c{border:1px solid var(--line);background:var(--panel2);color:var(--muted);border-radius:999px;padding:5px 11px;font:inherit;font-size:13px;cursor:pointer}
.cs-dl-c b{color:inherit;margin-right:2px}
.cs-dl-c.on{background:var(--gold);border-color:var(--gold);color:var(--onaccent)}
.cs-dl-c:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.cs-dl-opts{display:flex;flex-wrap:wrap;gap:4px 18px;margin-bottom:10px}
.cs-dl-opts .check em{font-style:normal;color:var(--muted);font-size:12px}
.cs-dl-acts{display:flex;flex-wrap:wrap;gap:6px}
