/* CinéCarnet — styles de l'appli (chargé par index.html) */
:root{
    --bg:#E9E5DC; --surface:#F7F4EE; --surface-2:#EFEBE1;
    --ink:#181510; --muted:#6A6357; --faint:#9c948363;
    --line:#DAD4C7; --line-strong:#C5BEAD;
    --accent:#A66B24; --accent-ink:#FBF7EF; --gold:#A66B24; --good:#A66B24;
    --shadow:0 1px 2px rgba(24,21,16,.06), 0 10px 26px rgba(24,21,16,.08);
    --radius:12px;
  }
  @media (prefers-color-scheme:dark){
    :root:not([data-theme="light"]){
      --bg:#0D0E12; --surface:#16171D; --surface-2:#1F2028;
      --ink:#F2EEE5; --muted:#928C81; --faint:#8a827240;
      --line:#282A32; --line-strong:#3A3D48;
      --accent:#E0A24E; --accent-ink:#17130B; --gold:#E0A24E; --good:#E0A24E;
      --shadow:0 1px 2px rgba(0,0,0,.4), 0 14px 34px rgba(0,0,0,.5);
    }
  }
  :root[data-theme="dark"]{
    --bg:#0D0E12; --surface:#16171D; --surface-2:#1F2028;
    --ink:#F2EEE5; --muted:#928C81; --faint:#8a827240;
    --line:#282A32; --line-strong:#3A3D48;
    --accent:#E0A24E; --accent-ink:#17130B; --gold:#E0A24E; --good:#E0A24E;
    --shadow:0 1px 2px rgba(0,0,0,.4), 0 14px 34px rgba(0,0,0,.5);
  }
  /* Thème sur mesure « Nuit Bleue » : bleu nuit profond + accent doré */
  :root[data-theme="custom"]{
    --bg:#0A0F1E; --surface:#121A30; --surface-2:#1B2540;
    --ink:#ECF1FB; --muted:#8B99B8; --faint:#8b99b833;
    --line:#22304F; --line-strong:#33446E;
    --accent:#E7B45A; --accent-ink:#120C02; --gold:#E7B45A; --good:#E7B45A;
    --shadow:0 1px 2px rgba(3,8,20,.5), 0 16px 40px rgba(3,8,20,.62);
  }
  /* ===== Thème « Affiche » ===== */
  :root[data-theme="affiche"]{
    --bg:#14110B; --surface:#1E190F; --surface-2:#28210F;
    --ink:#F0E7D3; --muted:#AA9E83; --faint:rgba(240,231,211,.10);
    --line:#332B1C; --line-strong:#4C4029;
    --accent:#C0533B; --accent-ink:#160D08; --gold:#C0533B; --good:#77B598;
    --radius:6px;
    --shadow:0 1px 2px rgba(0,0,0,.5), 0 14px 34px rgba(0,0,0,.55);
  }
  :root[data-theme="affiche"] body{ font-family:"Space Grotesk", system-ui, -apple-system, Segoe UI, Roboto, sans-serif; }
  :root[data-theme="affiche"] .ptitle{ font-family:"Anton",Impact,sans-serif; font-weight:400; text-transform:uppercase; letter-spacing:.03em; font-size:28px; line-height:1; padding-bottom:8px; border-bottom:2px solid var(--accent); }
  :root[data-theme="affiche"] .ptitle .mono{ color:var(--muted); font-size:13px; }
  :root[data-theme="affiche"] .brand h1{ font-family:"Anton",Impact,sans-serif; text-transform:uppercase; letter-spacing:.04em; }
  :root[data-theme="affiche"] .searchbox:focus-within{ border-color:var(--accent); box-shadow:0 0 0 3px rgba(192,83,59,.14); }
  :root[data-theme="affiche"] .progress .pbar i{ background:var(--good); }
  :root[data-theme="affiche"] .grain{ position:fixed; inset:0; pointer-events:none; z-index:5; opacity:.05; background-size:180px;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
  :root:not([data-theme="affiche"]) .grain{ display:none; }

  *{box-sizing:border-box}
  html,body{margin:0}
  html{background:var(--bg);min-height:100%}
  body{background:var(--bg);color:var(--ink);font-family:"Archivo",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
    font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
    min-height:100vh;min-height:100dvh}
  .mono{font-family:"Space Mono",monospace;font-variant-numeric:tabular-nums}
  button{font-family:inherit;cursor:pointer}
  :focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}

  header{position:sticky;top:0;z-index:20;background:var(--bg);
    border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}
  .head-wrap{max-width:1120px;margin:0 auto;padding:14px 20px}
  .brand-row{display:flex;align-items:center;gap:14px;justify-content:space-between}
  .brand{display:flex;align-items:baseline;gap:10px;min-width:0}
  .brand .reel{font-size:22px;line-height:1}
  .brand h1{font-family:"Archivo",serif;font-weight:600;font-size:22px;margin:0;letter-spacing:.2px;white-space:nowrap}
  .brand .tag{color:var(--muted);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;display:none}
  @media(min-width:620px){.brand .tag{display:inline}}
  .theme-btn{background:var(--surface);border:1px solid var(--line-strong);color:var(--muted);
    width:38px;height:38px;border-radius:9px;font-size:16px;display:grid;place-items:center;flex:0 0 auto;transition:.15s}
  .theme-btn:hover{color:var(--ink);border-color:var(--accent)}

  .search-row{display:flex;gap:10px;margin-top:14px}
  .search{flex:1;display:flex;align-items:center;gap:9px;background:var(--surface);border:1px solid var(--line-strong);
    border-radius:10px;padding:0 12px;box-shadow:var(--shadow);transition:border-color .15s}
  .search:focus-within{border-color:var(--accent)}
  .search svg{flex:0 0 auto;color:var(--muted)}
  .search input{border:0;background:transparent;color:var(--ink);font-family:inherit;font-size:16px;padding:12px 0;width:100%}
  .search input:focus{outline:none}
  .search input::placeholder{color:var(--muted)}
  .clear-x{background:none;border:0;color:var(--muted);font-size:18px;line-height:1;padding:4px;display:none}
  .clear-x.show{display:block}
  .add-btn{flex:0 0 auto;display:flex;align-items:center;gap:7px;background:var(--accent);color:var(--accent-ink);
    border:1px solid var(--accent);border-radius:10px;padding:0 16px;font-weight:600;font-size:14.5px;box-shadow:var(--shadow);transition:.15s}
  .add-btn:hover{filter:brightness(1.06)}
  .add-btn .plus{font-size:18px;margin-top:-1px}
  .add-btn .lbl{display:none}
  @media(min-width:520px){.add-btn .lbl{display:inline}}

  .tabs{display:flex;gap:26px;margin-top:16px;margin-bottom:-1px}
  .tab{background:none;border:0;padding:8px 2px 12px;color:var(--muted);font-size:15px;font-weight:500;position:relative}
  .tab .count{font-family:"Space Mono",monospace;font-size:12px;color:var(--muted);background:var(--surface-2);
    border:1px solid var(--line);border-radius:20px;padding:1px 7px;margin-left:6px}
  .tab.active{color:var(--ink)}
  .tab.active::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent);border-radius:2px}
  .tab.active .count{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}

  main{max-width:1120px;margin:0 auto;padding:22px 20px 90px}
  .filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:20px}
  .chip{background:var(--surface);border:1px solid var(--line-strong);color:var(--muted);border-radius:20px;
    padding:6px 14px;font-size:13.5px;font-weight:500;transition:.14s}
  .chip:hover{color:var(--ink)}
  .chip.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
  .spacer{flex:1}
  .sort-lbl{color:var(--muted);font-size:12.5px;letter-spacing:.04em}

  .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(116px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);
    border-radius:var(--radius);overflow:hidden;margin-bottom:22px;box-shadow:var(--shadow)}
  .st-time .n{font-size:21px;letter-spacing:0;color:var(--accent)}
  @media(max-width:560px){.st-time .n{font-size:19px}}
  .stat{background:var(--surface);padding:15px 16px}
  .stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .wtime{margin-top:10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius,14px);padding:13px 16px}
  .wtime .wt-k{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-family:"Space Mono",monospace}
  .wtime .wt-v{text-transform:none;letter-spacing:0;font-family:"Archivo",serif;font-size:24px;font-weight:700;color:var(--accent);margin-top:4px;font-variant-numeric:tabular-nums}
  .wtime .wt-empty{font-size:13px;color:var(--muted);margin-top:6px}
  .wtime .wt-bar{display:flex;gap:2px;height:7px;border-radius:99px;overflow:hidden;background:var(--surface-2);margin:10px 0 8px}
  .wtime .wt-bar span{display:block;height:100%}
  .wtime .f{background:var(--accent)} .wtime .s{background:#1E9BC9}
  .wtime .wt-leg{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}
  .wtime .wt-leg i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:6px;vertical-align:0}
  .wtime .wt-leg b{color:var(--ink);font-weight:700}
  .stat .n{font-family:"Archivo",serif;font-size:28px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums}
  .stat .k{color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.07em;margin-top:6px}
  @media(max-width:560px){.stat .n{font-size:23px} .stat{padding:13px 12px}}

  .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}
  .carousel{margin-bottom:24px}
  .carousel>.ptitle{margin-bottom:12px}
  .carousel-wrap{position:relative}
  .carousel-row{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 10px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}
  .carousel-row::-webkit-scrollbar{height:6px}
  .carousel-row::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:3px}
  .carousel-row::-webkit-scrollbar-track{background:transparent}
  .carousel-row .card{width:148px;flex:0 0 auto;scroll-snap-align:start}
  .car-arrow{position:absolute;top:93px;z-index:4;width:36px;height:36px;border-radius:50%;border:1.5px solid var(--line-strong);background:var(--surface);color:var(--ink);display:none;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 3px 14px rgba(0,0,0,.32),0 0 0 1px color-mix(in srgb,var(--ink) 8%,transparent)}
  .car-arrow svg{width:18px;height:18px;display:block}
  .carousel-wrap.has-overflow .car-arrow{display:flex}
  .car-arrow.left{left:-6px}
  .car-arrow.right{right:-6px}
  .car-arrow.dim{opacity:.32;pointer-events:none}
  .car-arrow:hover{border-color:var(--accent);color:var(--accent)}
  @media (hover:none) and (pointer:coarse){ .carousel-wrap .car-arrow, .carousel-wrap.has-overflow .car-arrow{display:none!important} }
  .card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
    display:flex;flex-direction:column;box-shadow:var(--shadow);transition:transform .12s ease,border-color .15s;text-align:left;padding:0;color:inherit}
  .card:hover{transform:translateY(-2px);border-color:var(--line-strong)}

  .cover{--cg:#454049;aspect-ratio:2/3;position:relative;display:flex;flex-direction:column;justify-content:flex-end;
    padding:0;color:#F4EFE6;overflow:hidden;isolation:isolate;
    background:
      radial-gradient(120% 78% at 24% 10%, rgba(255,255,255,.15), transparent 52%),
      linear-gradient(to top, rgba(0,0,0,.48), rgba(0,0,0,0) 48%),
      linear-gradient(163deg, var(--cg), color-mix(in srgb, var(--cg) 56%, #000))}
  .cover::before{display:none}
  .cover::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;mix-blend-mode:overlay;opacity:.13;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
  .cover .c-kind{position:absolute;top:15px;left:15px;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;opacity:.85}
  .cover .c-rule{position:absolute;top:34px;left:15px;right:15px;height:1px;background:rgba(242,238,230,.32)}
  .cover .c-title{font-family:"Archivo",serif;font-weight:600;font-size:19px;line-height:1.14;letter-spacing:.2px;
    text-wrap:balance;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;text-shadow:0 1px 10px rgba(0,0,0,.3)}
  .cover .c-year{font-family:"Space Mono",monospace;font-size:12px;margin-top:9px;opacity:.9;letter-spacing:.02em}
  .cover .c-badge{position:absolute;top:12px;right:12px;width:24px;height:24px;border-radius:50%;background:var(--good);color:#fff;
    display:none;place-items:center;font-size:13px;box-shadow:0 2px 8px rgba(0,0,0,.35);z-index:2}
  .card.seen .cover .c-badge{display:grid}
  .card.seen .cover::before{border-color:rgba(255,255,255,.5)}

  .card-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:8px;flex:1}
  /* Bouton « vu » rond sur l'affiche (remplace le grand bouton « Marquer vu ») */
  .vu-btn{position:absolute;right:10px;bottom:10px;z-index:3;width:34px;height:34px;border-radius:50%;border:1.5px solid rgba(255,255,255,.75);background:rgba(10,10,14,.55);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:transform .12s,background .15s}
  .vu-btn svg{width:17px;height:17px;opacity:.55}
  .vu-btn:hover{transform:scale(1.06)}
  .vu-btn.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink,#17130B)}
  .vu-btn.on svg{opacity:1}
  .stars-row{display:flex;gap:1px;color:var(--gold);font-size:13px;min-height:16px}
  .stars-row .off{color:var(--faint)}
  .progress{display:flex;flex-direction:column;gap:5px;min-height:16px}
  .progress .pbar{height:5px;border-radius:4px;background:var(--surface-2);border:1px solid var(--line);overflow:hidden}
  .progress .pbar i{display:block;height:100%;background:var(--good);border-radius:4px;transition:width .2s}
  .progress .plbl{font-family:"Space Mono",monospace;font-size:11px;color:var(--muted)}
  .seen-toggle,.ep-cta{margin-top:auto;width:100%;border-radius:8px;padding:8px;font-size:13px;font-weight:600;
    border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink);transition:.14s}
  .ep-cta{display:flex;gap:6px;align-items:center;justify-content:center}
  .seen-toggle:hover,.ep-cta:hover{border-color:var(--accent)}
  #simpleView.simple-locked>.field{display:none}
  #simpleView.simple-locked:not(:has(#setupEpBtn[style*="block"])){display:none!important}
  .card.seen .seen-toggle{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);border-color:var(--accent);border-style:solid;font-weight:700}
  .head-right{display:flex;align-items:center;gap:10px;flex:0 0 auto}
  .flt-btn{position:relative;width:34px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);color:var(--muted);cursor:pointer;padding:0;transition:color .15s,border-color .15s,background .15s}
  .flt-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
  .flt-btn:hover,.flt-btn.open{color:var(--ink);border-color:var(--line-strong)}
  .flt-btn.act{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 55%,transparent)}
  .flt-btn i{position:absolute;top:-6px;right:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font:800 10.5px/17px "Archivo",sans-serif;font-style:normal;text-align:center;box-shadow:0 0 0 2px var(--bg)}
  .flt-panel{margin:0 0 18px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);display:flex;flex-direction:column;gap:12px;animation:fltIn .18s ease-out}
  @keyframes fltIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
  .flt-q{display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;border-radius:11px;background:var(--surface-2);border:1px solid var(--line)}
  .flt-q svg{width:16px;height:16px;fill:none;stroke:var(--muted);stroke-width:2.2;stroke-linecap:round;flex:0 0 auto}
  .flt-q input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font:500 14px "Archivo",sans-serif;outline:none}
  .flt-sec{display:flex;flex-direction:column;gap:7px}
  .flt-l{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
  .flt-chips{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;padding-bottom:1px}
  .flt-chips::-webkit-scrollbar{display:none}
  .flt-chip{flex:0 0 auto;height:32px;padding:0 13px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink);font:600 13px "Archivo",sans-serif;cursor:pointer;white-space:nowrap}
  .flt-chip:hover{border-color:var(--line-strong)}
  .flt-chip.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
  .flt-reset{align-self:flex-start;border:0;background:none;color:var(--accent);font:700 13px "Archivo",sans-serif;cursor:pointer;padding:2px 0}
  .flt-none{padding:40px 10px;text-align:center;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:10px}
  .flt-none .flt-reset{align-self:center}
  @media(min-width:900px){ .flt-sec{flex-direction:row;align-items:center;gap:14px} .flt-l{width:92px;flex:0 0 auto} .flt-chips{flex-wrap:wrap;overflow:visible} }

  .view-toggle{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--surface-2)}
  .view-toggle .vt{width:34px;height:30px;display:grid;place-items:center;background:transparent;border:0;color:var(--muted);cursor:pointer;padding:0}
  .view-toggle .vt+.vt{border-left:1px solid var(--line)}
  .view-toggle .vt.on{background:var(--accent);color:var(--accent-ink)}
  .view-toggle .vt svg{width:16px;height:16px}
  .prof-subnav{display:flex;gap:8px;margin:28px 0 18px}
  .prof-subnav .psub{flex:1;padding:11px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);color:var(--muted);font-weight:600;font-size:14px;cursor:pointer;transition:.12s}
  .prof-subnav .psub:hover{border-color:var(--line-strong)}
  .prof-subnav .psub.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
  .bilan-btn{margin:14px 0 2px;width:100%;display:flex;align-items:center;justify-content:center;gap:9px;background:var(--accent);color:var(--accent-ink);border:0;border-radius:12px;padding:14px;font-weight:700;font-size:15px;cursor:pointer}
  .bilan-btn:hover{filter:brightness(1.06)}
  #bilanCanvasWrap{display:flex;align-items:center;justify-content:center;min-height:220px}
  .bi-canvas{width:100%;max-width:340px;height:auto;border-radius:14px;box-shadow:var(--shadow);display:block}
  .bi-gen{color:var(--muted);font-size:14px;padding:60px 0}
  /* ==== Amis (écran pro plein écran) ==== */
  .head-fr{width:38px;height:38px;border-radius:10px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);display:flex;align-items:center;justify-content:center;flex:0 0 auto;cursor:pointer;position:relative}
  .head-fr .hf-l{display:none;font-size:13px;font-weight:700;margin-left:7px}
  @media(min-width:700px){ .head-fr{width:auto;padding:0 12px} .head-fr .hf-l{display:inline} }
  .head-fr svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  .head-fr .fr-dot{position:absolute;top:-4px;right:-4px;background:#E5533B;color:#fff;border-radius:999px;font-size:10px;font-weight:800;min-width:16px;height:16px;display:none;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--bg)}
  #friendsOverlay .sheet, #refOverlay .sheet{display:flex;flex-direction:column;overflow:hidden}
  .fr-top{display:flex;align-items:center;gap:12px;padding:16px 18px;padding-top:max(16px,env(safe-area-inset-top));background:var(--bg);border-bottom:1px solid var(--line);flex:0 0 auto}
  .fr-top .icbtn{width:38px;height:38px;border-radius:10px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);display:flex;align-items:center;justify-content:center;flex:0 0 auto;cursor:pointer;font-size:19px}
  .fr-top h1{font-family:"Anton",Impact,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.03em;font-size:23px;flex:1;line-height:1.25;padding-top:2px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
  #friendsBody, #refBody{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px 18px calc(30px + env(safe-area-inset-bottom,0px))}
  .fr-me{display:flex;align-items:center;gap:14px;background:linear-gradient(180deg,var(--surface),var(--surface-2));border:1px solid var(--line);border-radius:16px;padding:15px;box-shadow:var(--shadow)}
  .fr-av{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;flex:0 0 auto;font-family:"Archivo",sans-serif;color:#fff;overflow:hidden}
  .fr-me .fr-av{width:52px;height:52px;font-size:21px;background:linear-gradient(150deg,var(--accent),#c87f2c);color:var(--accent-ink)}
  .fr-me .fr-nm{font-size:17px;font-weight:700;line-height:1.1}
  .fr-me .fr-us{font-size:13px;color:var(--muted);margin-top:2px}
  .fr-me .fr-edit{margin-left:auto;font-size:12.5px;color:var(--accent);background:none;border:0;font-weight:700;cursor:pointer;font-family:inherit;flex:0 0 auto}
  .ref-badge{display:inline-block;font-size:.9em;vertical-align:baseline;margin-left:4px}
  .ref-ring{border-radius:50%;padding:3px;background:linear-gradient(135deg,#F5C451,#C87F2C);display:inline-flex}
  .ref-ring>*{border:2px solid var(--bg);border-radius:50%}
  .ref-gold{background:linear-gradient(135deg,#F5C451,#E0A24E);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}
  .ref-hero{background:linear-gradient(150deg,#2a2016,#16171D);border:1px solid var(--line);border-radius:18px;padding:20px 18px;text-align:center;box-shadow:var(--shadow)}
  .ref-hero .rh-em{font-size:44px;line-height:1}
  .ref-hero .rh-t{font-size:20px;font-weight:800;margin-top:6px;color:#F2EFE8}
  .ref-hero .rh-s{color:rgba(242,239,232,.72);font-size:13.5px;line-height:1.5;margin-top:6px;max-width:320px;margin-left:auto;margin-right:auto}
  .ref-count{font-family:"Space Mono",monospace;font-size:34px;font-weight:700;color:var(--accent);line-height:1}
  .ref-bar{height:12px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);overflow:hidden;margin:10px 0 6px}
  .ref-bar>i{display:block;height:100%;background:linear-gradient(90deg,#E0A24E,#F5C451);border-radius:999px;transition:width .5s ease}
  .ref-linkbox{display:flex;gap:8px;align-items:center;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;padding:10px 12px;margin-top:14px}
  .ref-linkbox .rl{flex:1;min-width:0;font-size:12.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:"Space Mono",monospace}
  .ref-wrap, .fr-wrap{max-width:560px;margin:0 auto}
  .ref-wrap{max-width:640px}
  @media(min-width:760px){
    .fr-wrap{max-width:720px}
    #frList .fr-sec, #frSearchRes .fr-sec, #refList .fr-sec, #frList .fr-empty, #frSearchRes .fr-empty, #refList .fr-empty{grid-column:1/-1}
  }
  .ref-tiers{display:grid;grid-template-columns:1fr;gap:10px;margin-top:14px}
  .ref-tier{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
  .ref-tier .rt-em{width:40px;height:40px;border-radius:11px;background:var(--surface-2);border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;font-size:20px;flex:0 0 auto}
  .ref-tier.on{border-color:#F5C451;background:linear-gradient(180deg,color-mix(in srgb,#F5C451 10%,var(--surface)),var(--surface))}
  .ref-tier.on .rt-em{background:linear-gradient(135deg,#F5C451,#C87F2C);border-color:#F5C451}
  .ref-tier .rt-g{flex:1;min-width:0}
  .ref-tier .rt-n{font-weight:700;font-size:14.5px}
  .ref-tier .rt-d{font-size:12.5px;color:var(--muted);margin-top:1px}
  .ref-tier .rt-goal{font-size:12px;color:var(--muted);font-family:"Space Mono",monospace;flex:0 0 auto;white-space:nowrap}
  .ref-tier.on .rt-goal{color:#C87F2C;font-weight:700}
  @media(min-width:760px){
    .ref-tiers{grid-template-columns:1fr 1fr}
    .ref-hero{padding:28px 24px}
    .ref-hero .rh-s{max-width:420px}
  }
  /* ---- Parrainage (refonte sobre) ---- */
  .rf{max-width:600px;margin:0 auto;padding-top:6px}
  .rf-h{font-family:"Archivo",sans-serif;font-size:26px;font-weight:700;letter-spacing:-.01em;line-height:1.15;margin:4px 0 0}
  .rf-lead{color:var(--muted);font-size:14.5px;line-height:1.55;margin:8px 0 0;max-width:460px}
  .rf-card{margin-top:22px;border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:18px}
  .rf-stat{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
  .rf-num{font-family:"Archivo",sans-serif;font-size:34px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
  .rf-num small{font-size:14px;font-weight:500;color:var(--muted);margin-left:6px}
  .rf-next{font-size:13px;color:var(--muted);text-align:right}
  .rf-next b{color:var(--ink);font-weight:600}
  .rf-track{position:relative;height:4px;border-radius:4px;background:var(--surface-2);margin:22px 9px 0}
  .rf-track>i{position:absolute;left:0;top:0;bottom:0;border-radius:4px;background:var(--accent);transition:width .5s ease}
  .rf-node{position:absolute;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--surface);border:2px solid var(--line-strong)}
  .rf-node.on{background:var(--accent);border-color:var(--accent)}
  .rf-node span{position:absolute;top:16px;left:50%;transform:translateX(-50%);font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
  .rf-node.on span{color:var(--ink);font-weight:600}
  .rf-track{margin-bottom:34px}
  .rf-share{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin-top:18px;padding:14px;border-radius:12px;border:0;background:var(--accent);color:var(--accent-ink);font-weight:600;font-size:15px;line-height:1;font-family:inherit;cursor:pointer}
  .rf-share:active{transform:scale(.99)}
  .rf-share svg,.rf-copy svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .rf-link{display:flex;align-items:center;gap:8px;margin-top:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:6px 6px 6px 14px}
  .rf-link .rl{flex:1;min-width:0;font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .rf-copy{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink);border-radius:9px;padding:8px 12px;font-weight:600;font-size:13px;line-height:1;font-family:inherit;cursor:pointer}
  .rf-copy svg{width:15px;height:15px}
  .rf-sec{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600;margin:30px 0 8px}
  .rf-list{border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden}
  .rf-row{display:flex;align-items:center;gap:14px;padding:14px 16px}
  .rf-row+.rf-row{border-top:1px solid var(--line)}
  .rf-ic{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;background:var(--surface-2);color:var(--muted)}
  .rf-ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .rf-row.on .rf-ic{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}
  .rf-tx{flex:1;min-width:0}
  .rf-n{font-weight:600;font-size:14.5px}
  .rf-d{font-size:13px;color:var(--muted);margin-top:2px;line-height:1.4}
  .rf-goal{flex:0 0 auto;font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
  .rf-row.on .rf-goal{color:var(--accent);font-weight:600}
  .rf-empty{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:18px 16px;color:var(--muted);font-size:13.5px;line-height:1.5}
  .rf-empty b{display:block;color:var(--ink);font-weight:600;font-size:14.5px;margin-bottom:2px}
  .rf-note{color:var(--muted);font-size:12.5px;line-height:1.5;margin-top:14px}
  .fr-search{position:relative;margin-top:16px}
  .fr-search .sic{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;stroke:var(--muted);fill:none;stroke-width:2;pointer-events:none}
  .fr-search input[type=text]{width:100%;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;color:var(--ink);font-family:inherit;font-size:16px;padding:14px 14px 14px 42px}
  .fr-search input:focus{outline:none;border-color:var(--accent)}
  .fr-search input::placeholder{color:var(--muted)}
  .fr-pseudo-wrap{display:flex;align-items:center;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;padding:0 14px;margin-top:18px}
  .fr-pseudo-wrap:focus-within{border-color:var(--accent)}
  .fr-pseudo-wrap .fr-at{color:var(--muted);font-size:17px;font-weight:700;margin-right:2px}
  .fr-pseudo-wrap input{flex:1;min-width:0;background:none;border:0;color:var(--ink);font-family:inherit;font-size:16px;padding:14px 4px}
  .fr-pseudo-wrap input:focus{outline:none}
  /* ===== Onglet Communauté (refonte) ===== */
  .cm-head{display:flex;align-items:center;gap:10px}
  .cm-head .tabtitle{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .cm-back{width:38px;height:38px;flex:0 0 auto;border-radius:50%;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer}
  .cm-back svg{width:18px;height:18px}
  .cm-back[hidden]{display:none!important}
  .cm-head[hidden]{display:none!important}
  #commuWrap{padding-top:6px}
  .cm-back:hover{border-color:var(--accent);color:var(--accent)}
  .fr-wrap.cm{padding-bottom:10px}
  .cm-search{position:relative;display:flex;align-items:center;gap:10px;padding:0 14px;height:48px;border-radius:14px;background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow-sm,0 2px 10px -6px rgba(0,0,0,.3))}
  .cm-search:focus-within{border-color:var(--accent)}
  .cm-search .sic{width:19px;height:19px;flex:0 0 auto;fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round;position:static}
  .cm-search input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font-size:15px;font-family:inherit;outline:none;padding:0}
  .cm-me{display:flex;align-items:center;gap:13px;margin-top:14px;padding:14px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
  .cm-me .fr-av{width:54px;height:54px;font-size:21px}
  .cm-me-tx{flex:1;min-width:0}
  .cm-me-tx .fr-nm{font-size:16px}
  .cm-cnt{display:flex;gap:14px;margin-top:6px;flex-wrap:wrap}
  .cm-cnt button{border:0;background:none;padding:0;color:var(--muted);font-size:12.5px;font-family:inherit;cursor:pointer}
  .cm-cnt button b{color:var(--ink);font-size:14px;margin-right:3px}
  .cm-cnt button:hover{color:var(--ink)}
  .cm-invite{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:3px;border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink);border-radius:12px;padding:9px 12px;font-size:11.5px;font-weight:700;font-family:inherit;cursor:pointer}
  .cm-invite svg{width:20px;height:20px}
  .cm-invite:hover{border-color:var(--accent);color:var(--accent)}
  .cm-seg{display:flex;gap:6px;margin:18px 0 14px;overflow-x:auto;scrollbar-width:none;padding:2px}
  .cm-seg::-webkit-scrollbar{display:none}
  .cm-seg-b{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:9px 15px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-weight:700;font-size:13.5px;font-family:inherit;cursor:pointer;white-space:nowrap}
  .cm-seg-b.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
  .cm-seg-b .cm-n{font-family:"Space Mono",monospace;font-size:11.5px;opacity:.75}
  .cm-feed{display:flex;flex-direction:column;gap:8px}
  .sstrip{margin-top:18px;padding:20px 18px 16px;border:1px solid var(--line);border-radius:20px;position:relative;overflow:hidden;
    background:radial-gradient(120% 90% at 0% 0%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 60%),radial-gradient(90% 80% at 100% 100%,rgba(30,155,201,.12),transparent 60%),var(--surface)}
  .ss-hk{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
  .ss-hv{font-family:"Archivo",sans-serif;font-size:36px;font-weight:800;line-height:1.05;letter-spacing:-.02em;margin-top:6px;color:var(--accent);font-variant-numeric:tabular-nums}
  .ss-hs{font-size:14px;color:var(--muted);margin-top:4px}
  .ss-bar{display:flex;gap:3px;height:10px;border-radius:10px;overflow:hidden;margin-top:16px;background:var(--surface-2)}
  .ss-bar span{display:block;height:100%;border-radius:10px}
  .ss-bar .f{background:var(--accent)} .ss-bar .s{background:#1E9BC9}
  .ss-leg{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:9px;font-size:13px;color:var(--muted)}
  .ss-leg b{color:var(--ink);font-weight:700}
  .ss-leg i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;vertical-align:0}
  .ss-leg i.f{background:var(--accent)} .ss-leg i.s{background:#1E9BC9}
  .ss-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}
  .ss-i{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding:12px 12px 11px;border-radius:14px;background:color-mix(in srgb,var(--surface-2) 75%,transparent);border:1px solid var(--line)}
  .ss-i b{font-family:"Archivo",sans-serif;font-size:28px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums;white-space:nowrap}
  .ss-i span{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .ss-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
  .ss-f{display:flex;flex-direction:column;gap:2px;min-width:0}
  .ss-fk{font-size:12px;color:var(--muted)}
  .ss-fv{font-size:15px;font-weight:700;display:flex;align-items:center;gap:5px;line-height:1.25;overflow-wrap:break-word}
  @media(max-width:480px){ .ss-fv{font-size:13.5px} .ss-fk{font-size:11.5px} }
  .ss-star{width:15px;height:15px;fill:#E0A24E;flex:0 0 auto}
  @media(max-width:380px){ .ss-hv{font-size:32px} .ss-i b{font-size:23px} .ss-i{padding:10px 9px} }
  @media(min-width:760px){ .sstrip{padding:22px 24px 18px} .ss-hv{font-size:40px} .ss-i b{font-size:28px} }
  /* Bandeau intégré à la page (sans cadre) */
  .sstrip{margin-top:22px;padding:22px 18px 18px;border:1px solid color-mix(in srgb,var(--line) 75%,transparent);border-radius:18px;overflow:hidden;
    background:radial-gradient(110% 120% at 0% 0%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 58%),radial-gradient(90% 110% at 100% 100%,rgba(30,155,201,.16),transparent 60%),transparent}
  .ss-hv{font-size:36px}
  .ss-bar{height:8px;margin-top:14px}
  .ss-row{display:flex;gap:8px;margin-top:18px}
  .ss-i{flex:1 1 0;padding:11px 12px 10px;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:12px;background:color-mix(in srgb,var(--bg) 35%,transparent)}
  .ss-i b{font-size:26px}
  .ss-i span{font-size:13px}
  .ss-row .ss-i{padding:13px 14px 12px}
  @media(max-width:380px){ .ss-hv{font-size:32px} .ss-i b{font-size:23px} .ss-row .ss-i{padding:11px 10px 10px} }
  @media(min-width:760px){
    .sstrip{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:48px;padding:26px 28px 24px}
    .sstrip > :not(.ss-row){grid-column:1}
    .ss-row{grid-column:2;grid-row:1 / span 3;align-self:center;margin-top:0}
    .ss-row{gap:10px}
    .ss-row .ss-i{flex:0 0 auto;min-width:136px;padding:16px 18px 14px}
    .ss-hv{font-size:44px} .ss-i b{font-size:32px} .ss-i span{font-size:13.5px}
  }
  /* ===== Communauté façon réseau social ===== */
  .ig .cm-search{height:40px;border:0;border-radius:10px;background:var(--surface-2);box-shadow:none;padding:0 12px}
  .ig .cm-search .sic{width:17px;height:17px}
  .ig .cm-search input{font-size:15px}
  .ig-head{display:flex;align-items:center;gap:22px;margin-top:20px}
  .ig-av{flex:0 0 auto;display:inline-flex;border-radius:50%}
  .ig-av .fr-av{width:84px;height:84px;font-size:32px}
  .ig-av.ref-ring .fr-av{width:78px;height:78px}
  .ig-stats{flex:1;display:flex;justify-content:space-around;gap:6px;min-width:0}
  .ig-st{display:flex;flex-direction:column;align-items:center;gap:2px;border:0;background:none;padding:4px 2px;color:var(--ink);font-family:inherit;cursor:default;min-width:0}
  button.ig-st{cursor:pointer}
  .ig-st b{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1}
  .ig-st span{font-size:13px;color:var(--muted)}
  .ig-id{margin-top:12px}
  .ig-nm{font-size:15px;font-weight:700;line-height:1.25}
  .ig-us{font-size:13.5px;color:var(--muted);margin-top:1px;display:flex;align-items:center;gap:4px;flex-wrap:wrap}
  .ig-priv{display:inline-flex;align-items:center;gap:3px}
  .ig-priv svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
  .ig-acts{display:flex;gap:8px;margin-top:14px}
  .ig-invite{margin-left:auto;align-self:center}
  @media(max-width:480px){ .ig-head{gap:14px} .ig-av .fr-av{width:72px;height:72px;font-size:28px} .ig-av.ref-ring .fr-av{width:66px;height:66px} .ig-st b{font-size:16px} .ig-st span{font-size:12px} .ig-invite{padding:8px 10px} }
  .ig-btn{flex:1;height:36px;border-radius:9px;border:0;background:var(--surface-2);color:var(--ink);font-weight:600;font-size:14px;line-height:1;font-family:inherit;cursor:pointer;padding:0 14px;white-space:nowrap}
  .ig-btn.pri{background:var(--accent);color:var(--accent-ink)}
  .ig-btn:active{opacity:.8}
  .ig-tabs{display:flex;margin:20px -2px 0;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
  .ig-tabs::-webkit-scrollbar{display:none}
  .ig-tab{flex:1 0 auto;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:13px 10px;border:0;background:none;color:var(--muted);font-weight:600;font-size:14px;line-height:1;font-family:inherit;cursor:pointer;white-space:nowrap}
  .ig-tab.on{color:var(--ink)}
  .ig-tab.on:after{content:"";position:absolute;left:12%;right:12%;bottom:-1px;height:2px;border-radius:2px;background:var(--ink)}
  .ig-dot{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#E5533B;color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
  .ig-dot[hidden]{display:none}
  .ig #frList{margin-top:6px}
  .ig-sec{font-size:15px;font-weight:700;margin:26px 0 2px;padding-bottom:10px;border-bottom:1px solid var(--line)}
  .ig-req{display:flex;align-items:center;gap:12px;width:100%;margin-top:18px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font-family:inherit;text-align:left;cursor:pointer}
  .ig-req:hover{border-color:var(--line-strong)}
  .ig-req-ic{width:38px;height:38px;border-radius:50%;background:var(--surface-2);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
  .ig-req-ic svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .ig-req-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
  .ig-req-t b{font-size:14.5px;font-weight:600}
  .ig-req-t span{font-size:12.5px;color:var(--muted)}
  .ig-chev{width:18px;height:18px;flex:0 0 auto;fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .ig #frList .fr-row,.ig #frSearchRes .fr-row{background:none;border:0;border-radius:0;padding:10px 2px;box-shadow:none}
  .ig #frList .fr-row .fr-av,.ig #frSearchRes .fr-row .fr-av{box-shadow:none;width:48px;height:48px}
  .ig #frList .fr-btn,.ig #frSearchRes .fr-btn{height:32px;padding:0 16px;border-radius:8px;border:0;font-size:13.5px;font-weight:600}
  .ig #frList .fr-btn.dim,.ig #frSearchRes .fr-btn.dim,.ig #frList .fr-btn:not(.pri),.ig #frSearchRes .fr-btn:not(.pri){background:var(--surface-2);color:var(--ink)}
  .ig .cm-feed{gap:0}
  .ig-post{padding:14px 0;border-bottom:1px solid var(--line)}
  .ig-post:last-child{border-bottom:0}
  .ig-ph{display:flex;align-items:center;gap:10px}
  .ig-ph .fr-av{width:34px;height:34px;font-size:13px}
  .ig-pw{flex:1;min-width:0;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ig-pw b{font-weight:700;cursor:pointer}
  .ig-pv{color:var(--muted)}
  .ig-time{flex:0 0 auto;font-size:12.5px;color:var(--muted)}
  .ig-pb{display:flex;gap:14px;margin:10px 0 0 44px;padding:10px;border-radius:12px;background:var(--surface);border:1px solid var(--line);cursor:pointer;transition:border-color .15s}
  .ig-pb:hover{border-color:var(--line-strong)}
  .ig-pp{position:relative;width:62px;height:93px;flex:0 0 auto;border-radius:8px;overflow:hidden;background:var(--cg,var(--surface-2))}
  .ig-pp img{width:100%;height:100%;object-fit:cover}
  .ig-pi{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;padding-top:2px}
  .ig-pt{font-weight:700;font-size:15px;line-height:1.25;color:var(--ink)!important}
  .ig-pm{font-size:13px;color:var(--muted)}
  .ig-ps{font-size:14px;margin-top:1px}
  .ig-open{margin-top:auto;font-size:13px;font-weight:600;color:var(--accent)}
  .ig-empty{text-align:center;padding:42px 16px 30px}
  .ig-eic{width:76px;height:76px;margin:0 auto;border-radius:50%;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center}
  .ig-eic svg{width:34px;height:34px;fill:none;stroke:var(--ink);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
  .ig-et{font-size:20px;font-weight:700;margin-top:16px}
  .ig-es{font-size:14px;color:var(--muted);line-height:1.5;margin:6px auto 0;max-width:300px}
  .ig-link{margin-top:14px;border:0;background:none;color:var(--accent);font-weight:600;font-size:14px;line-height:1;font-family:inherit;cursor:pointer}
  @media(min-width:760px){ .ig-av .fr-av{width:110px;height:110px;font-size:40px} .ig-av.ref-ring .fr-av{width:104px;height:104px} .ig-head{gap:48px} .ig-stats{justify-content:flex-start;gap:40px} .ig-st{flex-direction:row;gap:6px;align-items:baseline} .ig-acts{max-width:420px} }
  .cm-act{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}
  .cm-act-av{border:0;background:none;padding:0;cursor:pointer;flex:0 0 auto}

  /* Communauté — version enrichie */
  .cm-hero{margin-top:18px;padding:20px 18px 18px;border:1px solid color-mix(in srgb,var(--line) 75%,transparent);border-radius:20px;overflow:hidden;
    background:radial-gradient(110% 120% at 0% 0%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 58%),radial-gradient(90% 110% at 100% 100%,rgba(30,155,201,.16),transparent 60%),transparent}
  .cm-hero .ig-head{margin-top:0}
  .ig-av:not(.ref-ring){padding:3px;background:linear-gradient(135deg,var(--accent),#1E9BC9)}
  .ig-av:not(.ref-ring) .fr-av{box-shadow:0 0 0 3px var(--bg)}
  .cm-hero .ig-st b{font-size:20px;font-weight:800}
  .ig-sec{font-size:17px;font-weight:800;margin:30px 0 4px;padding-bottom:0;border-bottom:0;letter-spacing:-.01em}
  .ig-sec2{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:28px 0 12px}
  #frFriends .ig-sec2{margin-top:22px}
  #frInbox:empty+#frRetro:empty+#frFriends>.ig-sec2:first-child,.fr-wrap.cm>#frInbox:first-child:empty+#frRetro:empty+#frFriends>.ig-sec2:first-child{margin-top:0}
  #commuWrap{gap:0;row-gap:0}
  .ig-sec2 span{font-size:17px;font-weight:800;letter-spacing:-.01em}
  .ig-more{border:0;background:none;color:var(--accent);font-weight:700;font-size:13.5px;font-family:inherit;cursor:pointer;padding:12px 8px;margin:-12px -8px}
  .cm-frow,.cm-trend{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;margin:0 -20px;padding:2px 20px 6px;scroll-padding:0 20px}
  .cm-frow::-webkit-scrollbar,.cm-trend::-webkit-scrollbar{display:none}
  .cm-fr{flex:0 0 auto;width:70px;display:flex;flex-direction:column;align-items:center;gap:7px;border:0;background:none;padding:0;color:var(--ink);font-family:inherit;cursor:pointer;scroll-snap-align:start}
  .cm-fr-av{width:66px;height:66px;border-radius:50%;padding:2.5px;background:var(--line-strong);display:flex;align-items:center;justify-content:center}
  .cm-fr-av.on{background:linear-gradient(135deg,var(--accent),#1E9BC9)}
  .cm-fr-av .fr-av{width:100%!important;height:100%!important;font-size:22px;box-shadow:0 0 0 2.5px var(--bg)}
  .cm-fr-add{background:none;border:1.5px dashed var(--line-strong);padding:0}
  .cm-fr-add svg{width:24px;height:24px;fill:none;stroke:var(--accent);stroke-width:2.2;stroke-linecap:round}
  .cm-fr:hover .cm-fr-add{border-color:var(--accent)}
  .cm-fr-n{font-size:12.5px;font-weight:600;max-width:70px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .cm-tc{flex:0 0 auto;width:124px;border:0;background:none;padding:0;color:var(--ink);font-family:inherit;text-align:left;cursor:pointer;scroll-snap-align:start}
  .cm-tp{position:relative;width:100%;aspect-ratio:2/3;border-radius:12px;overflow:hidden;background:var(--cg,var(--surface-2));box-shadow:0 8px 22px rgba(0,0,0,.28);transition:transform .18s}
  .cm-tp img{width:100%;height:100%;object-fit:cover}
  .cm-tc:hover .cm-tp{transform:translateY(-3px)}
  .cm-tr-r{position:absolute;left:7px;bottom:7px;display:inline-flex;align-items:center;gap:3px;padding:3px 7px;border-radius:999px;background:rgba(10,11,15,.72);backdrop-filter:blur(6px);color:#fff;font-size:11.5px;font-weight:700}
  .cm-tr-r svg{width:11px;height:11px;fill:#E0A24E}
  .cm-tt{font-size:13.5px;font-weight:700;margin-top:8px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .cm-tw{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin-top:4px}
  .cm-stack{display:inline-flex}
  .cm-stack .fr-av{width:18px!important;height:18px!important;font-size:8px!important;box-shadow:0 0 0 1.5px var(--bg);margin-left:-5px}
  .cm-stack .fr-av:first-child{margin-left:0}
  .ig-pb{background:linear-gradient(100deg,color-mix(in srgb,var(--surface-2) 70%,transparent),var(--surface))}
  .ig-pp{box-shadow:0 6px 16px rgba(0,0,0,.25)}
  .cm-sugg{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;margin:0 -20px;padding:2px 20px 6px;scroll-padding:0 20px}
  .cm-sugg::-webkit-scrollbar{display:none}
  .cm-sg{position:relative;flex:0 0 auto;width:156px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px 12px 12px;border:1px solid color-mix(in srgb,var(--line) 75%,transparent);border-radius:16px;scroll-snap-align:start;transition:opacity .2s,transform .2s;
    background:radial-gradient(120% 80% at 50% 0%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 65%),var(--surface)}
  .cm-sg.out{opacity:0;transform:scale(.94)}
  .cm-sg-x{position:absolute;top:6px;right:6px;width:28px;height:28px;border:0;border-radius:50%;background:none;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center}
  .cm-sg-x:hover{background:var(--surface-2);color:var(--ink)}
  .cm-sg-x svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
  .cm-sg-p{display:flex;flex-direction:column;align-items:center;gap:2px;border:0;background:none;padding:0;color:var(--ink);font-family:inherit;cursor:pointer;width:100%;min-width:0}
  .cm-sg-av{width:70px;height:70px;border-radius:50%;padding:2.5px;background:linear-gradient(135deg,var(--accent),#1E9BC9);margin-bottom:8px}
  .cm-sg-av .fr-av{width:100%!important;height:100%!important;font-size:24px;box-shadow:0 0 0 2.5px var(--surface)}
  .cm-sg-n{font-size:14px;font-weight:700;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .cm-sg-u{font-size:12.5px;color:var(--muted);max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .cm-sg-w{font-size:12px;color:var(--muted);text-align:center;min-height:16px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
  .cm-sg-b{width:100%;height:34px;margin-top:8px;border:0;border-radius:10px;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:13.5px;font-family:inherit;cursor:pointer}
  .cm-sg-b.on{background:var(--surface-2);color:var(--ink)}
  @media(min-width:760px){ .cm-sugg{margin:0;padding:2px 0 6px;gap:14px} .cm-sg{width:170px} }
  .cm-empty-acts{display:flex;gap:10px;justify-content:center;margin-top:18px}
  .cm-cta{height:42px;padding:0 18px;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink);font-weight:700;font-size:14px;font-family:inherit;cursor:pointer}
  .cm-cta.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
  @media(min-width:760px){
    .cm-hero{padding:26px 28px}
    .cm-frow,.cm-trend{margin:0;padding:2px 0 6px;gap:18px}
    .cm-tc{width:150px}
    .ig .cm-feed{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:10px}
    .ig .cm-feed .ig-post{border:1px solid color-mix(in srgb,var(--line) 75%,transparent);border-radius:16px;padding:14px;background:var(--surface)}
    .ig .cm-feed .ig-pb{margin-left:0}
  }
  .cm-act-av .fr-av{width:40px;height:40px;font-size:15px}
  .cm-act-tx{flex:1;min-width:0;font-size:14px;line-height:1.35}
  .cm-act-tx b{cursor:pointer}
  .cm-act-t{font-weight:700;color:var(--accent);cursor:pointer}
  .cm-act-m{font-size:12px;color:var(--muted);margin-top:2px}
  .cm-stars{color:var(--gold,#E0A24E);letter-spacing:1px} .cm-stars i{font-style:normal;color:var(--line-strong)}
  .cm-act-p{position:relative;width:40px;height:60px;flex:0 0 auto;border-radius:7px;overflow:hidden;background:var(--cg,var(--surface-2));cursor:pointer}
  .cm-act-p img{width:100%;height:100%;object-fit:cover}
  .nav-dot{position:absolute;top:6px;left:calc(50% + 8px);width:9px;height:9px;border-radius:50%;background:#E5533B;border:2px solid var(--surface)}
  @media(max-width:380px){ .nav-item span{font-size:9.5px} }
  .fr-tabs{display:flex;gap:4px;margin:22px 0 14px;padding:4px;background:var(--surface);border:1px solid var(--line);border-radius:13px}
  .fr-tab{flex:1;padding:10px 8px;border-radius:9px;border:0;background:transparent;color:var(--muted);font-weight:700;font-size:13.5px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;font-family:inherit;transition:background .15s,color .15s}
  .fr-tab:hover{color:var(--ink)}
  .fr-tab.on{background:var(--accent);color:var(--accent-ink);box-shadow:0 2px 8px rgba(0,0,0,.18)}
  .fr-cnt{font-family:"Space Mono",monospace;font-size:11.5px;font-weight:700;opacity:.75}
  .fr-badge{background:#E5533B;color:#fff;border-radius:999px;font-size:11px;font-weight:800;padding:1px 7px;min-width:20px;text-align:center}
  .fr-tab.on .fr-badge{background:var(--accent-ink);color:var(--accent)}
  .fr-sec{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700;margin:20px 0 2px}
  .fr-row{display:flex;align-items:center;gap:13px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:14px;transition:border-color .15s,transform .15s,box-shadow .15s}
  .fr-row:hover{border-color:var(--line-strong);box-shadow:0 6px 18px rgba(0,0,0,.12)}
  .fr-row .fr-av{width:46px;height:46px;font-size:17px;box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--line-strong)}
  .fr-row .grow{flex:1;min-width:0;cursor:pointer}
  .fr-row .grow[data-openfriend]:hover .fr-nm{color:var(--accent)}
  .fr-row .fr-nm{font-weight:600;font-size:15px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .fr-row .fr-us{font-size:12.5px;color:var(--muted);margin-top:1px}
  .fr-chev{color:var(--muted);font-size:20px;margin-left:2px;flex:0 0 auto}
  .fr-btn{border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink);border-radius:9px;padding:8px 12px;font-size:12.5px;font-weight:700;cursor:pointer;font-family:inherit;white-space:nowrap}
  .fr-btn.pri{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
  .fr-btn.dim{background:transparent;color:var(--muted);border-color:var(--line-strong)}
  .fr-btn.dim:hover{color:var(--ink);border-color:var(--ink)}
  .fr-btn{transition:filter .15s,border-color .15s,color .15s}
  .fr-btn.pri:hover{filter:brightness(1.07)}
  .fr-btn svg{width:16px;height:16px;vertical-align:-3px;margin-right:6px}
  #frList, #frSearchRes, #refList{display:grid;grid-template-columns:1fr;gap:8px;align-content:start}
  #frSearchRes:not(:empty){margin-top:12px}
  .fr-empty{text-align:center;padding:40px 20px;color:var(--muted);border:1px dashed var(--line-strong);border-radius:14px;background:var(--surface)}
  .fr-empty .glyph svg{width:34px;height:34px;stroke:var(--muted);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
  .fr-empty .glyph{font-size:34px;opacity:.8;line-height:1}
  .fr-skel{height:72px;border-radius:14px;border:1px solid var(--line);background:linear-gradient(90deg,var(--surface) 0%,var(--surface-2) 50%,var(--surface) 100%);background-size:200% 100%;animation:frSkel 1.2s ease-in-out infinite}
  @keyframes frSkel{from{background-position:100% 0}to{background-position:-100% 0}}
  .fr-empty .big{font-size:16px;font-weight:700;color:var(--ink);margin:12px 0 6px}
  .fr-empty .sub{font-size:13.5px;line-height:1.5}

  /* ===== Notifications proposées à l'installation ===== */
  .pi-ov{position:fixed;inset:0;z-index:178;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.6);padding:16px}
  .pi-ov.open{display:flex}
  .pi-sh{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--line-strong);border-radius:22px;box-shadow:var(--shadow);padding:26px 22px 16px;text-align:center;color:var(--ink);animation:piIn .25s ease both}
  @keyframes piIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
  .pi-sh .pi-ic{width:60px;height:60px;margin:0 auto 12px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:30px;background:color-mix(in srgb,var(--accent) 18%,var(--surface-2))}
  .pi-sh h3{margin:0 0 6px;font-size:21px}
  .pi-sh p{margin:0 0 12px;color:var(--muted);font-size:14px}
  .pi-sh ul{list-style:none;margin:0 0 18px;padding:0;text-align:left;display:grid;gap:9px}
  .pi-sh li{display:flex;gap:10px;font-size:14px;line-height:1.4}
  .pi-sh li span{flex:0 0 22px;text-align:center}
  .pi-sh .btn{width:100%;padding:13px;font-size:15px}
  .pi-later{display:block;width:100%;margin-top:6px;border:0;background:none;color:var(--muted);font-size:14px;padding:10px;cursor:pointer}
  /* ===== Mes plateformes ===== */
  .plat-chip{display:flex;align-items:center;gap:10px;width:100%;margin:12px 0 18px;padding:10px 14px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;font-size:13.5px}
  .plat-chip:hover{border-color:var(--accent)}
  .plat-chip.empty{border-style:dashed;flex-wrap:wrap}
  .plat-chip .pc-ic{font-size:16px}
  .plat-chip .pc-sub{color:var(--muted);font-size:12px;flex-basis:100%;margin-left:26px;margin-top:-4px}
  .plat-chip .pc-lbl{font-weight:700;white-space:nowrap}
  .plat-chip .pc-logos{display:flex;gap:6px;align-items:center;flex:1;min-width:0;overflow:hidden}
  .plat-chip .pc-logos img{width:26px;height:26px;border-radius:7px;flex:0 0 auto}
  .plat-chip .pc-txt,.plat-chip .pc-more{font-size:11.5px;color:var(--muted);white-space:nowrap}
  .plat-chip .pc-go{color:var(--accent);font-weight:700;font-size:12.5px;white-space:nowrap;margin-left:auto}
  .plat-chip.empty .pc-go{position:absolute;right:14px}
  .plat-chip.empty{position:relative;padding-right:30px}
  .plat-ov{position:fixed;inset:0;z-index:175;display:none;align-items:flex-end;justify-content:center;background:rgba(0,0,0,.55);padding:12px}
  .plat-ov.open{display:flex}
  @media(min-width:700px){.plat-ov{align-items:center}}
  html.plat-lock,html.plat-lock body{overflow:hidden}
  .plat-sh{width:100%;max-width:560px;max-height:88vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line-strong);border-radius:20px;box-shadow:var(--shadow);overflow:hidden;color:var(--ink)}
  .plat-hd{display:flex;align-items:flex-start;gap:12px;padding:18px 18px 10px}
  .plat-hd>div{flex:1}
  .plat-hd h3{margin:0;font-size:19px}
  .plat-hd p{margin:4px 0 0;color:var(--muted);font-size:13px}
  .plat-x{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--ink)}
  .plat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;padding:6px 18px 12px;overflow:auto}
  .plat-it{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;border:1.5px solid var(--line);background:var(--surface-2);color:var(--ink);text-align:left;font-size:13px;font-weight:600;cursor:pointer;position:relative;min-width:0}
  .plat-it img,.plat-it .pi-ph{width:32px;height:32px;border-radius:8px;flex:0 0 auto}
  .plat-it .pi-ph{display:flex;align-items:center;justify-content:center;background:var(--line);font-weight:800}
  .plat-it .pi-n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .plat-it .pi-ck{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--line-strong);color:transparent;font-size:12px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
  .plat-it.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-2))}
  .plat-it.on .pi-ck{background:var(--accent);border-color:var(--accent);color:var(--accent-ink,#17130B)}
  .plat-load{grid-column:1/-1;color:var(--muted);font-size:13.5px;padding:20px 0;text-align:center}
  .plat-ft{display:flex;gap:10px;justify-content:flex-end;padding:12px 18px 16px;border-top:1px solid var(--line)}
  .plat-badge{position:absolute;left:8px;bottom:8px;z-index:3;display:flex;align-items:center;gap:5px;padding:3px 8px 3px 3px;border-radius:999px;background:rgba(10,10,14,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-size:10.5px;font-weight:700;max-width:calc(100% - 56px)}
  .plat-badge img{width:18px;height:18px;border-radius:5px}
  .plat-badge span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .wp-item{position:relative}
  .wp-item.mine{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 45%,transparent)}
  .wp-ck{position:absolute;right:-1px;bottom:-1px;width:16px;height:16px;border-radius:6px 0 9px 0;background:var(--accent);color:var(--accent-ink,#17130B);font-size:10px;font-weight:900;display:flex;align-items:center;justify-content:center}
  .wp-mine{font-size:13px;color:var(--ink);background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:10px;padding:8px 11px;margin-bottom:10px}
  .wp-mine b{color:var(--accent)}
  .wp-notmine{font-size:12px;color:var(--muted);margin-bottom:8px}
  .wp-have{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:-2px 0 10px 90px;font-size:12px;color:var(--muted)}
  @media(max-width:420px){.wp-have{margin-left:0}}
  .wp-have-b{border:1px dashed var(--line-strong);background:none;color:var(--ink);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;cursor:pointer}
  .wp-have-b:hover{border-color:var(--accent);color:var(--accent)}
  .push-ask{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 10px;padding:10px 12px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line)}
  .push-ask .pa-tx{flex:1 1 180px;font-size:13px;line-height:1.4}
  .push-ask .btn{padding:7px 12px;font-size:13px}
  .push-ask .pa-x{border:0;background:none;color:var(--muted);font-size:15px;cursor:pointer}
  #qRate{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translate(-50%,20px);z-index:130;width:min(440px,calc(100% - 24px));
    background:var(--surface);border:1px solid var(--line-strong);border-radius:16px;box-shadow:var(--shadow);padding:12px 14px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;color:var(--ink)}
  #qRate.show{opacity:1;transform:translate(-50%,0);pointer-events:auto}
  #qRate .qr-t{display:flex;align-items:center;gap:8px;font-size:13.5px;min-width:0}
  #qRate .qr-t b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #qRate .qr-ok{flex:0 0 auto;background:var(--accent);color:var(--accent-ink,#17130B);font-size:11px;font-weight:800;padding:2px 7px;border-radius:999px}
  #qRate .qr-row{display:flex;align-items:center;gap:8px;margin-top:8px}
  #qRate .qr-q{font-size:13px;color:var(--muted);white-space:nowrap}
  #qRate .qr-stars{display:flex;gap:2px;flex:1;justify-content:center}
  #qRate .qr-stars button{border:0;background:none;font-size:28px;line-height:1;color:var(--line-strong);cursor:pointer;padding:2px 3px;transition:transform .1s,color .1s}
  #qRate .qr-stars button.hov,#qRate .qr-stars button:active{color:var(--gold,#E0A24E);transform:scale(1.12)}
  #qRate .qr-later{border:0;background:none;color:var(--muted);font-size:12.5px;cursor:pointer;white-space:nowrap}
  .rate-mini{align-self:flex-start;border:0;background:none;color:var(--accent);font-size:12.5px;font-weight:700;padding:0;cursor:pointer}
  .avail-alert{display:flex;gap:10px;align-items:flex-start;margin:0 0 16px;padding:12px 14px;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);background:color-mix(in srgb,var(--accent) 12%,var(--surface))}
  .avail-alert .aa-ic{font-size:18px}
  .avail-alert .aa-tx{flex:1;font-size:13.5px;line-height:1.45}
  .avail-alert .aa-tx b{display:block;margin-bottom:2px}
  .avail-alert a{color:var(--accent);font-weight:700}
  .avail-alert .aa-x{border:0;background:none;color:var(--muted);font-size:16px;cursor:pointer}
  /* Coups de cœur : même carrousel que l'onglet Recherche (barre fine + flèches), affiches façon « vitrine » */
  .fav-shelf{--fw:150px;margin:22px 0 8px}
  @media(min-width:900px){.fav-shelf{--fw:168px}}
  .fav-shelf>.ptitle{display:flex;align-items:center;gap:8px}
  .fav-shelf>.ptitle .hrt{color:#E5484D;font-size:1.05em}
  .hsv{width:1em;height:1em;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round}
  .hsv.on{fill:currentColor}
  .ptitle .hrt,.fav-ttl .hrt{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:9px;margin-right:10px;vertical-align:-5px;background:rgba(229,72,77,.14);color:#E5484D;font-size:15px}
  .fav-ttl{display:flex;align-items:center}
  .ptitle .hrt{margin-right:4px;align-self:center;width:26px;height:26px;font-size:14px}
  .fav-c .hb .hsv{font-size:13px}
  .m-fav .mf-ic .hsv{font-size:17px}
  .row-fav{display:inline-flex;align-items:center;justify-content:center}
  .row-fav .hsv{font-size:15px}
  .fav-shelf .car-arrow{top:calc(var(--fw) * 0.75 - 18px)}
  .carousel-row .fav-c{width:var(--fw);flex:0 0 auto;scroll-snap-align:start}
  .fav-c{position:relative;min-width:0}
  .fav-c .cover{position:relative;aspect-ratio:2/3;border-radius:14px;overflow:hidden;background:var(--cg,var(--surface-2));display:block;cursor:pointer;
    box-shadow:0 10px 22px -12px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.06) inset;transition:transform .18s,box-shadow .18s}
  .fav-c .cover:hover{transform:translateY(-3px);box-shadow:0 16px 28px -12px rgba(0,0,0,.7),0 0 0 1px color-mix(in srgb,var(--accent) 55%,transparent) inset}
  .fav-c .cover img{width:100%;height:100%;object-fit:cover;display:block}
  .fav-c .cover::after{content:"";position:absolute;inset:auto 0 0 0;height:58%;background:linear-gradient(to top,rgba(8,8,12,.92) 0%,rgba(8,8,12,.55) 45%,transparent 100%);z-index:1;pointer-events:none}
  .fav-c .hb{position:absolute;top:8px;right:8px;z-index:2;width:26px;height:26px;border-radius:50%;background:rgba(10,10,14,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#FF5C6C;display:flex;align-items:center;justify-content:center;font-size:12.5px;pointer-events:none}
  .fav-c .fo{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:10px 10px 9px;pointer-events:none}
  .fav-c .ft{font-size:13px;font-weight:800;line-height:1.2;color:#fff;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-shadow:0 1px 6px rgba(0,0,0,.6)}
  .fav-c .fk{font-size:11px;color:rgba(255,255,255,.72);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .fav-c .fs{color:#F5C46B;letter-spacing:.5px}
  .fav-top{display:flex;align-items:center;gap:10px;margin-bottom:12px}
  .fav-top .ptitle{margin:0!important;flex:1;min-width:0}
  .see-all{flex:0 0 auto;background:none;border:0;padding:12px 8px;margin:-10px -8px;color:var(--accent);font-family:"Archivo",system-ui,sans-serif;font-weight:700;font-size:13px;letter-spacing:0;text-transform:none;cursor:pointer;white-space:nowrap}
  .see-all:hover{text-decoration:underline}
  .fa-head{display:flex;align-items:center;gap:10px;margin:2px 0 14px}
  .fa-head .tabtitle{margin:0;flex:1;min-width:0}
  .fa-back{width:38px;height:38px;flex:0 0 auto;border-radius:50%;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer}
  .fa-back svg{width:18px;height:18px}
  .fa-back:hover{border-color:var(--accent);color:var(--accent)}
  .fa-filt{display:flex;gap:8px;margin:0 0 16px;flex-wrap:wrap}
  .fa-filt button{padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);color:var(--muted);font-weight:700;font-size:13px;cursor:pointer}
  .fa-filt button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink,#17130B)}
  .fa-filt .mono{font-weight:400;opacity:.8;margin-left:3px}
  .seen-search{margin:0 0 18px}
  #searchResults{margin-top:22px}
  .seen-n{font-size:.55em;color:var(--muted);vertical-align:middle;margin-left:4px}
  .seen-none{color:var(--muted);text-align:center;padding:40px 10px;font-size:14px}
  .fa-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}
  @media(max-width:560px){.fa-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.fa-grid .fav-c .ft{font-size:11.5px}.fa-grid .fav-c .fk{font-size:10px}.fa-grid .fav-c .fo{padding:8px 7px 7px}.fa-grid .fav-c .hb{width:22px;height:22px;font-size:11px;top:6px;right:6px}}
  .fav-empty{font-size:13px;color:var(--muted);padding:12px 14px;border:1px dashed var(--line);border-radius:12px}
  .fr-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:12px;margin-top:8px}
  .fr-mini .cover{aspect-ratio:2/3;border-radius:10px;overflow:hidden;background:var(--surface-2);display:block;cursor:pointer}
  .fr-mini .fr-mt{font-size:11.5px;font-weight:600;margin-top:5px;line-height:1.2;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .fr-mini .fr-ms{font-size:11px;color:var(--accent);letter-spacing:1px}

  .rows{display:flex;flex-direction:column;gap:8px}
  .row{flex-direction:row;align-items:center;gap:12px;padding:8px 10px;border-radius:12px}
  .row:hover{transform:none}
  .row .cover{width:44px;flex:0 0 auto;border-radius:8px}
  .row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
  .row .card-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}
  .row-sub{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;min-height:14px}
  .row-sub .stars-row{font-size:12px;min-height:0}
  .row-ep,.row-vu-lbl{font-family:"Space Mono",monospace}
  .row-fav{flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--surface-2);border:1px solid var(--line);color:var(--muted);font-size:15px;cursor:pointer}
  .row-fav.on{color:#ff6f6f;border-color:rgba(255,111,111,.3)}
  .row .row-vu{margin-top:0;width:auto;flex:0 0 auto;border-radius:8px;padding:8px 12px;font-size:12.5px;font-weight:600;white-space:nowrap;background:var(--surface-2);border:1px solid var(--line-strong);color:var(--ink);cursor:pointer}
  .row.seen .row-vu{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);border-color:var(--accent);border-style:solid;font-weight:700}

  .ob-priv{border:0;margin:14px 0 4px;padding:0;display:flex;flex-direction:column;gap:8px;text-align:left}
  .ob-priv legend{font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:8px;padding:0}
  .op-it{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface-2);cursor:pointer}
  .op-it:has(input:checked){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface-2))}
  .op-it input{accent-color:var(--accent);width:18px;height:18px;margin:0;flex:0 0 auto}
  .op-it span{display:flex;flex-direction:column;gap:2px;min-width:0}
  .op-it b{font-size:15px;color:var(--ink)}
  .op-it small{font-size:12.5px;color:var(--muted)}
  .op-note{font-size:12px;color:var(--muted);margin:2px 0 0}
  .wl-load{position:fixed;inset:0;z-index:300;background:#0D0E12;display:flex;align-items:center;justify-content:center;transition:opacity .25s}
  .wl-load.out{opacity:0}
  .wl-in{display:flex;flex-direction:column;align-items:center;gap:16px}
  .wl-name{font-family:"Anton",Impact,sans-serif;font-size:38px;letter-spacing:.06em;text-transform:uppercase;color:#F2EEE5;line-height:1}
  .wl-name span{color:#E0A24E}
  .wl-bar{width:120px;height:3px;border-radius:3px;background:rgba(255,255,255,.12);overflow:hidden}
  .wl-bar i{display:block;height:100%;width:0;background:#E0A24E;border-radius:3px;animation:wlBar .85s ease forwards}
  @keyframes wlBar{to{width:100%}}
  .tour{position:fixed;inset:0;z-index:250;transition:opacity .2s}
  .tour.out{opacity:0}
  .tour-ring{position:fixed;border-radius:16px;box-shadow:0 0 0 9999px rgba(5,6,10,.72);border:2px solid var(--accent);transition:all .3s cubic-bezier(.3,.7,.2,1);pointer-events:none}
  .tour-card{position:fixed;background:var(--surface);border:1px solid var(--line-strong);border-radius:18px;padding:16px 16px 12px;box-shadow:0 20px 50px -20px rgba(0,0,0,.7);transition:left .3s cubic-bezier(.3,.7,.2,1),bottom .3s}
  .tour-step{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
  .tour-t{font-size:18px;font-weight:700;margin-top:4px}
  .tour-d{font-size:14px;color:var(--muted);margin-top:4px;line-height:1.45}
  .tour-ft{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px}
  .tour-skip{border:0;background:none;color:var(--muted);font-size:14px;font-weight:600;padding:8px 4px;cursor:pointer;font-family:inherit}
  .tour-next{border:0;background:var(--accent);color:var(--accent-ink);font-size:14px;font-weight:700;padding:10px 16px;border-radius:10px;cursor:pointer;font-family:inherit}
  .tour-dots{display:flex;gap:6px}
  .tour-dots i{width:6px;height:6px;border-radius:50%;background:var(--line-strong)}
  .tour-dots i.on{background:var(--accent);width:16px;border-radius:3px}
  @media (prefers-reduced-motion:reduce){ .tour-ring,.tour-card{transition:none} .wl-bar i{animation-duration:.01s} }
  .empty{text-align:center;padding:64px 20px;color:var(--muted);grid-column:1/-1;font-size:14px}
  .empty .big{font-family:"Archivo",sans-serif;font-size:18px;font-weight:700;color:var(--ink);margin-bottom:6px}
  .empty .glyph{font-size:34px;opacity:.4;margin-bottom:12px}
  .empty .mini-add{margin-top:18px;display:inline-flex;gap:7px;align-items:center;background:var(--accent);color:var(--accent-ink);border:0;border-radius:10px;padding:11px 20px;font-weight:600;font-size:14px;cursor:pointer}

  .overlay{position:fixed;inset:0;z-index:60;background:rgba(10,9,8,.5);display:none;align-items:flex-end;justify-content:center}
  #overlay{z-index:65}
  @media(min-width:640px){.overlay{align-items:center;padding:24px}}
  .overlay.open{display:flex}
  .sheet{background:var(--surface);width:100%;max-width:600px;border-radius:16px 16px 0 0;border:1px solid var(--line);
    box-shadow:0 -8px 40px rgba(0,0,0,.28);max-height:92vh;overflow-y:auto;overflow-x:hidden}
  @media(min-width:640px){.sheet{border-radius:16px}}
  /* ==== Écrans plein écran (fiche + amis + parrainage) ==== */
  #overlay, #friendsOverlay, #refOverlay{align-items:stretch;padding:0}
  @media(min-width:640px){ #overlay, #friendsOverlay, #refOverlay{padding:0} }
  #overlay .sheet, #friendsOverlay .sheet, #refOverlay .sheet{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0;border:0;box-shadow:none;animation:detailIn .26s ease}
  #overlay .sheet-hd{padding-top:max(18px,env(safe-area-inset-top,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
  #overlay .sheet-actions{position:sticky;bottom:0;background:var(--surface);margin:12px -20px 0;padding:14px 20px calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);z-index:4}
  @media(min-width:760px){
    #overlay, #friendsOverlay, #refOverlay{justify-content:center;background:rgba(10,9,8,.62)}
    #overlay .sheet{max-width:820px;border-left:1px solid var(--line);border-right:1px solid var(--line)}
    #friendsOverlay .sheet{max-width:760px;border-left:1px solid var(--line);border-right:1px solid var(--line)}
    #refOverlay .sheet{max-width:760px;border-left:1px solid var(--line);border-right:1px solid var(--line)}
  }
  @keyframes detailIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
  /* Amis : recherche plus grande, aération */
  .sheet-hd{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:20px 20px 14px;
    border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface);z-index:3}
  .sheet-hd h2{font-family:"Archivo",serif;font-weight:600;font-size:20px;margin:0;line-height:1.2}
  .sheet-hd .sub{color:var(--muted);font-size:13px;margin-top:4px;overflow-wrap:anywhere}
  .sheet-acts{display:flex;align-items:center;gap:8px;flex:0 0 auto}
  .btn.m-fav{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:12px 16px;border-color:rgba(255,111,111,.45);color:var(--ink)}
  .m-fav .mf-ic{font-size:18px;line-height:1;color:#ff6f6f}
  .m-fav:active{transform:scale(.96)}
  .btn.m-fav.on{background:#ff6f6f;border-color:#ff6f6f;color:#fff}
  .btn.m-fav.on .mf-ic{color:#fff}
  .m-fav[hidden]{display:none!important}
  .sheet-actions .btn{white-space:nowrap}
  @media (max-width:420px){ .btn.m-fav{padding:12px 12px;gap:6px} .sheet-actions .btn-primary{padding-left:10px;padding-right:10px} }
  .sheet-actions .btn-primary{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}
  .sheet-actions .btn-danger{flex:0 0 auto}
  @media (max-width:520px){ .btn.m-fav .mf-t{display:none} .btn.m-fav{padding:12px 13px} .sheet-actions{gap:8px} .sheet-actions .btn-danger{padding-left:12px;padding-right:12px} }
  @media (max-width:400px){ .sheet-actions .btn{font-size:14px} .sheet-actions .btn-primary{padding-left:8px;padding-right:8px} .sheet-actions .btn-danger{padding-left:6px;padding-right:6px} .btn.m-fav,.btn.m-list{padding:11px 11px} .sheet-actions{gap:6px} }
  @media (max-width:340px){ .sheet-actions .btn{font-size:13px} .btn.m-fav,.btn.m-list{padding:10px 9px} }
  .close-x{background:var(--surface-2);border:1px solid var(--line);color:var(--muted);width:32px;height:32px;border-radius:8px;font-size:16px;flex:0 0 auto}
  .sheet-bd{padding:18px 20px calc(22px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:18px}
  .field label{display:block;font-size:12.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:8px;font-weight:600}
  .rate{display:flex;gap:4px}
  .rate button{background:none;border:0;font-size:28px;line-height:1;color:var(--faint);padding:0;transition:transform .1s}
  .rate button.on{color:var(--gold)}
  .rate button:hover{transform:scale(1.12)}
  .rate-hint{font-size:12px;color:var(--muted);margin-top:8px;font-style:italic}
  .simple-locked .rate,.simple-locked #fDate{opacity:.4;pointer-events:none;filter:grayscale(.35)}
  #tmdbInfo{flex-direction:column;gap:18px;margin:0}
  .ti-load{color:var(--muted);font-size:13px}
  .ti-h{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 8px;font-weight:700}
  .ti-tag{font-style:italic;color:var(--muted);font-size:13px;margin:0 0 6px}
  .ti-syn{font-size:14px;line-height:1.55;color:var(--ink)}
  .ti-facts{display:flex;flex-wrap:wrap;gap:8px}
  .ti-fact{font-size:12px;color:var(--muted);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:4px 11px}
  .ti-fact b{color:var(--ink);font-weight:600}
  .ti-cast{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px;-webkit-overflow-scrolling:touch}
  .ti-actor{flex:0 0 78px;text-align:center}
  .ti-actor .ph{width:78px;height:78px;border-radius:50%;object-fit:cover;background:var(--surface-2);border:1px solid var(--line);display:block}
  .ti-actor .ph.noimg{display:flex;align-items:center;justify-content:center;font-size:26px;color:var(--muted)}
  .ti-actor .nm{font-size:11.5px;font-weight:600;margin-top:6px;line-height:1.2;color:var(--ink)}
  .ti-actor .ch{font-size:10.5px;color:var(--muted);line-height:1.2;margin-top:2px}
  .ti-trailer{position:relative;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000 center/cover no-repeat;cursor:pointer;border:1px solid var(--line)}
  .ti-trailer::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.45))}
  .ti-trailer .pl{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:2}
  .ti-trailer .pl b{width:58px;height:58px;border-radius:50%;background:rgba(0,0,0,.5);border:2px solid #fff;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;padding-left:4px}
  .ti-trailer .lbl{position:absolute;left:12px;bottom:10px;z-index:2;color:#fff;font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;text-shadow:0 1px 3px rgba(0,0,0,.6)}
  .ti-embed{position:relative;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000}
  .ti-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ti-snd{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:2;display:flex;align-items:center;gap:8px;padding:10px 16px;border:0;border-radius:999px;background:rgba(13,14,18,.82);color:#F2EEE5;font:600 14px/1 Archivo,system-ui,sans-serif;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 18px rgba(0,0,0,.45);cursor:pointer}
.ti-snd svg{width:18px;height:18px;color:#E0A24E}
.ti-snd:active{transform:translateX(-50%) scale(.96)}
  .wp-row{display:flex;align-items:flex-start;gap:12px;margin-bottom:10px}
  .wp-row:last-child{margin-bottom:0}
  .wp-lbl{flex:0 0 78px;font-size:12px;color:var(--muted);font-weight:600;padding-top:10px}
  .wp-logos{display:flex;flex-wrap:wrap;gap:8px}
  .wp-item{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:var(--surface-2);text-decoration:none}
  .wp-item img{width:40px;height:40px;display:block;object-fit:cover}
  .wp-item .wp-txt{padding:0 10px;font-size:12px;color:var(--ink);line-height:40px}
  .wp-item:hover{border-color:var(--accent)}
  .wp-affs{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
  .wp-aff{display:inline-block;padding:7px 12px;border-radius:999px;border:1px solid var(--accent);color:var(--accent);font-size:12.5px;font-weight:700;text-decoration:none}
  .wp-attr{font-size:9.5px;color:var(--muted);opacity:.6;margin-top:8px;font-style:italic;letter-spacing:.01em}
  .wp-none{font-size:13.5px;color:var(--muted);background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:11px 13px}
  input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box;background:var(--bg);border:1px solid var(--line-strong);
    border-radius:9px;color:var(--ink);font-family:inherit;font-size:15px;padding:11px 12px}
  input[type=date]{-webkit-appearance:none;appearance:none}
  textarea{resize:vertical;min-height:70px;line-height:1.5}
  input:focus,textarea:focus{outline:none;border-color:var(--accent)}
  .grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .sheet-actions{display:flex;gap:10px;padding-top:4px}
  .btn{border-radius:9px;padding:12px 16px;font-size:14.5px;font-weight:600;border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink);flex:1;transition:.14s}
  .btn:hover{border-color:var(--accent)}
  .btn-primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);flex:2}
  .btn-primary:hover{filter:brightness(1.06)}
  .btn-danger{color:var(--accent);background:transparent;border-color:transparent;flex:0 0 auto;padding:12px}
  .seg{display:flex;border:1px solid var(--line-strong);border-radius:9px;overflow:hidden}
  .seg button{flex:1;background:var(--bg);border:0;padding:11px;font-size:14px;font-weight:500;color:var(--muted)}
  .seg button.on{background:var(--ink);color:var(--bg)}

  /* éditeur de saisons */
  .srow{display:flex;align-items:center;gap:10px}
  .srow+.srow{margin-top:8px}
  .srow .sl{font-size:14px;color:var(--ink);width:96px;flex:0 0 auto}
  .srow .se{color:var(--muted);font-size:13px}
  .srow input{width:78px;text-align:center;padding:9px}
  .srow-del{background:none;border:0;color:var(--muted);font-size:16px;padding:6px;flex:0 0 auto}
  .srow-del:hover{color:var(--accent)}
  .season-add{margin-top:10px;background:var(--surface-2);border:1px dashed var(--line-strong);border-radius:8px;padding:10px;width:100%;color:var(--ink);font-weight:600;font-size:13.5px}
  .season-add:hover{border-color:var(--accent)}
  .setup-btn{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:9px;padding:13px;width:100%;color:var(--ink);font-weight:600;font-size:14px;display:flex;gap:8px;align-items:center;justify-content:center}
  .setup-btn:hover{border-color:var(--accent)}
  .hint{color:var(--muted);font-size:12.5px;line-height:1.5}
  /* Lien discret "Partager" (envoie le lien de la fiche publique à quelqu'un qui n'a pas l'appli) */
  .share-link-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;background:none;
    color:var(--muted);text-decoration:none;font-weight:600;font-size:12.5px;padding:6px 2px;margin-top:2px;cursor:pointer;font-family:inherit}
  .share-link-btn:hover{color:var(--accent)}
  .share-link-btn svg{flex:0 0 auto;width:14px;height:14px}

  .ep-head{display:flex;align-items:center;gap:14px}
  .ep-ring{--p:0;flex:0 0 auto;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;
    background:conic-gradient(var(--good) calc(var(--p)*1%), var(--surface-2) 0);position:relative}
  .ep-ring::before{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--surface)}
  .ep-ring b{position:relative;font-family:"Space Mono",monospace;font-size:13px;font-weight:500}
  .ep-head .ei{min-width:0;flex:1}
  .ep-head .ei .big{font-family:"Archivo",serif;font-size:17px;font-weight:600}
  .ep-head .ei .small{color:var(--muted);font-size:12.5px;margin-top:2px}
  .mini-edit{background:none;border:1px solid var(--line-strong);border-radius:7px;color:var(--muted);font-size:11.5px;padding:5px 9px;font-weight:600;flex:0 0 auto}
  .mini-edit:hover{color:var(--ink);border-color:var(--accent)}
  .season{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--bg)}
  .season+.season{margin-top:10px}
  .season-hd{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;background:var(--surface-2);cursor:pointer}
  .season-hd .st{font-weight:600;font-size:14px}
  .season-hd .sc{font-family:"Space Mono",monospace;font-size:11.5px;color:var(--muted)}
  .season-hd .chev{color:var(--muted);transition:transform .18s;font-size:12px}
  .season.open .season-hd .chev{transform:rotate(90deg)}
  .season-all{background:none;border:1px solid var(--line-strong);border-radius:6px;color:var(--muted);font-size:11px;padding:3px 8px;font-weight:600}
  .season-all:hover{color:var(--ink);border-color:var(--accent)}
  .ep-list{display:none;padding:6px}
  .season.open .ep-list{display:block}
  .ep-row{display:flex;align-items:center;gap:11px;padding:9px;border-radius:8px;cursor:pointer}
  .ep-row:hover{background:var(--surface-2)}
  .ep-box{flex:0 0 auto;width:20px;height:20px;border-radius:6px;border:1.5px solid var(--line-strong);display:grid;place-items:center;color:transparent;font-size:12px;transition:.12s}
  .ep-row.done .ep-box{background:var(--good);border-color:var(--good);color:#fff}
  .ep-row .ep-n{font-size:14px}
  .ep-row.done .ep-n{color:var(--muted)}
  .ep-row .ep-tag{margin-left:auto;font-family:"Space Mono",monospace;font-size:11px;color:var(--muted)}

  html.maint-lock,html.maint-lock body{overflow:hidden!important;height:100%!important}
  html.splash-lock,html.splash-lock body{overflow:hidden!important;height:100%!important}
  #maintOverlay{position:fixed;inset:0;z-index:100000;background:var(--bg);color:var(--ink);align-items:center;justify-content:center;padding:28px;text-align:center;flex-direction:column;display:none}
  #maintOverlay.on{display:flex}
  #maintOverlay .m-emoji{font-size:58px;line-height:1}
  #maintOverlay h2{font-family:"Anton",Impact,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.03em;font-size:30px;margin:16px 0 8px}
  #maintOverlay p{max-width:440px;color:var(--muted);font-size:15px;line-height:1.6;margin:0}
  #maintBanner{position:fixed;top:0;left:0;right:0;z-index:99998;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:12.5px;text-align:center;padding:6px 12px;display:none;padding-top:max(6px,env(safe-area-inset-top))}
  #maintBanner.on{display:block}
  .toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 92px);transform:translateX(-50%) translateY(14px) scale(.96);
    display:flex;align-items:center;gap:10px;width:max-content;max-width:min(420px,calc(100vw - 32px));padding:10px 16px 10px 10px;border-radius:999px;
    background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);
    border:1px solid color-mix(in srgb,var(--line-strong) 80%,transparent);color:var(--ink);font-size:14px;font-weight:600;line-height:1.3;
    box-shadow:0 18px 40px -14px rgba(0,0,0,.6),0 2px 8px rgba(0,0,0,.18);opacity:0;pointer-events:none;
    transition:opacity .22s ease,transform .38s cubic-bezier(.2,1.3,.4,1);z-index:300}
  .toast.show{opacity:1;transform:translateX(-50%) translateY(0) scale(1);pointer-events:auto}
  .toast .t-ic{flex:0 0 auto;width:28px;height:28px;border-radius:99px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}
  .toast .t-ic svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
  .toast.err .t-ic{background:rgba(229,72,77,.16);color:#F0656A}
  .toast.t-bd .t-ic{background:conic-gradient(from 200deg,#E2AE3C,#FFF0B3 15%,#8A5A0E 35%,#E2AE3C 55%,#FFF0B3 75%,#E2AE3C);color:#3A2606}
  .toast .t-tx{min-width:0}
  @media(min-width:900px){ .toast{bottom:calc(env(safe-area-inset-bottom,0px) + 110px)} }

  footer{max-width:1120px;margin:0 auto;padding:0 20px 40px;color:var(--muted);font-size:12.5px;text-align:center;line-height:1.7}
  footer .tools{display:flex;gap:14px;justify-content:center;margin-bottom:10px;flex-wrap:wrap}
  footer button{background:none;border:0;color:var(--muted);font-size:12.5px;text-decoration:underline;text-underline-offset:3px}
  footer button:hover{color:var(--ink)}

  /* actions en-tête */
  .head-actions{display:flex;gap:10px;align-items:center}

  /* barre de navigation type application */
  main{padding-bottom:104px}
  .botnav{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;
    background:var(--bg);
    border-top:1px solid var(--line);padding:6px 6px calc(6px + env(safe-area-inset-bottom))}
  .nav-item{flex:1;background:none;border:0;display:flex;flex-direction:column;align-items:center;gap:3px;
    padding:7px 2px;color:var(--muted);font-size:11px;font-weight:500;border-radius:10px;transition:color .14s}
  .nav-item svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .nav-item.active{color:var(--accent)}
  @media(min-width:760px){.botnav{max-width:520px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:16px;bottom:18px;box-shadow:var(--shadow)}}

  /* en-tête d'onglet */
  .tabhead{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}
  .tabtitle{font-family:"Archivo",serif;font-weight:600;font-size:26px;margin:0}
  .tcount{color:var(--muted);font-size:13px}
  .chiprow{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px;margin-bottom:16px;scrollbar-width:thin}
  .chiprow .chip{white-space:nowrap;flex:0 0 auto}

  /* favori + badge vu sur la couverture */
  .fav-btn{position:absolute;top:10px;right:10px;z-index:3;width:30px;height:30px;border-radius:50%;border:0;
    background:rgba(18,14,12,.5);color:#F2EEE6;font-size:16px;line-height:1;display:grid;place-items:center;
    transition:transform .12s}
  .fav-btn:hover{transform:scale(1.14)}
  .fav-btn.on{color:#ff6f6f}
  .c-seen{position:absolute;top:44px;left:15px;font-size:10px;font-weight:700;letter-spacing:.04em;
    background:var(--good);color:#fff;padding:2px 7px;border-radius:5px}

  /* recherche */
  .searchbox{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line-strong);
    border-radius:12px;padding:2px 14px;box-shadow:var(--shadow);margin-bottom:6px}
  .searchbox svg{color:var(--muted);flex:0 0 auto}
  .searchbox input{border:0;background:transparent;color:var(--ink);font-family:inherit;font-size:16px;padding:14px 0;width:100%}
  .searchbox input:focus{outline:none}
  .searchbox input::placeholder{color:var(--muted)}
  .clear-x2{background:none;border:0;color:var(--muted);font-size:18px;padding:4px;display:none}

  /* profil */
  .phead{display:flex;align-items:center;gap:16px;margin-bottom:20px}
  .pavatar{width:64px;height:64px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;position:relative;overflow:visible;border:0;cursor:pointer;padding:0;
    font-family:"Archivo",serif;font-size:28px;font-weight:600;color:var(--accent-ink);
    background:linear-gradient(150deg,var(--accent),color-mix(in srgb,var(--accent) 58%,#000))}
  .pavatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
  .pav-edit{position:absolute;right:-2px;bottom:-2px;width:24px;height:24px;border-radius:50%;background:var(--accent);color:var(--accent-ink);border:2px solid var(--bg);display:flex;align-items:center;justify-content:center;z-index:3;box-shadow:0 1px 3px rgba(0,0,0,.4)}
  @media(hover:hover){ .pav-edit{opacity:0;transition:opacity .15s ease} .pavatar:hover .pav-edit{opacity:1} }
  .pname{font-family:"Archivo",serif;font-size:22px;font-weight:600;line-height:1.2}
  .pname-edit{background:none;border:0;color:var(--muted);font-size:12.5px;text-decoration:underline;text-underline-offset:3px;padding:4px 0;cursor:pointer}
  .pname-edit:hover{color:var(--ink)}
  .pusername{color:var(--muted);font-size:13px;margin:1px 0 5px;font-weight:600}
  .psection{margin-top:26px}
  .ptitle{font-family:"Archivo",serif;font-size:18px;font-weight:600;margin:0 0 12px;display:flex;gap:8px;align-items:baseline}
  .ptitle .mono{color:var(--muted);font-size:13px}
  .ptools{display:flex;gap:12px;justify-content:center;margin-top:32px;flex-wrap:wrap}
  .ptools button{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:9px;padding:10px 16px;color:var(--ink);font-weight:600;font-size:13.5px}
  .ptools button:hover{border-color:var(--accent)}

  /* ---- Identité premium « marquee » ---- */
  .brand h1{font-family:"Anton",Impact,sans-serif;font-weight:400;font-size:23px;letter-spacing:.05em;text-transform:uppercase;line-height:1}
  .brand h1 .br{color:var(--accent)}
  .brand .reel{font-size:20px;filter:saturate(1.1)}
  .brand .tag{font-family:"Space Mono",monospace;letter-spacing:.1em}
  .tabtitle{font-family:"Anton",Impact,sans-serif;font-weight:400;font-size:33px;letter-spacing:.03em;text-transform:uppercase;line-height:1}
  .tabhead{border-bottom:1px solid var(--line);padding-bottom:13px}
  .ptitle{font-family:"Anton",Impact,sans-serif;font-weight:400;font-size:19px;letter-spacing:.045em;text-transform:uppercase}
  .pavatar{font-family:"Anton",Impact,sans-serif;font-weight:400;font-size:30px}
  .pname{font-weight:700}
  .stat .n{font-family:"Anton",Impact,sans-serif;font-weight:400;font-size:35px;letter-spacing:.01em}
  .stat .k{font-family:"Space Mono",monospace;text-transform:uppercase}
  .chiprow .chip{font-family:"Space Mono",monospace;font-size:12px;letter-spacing:.02em}
  .cover .c-kind{font-family:"Space Mono",monospace;font-weight:700}
  .cover .c-kind,.cover .c-year,.cover .c-seen{z-index:2}
  .c-title{position:relative;z-index:2;font-weight:700;font-size:16px;letter-spacing:.1px}
  .c-year{position:relative}
  .c-seen{font-family:"Space Mono",monospace;font-weight:700;letter-spacing:.05em;background:var(--accent);color:var(--accent-ink)}
  .c-seen.encours{background:rgba(10,9,8,.55);color:var(--accent);border:1px solid var(--accent);text-transform:uppercase}
  .season-hd .st,.ep-row .ep-n{font-family:"Archivo",sans-serif}
  .nav-item{position:relative}
  .nav-item span{font-family:"Archivo",sans-serif;letter-spacing:.02em;font-size:10.5px;font-weight:500}
  .nav-item.active::before{content:"";position:absolute;top:-2px;left:50%;transform:translateX(-50%);width:22px;height:3px;border-radius:3px;background:var(--accent)}
  .card:hover{border-color:color-mix(in srgb,var(--accent) 55%, var(--line-strong))}
  .add-btn{letter-spacing:.02em}

  /* durée sur les cartes */
  .card-sub{font-size:11px;color:var(--muted);font-weight:500}

  /* Temps de visionnage (profil) */
  .wt-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .wt-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:15px 16px;box-shadow:var(--shadow);position:relative;overflow:hidden}
  .wt-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);opacity:.55}
  .wt-top{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}
  .wt-ico{font-size:15px}
  .wt-lbl{font-family:"Space Mono",monospace;font-weight:700}
  .wt-big{font-family:"Anton",Impact,sans-serif;font-weight:400;font-size:27px;letter-spacing:.02em;color:var(--accent);line-height:1}
  .wt-sub{font-size:11px;color:var(--muted);margin-top:6px}
  .wt-total{margin-top:12px;text-align:center;color:var(--muted);font-size:12px}
  @media(max-width:430px){.wt-big{font-size:22px}}

  /* Écran d'accueil (fondu) */
  #splash{position:fixed;inset:0;height:100vh;height:100dvh;z-index:200;background:#0D0E12;display:flex;align-items:center;justify-content:center}
  .splash-inner{display:flex;flex-direction:column;align-items:center;gap:14px;animation:splashIn .9s ease both;padding:20px;text-align:center}
  .splash-reel{font-size:52px;line-height:1;filter:drop-shadow(0 8px 22px rgba(0,0,0,.35))}
  .splash-name{font-family:"Anton",Impact,sans-serif;font-weight:400;font-size:clamp(34px,11vw,46px);letter-spacing:.06em;text-transform:uppercase;color:#F2EEE5;line-height:1}
  .splash-name .br{color:#E0A24E}
  .splash-line{height:2px;background:#E0A24E;border-radius:2px;width:130px;transform-origin:50% 50%;animation:splashLine .7s .55s ease both}
  .splash-tag{font-family:"Space Mono",monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#928C81}
  #splash.hide{opacity:0;transition:opacity .6s ease}

  #splash .sp-rows{opacity:0;transition:opacity .45s ease}
  #splash .sp-rows:not(.ready) .poster{transition:none}
  #splash .sp-rows.ready{opacity:1}
  #splash .rowwrap{contain:paint}
  #splash .track{transform:translate3d(0,0,0);backface-visibility:hidden}
  @keyframes spScrollL{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
  @keyframes spScrollR{from{transform:translate3d(-50%,0,0)}to{transform:translate3d(0,0,0)}}
  html.sa-launch #splash.sp-full .splash-inner{animation:none}
  /* Logo CinéCarnet (symbole « objectif ») */
  .cc-mark{display:block;overflow:visible;flex:0 0 auto}
  .brand{align-items:center}
  .brand .cc-mark.reel{width:30px;height:30px;color:var(--ink);font-size:0}
  @media(max-width:430px){ .brand .cc-mark.reel{width:26px;height:26px} }
  /* En-tête : symbole et nom à la même échelle optique (symbole ≈ 1,3 × la hauteur des capitales) */
  .brand{gap:9px;align-items:center}
  .brand h1{font-size:25px!important;letter-spacing:.04em!important;line-height:1!important}
  .brand .cc-mark.reel{height:29px;width:auto;aspect-ratio:86/98}
  @media(max-width:430px){ .brand{gap:8px} .brand h1{font-size:23px!important} .brand .cc-mark.reel{height:27px} }
  @media(max-width:360px){ .brand h1{font-size:20px!important} .brand .cc-mark.reel{height:24px} }
  .brand .cc-mark.reel{height:37px}
  @media(max-width:430px){ .brand .cc-mark.reel{height:34px} }
  @media(max-width:360px){ .brand .cc-mark.reel{height:30px} }
  .ob-logo .cc-mark{width:64px;height:64px;margin:0 auto}
  .ob-logo{font-size:0!important}
  .wl-mark{width:64px;height:64px}
  #instLand .il-ic{display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,#1D1E26,#0D0E12);border:1px solid #2A2B34}
  #instLand .il-ic .cc-mark{width:62%;height:62%}
  .splash-name .m{display:inline-block;overflow:hidden;vertical-align:bottom;padding-top:.22em;margin-top:-.22em}
  .splash-name .l{display:inline-block}
  #splash.sp-full .splash-inner{animation:none}
  /* Logo d'ouverture : 3 calques animés uniquement en rotation / échelle / opacité
     (calculé par la carte graphique, fluide même pendant le chargement de l'appli) */
  .sp-logo{position:relative;width:92px;height:92px;flex:0 0 auto}
  .sp-logo .sl{position:absolute;inset:0;width:100%;height:100%;overflow:visible;transform-origin:55% 50%;backface-visibility:hidden}
  #splash.sp-full .sl{will-change:transform,opacity}
  #splash.sp-full .so1{animation:ccIn1 1s cubic-bezier(.16,1,.3,1) both}
  #splash.sp-full .so2{animation:ccIn2 .95s .18s cubic-bezier(.16,1,.3,1) both}
  #splash.sp-full .sdot{animation:ccDot .55s .62s cubic-bezier(.34,1.56,.64,1) both}
  @keyframes ccIn1{from{transform:rotate(-150deg) scale(.72);opacity:0}to{transform:rotate(0) scale(1);opacity:1}}
  @keyframes ccIn2{from{transform:rotate(170deg) scale(.55);opacity:0}to{transform:rotate(0) scale(1);opacity:1}}
  @keyframes ccDot{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}
  #splash.sp-full .splash-name .l{will-change:transform;backface-visibility:hidden;animation:ccUp .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(.85s + var(--i) * 50ms)}
  #splash.sp-full .splash-line{animation:splashLine .7s 1.45s ease both}
  @keyframes ccDraw1{from{stroke-dashoffset:240}to{stroke-dashoffset:0}}
  @keyframes ccDraw2{from{stroke-dashoffset:120}to{stroke-dashoffset:0}}
  @keyframes ccPop{from{transform:scale(0);opacity:0}to{transform:none;opacity:1}}
  @keyframes ccUp{from{transform:translate3d(0,140%,0)}to{transform:translate3d(0,0,0)}}
  @media (prefers-reduced-motion:reduce){ #splash.sp-full .sl, #splash.sp-full .splash-name .l{animation:none!important} }
  /* ==== Cinématique d'ouverture (affiches défilantes) ==== */
  #splash{overflow:hidden}
  .sp-rows{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:16px;z-index:1}
  #splash .rowwrap{position:relative;width:100%;overflow:hidden;height:177px;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
    mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
  #splash .track{display:flex;gap:16px;width:max-content;align-items:center;will-change:transform}
  #splash .track.l{animation:spScrollL var(--dur,46s) linear infinite}
  #splash .track.r{animation:spScrollR var(--dur,56s) linear infinite}
  @keyframes spScrollL{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  @keyframes spScrollR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
  #splash .poster{flex:0 0 auto;width:118px;height:177px;border-radius:10px;overflow:hidden;position:relative;
    box-shadow:0 10px 26px rgba(0,0,0,.55);background:#15171E;opacity:.5;transition:opacity .5s}
  #splash .poster{opacity:0;transition:opacity .35s ease}
  #splash .poster.in{opacity:.85}
  #splash .poster img{width:100%;height:100%;object-fit:cover;display:block}
  .sp-veil{position:absolute;inset:0;z-index:2;pointer-events:none;
    background:radial-gradient(ellipse 340px 230px at 50% 50%,rgba(13,14,18,.93) 0%,rgba(13,14,18,.82) 42%,rgba(13,14,18,.38) 100%),
    linear-gradient(180deg,rgba(13,14,18,.55),rgba(13,14,18,.2) 30%,rgba(13,14,18,.2) 70%,rgba(13,14,18,.55))}
  .sp-grain{position:absolute;inset:0;z-index:3;pointer-events:none;opacity:.05;background-size:180px;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
  #splash .splash-inner{position:relative;z-index:4}
  @media(max-width:520px){ #splash .poster{width:94px;height:141px} #splash .rowwrap{height:141px} #splash .track{gap:12px} .sp-rows{gap:12px} }
  @media(min-width:1200px){ #splash .poster{width:140px;height:210px} #splash .rowwrap{height:210px} }
  @media(min-width:1800px){ #splash .poster{width:162px;height:243px} #splash .rowwrap{height:243px} }
  @media (prefers-reduced-motion:reduce){ #splash .track{animation:none!important} }
  @keyframes splashIn{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
  @keyframes splashLine{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  /* Appli installée : l'image de démarrage du téléphone montre déjà ce logo → on l'affiche tel quel, sans réapparition */
  html.sa-launch .splash-inner{animation:none}
  html.sa-launch .splash-line{animation:none;width:130px}

  /* bouton Ajouter (recherche) */
  .list-add{margin-top:auto;width:100%;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);
    border-radius:8px;padding:9px;font-size:13px;font-weight:700;transition:.14s}
  .list-add:hover{filter:brightness(1.06)}
  .list-add.in{background:transparent;border-style:dashed}
  .list-add.done{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);border-color:var(--accent);border-style:solid}
  .list-add.added{background:transparent;color:#7FA6C9;border-color:#7FA6C9;border-style:dashed}

  /* Onboarding / compte */
  .cc-captcha{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:300;display:none}
  .cc-captcha.on{display:block}
  #onboard{position:fixed;inset:0;z-index:150;background:var(--bg);display:none;align-items:flex-start;justify-content:center;overflow:auto;padding:calc(30px + env(safe-area-inset-top,0px)) 20px calc(40px + env(safe-area-inset-bottom,0px))}
  .ob-wrap{width:100%;max-width:460px;margin:auto;display:flex;flex-direction:column}
  .ob-step{display:flex;flex-direction:column;gap:16px}
  .ob-head{text-align:center;margin-bottom:4px}
  .ob-logo{font-size:44px;line-height:1;filter:drop-shadow(0 8px 22px rgba(0,0,0,.3))}
  .ob-head h2{font-family:"Anton",Impact,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.04em;font-size:30px;margin:10px 0 6px;color:var(--ink)}
  .ob-head p{color:var(--muted);font-size:14px;margin:0 auto;line-height:1.5;max-width:340px}
  .ob-form{display:flex;flex-direction:column;gap:15px}
  .ob-form>div{display:flex;flex-direction:column;gap:7px}
  .ob-form label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}
  .ob-form input.err{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg))}
  .pw-field{position:relative}
  .pw-field input{padding-right:42px}
  .pw-eye{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:none;border:0;padding:7px;
    cursor:pointer;color:var(--muted);display:flex;align-items:center;justify-content:center;border-radius:7px}
  .pw-eye:hover{color:var(--ink)}
  .pw-eye svg{width:18px;height:18px;display:block}
  .ob-social{display:flex;flex-direction:column;gap:10px}
  .ob-soc[hidden],.ob-or[hidden]{display:none!important}
  .ob-soc{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:13px 14px;border-radius:10px;border:1px solid var(--line-strong);background:#fff;color:#1f1f1f;font-weight:700;font-size:15px;font-family:inherit;cursor:pointer;transition:transform .12s,box-shadow .12s}
  .ob-soc:hover{box-shadow:0 4px 14px -6px rgba(0,0,0,.35);transform:translateY(-1px)}
  .ob-soc:disabled{opacity:.6;cursor:wait;transform:none}
  .ob-soc svg{width:20px;height:20px;flex:0 0 auto}
  .ob-soc.ob-apple{background:#000;color:#fff;border-color:#000}
  .ob-or{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12.5px;margin:2px 0}
  .ob-or:before,.ob-or:after{content:"";flex:1;height:1px;background:var(--line)}
  .ob-primary{background:var(--accent);color:var(--accent-ink);border:0;border-radius:10px;padding:14px;font-weight:700;font-size:15px;margin-top:6px;box-shadow:var(--shadow)}
  .ob-primary:hover{filter:brightness(1.06)}
  .ob-note{text-align:center;color:var(--muted);font-size:12px;margin:2px 0 0}
  /* Confidentialité (interrupteur façon Instagram) */
  .priv-row{display:flex;align-items:center;gap:12px;margin-top:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}
  .priv-ic{flex:0 0 40px;height:40px;border-radius:12px;background:var(--surface);border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center}
  .priv-ic svg{width:20px;height:20px;stroke:var(--ink);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .priv-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--muted);line-height:1.35}
  .priv-tx b{font-size:15px;color:var(--ink)}
  .priv-sw{flex:0 0 auto;position:relative;width:52px;height:32px;border-radius:999px;border:0;background:var(--line-strong);cursor:pointer;transition:background .2s;padding:0}
  .priv-sw i{position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.3);transition:transform .2s}
  .priv-sw[aria-checked="true"]{background:var(--accent)}
  .priv-sw[aria-checked="true"] i{transform:translateX(20px)}
  .priv-sw:disabled{opacity:.6;cursor:default}
  .push-row{margin-top:10px}
  .un-wrap{display:flex;align-items:center;gap:2px;margin-top:12px;padding:0 12px;border:1px solid var(--line-strong);border-radius:10px;background:var(--bg)}
  .un-wrap:focus-within{border-color:var(--accent)}
  .un-at{color:var(--muted);font-weight:700}
  .un-wrap input,#setPseudo{border:0!important;background:transparent!important;box-shadow:none!important}
  .un-wrap input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font-size:15px;padding:12px 2px;outline:none;font-family:inherit}
  .un-wrap input:disabled{color:var(--muted)}
  .un-hint{margin-top:8px}
  .un-hint.ok{color:var(--good,#5FC38A)} .un-hint.bad{color:var(--bad,#EF8686)}
  .set-plats{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
  .set-plats[hidden]{display:none}
  .sp-it{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);font-size:13px;font-weight:600}
  .sp-it img{width:26px;height:26px;border-radius:7px;object-fit:cover}
  .push-info{margin-top:10px}
  .push-info b{color:var(--ink);font-weight:600}
  .push-help{margin-top:8px;color:var(--ink)}
  .push-warn{display:flex;align-items:center;gap:12px;margin-top:12px;padding:10px 12px;border-radius:12px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent);font-size:13px}
  .push-warn span{flex:1;min-width:0}
  .push-warn .btn{flex:0 0 auto;padding:8px 14px}
  #privOv{position:fixed;inset:0;z-index:170;display:none;align-items:flex-end;justify-content:center;background:rgba(0,0,0,.55);padding:12px}
  #privOv.open{display:flex}
  @media(min-width:720px){#privOv{align-items:center}}
  #privOv .pb{width:100%;max-width:440px;background:var(--surface);border:1px solid var(--line-strong);border-radius:22px;padding:26px 22px 18px;color:var(--ink);box-shadow:var(--shadow);text-align:center}
  #privOv .pi{width:64px;height:64px;border-radius:50%;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
  #privOv .pi svg{width:30px;height:30px;stroke:var(--ink);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  #privOv h3{margin:0 0 16px;font-size:20px}
  #privOv ul{list-style:none;margin:0 0 20px;padding:0;text-align:left;display:grid;gap:14px}
  #privOv li{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.45;color:var(--ink)}
  #privOv li svg{flex:0 0 22px;width:22px;height:22px;stroke:var(--muted);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}
  #privOv .pgo{width:100%;height:50px;border:0;border-radius:12px;background:var(--accent);color:var(--accent-ink);font-weight:800;font-size:15px;cursor:pointer}
  #privOv .pno{width:100%;height:44px;border:0;background:none;color:var(--muted);font-weight:700;font-size:14px;margin-top:6px;cursor:pointer}
  /* Double authentification : saisie du code */
  .mfa-box{margin-top:14px;background:var(--surface-2);border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:12px}
  .mfa-hd{display:flex;align-items:center;gap:12px}
  .mfa-ic{flex:0 0 44px;height:44px;border-radius:12px;background:var(--accent);display:flex;align-items:center;justify-content:center}
  .mfa-ic svg{width:22px;height:22px;stroke:var(--accent-ink);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .mfa-ht{display:flex;flex-direction:column;min-width:0;font-size:13px;color:var(--muted);line-height:1.35}
  .mfa-ht>b{font-size:15.5px;color:var(--ink)}
  .mfa-ht span b{color:var(--ink);word-break:break-all}
  .mfa-input{width:100%;box-sizing:border-box;height:62px;border-radius:14px;border:2px solid var(--line-strong);background:var(--surface);color:var(--ink);
    font-family:"Space Mono",ui-monospace,monospace;font-size:28px;font-weight:700;letter-spacing:.32em;text-align:center;padding:0 10px;outline:none;transition:border-color .15s}
  .mfa-input::placeholder{font-family:inherit;font-size:16px;letter-spacing:.04em;font-weight:500;color:var(--muted)}
  .mfa-input:focus{border-color:var(--accent)}
  .mfa-go{width:100%;height:52px;border:0;border-radius:14px;background:var(--accent);color:var(--accent-ink);font-weight:800;font-size:15.5px;cursor:pointer}
  .mfa-go:disabled{opacity:.6;cursor:default}
  .mfa-err{background:rgba(231,124,124,.12);border:1px solid rgba(231,124,124,.45);color:#E77C7C;border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.4}
  .mfa-links{display:flex;justify-content:center;align-items:center;gap:10px;color:var(--muted);font-size:13.5px}
  .mfa-link{background:none;border:0;color:var(--accent);font-weight:700;font-size:13.5px;padding:6px 2px;cursor:pointer}
  .mfa-link:disabled{color:var(--muted);cursor:default}
  .mfa-hint{margin:0;color:var(--muted);font-size:12px;line-height:1.45;text-align:center}
  .ob-explore{margin:26px 0 0;padding:18px 0 0;border-top:1px solid var(--line);text-align:center}
  .ob-explore p{margin:0 0 11px;color:var(--muted);font-size:12.5px}
  .ob-explore div{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}
  .ob-explore a{display:inline-block;padding:6px 12px;border-radius:999px;border:1px solid var(--line-strong,var(--line));background:var(--surface);color:var(--ink);font-size:12.5px;text-decoration:none}
  .ob-explore a:hover{border-color:var(--accent);color:var(--accent)}
  .ob-explore .ob-legal{margin:0;font-size:11.5px}
  .ob-explore .ob-legal a{border:0;background:none;padding:0 4px;color:var(--muted);text-decoration:underline;text-underline-offset:2px;font-size:11.5px}
  .ob-skip{background:none;border:0;color:var(--muted);font-size:14px;text-decoration:underline;text-underline-offset:3px;padding:12px;margin-top:0}
  .ob-skip:hover{color:var(--ink)}
  .ob-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
  .ob-cell{--cg:#454049;position:relative;aspect-ratio:2/3;border:0;border-radius:9px;overflow:hidden;padding:8px;color:#F4EFE6;
    display:flex;align-items:flex-end;text-align:left;cursor:pointer;
    background:linear-gradient(to top,rgba(0,0,0,.62),rgba(0,0,0,.05) 60%),linear-gradient(160deg,var(--cg),color-mix(in srgb,var(--cg) 55%,#000))}
  .ob-cell-t{font-family:"Archivo",serif;font-weight:700;font-size:11.5px;line-height:1.15;text-shadow:0 1px 6px rgba(0,0,0,.4)}
  .ob-cell .ob-check{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,.4);display:grid;place-items:center;font-size:12px;opacity:0;transition:.12s}
  .ob-cell.on{outline:3px solid var(--accent);outline-offset:-3px}
  .ob-cell.on .ob-check{opacity:1;background:var(--accent);color:var(--accent-ink)}
  .ob-or{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin:6px 0}
  .ob-or::before,.ob-or::after{content:"";flex:1;height:1px;background:var(--line)}
  .ob-secondary{background:var(--surface-2);border:1px solid var(--line-strong);color:var(--ink);border-radius:10px;padding:13px;font-weight:600;font-size:14px;transition:.14s}
  .ob-secondary:hover{border-color:var(--accent)}

  /* compte (en-tête) */
  .acct{position:relative}
  .acct-btn{align-items:center;gap:7px;background:var(--surface);border:1px solid var(--line-strong);border-radius:20px;padding:3px 10px 3px 3px;color:var(--ink);font-weight:600;font-size:13px}
  .acct-btn:hover{border-color:var(--accent)}
  .acct-ava{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(150deg,var(--accent),color-mix(in srgb,var(--accent) 58%,#000));color:var(--accent-ink);font-family:"Anton",Impact,sans-serif;font-weight:400;font-size:14px;flex:0 0 auto}
  .acct-name{max-width:96px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .acct-caret{color:var(--muted);font-size:10px}
  @media(max-width:520px){.acct-name{display:none}}
  .acct-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:50;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;box-shadow:var(--shadow);min-width:210px;padding:8px;display:flex;flex-direction:column;gap:2px}
  .acct-menu[hidden]{display:none}
  .acct-who{padding:8px 10px 10px;color:var(--muted);font-size:12px;border-bottom:1px solid var(--line);margin-bottom:6px;line-height:1.5}
  .acct-who b{color:var(--ink);font-size:14px;font-weight:700}
  .acct-mi{text-align:left;background:none;border:0;border-radius:8px;padding:10px;color:var(--ink);font-size:14px;font-weight:500}
  .acct-mi:hover{background:var(--surface-2)}
  .acct-mi.danger{color:var(--accent)}
  /* Réglages — page façon Claude */
  .set-overlay{align-items:stretch;justify-content:center;padding:0}
  @media(min-width:720px){.set-overlay{align-items:center;padding:24px}}
  .set-panel{background:var(--surface);width:100%;height:100%;max-width:960px;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}
  @media(min-width:720px){.set-panel{height:82vh;border-radius:18px;box-shadow:var(--shadow);padding-top:0}}
  .set-hd{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line);flex:0 0 auto}
  .set-hd h2{font-family:"Anton",Impact,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.04em;font-size:22px;margin:0}
  .set-body{display:flex;flex:1;min-height:0}
  .set-nav{width:220px;flex:0 0 auto;border-right:1px solid var(--line);padding:16px 12px;overflow-y:auto;display:none}
  @media(min-width:720px){.set-nav{display:block} .set-hd h2{display:none} .set-hd{justify-content:flex-end;padding:14px 20px}}
  .set-nav-lbl{font-size:13.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;padding:4px 10px 12px}
  .set-nav-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:0;border-radius:9px;padding:10px 12px;color:var(--ink);font-size:14px;font-weight:600}
  .set-nav-item .sn-ic{font-size:16px}
  .set-nav-item.active{background:var(--surface-2)}
  .set-tabs-m{display:flex;gap:8px;margin:0 -2px 18px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:2px}
  .set-tabs-m::-webkit-scrollbar{display:none}
  .set-tabs-m .set-tab-m{flex:0 0 auto;white-space:nowrap;padding:9px 14px}
  .set-nav-item .sn-ic{display:inline-block;width:22px}
  .set-sub{margin:-6px 0 14px;color:var(--muted);font-size:13px}
  .set-danger{border:1px solid color-mix(in srgb,#E77C7C 45%,transparent);border-radius:12px;padding:14px!important;margin-top:8px;background:color-mix(in srgb,#E77C7C 6%,transparent)}
  @media(min-width:720px){.set-tabs-m{display:none}}
  .set-tab-m{flex:1;padding:10px 8px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);color:var(--muted);font-weight:700;font-size:13.5px;font-family:inherit;cursor:pointer}
  .set-tab-m.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
  .set-nav-item{cursor:pointer}
  .set-content{flex:1;min-width:0;overflow-y:auto;padding:24px 24px calc(28px + env(safe-area-inset-bottom))}
  .set-back{display:none}
  .set-menu-m{display:none}
  @media(max-width:719px){
    .set-hd{position:relative;justify-content:center;padding:12px 56px;min-height:56px}
    .set-hd h2{font-family:inherit;text-transform:none;letter-spacing:0;font-size:17px;font-weight:700}
    .set-hd .close-x{position:absolute;right:12px;top:50%;transform:translateY(-50%)}
    .set-back{position:absolute;left:8px;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;background:none;color:var(--ink);border-radius:50%;cursor:pointer;align-items:center;justify-content:center}
    .set-back svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
    .set-panel.m-pane .set-back{display:flex}
    .set-panel:not(.m-pane) .set-pane{display:none!important}
    .set-panel:not(.m-pane) .set-menu-m{display:block}
    .set-panel.m-pane .set-h3{display:none}
    .set-content{padding:16px 16px calc(32px + env(safe-area-inset-bottom))}
    .sm-me{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px;margin-bottom:20px;background:var(--surface-2);border:1px solid var(--line);border-radius:16px;color:var(--ink);font-family:inherit;text-align:left;cursor:pointer}
    .sm-me .fr-av{width:52px;height:52px;flex:0 0 52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;overflow:hidden}
    .sm-me-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
    .sm-me-tx b{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .sm-me-tx span{font-size:14px;color:var(--muted)}
    .sm-group{background:var(--surface-2);border:1px solid var(--line);border-radius:16px;overflow:hidden}
    .sm-item{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:56px;padding:0 16px;background:none;border:0;border-bottom:1px solid var(--line);color:var(--ink);font-family:inherit;font-size:16px;font-weight:600;text-align:left;cursor:pointer}
    .sm-item:last-child{border-bottom:0}
    .sm-item:active,.sm-me:active{background:var(--line)}
    .sm-ch{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:var(--muted);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
    .set-row{padding:18px 0;gap:12px}
    .set-row-t{font-size:16px}
    .set-row-d{font-size:14px;max-width:none}
    #settingsOverlay .grid2{grid-template-columns:1fr}
    #settingsOverlay .set-row .btn{width:100%;min-height:48px;justify-content:center;font-size:15.5px;text-align:center;display:flex;align-items:center}
    #settingsOverlay input[type=text],#settingsOverlay input[type=password],#settingsOverlay input[type=email]{font-size:16px;min-height:48px}
    #settingsOverlay .set-select{width:100%;min-width:0;font-size:16px;min-height:48px}
    #settingsOverlay .set-row > .set-select{flex:1 1 100%}
    #settingsOverlay .set-row div[style*="flex-direction:column"]{align-items:stretch!important}
  }
  .set-h3{font-family:"Archivo",serif;font-size:13.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 6px;font-weight:700}
  .set-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid var(--line)}
  .set-row-t{font-size:15px;font-weight:600}
  .set-row-d{font-size:12.5px;color:var(--muted);margin-top:4px;max-width:340px;line-height:1.5}
  .set-select{-webkit-appearance:none;appearance:none;background-color:var(--bg);border:1px solid var(--line-strong);border-radius:9px;
    color:var(--ink);font-family:inherit;font-size:14.5px;font-weight:600;padding:12px 40px 12px 14px;min-width:230px;cursor:pointer;transition:.14s;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23928C81' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center}
  .set-select:hover{border-color:var(--accent)}
  .set-select:focus{outline:none;border-color:var(--accent)}
  #obReturning{display:flex;flex-direction:column;gap:14px}
  .ob-login{display:flex;flex-direction:column;gap:10px}
  .ob-link{background:none;border:0;color:var(--muted);font-size:13px;text-decoration:underline;text-underline-offset:3px;padding:8px}
  .ob-link:hover{color:var(--ink)}
  .ob-err{background:color-mix(in srgb,var(--accent) 12%,var(--bg));border:1px solid var(--accent);color:var(--accent);border-radius:9px;padding:10px 12px;font-size:13px;text-align:center}
  .acct-email{display:block;font-size:11px;color:var(--muted);margin-top:3px;font-weight:400;word-break:break-all}

  /* affiches TMDB */
  .poster-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .18s;z-index:0}
  .cover.has-poster{background:#0b0c10}
  .cover.has-poster .poster-img{opacity:1}
  .cover.has-poster::after{opacity:0}
  .cover.has-poster::before{display:none}
  .cover.has-poster .c-kind,.cover.has-poster .c-rule,.cover.has-poster .c-title,.cover.has-poster .c-year,.cover.has-poster .c-init{display:none}
  .card-title{font-family:"Archivo",serif;font-weight:700;font-size:13.5px;line-height:1.2;letter-spacing:.1px;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .c-init{display:none}

  @media(max-width:400px){
    .brand h1{font-size:19px;letter-spacing:.03em}
    .brand .reel{font-size:17px}
    .head-actions{gap:7px}
    .add-btn{padding:0 12px}
  }

  @media (prefers-reduced-motion:reduce){*{transition:none!important} .splash-inner,.splash-line{animation:none!important} .splash-line{width:130px!important}}

  /* Avatars sans photo : initiale or sur fond Velours, liseré or (charte) */
  .fr-av.ini{background:radial-gradient(120% 120% at 30% 15%,#22232C,#15161C)!important;color:#E0A24E!important;box-shadow:inset 0 0 0 1.5px rgba(224,162,78,.55)}
  .cm-stack .fr-av.ini{box-shadow:inset 0 0 0 1px rgba(224,162,78,.55),0 0 0 1.5px var(--bg)}
  .cm-tt{min-height:2.5em}
  /* Fil d'activité compact */
  .ig .cm-feed{gap:0}
  .cm-ac{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
  .cm-ac:last-child{border-bottom:0}
  .cm-ac .cm-act-av .fr-av{width:38px;height:38px;font-size:14px}
  .cm-ac-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;padding-top:1px;cursor:pointer}
  .cm-ac.grp .cm-ac-main{cursor:default}
  .cm-ac-l{font-size:14.5px;line-height:1.35}
  .cm-ac-l b{font-weight:700}
  .cm-ac-v{color:var(--muted)}
  .cm-ac-t{font-weight:700}
  .cm-ac-m{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;font-size:12.5px;color:var(--muted)}
  .cm-ac-m .cm-stars{font-size:12px;letter-spacing:1px;color:var(--accent)}
  .cm-ac-m .cm-stars i{font-style:normal;color:color-mix(in srgb,var(--muted) 45%,transparent)}
  .cm-ac-sub{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
  .cm-ac-p{position:relative;width:48px;height:72px;flex:0 0 auto;border-radius:7px;overflow:hidden;background:var(--cg,var(--surface-2));box-shadow:0 6px 14px rgba(0,0,0,.28);cursor:pointer;transition:transform .15s}
  .cm-ac-p:hover{transform:translateY(-2px)}
  .cm-ac-p img,.cm-ac-sp img{width:100%;height:100%;object-fit:cover}
  .cm-ac-strip{display:flex;gap:8px;margin-top:8px;overflow-x:auto;scrollbar-width:none}
  .cm-ac-strip::-webkit-scrollbar{display:none}
  .cm-ac-sp{position:relative;width:56px;height:84px;flex:0 0 auto;border-radius:7px;overflow:hidden;background:var(--cg,var(--surface-2));box-shadow:0 6px 14px rgba(0,0,0,.28);cursor:pointer;transition:transform .15s}
  .cm-ac-sp:hover{transform:translateY(-2px)}
  .cm-add{align-self:flex-start;margin-top:6px;display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 11px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:transparent;color:var(--accent);font:600 12.5px "Archivo",sans-serif;cursor:pointer;transition:background .15s}
  .cm-add svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
  .cm-add:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}
  .cm-add.in{border-color:var(--line);color:var(--muted);cursor:default}
  .cm-add.in:hover{background:transparent}
  .cm-ac-duo{position:relative;width:38px;height:38px;flex:0 0 auto}
  .cm-ac-duo .fr-av{position:absolute;width:28px!important;height:28px!important;font-size:11px!important}
  .cm-ac-duo .fr-av:first-child{left:0;top:0}
  .cm-ac-duo .fr-av:nth-child(2){right:0;bottom:0;box-shadow:inset 0 0 0 1.5px rgba(224,162,78,.55),0 0 0 2px var(--bg)}
  .cm-tr-r.hv{padding:4px 6px}
  .cm-tr-r.hv .hsv{width:12px;height:12px;fill:#E0A24E;stroke:none}
  .cm-fr-av{position:relative}
  .cm-fr-aff{position:absolute;left:50%;bottom:-7px;transform:translateX(-50%);padding:1px 6px;border-radius:999px;background:#0D0E12;border:1px solid rgba(224,162,78,.6);color:var(--accent);font:700 10.5px/1.45 "Space Mono",ui-monospace,monospace;white-space:nowrap}
  .cm-fr .cm-fr-n{margin-top:3px}
  .cm-feed:not(.all) .cm-more{display:none!important}
  .cm-morebtn{display:block;margin:4px auto 0;height:36px;padding:0 18px;border-radius:999px;border:1px solid var(--line-strong);background:transparent;color:var(--ink);font:600 13px "Archivo",sans-serif;cursor:pointer}
  .cm-morebtn:hover{border-color:var(--accent);color:var(--accent)}
  #frTrends{margin-top:8px}
  .cm-h2{position:relative;display:flex;align-items:center;gap:22px;margin:18px 0 6px;padding:22px;border-radius:20px;border:1px solid var(--line);overflow:hidden;
    background:radial-gradient(80% 120% at 0% 0%,rgba(224,162,78,.14),transparent 60%),radial-gradient(70% 120% at 100% 100%,rgba(30,155,201,.12),transparent 60%),var(--surface)}
  .cm-h2-art{position:relative;width:118px;height:120px;flex:0 0 auto}
  .cm-h2-p{position:absolute;top:10px;width:64px;height:96px;border-radius:9px;overflow:hidden;background:var(--cg,var(--surface-2));box-shadow:0 10px 24px rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.06)}
  .cm-h2-p img{width:100%;height:100%;object-fit:cover}
  .cm-h2-p.p0{left:0;transform:rotate(-9deg)}
  .cm-h2-p.p2{left:54px;transform:rotate(9deg)}
  .cm-h2-p.p1{left:27px;top:2px;z-index:2}
  .cm-h2-c{min-width:0}
  .cm-h2 h3{margin:0;font:400 26px/1.05 "Anton",Impact,sans-serif;text-transform:uppercase;letter-spacing:.02em}
  .cm-h2 p{margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.45}
  .cm-h2-b{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
  @media(max-width:520px){ .cm-h2{flex-direction:column;text-align:center;padding:24px 18px} .cm-h2-b{justify-content:center} .cm-h2-b .cm-cta{flex:1 1 100%} }
  .pf-add{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 11px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:transparent;color:var(--accent);font:600 12.5px "Archivo",sans-serif;cursor:pointer}
  .pf-add svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .pf-add:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}
  .nx{display:flex;flex-direction:column;margin-bottom:6px}
  .nx-d{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin:12px 0 4px}
  .nx-d:first-child{margin-top:4px}
  #frTrends{margin-top:22px}
  #frTrends .nx{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:6px 14px 4px;margin:4px 0 8px}
  #frTrends .nx-d{margin:14px 0 2px;padding-top:12px;border-top:1px solid var(--line)}
  #frTrends .nx-d:first-child{margin-top:6px;padding-top:0;border-top:0}
  #frTrends .nx-r{border-bottom:0;padding:9px 0}
  #frTrends .nx-p{width:44px;height:66px}
  #frTrends .nx-m b{font-size:15px}
  .nx-r{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);cursor:pointer}
  .nx-r:last-child{border-bottom:0}
  .nx-p{position:relative;width:40px;height:60px;flex:0 0 auto;border-radius:7px;overflow:hidden;background:var(--cg,var(--surface-2));box-shadow:0 5px 12px rgba(0,0,0,.25)}
  .nx-p img{width:100%;height:100%;object-fit:cover}
  .nx-m{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
  .nx-m b{font-size:14.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .nx-m span{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .nx-w{display:flex;align-items:center;gap:8px;flex:0 0 auto}
  .nx-me{font-size:11px;font-weight:700;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:999px;padding:2px 8px}
  .rw{display:flex;flex-direction:column;gap:8px;margin-top:-8px}
  .rw-h{display:flex;align-items:center;justify-content:space-between;gap:10px}
  .rw-n{font-size:13px;color:var(--muted);font-weight:600}
  .rw-add{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:transparent;color:var(--accent);font:600 13px "Archivo",sans-serif;cursor:pointer}
  .rw-add svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
  .rw-list{display:flex;flex-wrap:wrap;gap:6px}
  .rw-d{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 4px 0 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);font-size:12.5px}
  .rw-d button{width:20px;height:20px;border-radius:50%;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:15px;line-height:1}
  .rw-d button:hover{color:var(--ink);background:var(--line)}
  .imp-ov{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(5,6,10,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
  .imp-ov.open{display:flex}
  .imp-box{width:100%;max-width:460px;max-height:92vh;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px;display:flex;flex-direction:column;gap:14px;box-shadow:0 30px 80px rgba(0,0,0,.5)}
  .imp-hd{display:flex;align-items:center;justify-content:space-between}.imp-hd h3{margin:0;font-size:18px;font-weight:800}
  .imp-x{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}
  .imp-tabs{display:flex;gap:6px;padding:4px;border-radius:12px;background:var(--surface-2)}
  .imp-tab{flex:1;height:34px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:700 13.5px "Archivo",sans-serif;cursor:pointer}
  .imp-tab.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 4px rgba(0,0,0,.2)}
  .imp-h{margin:0;font-size:13.5px;line-height:1.55;color:var(--muted)}.imp-h b{color:var(--ink)}
  .imp-drop{display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px;border:1.5px dashed var(--line-strong);border-radius:14px;cursor:pointer;color:var(--ink);font-weight:700;font-size:14px}
  .imp-drop:hover{border-color:var(--accent)}.imp-drop svg{width:26px;height:26px;fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .imp-sum{font-size:14px;text-align:center}.imp-sum b{color:var(--accent)}
  .imp-go{width:100%;justify-content:center}
  .imp-note{margin:0;font-size:12px;color:var(--muted);text-align:center}
  .imp-run{padding:20px 0;text-align:center;color:var(--muted);font-size:13.5px}
  .imp-bar{height:8px;border-radius:8px;background:var(--surface-2);overflow:hidden}.imp-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--orp,#B97A2C),var(--accent));transition:width .3s}
  .imp-done{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:6px 0}
  .imp-big{font-family:"Anton",Impact,sans-serif;font-size:54px;line-height:1;color:var(--accent)}
  .imp-s{margin:4px 0 0;font-size:13px;color:var(--muted)}
  .imp-miss{width:100%;text-align:left;font-size:12.5px;color:var(--muted);margin:6px 0}.imp-miss summary{cursor:pointer;color:var(--ink);font-weight:600}
  .imp-done .btn{margin-top:10px;min-width:160px;justify-content:center}
  .cm-ac-f{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px}.cm-ac-f .cm-add{margin-top:0}
  .rx{display:inline-flex;gap:4px}.rx[hidden]{display:none}
  .rx-b{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 8px;border-radius:999px;border:0;background:transparent;color:var(--muted);font:600 12.5px "Archivo",sans-serif;cursor:pointer}
  .rx-b:hover{color:var(--ink);background:var(--surface-2)}
  .rx-b svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linejoin:round}
  .rx-like.on{color:#E5533B}.rx-like.on svg{fill:#E5533B;stroke:#E5533B}
  .rx-list{display:flex;flex-direction:column;gap:12px;max-height:50vh;overflow:auto}
  .rx-c{display:flex;gap:10px;align-items:flex-start}.rx-c .fr-av{width:32px;height:32px;font-size:13px;flex:0 0 auto}
  .rx-cb{flex:1;min-width:0;font-size:13.5px;line-height:1.4}.rx-cb p{margin:3px 0 0;white-space:pre-wrap;word-break:break-word}
  .rx-t{color:var(--muted);font-size:12px}
  .rx-del{border:0;background:none;color:var(--muted);font-size:18px;cursor:pointer;padding:0 4px}
  .rx-form{display:flex;gap:8px}.rx-form input{flex:1;min-width:0;height:42px;padding:0 12px;border-radius:11px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font:500 14px "Archivo",sans-serif}
  .rx-inbox{width:100%;display:flex;align-items:center;gap:12px;margin:14px 0 4px;padding:12px 14px;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--ink);font:500 14px "Archivo",sans-serif;text-align:left;cursor:pointer}
  .rx-inbox span:nth-child(2){flex:1;min-width:0}.rx-inbox svg{width:16px;height:16px;fill:none;stroke:var(--muted);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
  .btn.m-list{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:12px 13px}
  .btn.m-list svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
  .ls-pick{display:flex;flex-direction:column;gap:6px;max-height:46vh;overflow:auto}
  .ls-row{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:12px;border:1px solid var(--line);background:transparent;color:var(--ink);font:600 14px "Archivo",sans-serif;cursor:pointer;text-align:left}
  .ls-row.on{border-color:color-mix(in srgb,var(--accent) 55%,transparent)}
  .ls-ck{width:22px;height:22px;border-radius:7px;border:1.5px solid var(--line-strong);display:grid;place-items:center;flex:0 0 auto}
  .ls-row.on .ls-ck{background:var(--accent);border-color:var(--accent)}.ls-ck svg{width:14px;height:14px;fill:none;stroke:var(--accent-ink);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
  .ls-n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ls-c{color:var(--muted);font-size:12.5px}
  .ls-shelf{margin:6px 0 18px}
  .ls-cards{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}.ls-cards::-webkit-scrollbar{display:none}
  .ls-card{flex:0 0 auto;width:150px;display:flex;flex-direction:column;gap:3px;border:0;background:none;color:var(--ink);text-align:left;cursor:pointer;padding:0;font-family:inherit}
  .ls-mos{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:3px;height:112px;border-radius:12px;overflow:hidden;background:var(--surface-2);margin-bottom:6px}
  .ls-mos i{background:var(--surface-2);overflow:hidden}.ls-mos i:first-child{grid-row:1/3}.ls-mos img{width:100%;height:100%;object-fit:cover;display:block}
  .ls-plus{display:grid;place-items:center;border:1.5px dashed var(--line-strong);background:transparent}.ls-plus svg{width:26px;height:26px;fill:none;stroke:var(--accent);stroke-width:2.2;stroke-linecap:round}
  .ls-cn{font-weight:700;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ls-cc{font-size:12px;color:var(--muted)}
  .ls-head{justify-content:flex-start!important;gap:12px}.ls-head .cm-back{flex:0 0 auto;display:inline-flex}
  .ls-acts{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 8px}
  .ls-a{height:34px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink);font:600 13px "Archivo",sans-serif;cursor:pointer}
  .ls-a.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
  .ls-delb{color:#E77C7C;border-color:rgba(231,124,124,.45)}
  .rx-form .btn{flex:0 0 auto;width:auto;padding:0 16px;height:42px}
  .ls-info{font-size:12.5px;color:var(--muted);margin:0 0 14px}
  .ls-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0}
  .ls-head{align-items:center}
  .ls-name{flex:1;min-width:0;display:flex;align-items:center;gap:8px;background:none;border:0;padding:0;color:var(--ink);cursor:pointer;text-align:left}
  .ls-name svg{flex:0 0 auto;width:18px;height:18px;fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .ls-ico{flex:0 0 auto;width:40px;height:40px;border-radius:999px;border:1px solid var(--line);background:transparent;display:grid;place-items:center;cursor:pointer;color:var(--ink)}
  .ls-ico svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .ls-sub{font-size:13px;color:var(--muted);margin:-4px 0 0}
  .ls-pub{margin:14px 0 18px}
  .ls-foot{display:flex;justify-content:center;margin:28px 0 10px}
  .ls-foot .ls-delb{background:none;border:0;padding:10px 14px;font:600 14px "Archivo",sans-serif;cursor:pointer}
  .st-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:14px 14px 6px;margin:4px 0 22px}
  .st-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
  .st-top>div{display:flex;align-items:baseline;gap:8px}.st-top b{font-size:16px}.st-top span{font-size:12.5px;color:var(--muted)}
  .st-x{background:none;border:0;color:var(--muted);font:600 13px "Archivo",sans-serif;cursor:pointer;padding:6px 2px}
  .st-bar{height:4px;border-radius:99px;background:var(--line);margin:10px 0 6px;overflow:hidden}.st-bar i{display:block;height:100%;background:var(--accent);border-radius:99px;transition:width .4s}
  .st-row{display:flex;align-items:center;gap:12px;width:100%;background:none;border:0;border-top:1px solid var(--line);padding:12px 2px;text-align:left;color:var(--ink);cursor:pointer}
  .st-row:first-of-type{border-top:0}
  .st-n{flex:0 0 auto;width:28px;height:28px;border-radius:99px;border:1.5px solid var(--line-strong);display:grid;place-items:center;font:700 13px "Archivo",sans-serif;color:var(--muted)}
  .st-row.ok .st-n{background:var(--accent);border-color:var(--accent)}
  .st-n svg{width:15px;height:15px;fill:none;stroke:var(--accent-ink);stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}
  .st-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.st-tx b{font-size:14.5px}.st-tx span{font-size:12.5px;color:var(--muted);line-height:1.35}
  .st-row.ok .st-tx b{color:var(--muted);text-decoration:line-through}
  .st-row.ok{cursor:default}
  .st-ch{flex:0 0 auto;width:18px;height:18px;fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .sp-sec{margin:2px 0 18px}.sp-sec .sp-row.sp-more{display:none}.sp-sec.all .sp-row.sp-more{display:flex}
  .sp-h{font:700 12px "Archivo",sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:6px 2px 10px}
  .sp-row{background:none;border:0;border-radius:0;padding:8px 2px;box-shadow:none}.sp-row:hover{box-shadow:none}
  .sp-p{flex:1;min-width:0;display:flex;align-items:center;gap:12px;background:none;border:0;padding:0;color:var(--ink);text-align:left;cursor:pointer}
  .sp-p .fr-av{width:44px;height:44px;font-size:16px}.sp-p .grow{display:flex;flex-direction:column;min-width:0}
  .sp-row .fr-btn{height:32px;padding:0 16px;border-radius:8px}
  .sp-all{background:none;border:0;color:var(--accent);font:600 14px "Archivo",sans-serif;padding:8px 2px;cursor:pointer}
  .sq-tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin:0 0 16px;overflow-x:auto;scrollbar-width:none}.sq-tabs::-webkit-scrollbar{display:none}
  .sq-t{flex:0 0 auto;background:none;border:0;padding:10px 0 11px;font:600 15px "Archivo",sans-serif;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}
  .sq-t.on{color:var(--ink);border-bottom-color:var(--ink)}
  .ups-sec{margin:2px 0 18px}
  .ups-h{font:700 12px "Archivo",sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 2px 8px}
  .ups-row{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;margin:0 -2px;padding:0 2px}.ups-row::-webkit-scrollbar{display:none}
  .ups{position:relative;flex:0 0 auto;width:min(268px,78vw);display:flex;align-items:center;gap:12px;padding:10px 34px 10px 10px;border:1px solid var(--line);border-radius:14px;background:var(--surface);cursor:pointer;scroll-snap-align:start;transition:opacity .2s,transform .2s}
  .ups.out{opacity:0;transform:scale(.96)}
  .ups-p{flex:0 0 auto;width:44px;height:64px;border-radius:8px;overflow:hidden}
  .ups-m{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
  .ups-m b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ups-d{font:700 12px "Archivo",sans-serif;color:var(--accent)}
  .ups-s{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ups-x{position:absolute;top:0;right:0;width:40px;height:40px;border:0;border-radius:99px;background:transparent;display:grid;place-items:center;cursor:pointer;color:var(--muted)}
  .ups-x svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
  .cm-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px}.cm-top .tabtitle{margin:0}
  .cm-bell{position:relative;width:44px;height:44px;border-radius:99px;border:1px solid var(--line);background:transparent;display:grid;place-items:center;cursor:pointer;color:var(--ink)}
  .cm-bell svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  .cm-bell i{position:absolute;top:4px;right:3px;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:#E5484D;color:#fff;font:700 10.5px/18px "Archivo",sans-serif;font-style:normal;text-align:center;box-shadow:0 0 0 2px var(--bg)}
  .cm-bell i[hidden]{display:none}
  .nt-row{display:flex;align-items:flex-start;gap:12px;width:100%;background:none;border:0;border-bottom:1px solid var(--line);padding:12px 4px;text-align:left;color:var(--ink);cursor:pointer;font:inherit}
  .nt-row .fr-av{width:40px;height:40px;font-size:15px;flex:0 0 auto}
  .nt-row.new{background:color-mix(in srgb,var(--accent) 8%,transparent);border-radius:12px}
  .nt-tx{display:flex;flex-direction:column;gap:3px;font-size:14px;line-height:1.35;min-width:0}
  .nt-body{color:var(--muted);font-size:13px}
  .nt-empty{display:flex;flex-direction:column;gap:6px;padding:26px 6px;text-align:center;color:var(--muted);font-size:13.5px}.nt-empty b{color:var(--ink);font-size:15px}
  .ig .cm-feed .cm-post,.cm-post{display:block;padding:16px 0;border-bottom:1px solid var(--line)}
  .cp-h{display:flex;align-items:center;gap:10px;margin-bottom:10px}
  .cp-h .cm-act-av .fr-av{width:36px;height:36px;font-size:13px}
  .cp-h .cm-ac-duo .fr-av{width:30px;height:30px;font-size:12px}
  .cp-who{flex:1;min-width:0;font-size:14px;line-height:1.35}.cp-who b{font-weight:700}
  .cp-ago{display:block;font-size:12px;color:var(--muted)}
  .cp-b{display:flex;gap:14px;cursor:pointer;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
  .cp-p{flex:0 0 auto;width:86px!important;height:129px!important;border-radius:10px;overflow:hidden}
  .cp-i{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;padding-top:2px}
  .cp-i .cm-ac-t{font-size:16px;font-weight:700;line-height:1.25}
  .cp-k{font-size:12.5px;color:var(--muted)}
  .cp-st .cm-stars{font-size:15px;letter-spacing:2px;color:var(--accent)}.cp-st .cm-stars i{font-style:normal;color:color-mix(in srgb,var(--muted) 45%,transparent)}
  .cp-rv{margin:4px 0 0;font-size:14px;line-height:1.45;color:var(--ink);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .cp-f{display:block;margin-top:6px}
  .cp-f .rx{display:block;width:100%;margin:0}
  .rx-row{display:flex;align-items:center;gap:2px;margin-left:-8px}.rx-sp{flex:1}
  .cp-f .rx-b{min-height:44px;min-width:44px;justify-content:center;padding:0 8px;color:var(--ink)}
  .cp-f .rx-b svg{width:23px;height:23px}
  .rx-like.emo svg{display:none}.rx-me{font-size:22px;line-height:1}.rx-like:not(.emo) .rx-me{display:none}
  .rx-tray{display:flex;gap:2px;flex-wrap:wrap;padding:6px;margin:2px 0 6px;border:1px solid var(--line);border-radius:999px;background:var(--surface);width:max-content;max-width:100%;box-shadow:0 10px 30px -12px rgba(0,0,0,.6);animation:rxIn .18s ease}
  .rx-tray[hidden]{display:none}
  @keyframes rxIn{from{opacity:0;transform:translateY(4px) scale(.96)}to{opacity:1;transform:none}}
  .rx-e{width:40px;height:40px;border:0;border-radius:99px;background:transparent;font-size:24px;cursor:pointer;transition:transform .12s}
  .rx-e:hover,.rx-e:focus-visible{transform:scale(1.2);background:var(--surface-2)}
  .rx-sum{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600}.rx-sum:empty{display:none}
  .rx-ems{display:inline-flex}.rx-ems i{font-style:normal;font-size:15px;margin-right:-3px}
  .rx-cm{display:flex;flex-direction:column;gap:4px;margin-top:6px}.rx-cm:empty{display:none}
  .rx-c1{margin:0;font-size:14px;line-height:1.4;word-break:break-word}.rx-c1 p{margin:0}.rx-c1 b{font-weight:700;margin-right:2px}
  .rx-c1.rx-rep{margin-left:22px;padding-left:12px;border-left:2px solid var(--line)}
  .rx-ca{display:flex;gap:14px;margin:2px 0 4px}
  .rx-rb{background:none;border:0;padding:4px 0;color:var(--muted);font-family:inherit;font-size:12px;font-weight:700;cursor:pointer}
  .rx-more{display:flex;align-items:center;gap:8px;background:none;border:0;padding:2px 0 6px 22px;color:var(--muted);font-family:inherit;font-size:12.5px;font-weight:600;cursor:pointer}
  .rx-more::before{content:"";width:22px;height:1px;background:var(--line-strong)}
  .rx-to{display:flex;align-items:center;gap:8px;margin-top:8px;padding:6px 10px;border-radius:10px;background:var(--surface-2);font-size:12.5px;color:var(--muted)}.rx-to b{color:var(--ink)}
  .rx-to button{margin-left:auto;background:none;border:0;color:var(--muted);font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;padding:4px}
  .rx-del{background:none;border:0;padding:0 2px;color:var(--muted);font-family:inherit;font-size:12px;font-weight:500;cursor:pointer}
  .rx-all{align-self:flex-start;background:none;border:0;padding:4px 0;color:var(--muted);font-family:inherit;font-size:14px;font-weight:500;cursor:pointer}
  .rx-form{display:flex;align-items:center;gap:8px;margin-top:8px}
  .rx-in{flex:1;min-width:0;height:40px;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--ink);font-family:inherit;font-size:14px;padding:0 2px!important;outline:none}
  .rx-in:focus{outline:none}
  .rx-pub{background:none;border:0;color:var(--accent);font:700 14px "Archivo",sans-serif;cursor:pointer;padding:10px 4px}.rx-pub[hidden]{display:none}
  .rv-box{display:flex;flex-direction:column;gap:6px}.rv-box[hidden]{display:none}
  .rv-l{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}
  .rv-in{width:100%;resize:vertical;min-height:64px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface-2);color:var(--ink);font:15px/1.45 inherit;font-family:inherit;padding:10px 12px;outline:none}
  .rv-in:focus{border-color:var(--accent)}
  .rv-c{font-size:11.5px;color:var(--muted);text-align:right}
  .fo-list{display:flex;flex-direction:column;gap:2px}
  .fo-r{display:flex;align-items:flex-start;gap:10px;background:none;border:0;padding:8px 0;color:var(--ink);text-align:left;cursor:pointer;font:inherit;width:100%}
  .fo-r .fr-av{width:34px;height:34px;font-size:13px;flex:0 0 auto}
  .fo-tx{display:flex;flex-direction:column;gap:2px;font-size:14px;min-width:0}
  .fo-tx .cm-stars{font-size:13px;letter-spacing:1px;color:var(--accent)}.fo-tx .cm-stars i{font-style:normal;color:color-mix(in srgb,var(--muted) 45%,transparent)}
  .fo-v{color:var(--muted);font-size:13px}.fo-rv{color:var(--muted);font-size:13.5px;line-height:1.4}
  .fo-more{font-size:12.5px;color:var(--muted);padding:4px 0}
  .ti-sim{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}.ti-sim::-webkit-scrollbar{display:none}
  .sim-c{flex:0 0 100px;display:flex;flex-direction:column;gap:6px;background:none;border:0;padding:0;color:var(--ink);text-align:left;cursor:pointer;font:inherit}
  .sim-p{position:relative;width:100px;height:150px;border-radius:10px;overflow:hidden;display:block}
  .sim-b{position:absolute;left:6px;bottom:6px;padding:2px 7px;border-radius:99px;background:rgba(10,11,15,.8);color:var(--accent);font:700 10.5px "Archivo",sans-serif}
  .sim-t{font-size:12.5px;font-weight:600;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .gl-card{margin:14px 0 0;padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
  .gl-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
  .gl-top>div{display:flex;flex-direction:column;gap:2px;min-width:0}.gl-top b{font-size:15.5px}.gl-top span{font-size:12.5px;color:var(--muted)}
  .gl-btn{flex:0 0 auto;height:38px;padding:0 14px;border-radius:99px;border:1px solid var(--accent);background:transparent;color:var(--accent);font:600 13px "Archivo",sans-serif;cursor:pointer}
  .gl-num{flex:0 0 auto;background:none;border:0;color:var(--muted);font:600 14px "Archivo",sans-serif;cursor:pointer;padding:8px 0 8px 8px}.gl-num b{color:var(--accent);font-size:22px}
  .gl-bar{height:6px;border-radius:99px;background:var(--line);margin:12px 0 2px;overflow:hidden}.gl-bar i{display:block;height:100%;border-radius:99px;background:var(--accent);transition:width .5s}
  .gl-s{display:block;margin-top:10px;font-size:13px;color:var(--muted)}.gl-s b{color:var(--ink)}
  .bd-sec{margin-top:30px}
  .bd-n{font-size:13px;color:var(--muted);font-weight:600}
  .bd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  @media(min-width:700px){ .bd-grid{grid-template-columns:repeat(4,minmax(0,1fr))} }
  .bd{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:14px 8px 12px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
  .bd b{font-size:13px;line-height:1.2;margin-top:4px}
  .bd-d{font-size:11.5px;color:var(--muted);line-height:1.3}
  .bd-lv{white-space:nowrap;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:99px;color:#15130F;background:linear-gradient(135deg,var(--m3),var(--m2) 50%,var(--m3))}
  .bd-ic{position:relative;width:62px;height:62px;border-radius:99px;display:grid;place-items:center;
    background:conic-gradient(from 200deg,var(--m3),var(--m2) 12%,var(--m1) 28%,var(--m3) 42%,var(--m2) 55%,var(--m1) 72%,var(--m2) 86%,var(--m3));
    box-shadow:0 10px 22px -10px var(--m3),0 0 0 1px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.6)}
  .bd-ic::after{content:"";position:absolute;inset:0;border-radius:99px;background:linear-gradient(160deg,rgba(255,255,255,.55) 0%,rgba(255,255,255,0) 38%);pointer-events:none}
  .bd-in{width:48px;height:48px;border-radius:99px;display:grid;place-items:center;
    background:radial-gradient(circle at 32% 26%,var(--m2) 0%,var(--m3) 48%,var(--m1) 100%);
    box-shadow:inset 0 2px 3px rgba(255,255,255,.55),inset 0 -3px 6px rgba(0,0,0,.35),0 0 0 1.5px rgba(0,0,0,.25)}
  .bd-ic svg{width:26px;height:26px;fill:none;stroke:color-mix(in srgb,var(--m1) 80%,#000);stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 0 rgba(255,255,255,.55))}
  .bd:not(.off){background:radial-gradient(120% 80% at 50% 0%,color-mix(in srgb,var(--surface) 82%,#fff 0%),var(--surface))}
  .bd.off .bd-ic{background:var(--surface-2);box-shadow:inset 0 0 0 1.5px var(--line-strong)}.bd.off .bd-ic::after{display:none}
  .bd.off .bd-in{background:transparent;box-shadow:none}.bd.off .bd-ic svg{stroke:var(--muted);filter:none}
  .bd.off b{color:var(--muted)}
  .bd-bar{width:80%;height:4px;border-radius:99px;background:var(--line);overflow:hidden;margin-top:4px}.bd-bar i{display:block;height:100%;background:var(--accent);border-radius:99px}
  .bd-nx{font-size:10.5px;color:var(--muted)}
  .bd-st{display:flex;gap:3px;justify-content:center;margin-top:3px}.bd-st i{width:5px;height:5px;border-radius:99px;background:var(--line-strong)}.bd-st i.on{background:var(--accent)}
  .push-list{margin-top:6px}.push-lh{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700;margin:16px 2px 2px}
  #myRxBox .rx-like,#myRxBox .rx-emo{display:none}#myRxBox .rx-row{margin-left:-8px}#myRxBox .rx-b{min-height:40px;min-width:40px}
  .m-hero{position:relative;margin:-18px -20px 18px;aspect-ratio:16/8;background:var(--surface-2) center/cover no-repeat;animation:mhIn .35s ease}
  .m-hero.poster{background-size:cover;background-position:center 25%}
  .m-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,var(--surface) 100%)}
  .m-hero[hidden]{display:none}
  /* Bannières plus discrètes dans les fiches */
  .m-hero{aspect-ratio:auto;height:clamp(130px,30vw,190px);background-position:center 30%}
  .ti-trailer{aspect-ratio:auto;height:clamp(110px,26vw,150px)}
  .ti-trailer .pl b{width:44px;height:44px;font-size:16px}
  @keyframes mhIn{from{opacity:0}to{opacity:1}}
  /* Bannière = bande-annonce */
  .m-hero.has-tr{cursor:pointer}
  .m-hero .pl{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:2}
  .m-hero .pl-b{display:flex;align-items:center;gap:10px;padding:9px 18px 9px 9px;border-radius:999px;background:rgba(13,14,18,.62);color:#fff;font-size:14px;font-weight:700;letter-spacing:.01em;border:1px solid rgba(255,255,255,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 6px 22px rgba(0,0,0,.35);transition:transform .2s}
  .m-hero .pl-b i{width:34px;height:34px;border-radius:50%;background:#E0A24E;color:#17130B;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:13px;padding-left:3px;box-sizing:border-box}
  .m-hero .pl-b small{font-size:11px;font-weight:500;opacity:.6;margin-left:-2px}
  .m-hero.has-tr:hover .pl-b{transform:scale(1.04)}
  .m-hero.has-tr:active .pl-b{transform:scale(.97)}
  .m-hero.playing{height:auto;aspect-ratio:16/9;background:#000!important;animation:none}
  .m-hero.playing::after{display:none}
  .m-hero.playing iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
  /* Badges sur le profil : une simple pastille discrète (3 médailles + total) */
  .bd-top{display:inline-flex;align-items:center;gap:8px;margin:12px 0 0;padding:5px 12px 5px 6px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);cursor:pointer;font:inherit}
  .bd-top:not([data-gobadges]){cursor:default}
  .bd-tp{display:flex;margin-right:-12px}.bd-tp:last-of-type{margin-right:0}
  .bd-tp .bd-ic{width:26px;height:26px;box-shadow:0 0 0 2px var(--surface)}.bd-tp .bd-in{width:20px;height:20px}.bd-tp .bd-ic svg{width:11px;height:11px}
  .bd-tp i{display:none}
  .bd-tn{display:flex;align-items:center;gap:4px;font-size:12.5px;color:var(--muted);margin-left:14px}.bd-tn b{font-size:13.5px;color:var(--ink)}
  .bd-tn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
  .acct-ava.has-img{padding:0;overflow:hidden;background:var(--surface-2)}.acct-ava.has-img img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
  .cp-more{margin-left:auto;flex:0 0 auto;width:36px;height:36px;border:0;border-radius:99px;background:transparent;display:grid;place-items:center;color:var(--muted);cursor:pointer}
  .cp-more svg{width:18px;height:18px;fill:currentColor}.cp-more:hover{background:var(--surface-2);color:var(--ink)}
  .rx-c1{position:relative;padding-right:34px}
  .rx-cmore{position:absolute;top:-6px;right:-6px;width:34px;height:34px;border:0;border-radius:99px;background:transparent;display:grid;place-items:center;color:var(--muted);cursor:pointer;opacity:.7}
  .rx-cmore svg{width:16px;height:16px;fill:currentColor}.rx-cmore:hover{opacity:1;background:var(--surface-2)}
  .rpt-foot{display:flex;justify-content:center;margin:26px 0 8px}
  .rpt-lnk{background:none;border:0;color:var(--muted);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;padding:10px}
  .rpt-box{max-width:420px}
  .rpt-seg{display:flex;gap:6px;margin:0 0 12px}.rpt-seg button{flex:1;height:36px;border-radius:99px;border:1px solid var(--line);background:transparent;color:var(--muted);font-family:inherit;font-weight:600;cursor:pointer}
  .rpt-seg button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
  .rpt-what{margin:0 0 10px;font-size:14px;color:var(--muted)}.rpt-what b{color:var(--ink)}
  .rpt-list{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
  .rpt-r{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;height:46px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);font-family:inherit;font-size:14.5px;cursor:pointer;text-align:left}
  .rpt-r i{width:18px;height:18px;border-radius:99px;border:2px solid var(--line-strong);flex:0 0 auto}
  .rpt-r.on{border-color:var(--accent)}.rpt-r.on i{border-color:var(--accent);background:radial-gradient(circle,var(--accent) 45%,transparent 50%)}
  .rpt-note{font-size:12px;color:var(--muted);margin:8px 0 12px}
  .up-hint{font-size:13px;color:var(--muted);margin:2px 2px 4px;line-height:1.4}
  .ag-l{font-weight:600}.ag-cine{color:var(--accent)!important}.ag-stream{color:#1E9BC9!important}
  .ag-add{margin-top:0;height:30px;padding:0 10px;font-size:12px}
  .ag-chips{margin:4px 0 6px}
  .ag-src{font-size:12px;color:var(--muted);margin:18px 2px 6px}
  .ag-prev{margin-bottom:8px}
  .push-sub{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
  /* Onglets Films / Séries : 3 affiches par ligne sur téléphone */
  @media(max-width:599px){
    .psection .grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
    .psection .grid .card-body{padding:7px 8px 9px;gap:5px}
    .psection .grid .card-title{font-size:12px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
    .psection .grid .card-sub{font-size:10.5px}
    .psection .grid .ep-cta,.psection .grid .seen-toggle,.psection .grid .card-actions{display:none!important}
    .psection .grid .plbl{font-size:10px}
    .psection .grid .vu-btn{width:28px;height:28px;right:6px;bottom:6px}.psection .grid .vu-btn svg{width:14px;height:14px}
    .psection .grid .badge,.psection .grid .en-cours{font-size:8.5px;padding:3px 6px}
    .psection .grid .stars,.psection .grid .card-stars{font-size:10px}
  }
  .upc{flex:0 0 auto;width:118px;cursor:pointer;scroll-snap-align:start}
  .upc-p{position:relative;width:100%;aspect-ratio:2/3;border-radius:11px;overflow:hidden;background:var(--cg,var(--surface-2));box-shadow:0 8px 20px rgba(0,0,0,.25)}
  .upc-p img{width:100%;height:100%;object-fit:cover}
  .upc-d{position:absolute;left:6px;top:6px;padding:3px 8px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font:800 11px "Archivo",sans-serif;box-shadow:0 2px 8px rgba(0,0,0,.3)}
  .upc-t{margin-top:7px;font-size:13px;font-weight:700;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .upc-s{font-size:11.5px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ls-shelf{margin-top:18px}
  .cf-box{max-width:380px;gap:10px}.cf-t{margin:0;font-size:17px;font-weight:800;line-height:1.3}.cf-p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}
  .cf-b{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}.cf-b .btn{min-width:110px;justify-content:center}
  .cf-danger{background:#C9483A;border-color:#C9483A;color:#fff}
  .cm-feed-none{padding:16px 0;color:var(--muted);font-size:13.5px}
  @media(min-width:900px){
    .ig .cm-feed{display:grid;grid-template-columns:1fr 1fr;column-gap:36px;gap:0 36px;margin-top:6px}
    .cm-ac:nth-last-child(2):nth-child(odd){border-bottom:0}
  }
