/* Job board pages. Tokens and base components come from cd.css; this adds only what the board needs. */
.mainnav{display:flex;gap:6px;align-items:center}
.mainnav a{font:600 15px var(--text);text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:999px;border:1.5px solid transparent}
.mainnav a[aria-current="page"],.mainnav a:hover{border-color:var(--ink)}
.bhead{padding-block:26px 22px;display:flex;flex-direction:column;gap:12px}
.bhead h1{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:clamp(48px,8vw,104px);line-height:.84}
.bhead h1 em{font-style:normal;color:var(--orange)}
.bhead p{font-size:18px;max-width:60ch}
.filters{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr)) auto;gap:10px;align-items:end;padding:6px 0 22px;border:0;border-radius:0;background:none}
.quick{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:14px}
.quick a{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 16px;font:600 15px var(--text);text-decoration:none;border:1.5px solid var(--ink);border-radius:999px;background:var(--card)}
.quick a b{font-weight:500;color:var(--soft);font-variant-numeric:tabular-nums}
.quick a[aria-current="true"]{background:var(--ink);color:#fff}
.quick a[aria-current="true"] b{color:#fff;opacity:.75}
@media (hover:hover) and (pointer:fine){.quick a:not([aria-current]):hover{background:var(--orange-wash)}}
.filters label{font-size:13px}
.filters .btn{margin:0;height:47px;font-size:20px}
.count{font:600 14px var(--text);color:var(--soft);padding-bottom:12px}
.count b{color:var(--ink)}
a.job{text-decoration:none;color:inherit}
a.job:focus-visible{outline-offset:3px}
.job .go{display:block;font:500 22px var(--text);margin-top:6px;transition:transform 160ms var(--ease-out)}
@media (hover:hover) and (pointer:fine){a.job:hover{background:var(--orange-wash)}a.job:hover .go{transform:translateX(5px)}}
a.job:active{background:var(--orange-wash)}
.empty{background:var(--card);border:1.5px solid var(--ink);border-radius:6px;padding:28px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.empty strong{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:34px;line-height:.95}
.pager{display:flex;justify-content:space-between;gap:12px;padding-block:22px 56px}
.pager a{font:600 15px var(--text);text-decoration:none;border:1.5px solid var(--ink);border-radius:999px;padding:8px 16px;background:var(--card)}
.pager span{flex:1}
.jobpage{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:26px;align-items:start;padding-block:10px 64px}
.jobpage h1{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:clamp(36px,5vw,64px);line-height:.9;text-wrap:balance}
.jmain .jm{display:flex;flex-wrap:wrap;gap:6px}
.jmain{display:flex;flex-direction:column;gap:18px;min-width:0}
.jmain .who{font-size:19px}
.facts2{display:flex;flex-wrap:wrap;margin:0;border:1.5px solid var(--ink);border-radius:6px;background:var(--card);overflow:hidden}
.facts2 div{flex:1 1 150px;padding:14px 16px;box-shadow:1px 0 0 var(--rule),0 1px 0 var(--rule);min-width:0}
.facts2 dt{font:600 12px var(--text);letter-spacing:.06em;text-transform:uppercase;color:var(--soft)}
.facts2 dd{margin:0;font-weight:600}
.facts2 span{display:block;font:600 12px var(--text);letter-spacing:.06em;text-transform:uppercase;color:var(--soft)}
.facts2 b{font-weight:600}
.srcnote{background:var(--orange-wash);border-radius:6px;padding:14px 16px;font-size:15px;text-wrap:pretty}
.sent{font-size:15px;color:var(--soft)}
.sent b{color:var(--ink);font-variant-numeric:tabular-nums}
.gocard{background:var(--card);border:1.5px solid var(--ink);border-top:10px solid var(--orange);border-radius:6px;padding:22px clamp(20px,3vw,28px) 24px;display:flex;flex-direction:column;gap:10px;scroll-margin-top:16px}
.gocard strong{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:34px;line-height:.95;text-wrap:balance}
.gocard .btn{margin-top:4px;text-decoration:none}
.gocard .tip{font-size:14.5px;color:var(--soft)}
.gocard .tip b{color:var(--ink)}
form.slim{border-top-width:1.5px;padding-block:20px 22px;gap:12px}
form.slim .fh strong{font-size:26px}
.stickycta{display:none}
.aside{display:flex;flex-direction:column;gap:14px;position:sticky;top:16px;min-width:0}
.aside form{scroll-margin-top:16px}
.aside .alt{font-size:14.5px;color:var(--soft)}
.aside .alt a{color:var(--orange-deep);font-weight:600}
.crumbs{font:600 13px var(--text);color:var(--soft);padding-top:8px}
.crumbs a{color:inherit}
@media (max-width:860px){.filters{grid-template-columns:1fr 1fr}.filters .q{grid-column:1/-1}.jobpage{grid-template-columns:minmax(0,1fr);padding-bottom:96px}.aside{position:static}
  .stickycta{display:flex;justify-content:center;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:5;margin:0;text-decoration:none;font-size:24px;padding:15px 20px 12px;box-shadow:0 0 0 4px var(--bg)}}
@media (prefers-reduced-motion:reduce){.job .go{transition:none}a.job:hover .go{transform:none}}
.logo{white-space:nowrap}
.fp .btn.btn-ghost{background:transparent;color:var(--ink)}
.filters{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr)) auto}
@media (max-width:860px){.filters{grid-template-columns:1fr 1fr}.filters .btn{grid-column:1/-1}.job .go{display:none}}
/* ---- match wizard, results, post page, job details ---- */
.wizard{border:0;background:none;padding:0;border-radius:0;gap:0;max-width:820px}
.step{display:grid;grid-template-columns:54px minmax(0,1fr);gap:8px 14px;padding:22px 0;border-top:1.5px solid var(--ink)}
.stepn{font-family:var(--head);font-weight:900;font-size:44px;line-height:.9;color:var(--orange-deep)}
.stepb{display:flex;flex-direction:column;gap:12px;min-width:0}
.q{font-size:clamp(28px,4vw,40px);max-width:none}
.q small{display:block;font:400 15px/1.4 var(--text);text-transform:none;color:var(--soft);margin-top:4px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{flex-direction:row;cursor:pointer;font-weight:600}
.chips input{position:absolute;opacity:0;width:1px;height:1px}
.chips span{display:inline-flex;align-items:center;min-height:46px;padding:0 18px;font-size:16px;border:1.5px solid var(--ink);border-radius:999px;background:var(--card);transition:transform 160ms var(--ease-out)}
.chips input:checked + span{background:var(--ink);color:#fff}
.chips input:focus-visible + span{outline:3px solid var(--ink);outline-offset:2px}
.chips label:active span{transform:scale(.97)}
.drop{flex-direction:row;align-items:center;gap:10px;border:1.5px dashed var(--ink);border-radius:6px;background:var(--card);padding:18px;cursor:pointer;font-weight:400;font-size:16px}
.drop input{position:absolute;opacity:0;width:1px;height:1px}
.drop b{font-weight:600;margin-right:6px}
.drop.has{border-style:solid;background:var(--orange-wash)}
.drop:focus-within{outline:3px solid var(--ink);outline-offset:2px}
.fine{font-size:14px;color:var(--soft);max-width:60ch}
.btn.big{font-size:28px;padding:16px 28px 12px;margin-top:8px}
.wizard .err{margin-top:6px}
.cvline{background:var(--orange-wash);border-radius:6px;padding:12px 16px;font-size:15px;margin-top:12px;max-width:70ch}
.job .ja{font-size:15px;margin-top:6px;max-width:64ch;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.badge.warn{border-color:var(--orange-deep);color:var(--orange-deep)}
.fit b{display:block;font-family:var(--head);font-weight:900;font-size:40px;line-height:.9}
.fit small{display:block;font:600 11px var(--text);letter-spacing:.08em;text-transform:uppercase;color:var(--soft)}
.job.match .jp small{margin-top:8px}
.about{display:flex;flex-direction:column;gap:0}
.about .lead{font-size:19px;line-height:1.5;padding-bottom:18px;text-wrap:pretty}
.about details{border-top:1.5px solid var(--ink)}
.about details:last-of-type{border-bottom:1.5px solid var(--ink)}
.about summary{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:56px;cursor:pointer;list-style:none;font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:24px;line-height:1}
.about summary::-webkit-details-marker{display:none}
.about summary::after{content:"+";font:400 30px/1 var(--text);transition:transform 200ms var(--ease-out)}
.about details[open] summary::after{transform:rotate(45deg)}
.about summary:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.about details ul{margin:0;padding:0 0 18px 20px;display:flex;flex-direction:column;gap:7px}
.about details p{padding-bottom:18px}
.about .ainote{font-size:13.5px;color:var(--soft);padding-top:12px}
.about .ainote a{color:var(--orange-deep);font-weight:600}
.perks{display:flex;flex-wrap:wrap;gap:6px}
@media (prefers-reduced-motion:reduce){.about summary::after,.chips span{transition:none}}
@media (max-width:560px){.step{grid-template-columns:minmax(0,1fr)}.stepn{font-size:30px}.btn.big{width:100%;text-align:center}}
.wizard textarea{font:400 17px/1.5 var(--text);color:var(--ink);background:#fff;border:1.5px solid var(--ink);border-radius:4px;padding:11px 12px;width:100%;resize:vertical}
.wizard textarea:focus{outline:3px solid var(--ink);outline-offset:1px}
.wizard .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.wizard .stepb > label{max-width:none}
.plans{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.plan{cursor:pointer}
.plan input{position:absolute;opacity:0;width:1px;height:1px}
.pbox{display:flex;flex-direction:column;gap:4px;height:100%;background:var(--card);border:1.5px solid var(--ink);border-radius:6px;padding:20px;font-weight:400;transition:transform 160ms var(--ease-out)}
.plan input:checked + .pbox{box-shadow:inset 0 0 0 3px var(--orange);background:var(--orange-wash)}
.plan input:focus-visible + .pbox{outline:3px solid var(--ink);outline-offset:2px}
.plan:active .pbox{transform:scale(.99)}
.pn{font:600 13px var(--text);letter-spacing:.08em;text-transform:uppercase}
.pp{font-family:var(--head);font-weight:900;font-size:56px;line-height:.9}
.pd{font-size:14px;color:var(--soft)}
.pbox ul{margin:10px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:5px;font-size:15px}
@media (max-width:640px){.wizard .two,.plans{grid-template-columns:1fr}}
.wizard{margin-bottom:64px}
@media (max-width:560px){.top{gap:6px}.logo{font-size:24px}.mainnav{gap:0}.mainnav a{padding:0 8px;font-size:14px}}
.job .jp{white-space:normal;max-width:240px;text-wrap:balance;overflow-wrap:anywhere}
@media (max-width:560px){.job .jp{max-width:none;font-size:22px}}
/* header on every page: menu + language switch; on a phone the menu drops under the logo */
.top .r{gap:8px;min-width:0}
@media (max-width:820px){.mainnav a{padding:0 9px;font-size:14px}}
/* phone: logo and language on the first row, the menu on its own row below */
@media (max-width:560px){.top{flex-wrap:wrap;row-gap:4px}.top .r{display:contents}.lang{order:2;margin-left:auto}.mainnav{order:3;flex:1 1 100%;justify-content:space-between;margin-inline:-9px}}

/* links that are buttons */
a.btn{text-decoration:none}

/* ---- pass 2 ---- */
.job .jpay{font:600 15.5px var(--text);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.job .jp{max-width:none}
.notice{background:var(--orange-wash);border-left:6px solid var(--orange);border-radius:6px;padding:14px 16px;font-size:16px;max-width:70ch;text-wrap:pretty}
.pager{align-items:center}
.pager a{display:inline-flex;align-items:center;min-height:44px}
.pager span{text-align:center;font:600 14px var(--text);color:var(--soft)}
.crumbs a{display:inline-flex;align-items:center;min-height:44px}
.count a,.ainote a,.fine a,.consent a,.gocard .tip a{text-underline-offset:3px;font-weight:600;color:var(--ink)}
.rsub{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:26px;line-height:1;margin:26px 0 12px}
.advert p{font-size:17px;line-height:1.6;padding-bottom:12px;max-width:68ch;white-space:pre-line}
.advert h2{font-size:24px;max-width:none;padding-bottom:10px}
.plan .psel{display:none;font:600 12px var(--text);letter-spacing:.06em;text-transform:uppercase}
.plan input:checked + .pbox .psel{display:inline}
.pn{display:flex;justify-content:space-between;gap:8px}
[aria-invalid="true"]{border-color:var(--bad)!important;box-shadow:inset 0 0 0 1.5px var(--bad)}
.fgrp[aria-invalid="true"]{box-shadow:none;border-left:4px solid var(--bad);padding-left:10px}
.stickybar{display:none}
@media (max-width:860px){
  .stickybar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:5;background:var(--bg);border-top:1.5px solid var(--ink);padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));transition:opacity 150ms var(--ease-out),transform 150ms var(--ease-out)}
  .stickybar.off{opacity:0;transform:translateY(100%);pointer-events:none}
  .stickybar .stickycta{position:static;display:flex;justify-content:center;margin:0;box-shadow:none;text-decoration:none;font-size:24px;padding:15px 20px 12px}
  body.hassticky footer{padding-bottom:110px}
}
@media (prefers-reduced-motion:reduce){.stickybar{transition:opacity 150ms ease}.stickybar.off{transform:none}}
/* the board on a phone: jobs first */
@media (max-width:560px){
  .board .bhead{padding-block:10px 12px;gap:8px}
  .board .bhead h1{font-size:40px}
  .board .bhead p{display:none}
  .quick{flex-wrap:nowrap;overflow-x:auto;margin-inline:-20px;padding-inline:20px;scrollbar-width:none}
  .quick::-webkit-scrollbar{display:none}
  .quick a{flex:none}
  .filters{padding-bottom:14px;gap:8px}
  .filters label span{position:absolute;left:-9999px}
  .js .filters .btn{display:none}
  .results .bhead{display:none}
}
/* legal pages */
.doc{max-width:760px;padding-bottom:64px}
.doc h1{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:clamp(40px,6vw,64px);line-height:.9;margin:8px 0 18px}
.doc h2{font-size:clamp(26px,3.4vw,34px);max-width:none;margin:34px 0 10px}
.doc h3{font:600 18px/1.3 var(--text);margin:22px 0 8px}
.doc p,.doc li{font-size:16.5px;line-height:1.6}
.doc p{margin:0 0 12px}
.doc ul,.doc ol{margin:0 0 14px;padding-left:22px;display:flex;flex-direction:column;gap:6px}
.doc hr{border:0;border-top:1.5px solid var(--ink);margin:26px 0}
.doc .tbc{background:var(--orange-wash);border-radius:4px;padding:1px 6px;font-size:.92em;white-space:normal}
.doc .tblw{margin:0 0 16px}
.doc a{color:var(--ink);font-weight:600}
/* narrow phones: menu as three equal links under the logo */
@media (max-width:360px){.mainnav a{padding:0 6px;font-size:13px}.mainnav{margin-inline:-6px}}
.grp legend{padding:0;margin-bottom:12px;width:100%}
.stepb.grp{gap:0}
.job.match .jp{align-self:center}
body.results .bhead{display:none}
input[type=search]{-webkit-appearance:none;appearance:none}
.rtitle{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:clamp(34px,5vw,56px);line-height:.92;text-wrap:balance;max-width:22ch}
@media (max-width:560px){.job .jp{display:none}}
/* ---- SEO block: landing pages, link modules, the other-language line ---- */
.langhint{font-size:14.5px;background:var(--card);border:1.5px solid var(--ink);border-radius:6px;padding:10px 14px;margin:0 0 6px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.langhint a{font-weight:600;color:var(--ink)}
.bhead .lead{font-size:18px;max-width:64ch}
.crumbs{display:flex;flex-wrap:wrap;gap:0 8px;align-items:center}
.crumbs span[aria-current]{color:var(--ink)}
.links{padding-top:22px}
.links h2,.more h2{font-size:26px;max-width:none;margin-bottom:12px}
.links .quick{padding-bottom:0}
.more{padding-block:8px 36px}
.more + .more{padding-top:0}
.tbl caption{text-align:left;font:600 13px var(--text);color:var(--soft);padding:10px 14px;caption-side:top}
.doc .tbl td,.doc .tbl th{font-variant-numeric:tabular-nums}
@media (max-width:560px){.board .bhead p.lead{display:block;font-size:14.5px;line-height:1.45;color:var(--soft)}.links .quick{flex-wrap:wrap;overflow:visible;margin-inline:0;padding-inline:0}}
.links .quick a,.quick.wrap a{white-space:normal;min-height:44px;height:auto;padding-block:8px;text-align:left;line-height:1.25}
.quick.wrap{flex-wrap:wrap;overflow:visible;margin-inline:0;padding-inline:0}
/* the other-language line: one slim line above the footer, with a close button */
.langhint{border:0;border-top:1px solid var(--rule);border-radius:0;background:none;padding:10px 0;margin:0;justify-content:space-between;font-size:14px;color:var(--soft)}
.langhint button{font:400 22px/1 var(--text);background:none;border:0;color:var(--ink);cursor:pointer;min-width:44px;min-height:44px}
input[type=checkbox][aria-invalid="true"]{outline:2px solid var(--bad);outline-offset:2px;box-shadow:none}
.ainote a,.fine a{display:inline-block;padding-block:6px}
/* ---- pass 5b ---- */
.priceline{font-size:16px;background:var(--card);border:1.5px solid var(--ink);border-radius:6px;padding:10px 14px;max-width:60ch}
.simbox{background:var(--card);border:1.5px solid var(--ink);border-radius:6px;padding:18px clamp(18px,3vw,24px) 20px;display:flex;flex-direction:column;gap:10px}
.simbox h2{font-size:26px;max-width:none}
.simbox ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.simbox li a{display:flex;flex-direction:column;gap:2px;padding:10px 0;border-top:1px solid var(--rule);text-decoration:none;min-height:44px}
.simbox li:first-child a{border-top:0}
.simbox li b{font-weight:600}
.simbox li span{font-size:14px;color:var(--soft)}
.simbox .btn{text-decoration:none;margin-top:4px}
.yours{font-size:14.5px}
.yours a{color:var(--ink);font-weight:600}
@media (min-width:861px){.aside{position:static}}
/* nothing may make a phone page scroll sideways */
.quick a,.links .quick a,.quick.wrap a{max-width:100%}
.links .quick,.quick.wrap{flex-wrap:wrap}
.roles span{max-width:100%}
.titleonly{font-size:17px;border-top:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);padding:16px 0}
.titleonly a{font-weight:600;color:var(--ink)}
/* "Fill the form for me" on Post a job (lib/pages/post.js) */
.afbox{border:1.5px solid var(--ink);border-radius:6px;background:var(--card);padding:16px;display:flex;flex-direction:column;gap:10px}
.afh{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:26px;line-height:1}
.afbox .btn{margin-top:0;text-wrap:balance}
.afdrop{padding:12px 14px;font-size:15px}
.afbar{height:4px;background:var(--rule);border-radius:2px;overflow:hidden}
.afbar span{display:block;height:100%;background:var(--orange);transform:scaleX(.04);transform-origin:left;transition:transform 20s cubic-bezier(.1,.6,.3,1)}
.afbar.go span{transform:scaleX(.95)}
.afline{background:var(--orange-wash);border-radius:6px;padding:12px 16px;font-size:15px;text-wrap:pretty}
.afundo{background:none;border:0;padding:0;font:600 15px var(--text);color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:24px}
.aflock{opacity:.45}
.afor{margin-top:-2px}
.aftag{display:inline-block;margin-left:8px;font-size:12px;font-weight:600;line-height:1.4;background:var(--orange-wash);color:var(--ink);border-radius:999px;padding:2px 9px;vertical-align:1px;text-transform:none;letter-spacing:0}
.aftag.nf{background:none;border:1px solid var(--rule);color:var(--soft)}
@media (prefers-reduced-motion:reduce){.afbar span{transition:none;transform:scaleX(.5)}}
/* After saving a post: the private status address, kept in view (lib/pages/post.js) */
.keepbox{border:1.5px solid var(--ink);border-radius:6px;background:var(--orange-wash);padding:14px 16px;display:flex;flex-direction:column;gap:8px;width:100%}
.keepbox p{margin:0}
.keepurl{font-weight:600;word-break:break-all;font-size:15px}
.keepbtns{display:flex;gap:10px;flex-wrap:wrap}
.keepbtns .btn{margin-top:0;font-size:19px}
#db{display:flex;margin:2px 0 4px}
.golive{background:var(--orange-wash);border-radius:6px;padding:10px 14px;font-size:14.5px;max-width:70ch;text-wrap:pretty}
.faqmini{border-top:1.5px solid var(--ink);padding-top:14px;margin-bottom:6px;max-width:70ch;display:flex;flex-direction:column;gap:6px}
.faqmini h3{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--soft)}
.faqmini p{font-size:15px}
/* share and referral boxes (lib/share.js), the club kit on Post a job, the notify box's scope line */
.sharebox{border-top:1.5px solid var(--rule);padding-top:12px;margin-top:12px;display:flex;flex-direction:column;gap:8px;font-size:15px}
.sharebox p{margin:0}
.notify .scope{font-weight:600;color:var(--ink)}
.todayp .btn{display:inline-block;margin-top:6px}
/* the club's panel (functions/post/status/[token].js): header, counters and the first application fit one 390 screen */
.panel{padding-block:14px 56px;max-width:820px}
.phead{display:flex;flex-direction:column;gap:6px}
.ph1{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:clamp(30px,5vw,48px);line-height:.95}
.ph2{font-family:var(--head);font-weight:900;text-transform:uppercase;font-size:24px;line-height:1;margin-top:18px}
.pmeta{display:flex;gap:8px;align-items:center}
.pkeep{margin-top:10px;padding:10px 12px;gap:6px}
.ptiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px;margin:12px 0}
.ptiles div{background:var(--card);border:1.5px solid var(--ink);border-radius:6px;padding:8px 10px;display:flex;flex-direction:column}
.ptiles b{font-family:var(--head);font-weight:900;font-size:30px;line-height:1}
.ptiles span{font-size:12.5px;color:var(--soft);line-height:1.3}
.pfilter{margin:4px 0 8px}
.acard{background:var(--card);border:1.5px solid var(--ink);border-radius:6px;padding:10px 12px}
.acard + .acard{margin-top:8px}
.acard summary{display:flex;flex-direction:column;gap:2px;cursor:pointer;list-style:none}
.acard summary::-webkit-details-marker{display:none}
.aname{font-weight:700;font-size:17px}
.anote{font-size:14.5px;color:var(--soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.acard[open] .anote{display:none}
.afull{margin:8px 0;font-size:15px;white-space:pre-wrap}
.acard .keepbtns{margin-top:8px}
.marks{display:flex;gap:8px;margin-top:8px}
.marks button{font:600 14px var(--text);border:1.5px solid var(--ink);border-radius:999px;background:var(--card);padding:6px 12px;cursor:pointer;min-height:36px}
.marks button[aria-pressed="true"]{background:var(--ink);color:#fff}
.pempty{background:var(--card);border:1.5px dashed var(--ink);border-radius:6px;padding:14px;margin-top:10px}
.pfoot{margin-top:14px}
.otherways{margin-top:8px}.otherways summary{font-weight:600;cursor:pointer;min-height:36px;display:flex;align-items:center}
.a1{margin-top:12px}
.routes .rfield{margin:0 0 6px 32px}
.panel .keepbtns{gap:6px}
.panel .phead .btn,.panel .pkeep .btn{font-size:15px;padding:8px 10px 6px;margin-top:0}
.panel .pkeep .fine{font-size:12.5px}
.panel .ph1{font-size:clamp(26px,5vw,44px)}
.doc{overflow-wrap:anywhere}.doc a{overflow-wrap:anywhere;word-break:break-word}
.tnum{display:inline-grid;place-items:center;min-width:34px;height:34px;border-radius:50%;background:var(--orange);color:var(--ink);font:900 20px var(--head);margin-bottom:6px}
