/* ===== Design system « Mon Chien » ===== */
:root{
  --o:#f76707;--o2:#ff922b;--o3:#fff0e0;--grad:linear-gradient(135deg,#ffa94d 0%,#f76707 55%,#e8590c 100%);
  --story:conic-gradient(from 210deg,#ffd43b,#ff922b,#f03e3e,#d6336c,#ffd43b);
  --bg:#faf7f4;--card:#fff;--card2:#f4efea;--tx:#1f1611;--mu:#7d6b5d;--line:#ece4dc;
  --ok:#2b8a3e;--bad:#e03131;--r:18px;--r-sm:12px;
  --sh:0 1px 2px rgb(31 22 17/.04),0 4px 16px rgb(31 22 17/.06);--sh2:0 10px 40px rgb(31 22 17/.16);
  --font:ui-rounded,"SF Pro Rounded","Nunito","Segoe UI Variable Display","Segoe UI",system-ui,-apple-system,Roboto,sans-serif;
  --ease:cubic-bezier(.2,.8,.2,1);--side:244px;color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f0b08;--card:#1b1410;--card2:#251c16;--tx:#f6ece3;--mu:#a8968a;--line:#2e241d;--o3:#3a2312;--sh:0 1px 2px #0006,0 4px 16px #0005;color-scheme:dark}}
:root[data-theme=dark]{--bg:#0f0b08;--card:#1b1410;--card2:#251c16;--tx:#f6ece3;--mu:#a8968a;--line:#2e241d;--o3:#3a2312;--sh:0 1px 2px #0006,0 4px 16px #0005;color-scheme:dark}
[hidden]{display:none!important}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}html,body{margin:0}
body{font-family:var(--font);background:var(--bg);color:var(--tx);min-height:100vh;padding-bottom:calc(72px + env(safe-area-inset-bottom));line-height:1.45;-webkit-font-smoothing:antialiased}
a{color:var(--o);text-underline-offset:2px}img{max-width:100%}
:focus-visible{outline:3px solid var(--o2);outline-offset:2px;border-radius:8px}
.skip{position:absolute;left:-999px;top:8px;background:var(--o);color:#fff;padding:8px 12px;border-radius:10px;z-index:100}.skip:focus{left:8px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
h1,h2,h3{margin:.15em 0 .5em;line-height:1.15;letter-spacing:-.01em}h1{font-size:1.6rem;font-weight:900}h2{font-size:1.2rem;font-weight:800}h3{font-size:1.05rem}
.center{text-align:center}.mu{color:var(--mu)}.err{color:var(--bad);font-weight:700}

/* Barre du haut (mobile) */
.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;padding-top:max(10px,env(safe-area-inset-top));background:color-mix(in srgb,var(--card) 82%,transparent);backdrop-filter:saturate(1.8) blur(16px);-webkit-backdrop-filter:saturate(1.8) blur(16px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:9px;color:var(--tx);text-decoration:none;font-weight:900;font-size:1.25rem;letter-spacing:-.02em}
.brand img{width:34px;height:34px;border-radius:10px;box-shadow:var(--sh)}
#topnav{display:flex;gap:6px;align-items:center}
.bell{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 10px;border-radius:12px;font-size:1.2rem;text-decoration:none;color:var(--tx);background:var(--card2);transition:transform .15s var(--ease)}
.bell:active{transform:scale(.92)}
.badge{position:absolute;top:-3px;right:-3px;background:var(--bad);color:#fff;border-radius:999px;font-size:.68rem;font-weight:800;padding:2px 6px;font-style:normal;min-width:18px;text-align:center;box-shadow:0 0 0 2px var(--card);animation:pop .3s var(--ease)}

/* Mise en page */
.layout{display:block}
main{max-width:640px;margin:0 auto;padding:14px 12px 24px;outline:none}
main>*{animation:fadeUp .28s var(--ease) both}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes pop{0%{transform:scale(.4)}70%{transform:scale(1.15)}100%{transform:scale(1)}}
.right{display:none}
body.guest main{max-width:1000px}
@media (min-width:900px){main:has(.pgrid),main:has(.games),main:has(table){max-width:900px}}

/* Barre d'onglets (mobile) */
.tabbar{position:fixed;bottom:0;left:0;right:0;display:flex;background:color-mix(in srgb,var(--card) 88%,transparent);backdrop-filter:saturate(1.8) blur(16px);-webkit-backdrop-filter:saturate(1.8) blur(16px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:20}
.tabbar a{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:1px;padding:7px 0 6px;text-decoration:none;color:var(--mu);position:relative;transition:color .2s}
.tabbar a i{font-style:normal;font-size:1.25rem;line-height:1.2;filter:grayscale(.7) opacity(.8);transition:transform .2s var(--ease),filter .2s}
.tabbar a span{font-size:.62rem;font-weight:700}
.tabbar a.on{color:var(--tx)}.tabbar a.on i{filter:none;transform:translateY(-1px) scale(1.1)}
.tabbar a.plus i{display:inline-flex;align-items:center;justify-content:center;width:36px;height:28px;border-radius:10px;background:var(--grad);color:#fff;filter:none;font-weight:900;font-size:1.1rem}
.tabbar .badge{right:calc(50% - 22px);top:2px}
.side-brand,.side-extra{display:none!important}

/* Desktop : sidebar gauche + fil centré + colonne droite */
@media (min-width:900px){
  body{padding-bottom:0}
  .topbar{display:none}
  .layout{display:grid;grid-template-columns:var(--side) minmax(0,1fr);min-height:100vh}
  .tabbar{position:sticky;top:0;height:100vh;flex-direction:column;gap:2px;padding:22px 12px;border-top:0;border-right:1px solid var(--line);background:var(--card);backdrop-filter:none}
  .tabbar a{flex:none;flex-direction:row;gap:14px;padding:11px 14px;border-radius:14px;font-size:1rem;color:var(--tx)}
  .tabbar a span{font-size:1rem;font-weight:600}.tabbar a i{font-size:1.35rem;filter:none}
  .tabbar a:hover{background:var(--card2)}.tabbar a.on{background:var(--o3)}.tabbar a.on span{font-weight:900}
  .tabbar .badge{position:static;margin-left:auto}
  .tabbar a.plus i{width:30px;height:30px}
  .side-brand{display:flex!important;align-items:center;gap:10px;font-weight:900!important;font-size:1.35rem!important;margin:0 0 18px;letter-spacing:-.02em}
  .side-brand img{width:38px;height:38px;border-radius:11px}.side-brand span{font-weight:900!important;font-size:1.35rem!important}
  .side-extra{display:flex!important;flex-direction:column;gap:2px;margin-top:auto;border-top:1px solid var(--line);padding-top:10px}
  main{padding:28px 20px 40px}
  .foot{margin-left:var(--side)}
}
@media (min-width:1200px){
  .layout{grid-template-columns:var(--side) minmax(0,1fr) 320px}
  .right:not([hidden]){display:block;position:sticky;top:0;height:100vh;overflow:auto;padding:30px 22px 20px 0}
}

/* Cartes, boutons, formulaires */
.card{background:var(--card);border-radius:var(--r);padding:16px;box-shadow:var(--sh);margin-bottom:14px;border:1px solid var(--line)}
input,select,textarea,button{font:inherit;color:inherit}
input,select,textarea{width:100%;padding:12px 14px;border-radius:var(--r-sm);border:1.5px solid var(--line);background:var(--card2);margin:5px 0 12px;transition:border-color .2s,box-shadow .2s,background .2s}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--o2);background:var(--card);box-shadow:0 0 0 4px color-mix(in srgb,var(--o2) 22%,transparent)}
label{font-weight:700;font-size:.88rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--grad);color:#fff;border:0;border-radius:var(--r-sm);padding:11px 18px;font-weight:800;cursor:pointer;text-decoration:none;box-shadow:0 4px 14px color-mix(in srgb,var(--o) 30%,transparent);transition:transform .15s var(--ease),box-shadow .2s,filter .2s;-webkit-tap-highlight-color:transparent}
.btn:hover{filter:brightness(1.05);box-shadow:0 6px 20px color-mix(in srgb,var(--o) 38%,transparent)}.btn:active{transform:scale(.97)}
.btn.sec{background:var(--card2);color:var(--tx);box-shadow:none;border:1.5px solid var(--line)}.btn.sec:hover{border-color:var(--o2)}
.btn.bad{background:var(--bad);box-shadow:none}.btn.sm{padding:7px 12px;font-size:.85rem;border-radius:10px}
.btn:disabled{opacity:.55;pointer-events:none}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.row>*{flex:1}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}

/* Squelettes */
.skel,.skel-card{background:linear-gradient(90deg,var(--card2) 0%,color-mix(in srgb,var(--card2) 40%,var(--card)) 50%,var(--card2) 100%);background-size:200% 100%;animation:shimmer 1.2s linear infinite;border-radius:var(--r)}
.skel-card{height:420px;margin-bottom:14px}.skel.line{height:14px;border-radius:7px;margin:8px 0}.skel.circle{border-radius:50%}
@keyframes shimmer{from{background-position:200% 0}to{background-position:-200% 0}}

/* États vides */
.empty{text-align:center;padding:36px 18px}.empty .ill{font-size:3.4rem;line-height:1;margin-bottom:10px;display:inline-block;animation:float 3s ease-in-out infinite}
.empty h2{margin-bottom:6px}.empty p{color:var(--mu);max-width:380px;margin:0 auto 16px}
@keyframes float{50%{transform:translateY(-6px)}}

/* Chiens (fiches privées) */
.dog{display:block;text-decoration:none;color:inherit;text-align:center;padding:16px 10px;transition:transform .2s var(--ease),box-shadow .2s}
.dog:hover{transform:translateY(-3px);box-shadow:var(--sh2)}
.dog .ph{width:104px;height:104px;border-radius:50%;object-fit:cover;background:var(--o3);display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 10px;box-shadow:0 0 0 3px var(--card),0 0 0 6px var(--o2)}
.dog img.ph{display:block}
.hero{display:flex;gap:18px;align-items:center}
.hero .ph{width:96px;height:96px;flex:none;border-radius:50%;object-fit:cover;background:var(--o3);display:flex;align-items:center;justify-content:center;font-size:2.6rem;box-shadow:0 0 0 3px var(--card),0 0 0 6px var(--o2)}
.tabs{display:flex;gap:6px;overflow-x:auto;padding:2px 2px 8px;margin-bottom:8px;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}
.tabs a{white-space:nowrap;padding:8px 14px;border-radius:999px;background:var(--card);border:1px solid var(--line);text-decoration:none;color:var(--tx);font-weight:700;font-size:.88rem;transition:background .2s,color .2s}
.tabs a.on{background:var(--tx);color:var(--bg);border-color:var(--tx)}
.item{display:flex;align-items:center;gap:12px;padding:11px 4px;border-bottom:1px solid var(--line)}
.item:last-child{border-bottom:0}
.item input[type=checkbox]{width:24px;height:24px;margin:0;accent-color:var(--ok);flex:none;cursor:pointer}
.item .l{flex:1}.item.done .l{text-decoration:line-through;color:var(--mu)}
.item input[type=date]{width:auto;margin:0;padding:6px 8px}
.x{background:none;border:0;color:var(--mu);cursor:pointer;font-size:1.05rem;padding:6px;border-radius:8px}.x:hover{background:var(--card2);color:var(--tx)}
.due{display:inline-block;font-size:.74rem;font-weight:800;padding:2px 9px;border-radius:99px;background:var(--o3);color:var(--o);margin-left:4px;vertical-align:middle}
.due.late{background:var(--bad);color:#fff}
.prog{height:10px;background:var(--card2);border-radius:9px;overflow:hidden;margin:6px 0 12px}.prog i{display:block;height:100%;background:linear-gradient(90deg,#51cf66,#2b8a3e);border-radius:9px;transition:width .5s var(--ease)}

/* Pied de page, toasts, cookies */
.foot{text-align:center;font-size:.78rem;padding:18px 12px 28px;color:var(--mu)}.foot a{color:var(--mu)}
.toast{position:fixed;left:50%;bottom:calc(86px + env(safe-area-inset-bottom));transform:translateX(-50%);background:var(--tx);color:var(--bg);padding:11px 18px;border-radius:14px;z-index:60;font-weight:700;box-shadow:var(--sh2);animation:toastIn .3s var(--ease);max-width:calc(100% - 32px)}
@keyframes toastIn{from{opacity:0;transform:translate(-50%,12px)}}
@media (min-width:900px){.toast{bottom:28px}}
.cookie{position:fixed;left:10px;right:10px;bottom:calc(70px + env(safe-area-inset-bottom));max-width:560px;margin:0 auto;background:var(--card);color:var(--tx);border:1px solid var(--line);padding:14px 16px;border-radius:var(--r);z-index:30;box-shadow:var(--sh2);font-size:.88rem;max-height:60vh;overflow:auto;animation:fadeUp .35s var(--ease)}
@media (min-width:900px){.cookie{left:auto;right:20px;bottom:20px;width:420px}}
.cookie p{margin:0 0 10px}
.ckbtns{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ckbtns .btn{flex:1;min-width:92px}
.ckrow{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--line);font-weight:400}
.ckrow input{width:22px;height:22px;flex:none;margin:0;accent-color:var(--o)}.ckrow small{color:var(--mu)}
.legal{padding-bottom:20px}.legal-card{max-width:760px;margin:24px auto;line-height:1.65}

/* Authentification */
.auth{display:grid;gap:0;max-width:940px;margin:10px auto;border-radius:24px;overflow:hidden;box-shadow:var(--sh2);background:var(--card);border:1px solid var(--line)}
.auth-hero{background:var(--grad);color:#fff;padding:28px 24px;position:relative;overflow:hidden}
.auth-hero h1{font-size:1.9rem;color:#fff}.auth-hero p{opacity:.95;margin:.3em 0}
.auth-hero .paws{position:absolute;right:-10px;bottom:-20px;font-size:7rem;opacity:.18;transform:rotate(-18deg)}
.auth-hero ul{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:6px;font-weight:700}
.auth-form{padding:24px}
@media (min-width:800px){.auth{grid-template-columns:1fr 1fr;margin-top:40px}.auth-hero{padding:44px 36px;display:flex;flex-direction:column;justify-content:center}.auth-form{padding:40px 36px}}
@media (min-width:900px){body.guest .layout{display:block}body.guest .foot{margin-left:0}body.guest .topbar{display:flex}}

/* Jeux */
.games{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.game-tile{display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px 10px;border-radius:var(--r);background:var(--card);border:1px solid var(--line);text-decoration:none;color:var(--tx);box-shadow:var(--sh);text-align:center;transition:transform .2s var(--ease),box-shadow .2s}
.game-tile:hover{transform:translateY(-3px) rotate(-.5deg);box-shadow:var(--sh2)}
.game-tile b{font-size:2.3rem}.game-tile small{color:var(--mu)}
.mem{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.mem button{aspect-ratio:1;border:0;border-radius:14px;font-size:2rem;background:var(--grad);color:#fff;cursor:pointer;transition:transform .25s var(--ease)}
.mem button.up{background:var(--card);color:var(--tx);box-shadow:inset 0 0 0 2px var(--o);transform:rotateY(180deg) scaleX(-1)}
.mem button.ok{background:var(--ok);color:#fff}.mem button small{display:block;font-size:.55rem}
.quiz button{display:block;width:100%;text-align:left;margin:6px 0;padding:13px 14px;border-radius:14px;border:2px solid var(--line);background:var(--card);cursor:pointer;font-weight:600;transition:border-color .2s,background .2s}
.quiz button:hover{border-color:var(--o2)}.quiz button.good{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,transparent)}.quiz button.bad{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 14%,transparent)}
.arena{position:relative;height:340px;background:linear-gradient(#bfe3ff,#c8f2c0);border-radius:var(--r);overflow:hidden;touch-action:manipulation}
.arena .t{position:absolute;font-size:2.4rem;cursor:pointer;user-select:none;transition:transform .1s;animation:pop .25s var(--ease)}
.arena .t:active{transform:scale(1.3)}
.big{font-size:3rem;font-weight:900;text-align:center}
.wheel{width:260px;height:260px;margin:10px auto;border-radius:50%;border:8px solid var(--o);display:flex;align-items:center;justify-content:center;text-align:center;padding:30px;font-weight:800;color:#3b2414;transition:transform 3s cubic-bezier(.2,.8,.2,1);background:conic-gradient(#ffd8a8 0 25%,#ffe8cc 0 50%,#ffd8a8 0 75%,#ffe8cc 0)}
.simon{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:300px;margin:auto}
.simon button{aspect-ratio:1;border:0;border-radius:22px;font-size:2.6rem;opacity:.55;cursor:pointer;transition:opacity .15s,transform .15s}
.simon button.lit{opacity:1;transform:scale(1.05)}
table{width:100%;border-collapse:collapse}td,th{padding:8px 6px;border-bottom:1px solid var(--line);text-align:left}

/* Social */
.av{width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--o3);display:inline-flex;align-items:center;justify-content:center;font-weight:900;color:var(--o);flex:none}
.av.big{width:88px;height:88px;font-size:2.1rem}
@media (min-width:700px){.av.big{width:130px;height:130px;font-size:3rem}}
.post{padding:0;overflow:hidden;animation:fadeUp .3s var(--ease) both}
.ph-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px}
.who{display:flex;gap:10px;align-items:center;text-decoration:none;color:inherit}.who .av{box-shadow:0 0 0 2px var(--card),0 0 0 4px var(--o2)}
.link{color:var(--tx);font-weight:700;cursor:pointer}.link:hover{text-decoration:underline}
.pimg{width:100%;display:block;aspect-ratio:1;max-height:min(80vh,640px);object-fit:cover;background:var(--card2);user-select:none;cursor:pointer}
.acts{display:flex;gap:2px;padding:6px 8px 2px}
.ib{background:none;border:0;font-size:1.2rem;padding:7px 9px;cursor:pointer;color:var(--tx);text-decoration:none;border-radius:12px;display:inline-flex;align-items:center;gap:6px;transition:transform .15s var(--ease),background .2s}
.ib span{font-size:.95rem;font-weight:800}.ib:hover{background:var(--card2)}.ib:active{transform:scale(1.25)}
.ib.on{animation:pop .35s var(--ease)}.ib.on span{color:var(--bad)}
.heart-burst{position:absolute;left:50%;top:50%;font-size:6rem;transform:translate(-50%,-50%) scale(0);pointer-events:none;animation:burst .8s var(--ease) forwards;filter:drop-shadow(0 4px 20px #0005)}
@keyframes burst{30%{transform:translate(-50%,-50%) scale(1.15);opacity:1}100%{transform:translate(-50%,-50%) scale(1);opacity:0}}
.pwrap{position:relative}
.cap{padding:2px 14px 14px;margin:0;line-height:1.5;word-wrap:break-word}
.more{font-size:1.4rem;line-height:1}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:10px}
.pgrid a{position:relative;aspect-ratio:1;overflow:hidden;background:var(--card2);border-radius:10px}
.pgrid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s var(--ease),filter .3s}
.pgrid a:hover img{transform:scale(1.06);filter:brightness(.85)}
.pgrid span{position:absolute;bottom:6px;left:8px;color:#fff;font-size:.78rem;font-weight:800;text-shadow:0 1px 4px #000a}.pgrid i{position:absolute;top:6px;right:8px;font-style:normal}
.chips{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 14px}
.chips a{background:var(--card);border:1px solid var(--line);padding:6px 12px;border-radius:999px;text-decoration:none;font-weight:700;font-size:.88rem;transition:background .2s}
.chips a:hover{background:var(--o3)}.chips small{color:var(--mu);font-weight:600}
.srow{display:flex;gap:12px;align-items:center;padding:9px 6px;text-decoration:none;color:inherit;border-radius:12px;transition:background .15s}.srow:hover{background:var(--card2)}
.search{position:relative}.search input{padding-left:40px;border-radius:999px;margin:0 0 10px}.search::before{content:"🔍";position:absolute;left:14px;top:11px;font-size:.95rem;opacity:.7}
.stats{display:flex;gap:16px;flex-wrap:wrap;margin:4px 0 10px;font-size:.92rem}.stats b{font-weight:900}
.cm{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);align-items:flex-start;animation:fadeUp .25s var(--ease) both}.cm.hid{opacity:.5}.cm:last-child{border-bottom:0}
.sheet-bg{position:fixed;inset:0;background:rgb(0 0 0/.45);z-index:50;display:flex;align-items:flex-end;justify-content:center;animation:fade .2s}
@keyframes fade{from{opacity:0}}
.sheet{width:100%;max-width:520px;border-radius:24px 24px 0 0;margin:0;display:flex;flex-direction:column;gap:8px;padding-bottom:max(16px,env(safe-area-inset-bottom));max-height:90vh;overflow:auto;animation:sheetUp .3s var(--ease)}
@keyframes sheetUp{from{transform:translateY(100%)}}
@media (min-width:700px){.sheet-bg{align-items:center}.sheet{border-radius:24px;animation:fadeUp .25s var(--ease)}}
.notice{background:color-mix(in srgb,#fcc419 20%,var(--card));border:1px solid color-mix(in srgb,#fcc419 45%,transparent);border-radius:14px;padding:11px 13px;margin-bottom:14px;font-size:.9rem}
.drop{display:flex;align-items:center;justify-content:center;min-height:220px;border:2px dashed var(--o2);border-radius:var(--r);cursor:pointer;margin-bottom:12px;overflow:hidden;font-weight:800;color:var(--o);background:var(--o3);transition:background .2s}
.drop:hover{background:color-mix(in srgb,var(--o3) 70%,var(--card))}.drop img{width:100%;max-height:460px;object-fit:contain;background:#000}
.modbar{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.mthumb{width:120px;height:120px;object-fit:cover;border-radius:12px}

/* Stories (avatars de chiens) */
.stories{display:flex;gap:14px;overflow-x:auto;padding:4px 4px 14px;margin:0 -4px 6px;scrollbar-width:none;scroll-snap-type:x proximity}.stories::-webkit-scrollbar{display:none}
.story{display:flex;flex-direction:column;align-items:center;gap:5px;text-decoration:none;color:var(--tx);flex:none;width:72px;scroll-snap-align:start}
.story .ring{padding:3px;border-radius:50%;background:var(--story);transition:transform .2s var(--ease)}.story.seen .ring{background:var(--line)}
.story:hover .ring{transform:scale(1.06)}
.story .av{width:62px;height:62px;border:3px solid var(--card);font-size:1.6rem}
.story small{font-size:.74rem;font-weight:700;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.story.add .ring{background:var(--card2)}.story.add .av{color:var(--o);font-size:1.8rem}
.dogrow{display:flex;gap:16px;overflow-x:auto;padding:4px 2px 12px}

/* Colonne droite */
.me-mini{display:flex;align-items:center;gap:12px;margin-bottom:18px}.me-mini .av{width:52px;height:52px}
.right h4{margin:0 0 10px;color:var(--mu);font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.sugg{display:flex;align-items:center;gap:10px;padding:7px 0}.sugg .who{flex:1;min-width:0}.sugg .who span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.linkbtn{background:none;border:0;color:var(--o);font-weight:800;cursor:pointer;padding:4px 6px;border-radius:8px}.linkbtn:hover{background:var(--o3)}
.right .mini-foot{font-size:.75rem;color:var(--mu);margin-top:22px;line-height:1.7}.right .mini-foot a{color:var(--mu)}
