/* v55 (queue 79): advance photos. Same palette and type as the brief; the photos carry the colour. */
.adv-act{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;margin:-6px 0 6px}
.adv-act .more-btn{padding:10px 16px;border:1px solid var(--ink);border-radius:2px;gap:9px;transition:background .25s,color .25s}
.adv-act .more-btn:hover{background:var(--ink);color:var(--parch)}
.adv-act .more-btn svg,.adv-pick svg{width:16px;height:16px}
.adv-q{font-size:12.5px;color:var(--brass);display:inline-flex;align-items:center;gap:6px}
.adv-q .link{padding:0}
.adv-rule{font-size:12px;line-height:1.5;color:var(--sage);margin:8px 0 18px;max-width:46ch}
.adv-none{font-size:14px;line-height:1.55;color:var(--sage);margin:0;padding:16px 0;border-top:1px solid var(--line)}
.adv-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px;margin:2px 0 4px}
.adv-th{position:relative;display:block;text-align:left;border-radius:2px;overflow:hidden;background:#e9e3d6}
.adv-img{display:block;aspect-ratio:4/3;background:linear-gradient(110deg,#e9e3d6 30%,#f1ece2 50%,#e9e3d6 70%) 0 0/300% 100%;animation:advSh 1.6s linear infinite}
.adv-img.has{animation:none;background:#1d2320}
.adv-img img{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .4s,transform .6s var(--ease)}
.adv-img.has img{opacity:1}
.adv-th:hover .adv-img img{transform:scale(1.04)}
.adv-l{position:absolute;left:0;right:0;bottom:0;padding:16px 8px 6px;font:500 10px/1.1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#fff;background:linear-gradient(transparent,rgba(13,19,15,.78))}
/* scoped 2026-10-11: .adv-c and .adv-n are also the travel advice cards in app.css */
.adv-th .adv-c{position:absolute;top:6px;right:6px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font:600 9.5px/1 var(--sans);background:var(--brassL);color:var(--holly)}
@keyframes advSh{to{background-position:-300% 0}}
@media (prefers-reduced-motion:reduce){.adv-img{animation:none}}

/* add a photo: a sheet from the bottom on phones, a card on desktop */
.adv-ov{position:fixed;inset:0;z-index:60;background:rgba(13,19,15,.55);display:grid;align-items:end;justify-items:center;animation:advIn .25s var(--ease)}
.adv-sheet{width:min(520px,100%);max-height:calc(100dvh - 24px);overflow:auto;background:var(--alab);color:var(--ink);border-radius:14px 14px 0 0;padding:22px 22px calc(18px + env(safe-area-inset-bottom));box-shadow:0 -20px 60px -20px rgba(0,0,0,.5);animation:advUp .35s var(--ease)}
.adv-sheet h3{font:400 26px/1.15 var(--serif);margin:0 0 16px}
.adv-sheet .eyebrow{margin-bottom:8px}
@media (min-width:861px){.adv-ov{align-items:center}.adv-sheet{border-radius:3px;padding:28px 30px 24px}}
.adv-pick{display:block;cursor:pointer;margin-bottom:16px}
.adv-prev{display:grid;place-items:center;aspect-ratio:16/9;border:1px dashed #b9ae98;border-radius:3px;background:#f3eee4;color:var(--ink);font:500 11px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;overflow:hidden;position:relative}
.adv-prev>span:first-child{display:inline-flex;align-items:center;gap:9px}
.adv-prev.busy{opacity:.6}
.adv-prev.has{border-style:solid;border-color:var(--line);background:#1d2320}
.adv-prev img{width:100%;height:100%;object-fit:contain;grid-area:1/1}
.adv-re{grid-area:1/1;align-self:end;justify-self:end;margin:8px;padding:6px 9px;border-radius:2px;background:rgba(13,19,15,.7);color:#fff;font:500 10px/1 var(--sans);letter-spacing:.12em}
.adv-pick:focus-visible .adv-prev{outline:1.5px solid var(--brass);outline-offset:3px}
.adv-f{display:block;border:0;padding:0;margin:0 0 14px}
.adv-f>span,.adv-f legend{display:block;font:500 10.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--sage);margin-bottom:8px;padding:0}
.adv-f select,.adv-f input{width:100%;font:15px/1.3 var(--sans);color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px;padding:11px 12px;appearance:none}
.adv-f select{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235F6359' stroke-width='1.4'/%3E%3C/svg%3E") no-repeat right 12px center/11px;padding-right:32px}
.adv-f select:focus,.adv-f input:focus{outline:none;border-color:var(--brass)}
.adv-tags{display:flex;flex-wrap:wrap;gap:6px}
.adv-tags button{font-size:13.5px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;transition:background .2s,color .2s,border-color .2s}
.adv-tags button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--parch)}
.adv-err{font-size:13px;color:#9b3b28;margin:-6px 0 12px}
.adv-btns{display:flex;justify-content:flex-end;align-items:center;gap:22px;margin-top:6px}
.adv-save{font:500 11px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;background:var(--ink);color:var(--parch);padding:14px 22px;border-radius:2px}
.adv-save:disabled{opacity:.6}
.adv-toast{position:fixed;left:50%;bottom:calc(var(--clockh) + 18px);transform:translate(-50%,20px);z-index:61;background:var(--holly);color:var(--parch);font-size:13.5px;padding:12px 16px;border-radius:3px;max-width:min(420px,calc(100vw - 32px));opacity:0;pointer-events:none;transition:opacity .3s,transform .3s var(--ease);box-shadow:0 14px 40px -14px rgba(0,0,0,.6)}
.adv-toast.on{opacity:1;transform:translate(-50%,0)}
@keyframes advIn{from{opacity:0}}
@keyframes advUp{from{transform:translateY(30px);opacity:.4}}

/* full screen */
.adv-lb{position:fixed;inset:0;z-index:62;background:#0d130f;color:var(--parch);display:none;grid-template-rows:auto 1fr auto}
.adv-lb.on{display:grid;animation:advIn .2s}
body.adv-lb-on{overflow:hidden}
.adv-lb-top{display:flex;align-items:center;gap:14px;padding:14px 16px 10px calc(18px + env(safe-area-inset-left))}
.adv-lb-top p{margin:0;flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}
.adv-lb-top b{font:500 11px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--brassL)}
.adv-lb-top p span{font:400 19px/1.2 var(--serif);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adv-lb .adv-n{font-size:12px;color:rgba(243,239,230,.6);font-variant-numeric:tabular-nums}
.adv-x{width:40px;height:40px;font-size:26px;line-height:1;border-radius:50%;color:var(--parch)}
.adv-x:hover{background:rgba(255,255,255,.08)}
.adv-fig{margin:0;min-height:0;display:grid;place-items:center;padding:0 12px}
.adv-big{display:block;max-width:100%;max-height:100%;width:min(100%,1400px);background:#1a221d;border-radius:2px;overflow:hidden}
.adv-big img{width:100%;height:100%;object-fit:contain;display:block}
.adv-big img.lo{filter:blur(6px);transform:scale(1.02)}
.adv-nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:64px;font-size:34px;color:var(--parch);background:rgba(13,19,15,.35);border-radius:2px}
.adv-nav:hover{background:rgba(13,19,15,.6)}
.adv-p{left:10px}.adv-nx{right:10px}
@media (hover:none){.adv-nav{display:none}}
.adv-lb-bot{padding:12px 18px calc(16px + env(safe-area-inset-bottom));max-width:880px;width:100%;justify-self:center}
.adv-note{font-size:15.5px;line-height:1.5;margin:0 0 6px}
.adv-meta{font-size:12.5px;color:rgba(243,239,230,.6);margin:0}
.adv-adm{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(243,239,230,.14);font-size:12.5px;color:rgba(243,239,230,.75)}
.adv-adm select{font:13px var(--sans);color:var(--parch);background:#1a221d;border:1px solid rgba(243,239,230,.2);border-radius:2px;padding:6px 8px;margin-left:6px}
.adv-tg{font-size:12.5px;padding:7px 12px;border-radius:999px;border:1px solid rgba(243,239,230,.3);color:var(--parch)}
.adv-tg[aria-pressed="true"]{background:var(--brassL);border-color:var(--brassL);color:var(--holly)}
.adv-del{color:#e4a08f}
/* queue 81: one line when something needs a look; the AI reading and the details behind a choice */
.adv-lb-bot{max-height:46vh;overflow:auto}
.adv-flag{margin:10px 0 0;padding:8px 12px;border-left:2px solid #E0A458;background:rgba(224,164,88,.1);font-size:13.5px;line-height:1.45;color:var(--parch)}
.adv-mores{display:grid;gap:2px;margin-top:10px}
.adv-more{border-top:1px solid rgba(243,239,230,.12)}
.adv-more summary{cursor:pointer;list-style:none;padding:10px 0;font-size:13px;letter-spacing:.02em;color:rgba(243,239,230,.85);display:flex;justify-content:space-between;align-items:center}
.adv-more summary::-webkit-details-marker{display:none}
.adv-more summary::after{content:'+';font-size:18px;line-height:1;color:rgba(243,239,230,.55)}
.adv-more[open] summary::after{content:'\2212'}
.adv-more summary:focus-visible{outline:2px solid var(--brass,#B08D57);outline-offset:2px}
.adv-more p,.adv-more li{font-size:14px;line-height:1.5;margin:0 0 6px;color:rgba(243,239,230,.88)}
.adv-more ul{margin:0 0 8px;padding-left:18px}
.adv-more .adv-src{font-size:11.5px;color:rgba(243,239,230,.5);margin-top:6px}
.adv-more dl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;margin:0 0 10px;font-size:13px}
.adv-more dt{color:rgba(243,239,230,.55)}.adv-more dd{margin:0;color:rgba(243,239,230,.9);font-variant-numeric:tabular-nums}
@media (max-width:520px){.adv-more dl{grid-template-columns:1fr}.adv-more dd{margin-bottom:6px}}
.adv-wait{display:flex;align-items:center;gap:8px;margin:10px 0 0;font-size:12.5px;color:rgba(243,239,230,.6)}
.adv-wait i{width:6px;height:6px;border-radius:50%;background:#B08D57;animation:advp 1.2s ease-in-out infinite}
.adv-wait.off i{display:none}
@keyframes advp{50%{opacity:.25}}
@media (prefers-reduced-motion:reduce){.adv-wait i{animation:none}}

/* queue 79 step 2: the pick-up and drop-off photos on the roadbook's start and destination bars */
.rb-end.has-adv{flex-wrap:wrap}
.rb-aph{flex-basis:100%;margin-top:12px;padding-top:10px;border-top:1px solid rgba(250,247,241,.16)}
.rb-aph p{margin:0 0 8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;opacity:.7}
.rb-aph .adv-strip{grid-template-columns:repeat(auto-fill,minmax(110px,148px));margin:0;align-items:start}
.rb-aph .adv-th .adv-img{background:rgba(250,247,241,.08)}
.rb-aph .adv-cap{display:none}
@media (max-width:600px){.rb-aph .adv-strip{grid-template-columns:repeat(3,1fr)}}
@media print{
  body.rbprint .rb-end.has-adv{background:#fff!important;color:#152019!important;border:1px solid #152019}
  body.rbprint .rb-aph{border-top-color:#c9c3b8}
  body.rbprint .rb-aph .adv-strip{grid-template-columns:repeat(3,1fr);gap:10px}
  body.rbprint .rb-aph .adv-img{animation:none}
  body.rbprint .rb-ph{break-inside:avoid}
  body.rbprint .rb-aph .adv-cap{display:block;font-size:10.5px;line-height:1.35;color:#152019;margin-top:4px}
}

/* 214.4: the optional answer on the reading, admin only */
.adv-ans{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;margin:8px 0 12px;font-size:13px;color:rgba(243,239,230,.75)}
.adv-ans span{width:100%}
.adv-ans .link{font-size:13px;color:rgba(243,239,230,.92);text-transform:none;letter-spacing:0;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(243,239,230,.35);padding:4px 0}
.adv-ans textarea{width:100%;box-sizing:border-box;background:rgba(243,239,230,.06);color:#f3efe6;border:1px solid rgba(243,239,230,.25);border-radius:8px;padding:8px 10px;font:inherit;font-size:14px;line-height:1.45}
.adv-ans div{display:flex;gap:14px;align-items:center}
