/* Écrans propres à l'appli (comptes, carnet, partage, abonnement). Les jetons de couleur viennent de site.css. */
.flash-wrap{padding-block:14px 0;background:var(--paper)}
.flash{margin:0;padding:12px 16px;border-radius:12px;font:500 16px/1.4 var(--f-sans);border:1px solid}
.flash ul{margin:6px 0 0;padding-left:20px}
.flash p{margin:0}
.flash--ok{background:#e3f1e8;border-color:#a9d1b7;color:#123d27}
.flash--err{background:#fbe7e1;border-color:#e5a99a;color:#6d1d0e}

.card-form{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:clamp(18px,4vw,30px);max-width:560px;box-shadow:0 10px 30px -18px rgba(14,32,26,.35)}
.card-form--wide{max-width:none}
.fields{display:grid;gap:16px}
.fields--2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.field{display:grid;gap:6px}
.field label,.field .lbl{font:700 15px/1.2 var(--f-sans);color:var(--ink)}
.field .hint{font:400 14px/1.4 var(--f-sans);color:var(--muted)}
.field input[type=text],.field input[type=email],.field input[type=password],.field input[type=date],.field input[type=number],.field select,.field textarea{
  width:100%;font:400 17px/1.4 var(--f-sans);color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:11px 13px;min-height:48px}
.field textarea{min-height:110px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(232,177,53,.45);outline-offset:1px;border-color:var(--gold-ink)}
.field input[type=file]{font:400 15px var(--f-sans);max-width:100%}
.check{display:flex;gap:10px;align-items:flex-start;font:400 16px/1.4 var(--f-sans)}
.check input{width:22px;height:22px;margin-top:1px;accent-color:var(--forest);flex:none}
.radios{display:grid;gap:10px}
.radio{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;font:400 16px/1.35 var(--f-sans)}
.radio input{width:20px;height:20px;margin-top:2px;accent-color:var(--forest);flex:none}
.radio b{display:block;font-weight:700}
.radio span span{color:var(--muted);font-size:14px}
.radio:has(input:checked){border-color:var(--forest);background:#eef5f0}
.form-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:6px}
.linklike{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}
.danger-zone{margin-top:28px;padding-top:18px;border-top:1px dashed var(--line)}
.btn--danger{background:var(--dead);color:#fff;border-color:var(--dead)}
.row-geo{display:flex;flex-wrap:wrap;gap:10px;align-items:end}
.row-geo .field{flex:1 1 140px}
.geo-state{font:400 14px/1.3 var(--f-sans);color:var(--muted)}

.auth-band{min-height:60vh}
.auth-alt{font:400 16px/1.4 var(--f-sans);color:var(--muted);margin-top:14px}
.auth-alt a{color:var(--ink);font-weight:700}

.outing-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.ocard{display:grid;grid-template-rows:auto 1fr;background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;color:var(--ink);text-decoration:none;transition:transform .2s,box-shadow .2s}
.ocard:hover{transform:translateY(-3px);box-shadow:0 14px 30px -18px rgba(14,32,26,.5)}
.ocard .ocard-pic{position:relative;aspect-ratio:16/9;background:var(--night)}
.ocard .ocard-pic canvas,.ocard .ocard-pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.ocard .ocard-vis{position:absolute;left:10px;top:10px;font:800 12px/1 var(--f-sans);letter-spacing:.06em;text-transform:uppercase;background:var(--snow);color:var(--ink);padding:6px 9px;border-radius:999px}
.ocard .ocard-vis--public{background:var(--gold);color:var(--night)}
.ocard .ocard-vis--users{background:#d7e9f3;color:#123447}
.ocard .ocard-t{padding:14px 16px 16px;display:grid;gap:4px}
.ocard small{font:700 13px/1.2 var(--f-sc);letter-spacing:.06em;color:var(--gold-ink);text-transform:lowercase}
.ocard b{font:800 26px/1 var(--f-poster);text-transform:uppercase;letter-spacing:.01em}
.ocard span.m{font:400 15px/1.35 var(--f-sans);color:var(--muted)}
.empty{padding:22px;border:2px dashed var(--line);border-radius:18px;font:400 17px/1.5 var(--f-sans);color:var(--muted);background:var(--card)}

.finds{display:grid;gap:18px}
.find{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px;display:grid;gap:10px}
.find-h{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;justify-content:space-between}
.find-h h3{margin:0;font:800 26px/1.05 var(--f-poster);text-transform:uppercase}
.find-h h3 a{color:inherit}
.find-h .latin{font-style:italic;color:var(--muted);font-size:16px}
.find-meta{display:flex;flex-wrap:wrap;gap:8px}
.find-meta span{font:700 14px/1 var(--f-sans);background:var(--paper-2);border-radius:999px;padding:7px 11px}
.find .shots{border-radius:12px;background:transparent}
.find .shot{border-radius:12px;overflow:hidden}
.stat{flex:1 1 92px;min-width:0}
.find p{margin:0;font:400 17px/1.5 var(--f-serif)}
.find .tox{font:700 14px/1.3 var(--f-sans);color:var(--dead)}

.share-box{background:var(--night);color:var(--snow);border-radius:18px;padding:clamp(18px,4vw,28px);display:grid;gap:16px}
.share-box h2{margin:0;font:800 30px/1 var(--f-poster);text-transform:uppercase;color:var(--gold)}
.share-box .radio{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.2);color:var(--snow)}
.share-box .radio span span{color:#c9d2c9}
.share-box .radio:has(input:checked){background:rgba(232,177,53,.14);border-color:var(--gold)}
.share-box .field label,.share-box .check{color:var(--snow)}
.share-box .hint{color:#c9d2c9}
.share-link{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.share-link input{flex:1 1 220px;font:400 15px/1.3 ui-monospace,monospace;padding:11px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:var(--snow);min-height:46px}

.paywall{background:var(--night);color:var(--snow);border-radius:22px;padding:clamp(22px,5vw,40px);display:grid;gap:14px;max-width:720px}
.paywall h2{margin:0;font:900 clamp(34px,8vw,54px)/.95 var(--f-poster);text-transform:uppercase;color:var(--gold)}
.paywall p{margin:0;font:400 18px/1.5 var(--f-serif)}
.paywall ul{margin:0;padding-left:20px;font:400 17px/1.5 var(--f-sans)}
.price{font:900 64px/1 var(--f-poster);color:var(--snow)}
.price small{font:700 20px var(--f-sans);color:#c9d2c9}

.stat-row{display:flex;flex-wrap:wrap;gap:12px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 16px;min-width:130px}
.stat b{display:block;font:900 34px/1 var(--f-poster)}
.stat span{font:500 14px/1.3 var(--f-sans);color:var(--muted)}

.map{height:min(70vh,520px);border-radius:18px;overflow:hidden;border:1px solid var(--line);background:var(--paper-2)}
.map--small{height:300px}
.spot-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.spot-list li{display:flex;justify-content:space-between;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 14px;font:400 16px/1.35 var(--f-sans)}
.spot-list b{font-weight:700}

.owner-bar{background:var(--gold);color:var(--night)}
.owner-bar .wrap{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;justify-content:space-between;padding-block:10px}
.owner-bar p{margin:0;font:700 15px/1.3 var(--f-sans)}
.owner-bar .btns{display:flex;flex-wrap:wrap;gap:8px}

.legal h2{font:800 28px/1.05 var(--f-poster);text-transform:uppercase;margin:28px 0 8px}
.legal p,.legal li{font:400 18px/1.55 var(--f-serif)}
.todo{background:#fff3cf;border-radius:6px;padding:0 6px;font-family:var(--f-sans);font-weight:700}
.note.pl-off{background:var(--paper-2);border-left:4px solid var(--gold-ink);padding:12px 14px;border-radius:8px;font:400 16px/1.45 var(--f-sans)}
@media (max-width:520px){.form-actions .btn{width:100%;justify-content:center}}

/* Affiches sur téléphone : titre plus sobre, affiche moins haute, la fiche commence plus tôt. */
@media (max-width:600px){
  .mega--sub{font-size:clamp(2.1rem, 9.4vw, 2.9rem);line-height:.88}
  .mega--page{font-size:clamp(2.5rem, 11.5vw, 3.6rem)}
  .poster--sub{min-height:clamp(210px, 32svh, 280px)}
  .poster--page{min-height:clamp(280px, 48svh, 420px)}
  .poster-in{gap:8px;padding-top:22px}
  .poster--sub .tagline{font-size:1.02rem}
}
@media (max-width:600px){ .poster--spore .poster-in{padding-right:calc(var(--gr) + 26px)} }

/* ---------- Éditeur de sortie ---------- */
.ed-head{background:var(--night);color:var(--snow);padding-block:22px 18px}
.ed-kicker{margin:0;font:800 .78rem/1.2 var(--f-sc);letter-spacing:.14em;text-transform:lowercase;color:var(--gold)}
.ed-title{margin:6px 0 14px;font:900 clamp(2rem,9vw,3.4rem)/.92 var(--f-poster);text-transform:uppercase}
.ed-steps{position:sticky;top:calc(var(--top-h) + env(safe-area-inset-top,0px));z-index:20;background:var(--paper);border-bottom:1px solid var(--line)}
.ed-steps ol{display:flex;gap:6px;margin:0;padding:10px 0;list-style:none;overflow-x:auto;scrollbar-width:none}
.ed-steps ol::-webkit-scrollbar{display:none}
.ed-steps a{display:flex;align-items:center;gap:8px;white-space:nowrap;padding:8px 12px;border-radius:999px;background:var(--paper-2);color:var(--ink);text-decoration:none;font:700 15px/1 var(--f-sans)}
.ed-steps a .n{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#fff;border:1.5px solid var(--line);font-size:12px}
.ed-steps a.done .n{background:var(--ok);border-color:var(--ok);color:#fff;font-size:0}
.ed-steps a.done .n::after{content:"✓";font-size:13px}
.ed-steps a[aria-current]{background:var(--ink);color:var(--snow)}
.ed-body{padding-block:22px 40px}
.ed-form{display:grid;gap:18px}
.ed-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:clamp(16px,4vw,26px);display:grid;gap:14px;margin-bottom:18px}
.ed-form .ed-card{margin-bottom:0}
.ed-h{margin:0;font:800 clamp(1.5rem,6vw,2rem)/1 var(--f-poster);text-transform:uppercase;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.ed-h small{font:700 14px var(--f-sans);color:var(--muted);text-transform:none}
.ed-h3{margin:12px 0 0;font:800 1.25rem/1.1 var(--f-poster);text-transform:uppercase}
.ed-card .hint,.ed-card p.hint{margin:0;font:400 15px/1.45 var(--f-sans);color:var(--muted)}
.ed-save{position:sticky;bottom:0;z-index:15;display:flex;flex-wrap:wrap;gap:10px;padding:12px 0 calc(12px + env(safe-area-inset-bottom,0px));background:linear-gradient(transparent,var(--paper) 30%)}
.ed-next{margin:6px 0 0}
.ed-back{margin:0 0 12px;font:700 15px var(--f-sans)}
.ed-back a{color:var(--ink)}
.radios--3{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.radios--4{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.radio--ok:has(input:checked){border-color:var(--ok);background:#e3f1e8}
.radio--bad:has(input:checked),.radio--dead:has(input:checked){border-color:var(--dead);background:#fbe7e1}
.rep{display:grid;gap:10px}
.rep-list{display:grid;gap:10px}
.rep-row{display:grid;gap:8px;align-items:start;position:relative;padding:10px 44px 10px 10px;border:1px solid var(--line);border-radius:12px;background:#fff}
.rep-row input,.rep-row textarea,.rep-row select{width:100%;font:400 16px/1.35 var(--f-sans);border:1.5px solid var(--line);border-radius:9px;padding:9px 10px;min-height:44px;background:#fff;color:var(--ink)}
.rep-row textarea{min-height:64px;resize:vertical}
.rep-row--2{grid-template-columns:1fr 1fr}
.rep-row--3{grid-template-columns:1fr}
.rep-row--kv,.rep-row--look{grid-template-columns:1fr}
@media (min-width:700px){.rep-row--3{grid-template-columns:1fr 1fr 1.4fr}.rep-row--kv{grid-template-columns:200px 1fr}.rep-row--look{grid-template-columns:1fr 150px;}.rep-row--look textarea{grid-column:1/-1}}
.rep-del{position:absolute;right:8px;top:8px;width:30px;height:30px;border-radius:50%;border:1px solid var(--line);background:var(--paper);font:700 18px/1 var(--f-sans);cursor:pointer;color:var(--muted)}
.rep-hint{grid-column:1/-1;font:400 14px/1.4 var(--f-sans);color:var(--gold-ink);background:#fff8e6;border-radius:8px;padding:6px 9px}
.rep-hint:empty{display:none}
.guide-note{margin:0;display:flex;flex-wrap:wrap;gap:10px;align-items:center;font:400 16px/1.4 var(--f-sans);background:#fff8e6;border:1px solid #f0d9a0;border-radius:12px;padding:12px}
.ed-item{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.ed-item:first-of-type{border-top:0}
.ed-item-ph{display:block;width:72px;height:72px;border-radius:12px;overflow:hidden;background:var(--paper-2);text-decoration:none;color:var(--muted);font:500 12px var(--f-sans);text-align:center}
.ed-item-ph img{width:100%;height:100%;object-fit:cover}
.ed-item-ph span{display:grid;place-items:center;height:100%}
.ed-item-t{display:grid;gap:4px;min-width:0}
.ed-item-t a{color:var(--ink)}
.ed-item-t b{font:800 1.3rem/1.05 var(--f-poster);text-transform:uppercase}
.ed-item-t .muted{font:400 14px var(--f-sans)}
.ed-chips{display:flex;flex-wrap:wrap;gap:5px}
.ed-chips span{font:700 12px/1 var(--f-sans);padding:5px 8px;border-radius:999px;background:var(--paper-2);color:var(--muted)}
.ed-chips span.ok{background:#e3f1e8;color:#123d27}
.ed-chips span.ok::before{content:"✓ "}
.ed-item-a{grid-column:1/-1;display:flex;gap:8px;align-items:center}
.ed-item-a form{margin:0}
.mv{width:40px;height:40px;border-radius:10px;border:1.5px solid var(--line);background:#fff;font:700 18px var(--f-sans);cursor:pointer}
.mv:disabled{opacity:.35;cursor:default}
@media (min-width:700px){.ed-item{grid-template-columns:72px 1fr auto}.ed-item-a{grid-column:auto}}
.ed-fold{border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 14px}
.ed-fold+.ed-fold{margin-top:10px}
.ed-fold summary{cursor:pointer;padding:14px 0;font:400 16px/1.3 var(--f-sans);display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ed-fold[open]{padding-bottom:14px}
.ed-fold .fields{margin-bottom:10px}
.chance{font:800 12px/1 var(--f-sans);text-transform:uppercase;letter-spacing:.04em;padding:5px 8px;border-radius:999px}
.chance--ok{background:#e3f1e8;color:#123d27}.chance--med{background:#fff3cf;color:#5d4300}.chance--low{background:var(--paper-2);color:var(--muted)}
.found-tag{font:800 12px/1 var(--f-sans);text-transform:uppercase;padding:5px 8px;border-radius:999px;background:var(--gold);color:var(--night)}
.ph-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.ph-item{display:grid;gap:6px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px}
.ph-item img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
.ph-item input[type=text],.ph-item input[type=number],.ph-item select{width:100%;font:400 14px var(--f-sans);border:1.5px solid var(--line);border-radius:8px;padding:7px;min-height:40px}
.ph-row{display:grid;grid-template-columns:1fr 56px;gap:6px}
.pv{display:flex;flex-wrap:wrap;gap:6px}
.pv img{width:72px;height:72px;object-fit:cover;border-radius:8px}
.cover-pick{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px}
.cover{flex:none;position:relative;cursor:pointer}
.cover input{position:absolute;opacity:0}
.cover img,.cover-none{display:grid;place-items:center;width:96px;height:72px;object-fit:cover;border-radius:10px;border:3px solid transparent;background:var(--paper-2);font:700 13px var(--f-sans);color:var(--muted)}
.cover input:checked+img,.cover input:checked+.cover-none{border-color:var(--gold)}
.cover input:focus-visible+img{outline:3px solid var(--gold-ink)}
.pick-wrap{display:grid;gap:8px}
.stop-n{display:inline-grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--gold);color:var(--night);font:900 15px var(--f-poster)}
.danger-card{border-color:#e5a99a}
.rain-chart{margin:4px 0 0}
.rain-chart .bars{display:flex;align-items:flex-end;gap:2px;height:90px;padding:6px;border-radius:10px;background:var(--paper-2)}
.rain-chart .bar{flex:1;background:var(--river);border-radius:2px 2px 0 0;min-width:3px}
.rain-chart .bar--big{background:#1f4f6a}
.rain-chart .bar--frost{box-shadow:inset 0 -4px 0 #7fc4e8}
.rain-chart figcaption{margin-top:6px;font:400 13px/1.4 var(--f-sans);color:var(--muted)}

/* ---------- Pages d'une sortie ---------- */
.otabs{position:sticky;top:calc(var(--top-h) + env(safe-area-inset-top,0px));z-index:19}
.o-sum{font-size:clamp(1.7rem,7vw,2.8rem);max-width:28ch}
.ofacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}
.ofacts div{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.ofacts b{display:block;font:900 clamp(1.9rem,8vw,2.6rem)/1 var(--f-poster)}
.ofacts span{font:500 14px/1.3 var(--f-sans);color:var(--muted)}
.o-cover{margin:0}
.o-cover .shot{width:100%;max-width:none;aspect-ratio:auto;border-radius:18px;overflow:hidden}
.o-cover img{width:100%;height:auto;max-height:70vh;object-fit:cover}
.o-story p{font-size:1.12rem}
.fgrid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.fcard{display:grid;grid-template-rows:auto 1fr;background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;color:var(--ink);text-decoration:none}
.fcard-ph{position:relative;aspect-ratio:1;background:var(--paper-2)}
.fcard-ph img{width:100%;height:100%;object-fit:cover}
.fcard-ph .cat{position:absolute;left:8px;bottom:8px}
.fcard-t{display:grid;gap:3px;padding:10px 12px 12px}
.fcard-t b{font:800 1.2rem/1.02 var(--f-poster);text-transform:uppercase}
.fcard-t i{font:italic 14px var(--f-serif);color:var(--muted)}
.fcard-t .m{font:500 13px var(--f-sans);color:var(--muted)}
.cat{display:inline-block;font:800 11px/1 var(--f-sans);letter-spacing:.05em;text-transform:uppercase;padding:6px 8px;border-radius:999px;background:var(--snow);color:var(--ink)}
.cat--ok{background:var(--ok);color:#fff}.cat--med{background:var(--med);color:#fff}.cat--meh{background:var(--meh);color:#fff}
.cat--bad{background:var(--bad);color:#fff}.cat--dead{background:var(--dead);color:#fff}.cat--unk{background:var(--unk);color:#fff}
.fhead{display:grid;gap:6px;justify-items:start}
.fhead .h-poster{margin:0}
.fhead .latin{margin:0;font:italic 1.15rem var(--f-serif);color:var(--muted)}
.fmeta{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 0}
.fmeta span{font:700 14px/1 var(--f-sans);background:var(--paper-2);border-radius:999px;padding:7px 11px}
.shots--find{border-radius:16px;overflow:hidden}
.fquote{margin:0;padding:14px 18px;border-left:5px solid var(--gold);background:#fff8e6;border-radius:0 14px 14px 0;font:italic 1.15rem/1.5 var(--f-serif)}
.fsec{display:grid;gap:10px}
.obs{display:grid;gap:0;margin:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card)}
.obs div{display:grid;grid-template-columns:minmax(90px,30%) 1fr;gap:12px;padding:11px 14px;border-top:1px solid var(--line)}
.obs div:first-child{border-top:0}
.obs dt{font:800 13px/1.3 var(--f-sc);letter-spacing:.06em;text-transform:lowercase;color:var(--gold-ink)}
.obs dd{margin:0;font:400 17px/1.45 var(--f-serif)}
.gests{margin:0;padding:0;list-style:none;display:grid;gap:8px;counter-reset:g}
.gests li{counter-increment:g;display:grid;gap:3px;padding:12px 14px 12px 52px;position:relative;background:var(--card);border:1px solid var(--line);border-radius:14px}
.gests li::before{content:counter(g);position:absolute;left:12px;top:12px;width:28px;height:28px;border-radius:50%;background:var(--ink);color:var(--snow);display:grid;place-items:center;font:900 15px var(--f-poster)}
.gests b{font:700 16px/1.3 var(--f-sans)}
.gests span{font:400 17px/1.45 var(--f-serif)}
.looks{display:grid;gap:10px}
.look{border-radius:14px;padding:12px 14px;background:var(--card);border:1px solid var(--line);border-left:6px solid var(--meh)}
.look--M{border-left-color:var(--dead);background:#fdf1ee}.look--T{border-left-color:var(--bad)}.look--C{border-left-color:var(--ok)}
.look-h{margin:0 0 4px;display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}
.look-h b{font:800 1.15rem/1.1 var(--f-poster);text-transform:uppercase}
.look-h span{font:800 11px/1 var(--f-sans);text-transform:uppercase;letter-spacing:.05em;color:var(--dead)}
.look p:last-child{margin:0;font:400 16px/1.45 var(--f-serif)}
.safety-inline{font:500 14px/1.4 var(--f-sans);color:var(--muted);border-top:1px dashed var(--line);padding-top:10px}
.duel-t{width:100%;border-collapse:collapse;font:400 16px/1.4 var(--f-sans)}
.duel-t th,.duel-t td{padding:10px;border-bottom:1px solid rgba(255,255,255,.15);text-align:left;vertical-align:top}
.duel-t thead th{color:var(--gold);font:800 14px var(--f-sc);letter-spacing:.06em;text-transform:lowercase}
.duel-t tbody th{color:#c9d2c9;font-weight:700;width:28%}
.tbl-wrap{overflow-x:auto}
.odoors{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.odoor{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;padding:16px;border-radius:16px;background:var(--snow);color:var(--ink);text-decoration:none}
.odoor b{font:900 1.6rem/1 var(--f-poster);text-transform:uppercase}
.odoor span{grid-column:1;font:400 15px/1.35 var(--f-sans);color:var(--muted)}
.odoor svg{grid-row:1/3;grid-column:2;width:22px;height:22px}
.tgrid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.tcard{display:grid;grid-template-columns:84px 1fr;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px}
.tcard img{width:84px;height:84px;object-fit:cover;border-radius:10px}
.tcard p{margin:0 0 4px;font:400 15px/1.4 var(--f-sans)}
.tcard-h{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.tcard-h b{font:800 1.15rem/1.05 var(--f-poster);text-transform:uppercase}
.tzone{font-weight:700!important}
.stops{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.stops li{display:grid;grid-template-columns:auto 1fr;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px}
.stops p{margin:0 0 4px;font:400 16px/1.45 var(--f-serif)}
.stop-h{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}
.stop-h b{font:800 1.15rem/1.05 var(--f-poster);text-transform:uppercase}
.stop-h span{font:700 13px var(--f-sans);color:var(--muted)}
.wxrows{display:grid;gap:0;margin:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card)}
.wxrows div{display:grid;grid-template-columns:minmax(110px,34%) 1fr;gap:12px;padding:12px 14px;border-top:1px solid var(--line)}
.wxrows div:first-child{border-top:0}
.wxrows dt{font:800 13px/1.3 var(--f-sc);letter-spacing:.06em;text-transform:lowercase;color:var(--gold-ink)}
.wxrows dd{margin:0;display:grid;gap:2px}
.wxrows dd b{font:700 17px/1.3 var(--f-sans)}
.wxrows dd span{font:400 14px var(--f-sans);color:var(--muted)}
.wx{display:grid;gap:10px}

.ph-item .check{font:500 14px/1.2 var(--f-sans);gap:8px;align-items:center}
.ph-item .check input{width:20px;height:20px;margin:0}
.ph-row{min-width:0}
.ph-row select{min-width:0}
.otabs{background:var(--paper);border-bottom:1px solid var(--line)}
.otabs .wrap{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-block:10px}
.otabs .wrap::-webkit-scrollbar{display:none}
.otabs a{flex:none;padding:9px 14px;border-radius:999px;background:var(--paper-2);color:var(--ink);text-decoration:none;font:700 15px/1 var(--f-sans);border:0}
.otabs a[aria-current]{background:var(--ink);color:var(--snow)}

/* ---------- Conditions de pousse ---------- */
.pousse{display:grid;gap:12px}
.months{margin:0}
.mbars{display:grid;grid-template-columns:repeat(12,1fr);gap:4px;align-items:end;height:120px;padding:8px;border-radius:12px;background:var(--paper-2)}
.mbar{display:grid;grid-template-rows:1fr auto;height:100%;align-items:end;text-align:center}
.mbar i{display:block;background:var(--forest-2);border-radius:3px 3px 0 0;min-height:2px}
.mbar--now i{background:var(--gold)}
.mbar b{font:700 12px/1.6 var(--f-sans);color:var(--muted)}
.months figcaption{margin-top:6px;font:400 13px/1.4 var(--f-sans);color:var(--muted)}
.pousse-usual{font:400 17px/1.5 var(--f-serif)}
.pousse-today{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.pousse-today p{margin:0 0 4px}
.map--tall{height:min(75vh,620px)}
.legend-box{display:grid;gap:6px;font:400 15px/1.4 var(--f-sans)}
.legend-box p{margin:0}
.lg{display:inline-block;width:14px;height:14px;border-radius:50%;vertical-align:-2px;margin-right:2px}
.lg--obs{background:#fbfaf3;border:2px solid #0e201a}.lg--grid{border-radius:3px;background:#6c3d1e;opacity:.6}
.lg--good{background:#1f6b45}.lg--maybe{background:#e8b135}.lg--poor{background:#bd4f17}
.best{margin:0;padding-left:20px;font:400 16px/1.6 var(--f-sans)}
.chlist{display:grid;gap:8px}
.ch{background:var(--card);border:1px solid var(--line);border-left:6px solid var(--line);border-radius:12px;padding:0 12px}
.ch--good{border-left-color:var(--ok)}.ch--maybe{border-left-color:var(--gold)}.ch--poor{border-left-color:var(--bad)}
.ch summary{display:flex;gap:12px;align-items:center;padding:10px 0;cursor:pointer}
.ch summary img{width:52px;height:52px;object-fit:cover;border-radius:10px;flex:none}
.ch summary span{display:grid;gap:2px}
.ch summary b{font:800 1.15rem/1.05 var(--f-poster);text-transform:uppercase}
.ch summary i{font:italic 14px var(--f-serif);color:var(--muted)}
.ptag{font:700 12px/1 var(--f-sans);color:var(--ok)}
.ptag--low{color:var(--muted)}
.why{margin:0 0 8px;padding-left:0;list-style:none;display:grid;gap:6px;font:400 15px/1.4 var(--f-sans)}
.why li{padding-left:24px;position:relative}
.why li::before{position:absolute;left:0;top:0;font-weight:800}
.why li.y::before{content:"✓";color:var(--ok)}.why li.n::before{content:"✗";color:var(--bad)}
.chdoor{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding-block:16px}
