/* ─── Ancora — Design System ─────────────────────────────────────────────────
   Identité : « la présence ». Fond aurora vivant, accent ambre chaud sur encre,
   assistant toujours visible (orbe qui veille). Mobile-first, 60fps, glass sobre. */
:root{
  --ink:#0C0F14; --ink2:#0E1218; --surface:#141A22; --surface2:#1A222C; --line:rgba(255,255,255,.08);
  --ivory:#F5F1E8; --text:#EDEFF3; --muted:#8B94A3; --muted2:#616B7A;
  --accent:#E8A13A; --accent2:#F2C879; --accent-ink:#2A1D08;
  --green:#3DBE7A; --blue:#4C9BF5; --red:#E4574C; --violet:#9B8CFF;
  --r:22px; --r-sm:14px; --r-lg:28px;
  --nav-h:74px;
  --ease:cubic-bezier(.22,.9,.28,1);
  --shadow:0 12px 30px -16px rgba(0,0,0,.7);
  /* Verre façon Apple : translucide, blur+saturation, liseré lumineux en haut */
  --glass:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.035));
  --glass-brd:rgba(255,255,255,.16);
  --blur:blur(24px) saturate(165%);
  --hl:inset 0 1px 0 rgba(255,255,255,.22);
}
*{box-sizing:border-box; -webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0;height:100%}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,sans-serif;
  color:var(--text); background:var(--ink); overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
/* Aurora vivante en fond fixe */
.aurora{position:fixed;inset:0;z-index:-2;overflow:hidden;background:var(--ink)}
.aurora::before,.aurora::after{content:"";position:absolute;border-radius:50%;filter:blur(64px);opacity:.7}
.aurora::before{width:76vw;height:76vw;top:-28vw;right:-22vw;
  background:radial-gradient(circle,rgba(232,161,58,.62),transparent 62%);animation:float1 18s var(--ease) infinite alternate}
.aurora::after{width:64vw;height:64vw;bottom:-26vw;left:-22vw;
  background:radial-gradient(circle,rgba(96,150,255,.4),transparent 62%);animation:float2 22s var(--ease) infinite alternate}
/* 3e voile pour donner de la profondeur au verre */
.aurora i{position:absolute;width:50vw;height:50vw;border-radius:50%;filter:blur(70px);opacity:.4;
  background:radial-gradient(circle,rgba(61,190,122,.5),transparent 60%);top:30vh;left:20vw;animation:float1 26s var(--ease) infinite alternate}
@keyframes float1{to{transform:translate(-6vw,8vw) scale(1.12)}}
@keyframes float2{to{transform:translate(7vw,-6vw) scale(1.08)}}
@media (prefers-reduced-motion:reduce){.aurora::before,.aurora::after{animation:none}}

.app{max-width:600px;margin:0 auto;min-height:100dvh;position:relative;
  padding:calc(env(safe-area-inset-top) + 8px) 16px calc(var(--nav-h) + env(safe-area-inset-bottom) + 20px)}

/* ── Barre de présence (signature) ───────────────────────────────────────── */
.presence{display:flex;align-items:center;gap:11px;padding:10px 12px;margin:6px 0 12px;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  border:1px solid var(--line);border-radius:16px;backdrop-filter:blur(12px)}
.orbit{position:relative;width:34px;height:34px;flex:0 0 auto}
.orbit .core{position:absolute;inset:9px;border-radius:50%;background:var(--accent);
  box-shadow:0 0 14px rgba(232,161,58,.8);animation:pulse 2.6s ease-in-out infinite}
.orbit .ring{position:absolute;inset:0;border-radius:50%;border:1.5px solid rgba(232,161,58,.35);
  animation:spin 6s linear infinite}
.orbit .ring::after{content:"";position:absolute;top:-3px;left:50%;width:5px;height:5px;margin-left:-2.5px;
  border-radius:50%;background:var(--accent2);box-shadow:0 0 8px var(--accent2)}
@keyframes pulse{50%{transform:scale(.78);opacity:.75}}
@keyframes spin{to{transform:rotate(360deg)}}
.presence .pt{flex:1;min-width:0}
.presence .pt b{font-size:14px;font-weight:700;display:block;letter-spacing:-.01em}
.presence .pt span{font-size:12px;color:var(--muted)}
.presence .live{font-size:10.5px;font-weight:700;color:var(--green);display:flex;align-items:center;gap:5px}
.presence .live::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green);animation:pulse 2s infinite}

/* ── Titres ───────────────────────────────────────────────────────────────── */
.hi{font-size:14px;color:var(--muted);font-weight:600}
.h-title{font-size:27px;font-weight:800;letter-spacing:-.03em;margin:2px 0 14px;line-height:1.1}
.section-h{font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin:22px 4px 10px}

/* ── KPI ribbon ───────────────────────────────────────────────────────────── */
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:6px}
.kpi{background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:16px;padding:12px 8px;text-align:center}
.kpi .n{font-size:22px;font-weight:800;letter-spacing:-.02em;line-height:1}
.kpi .l{font-size:10.5px;color:var(--muted);margin-top:5px;font-weight:600;line-height:1.2}
.kpi.hot .n{color:var(--accent)}

/* ── Cards feed ───────────────────────────────────────────────────────────── */
.feed{display:flex;flex-direction:column;gap:11px}
.fcard{display:flex;gap:13px;padding:15px;border-radius:var(--r);border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.018));backdrop-filter:blur(12px);
  box-shadow:var(--shadow);position:relative;overflow:hidden;
  animation:rise .5s var(--ease) both}
.fcard .emoji{font-size:22px;flex:0 0 auto;width:42px;height:42px;display:grid;place-items:center;
  background:rgba(255,255,255,.05);border-radius:13px}
.fcard .fc{flex:1;min-width:0}
.fcard .fc b{font-size:15.5px;font-weight:700;letter-spacing:-.01em;display:block}
.fcard .fc p{margin:4px 0 0;font-size:13.5px;color:var(--muted);line-height:1.45}
.fcard .go{display:inline-flex;align-items:center;gap:5px;margin-top:10px;font-size:13px;font-weight:700;color:var(--accent)}
.fcard.urgent{border-color:rgba(228,87,76,.4)}
.fcard.urgent::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--red)}
@keyframes rise{from{opacity:0;transform:translateY(14px)}}

/* ── Dashboard piloté par Léa ─────────────────────────────────────────────── */
.topbar{display:flex;align-items:center;justify-content:space-between;margin:4px 2px 14px}
.topbar .greet{font-size:13px;color:var(--muted);font-weight:600}
.topbar .greet b{display:block;color:var(--text);font-size:19px;font-weight:800;letter-spacing:-.02em;margin-top:1px}
.topbar .ava{width:40px;height:40px;border-radius:13px;background:var(--surface2);border:1px solid var(--line);
  display:grid;place-items:center;font-weight:800;color:var(--accent2);cursor:pointer}

.lea{position:relative;padding:18px;border-radius:var(--r-lg);overflow:hidden;margin-bottom:20px;
  background:
    radial-gradient(120% 120% at 100% -10%, rgba(232,161,58,.28), transparent 55%),
    radial-gradient(90% 90% at -10% 110%, rgba(61,190,122,.16), transparent 55%),
    linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.02));
  border:1px solid rgba(232,161,58,.22);box-shadow:0 20px 44px -22px rgba(232,161,58,.4)}
.lea .lh{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.lea .lh .who{flex:1}
.lea .lh .who b{font-size:14.5px;font-weight:800;letter-spacing:-.01em}
.lea .lh .who span{display:block;font-size:11.5px;color:var(--muted);margin-top:1px}
.lea .lh .live{font-size:10px;font-weight:800;color:var(--green);display:flex;align-items:center;gap:5px}
.lea .lh .live::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green);animation:pulse 2s infinite}
.lea .brief{font-size:16.5px;line-height:1.5;font-weight:500;color:#F4EFE6;letter-spacing:-.01em;margin:0 0 16px}
.lea .brief .hl{color:var(--accent2);font-weight:700}
.lea .cta{display:inline-flex;align-items:center;gap:9px;width:100%;justify-content:center;
  padding:14px;border-radius:15px;background:var(--accent);color:var(--accent-ink);border:0;
  font-size:15px;font-weight:800;cursor:pointer;transition:transform .16s var(--ease)}
.lea .cta:active{transform:scale(.975)}
.lea .cta .arw{transition:transform .2s}.lea .cta:active .arw{transform:translateX(3px)}

.sec{display:flex;align-items:center;justify-content:space-between;margin:22px 4px 12px}
.sec b{font-size:13px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}
.sec .count{font-size:12px;font-weight:800;color:var(--accent-ink);background:var(--accent2);border-radius:99px;padding:2px 9px}

.tasks{display:flex;flex-direction:column;gap:10px}
.tk{display:flex;align-items:center;gap:13px;padding:14px;border-radius:var(--r);position:relative;overflow:hidden;
  background:var(--glass);border:1px solid var(--glass-brd);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);
  box-shadow:var(--shadow),var(--hl);animation:rise .45s var(--ease) both;cursor:pointer}
.tk:active{transform:scale(.99)}
.tk .tkico{width:46px;height:46px;border-radius:14px;flex:0 0 auto;display:grid;place-items:center;font-size:21px}
.tk.red .tkico{background:rgba(228,87,76,.16)} .tk.amber .tkico{background:rgba(232,161,58,.16)}
.tk.blue .tkico{background:rgba(76,155,245,.16)} .tk.green .tkico{background:rgba(61,190,122,.16)}
.tk.red::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--red)}
.tk .tkc{flex:1;min-width:0}
.tk .tkc b{font-size:15.5px;font-weight:700;letter-spacing:-.01em;display:block}
.tk .tkc span{font-size:13px;color:var(--muted);display:block;margin-top:3px;line-height:1.35}
.tk .tkcta{flex:0 0 auto;padding:9px 15px;border-radius:12px;font-size:13.5px;font-weight:800;
  background:var(--ivory);color:#151515;border:0;cursor:pointer;white-space:nowrap;transition:transform .14s}
.tk.red .tkcta{background:var(--red);color:#fff}
.tk .tkcta:active{transform:scale(.94)}

.cad{padding:16px;border-radius:var(--r-lg);border:1px solid var(--glass-brd);
  background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--hl)}
.cad .ch{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.cad .ch b{font-size:15.5px;font-weight:800;letter-spacing:-.01em}
.cad .ch .auto{font-size:10.5px;font-weight:800;letter-spacing:.03em;color:var(--green);
  background:rgba(61,190,122,.14);border-radius:99px;padding:4px 10px;display:flex;align-items:center;gap:5px}
.cad .ch .auto::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 7px var(--green)}
.week{display:flex;gap:6px;justify-content:space-between}
.wd{flex:1;display:flex;flex-direction:column;align-items:center;gap:7px}
.wd .dot{width:100%;aspect-ratio:1;max-width:38px;border-radius:12px;display:grid;place-items:center;font-size:14px;
  background:rgba(255,255,255,.045);border:1px solid var(--line);color:var(--muted2)}
.wd.done .dot{background:var(--green);color:#08210f;border-color:transparent}
.wd.planned .dot{border:1.5px dashed rgba(232,161,58,.6);color:var(--accent2)}
.wd.need .dot{background:rgba(232,161,58,.16);border:1.5px solid var(--accent);color:var(--accent2);animation:pulse 2.4s infinite}
.wd .lbl{font-size:10.5px;font-weight:700;color:var(--muted2)}
.wd.done .lbl,.wd.need .lbl{color:var(--text)}
.nextpost{display:flex;align-items:center;gap:12px;margin-top:15px;padding-top:15px;border-top:1px solid var(--line)}
.nextpost .thumb{width:52px;height:52px;border-radius:13px;flex:0 0 auto;
  background:linear-gradient(150deg,#2b3442,#3a2a12);display:grid;place-items:center;font-size:22px;border:1px solid var(--line)}
.nextpost .npc{flex:1;min-width:0}
.nextpost .npc b{font-size:14px;font-weight:700;display:block}
.nextpost .npc span{font-size:12px;color:var(--muted);display:block;margin-top:2px}
.nextpost .npc .need{color:var(--accent2);font-weight:700}

.wgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.wt{padding:16px;border-radius:var(--r);border:1px solid var(--glass-brd);background:var(--glass);
  backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--hl);position:relative;overflow:hidden}
.wt .wn{font-size:28px;font-weight:800;letter-spacing:-.03em;line-height:1}
.wt .wl{font-size:12.5px;color:var(--muted);margin-top:6px;font-weight:600}
.wt .wi{position:absolute;top:12px;right:12px;font-size:16px;opacity:.5}
.lealine{display:flex;align-items:center;gap:8px;margin:14px 4px 0;font-size:12.5px;color:var(--muted)}
.lealine .mini{width:16px;height:16px;border-radius:50%;background:var(--accent);flex:0 0 auto}

/* ── Prospect list ────────────────────────────────────────────────────────── */
.chips{display:flex;gap:8px;overflow-x:auto;padding:2px 0 12px;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chip{flex:0 0 auto;padding:8px 14px;border-radius:999px;font-size:13px;font-weight:700;
  background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--muted);cursor:pointer;transition:.2s}
.chip.active{background:var(--ivory);color:#141414;border-color:transparent}
.plist{display:flex;flex-direction:column;gap:10px}
.pcard{display:flex;gap:12px;align-items:center;padding:14px;border-radius:var(--r);border:1px solid var(--glass-brd);
  background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--hl);
  position:relative;overflow:hidden;cursor:pointer;transition:transform .16s var(--ease);animation:rise .45s var(--ease) both}
.pcard:active{transform:scale(.985)}
.pcard .rail{position:absolute;left:0;top:0;bottom:0;width:3px}
.pcard .rail.urgent{background:var(--red)} .pcard .rail.normal{background:var(--accent)}
.ring{--v:0;width:44px;height:44px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;
  background:conic-gradient(var(--accent) calc(var(--v)*1%), rgba(255,255,255,.09) 0);position:relative}
.ring::before{content:"";position:absolute;inset:3.5px;border-radius:50%;background:var(--surface)}
.ring b{position:relative;font-size:13px;font-weight:800}
.pc-body{flex:1;min-width:0}
.pc-body .top{display:flex;align-items:center;gap:8px}
.pc-body .nm{font-size:15.5px;font-weight:700;letter-spacing:-.01em}
.pc-body .svc{font-size:13.5px;color:var(--text);opacity:.92;margin-top:1px}
.pc-body .meta{font-size:12px;color:var(--muted);margin-top:5px;display:flex;gap:9px;flex-wrap:wrap;align-items:center}
.tag{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:3px 7px;border-radius:6px}
.tag.urgent{background:rgba(228,87,76,.16);color:#F09189}
.tag.nouveau{background:rgba(232,161,58,.16);color:var(--accent2)}
.dotsrc{display:inline-flex;align-items:center;gap:5px}
.src-ico{width:15px;height:15px;border-radius:4px;display:inline-grid;place-items:center;font-size:9px;font-weight:800;color:#fff}

/* ── Prospect detail ──────────────────────────────────────────────────────── */
.back{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-weight:700;font-size:14px;
  background:none;border:0;cursor:pointer;padding:6px 0;margin-bottom:6px}
.phero{padding:18px;border-radius:var(--r-lg);border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));margin-bottom:14px}
.phero .row{display:flex;align-items:center;gap:14px}
.ring.lg{width:60px;height:60px}.ring.lg::before{inset:4.5px}.ring.lg b{font-size:16px}
.phero h2{margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em}
.phero .svc2{color:var(--text);opacity:.9;font-size:14.5px;margin-top:2px}
.qa{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0}
.qa a{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 4px;border-radius:14px;
  background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--text);text-decoration:none;font-size:11.5px;font-weight:700}
.qa a .i{font-size:19px}
.qa a.primary{background:var(--accent);color:var(--accent-ink);border-color:transparent}
.statuspick{display:flex;gap:7px;overflow-x:auto;padding-bottom:12px;scrollbar-width:none}
.statuspick::-webkit-scrollbar{display:none}
.sbtn{flex:0 0 auto;padding:8px 13px;border-radius:999px;font-size:12.5px;font-weight:700;cursor:pointer;
  background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--muted);transition:.18s}
.sbtn.on{background:var(--green);color:#08210f;border-color:transparent}
.block{padding:15px;border-radius:var(--r);border:1px solid var(--glass-brd);background:var(--glass);
  backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--hl);margin-bottom:12px}
.block h4{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.block p{margin:0;font-size:14.5px;line-height:1.55}
.tl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.tl li{display:flex;gap:11px;font-size:13.5px}
.tl li .d{width:9px;height:9px;border-radius:50%;background:var(--accent);margin-top:5px;flex:0 0 auto;position:relative}
.tl li .d::after{content:"";position:absolute;top:11px;left:4px;width:1px;height:16px;background:var(--line)}
.tl li:last-child .d::after{display:none}
.tl li .tx{flex:1}.tl li .tx small{display:block;color:var(--muted2);font-size:11.5px;margin-top:2px}
.msg{display:flex;gap:9px;margin-bottom:10px}
.msg .av{width:30px;height:30px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;font-size:12px;font-weight:800}
.msg.ai .av{background:var(--accent);color:var(--accent-ink)} .msg.client .av{background:var(--surface2);color:var(--muted)}
.msg .bub{background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:14px;padding:9px 12px;font-size:13.5px;line-height:1.45}
.msg.ai .bub{background:rgba(232,161,58,.09);border-color:rgba(232,161,58,.2)}
.task{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
.task:last-child{border-bottom:0}
.tick{width:22px;height:22px;border-radius:7px;border:1.5px solid var(--muted2);flex:0 0 auto;cursor:pointer;display:grid;place-items:center}
.tick.done{background:var(--green);border-color:transparent}
.task.done span{color:var(--muted2);text-decoration:line-through}

/* ── Create studio ────────────────────────────────────────────────────────── */
.capture{display:flex;gap:12px;padding:20px;border-radius:var(--r-lg);border:1px dashed rgba(232,161,58,.45);
  background:radial-gradient(120% 100% at 50% 0,rgba(232,161,58,.12),transparent 70%);align-items:center;margin-bottom:14px}
.capture .ic{width:52px;height:52px;border-radius:16px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-size:24px;flex:0 0 auto}
.capture b{font-size:16px;font-weight:800;display:block}.capture span{font-size:13px;color:var(--muted)}
.ccard{padding:15px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.035);margin-bottom:11px}
.ccard .ch{display:flex;justify-content:space-between;align-items:center;gap:8px}
.ccard .ch b{font-size:15.5px;font-weight:700}
.stat-badge{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:4px 8px;border-radius:7px}
.stat-badge.published{background:rgba(61,190,122,.16);color:var(--green)}
.stat-badge.draft{background:rgba(76,155,245,.16);color:var(--blue)}
.stat-badge.todo{background:rgba(232,161,58,.16);color:var(--accent2)}
.ccard p{margin:9px 0 0;font-size:13.5px;color:var(--muted);line-height:1.45}
.outs{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}
.out{font-size:11.5px;font-weight:600;padding:5px 9px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid var(--line);color:var(--text)}

/* ── Visibility ───────────────────────────────────────────────────────────── */
.bigscore{display:flex;align-items:center;gap:18px;padding:20px;border-radius:var(--r-lg);border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));margin-bottom:14px}
.gauge{--v:0;width:88px;height:88px;flex:0 0 auto;border-radius:50%;
  background:conic-gradient(var(--green) calc(var(--v)*1%),rgba(255,255,255,.09) 0);display:grid;place-items:center;position:relative}
.gauge::before{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--surface)}
.gauge b{position:relative;font-size:26px;font-weight:800}.gauge b small{font-size:12px;color:var(--muted);font-weight:700}
.bigscore .bt b{font-size:17px;font-weight:800;display:block}.bigscore .bt span{font-size:13.5px;color:var(--muted);line-height:1.45;display:block;margin-top:4px}
.vitem{padding:14px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.03);margin-bottom:10px}
.vitem .vh{display:flex;justify-content:space-between;align-items:center}
.vitem .vh b{font-size:15px;font-weight:700}.vitem .vh .sc{font-size:14px;font-weight:800}
.bar{height:7px;border-radius:99px;background:rgba(255,255,255,.08);margin:10px 0 8px;overflow:hidden}
.bar i{display:block;height:100%;border-radius:99px;transition:width .8s var(--ease)}
.vitem small{font-size:12.5px;color:var(--muted);line-height:1.4}

/* ── Profile ──────────────────────────────────────────────────────────────── */
.pfhead{display:flex;align-items:center;gap:14px;padding:18px;border-radius:var(--r-lg);border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));margin-bottom:14px}
.pfhead .logo{width:56px;height:56px;border-radius:18px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-size:24px;font-weight:800;flex:0 0 auto}
.pfhead b{font-size:19px;font-weight:800;display:block}.pfhead span{font-size:13.5px;color:var(--muted)}
.rowlink{display:flex;align-items:center;gap:12px;padding:15px;border-radius:var(--r);border:1px solid var(--line);
  background:rgba(255,255,255,.035);margin-bottom:10px;color:var(--text);text-decoration:none}
.rowlink .ic{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.06);display:grid;place-items:center;font-size:18px;flex:0 0 auto}
.rowlink .rl{flex:1}.rowlink .rl b{font-size:15px;font-weight:700;display:block}.rowlink .rl span{font-size:12.5px;color:var(--muted)}
.rowlink .chev{color:var(--muted2);font-size:20px}

/* ── Bottom nav ───────────────────────────────────────────────────────────── */
.nav{position:fixed;left:0;right:0;bottom:0;z-index:30;height:calc(var(--nav-h) + env(safe-area-inset-bottom));
  padding-bottom:env(safe-area-inset-bottom);display:flex;align-items:center;justify-content:space-around;
  background:rgba(12,15,20,.55);backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%);
  border-top:1px solid var(--glass-brd);box-shadow:var(--hl);max-width:600px;margin:0 auto}
.nav a{display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--muted2);text-decoration:none;font-size:10.5px;font-weight:700;flex:1;padding-top:10px}
.nav a svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.nav a.on{color:var(--ivory)}
.nav .fab{flex:0 0 auto;margin-top:-26px}
.nav .fab .orb{width:58px;height:58px;border-radius:20px;background:linear-gradient(160deg,var(--accent2),var(--accent));
  display:grid;place-items:center;box-shadow:0 12px 26px -8px rgba(232,161,58,.7);color:var(--accent-ink)}
.nav .fab .orb svg{width:26px;height:26px;stroke:currentColor;stroke-width:2.4}
.nav .fab span{color:var(--muted2);font-size:10.5px;font-weight:700;display:block;text-align:center;margin-top:4px}

/* ── Toast, view transition, misc ─────────────────────────────────────────── */
.view{animation:viewin .34s var(--ease)}
@keyframes viewin{from{opacity:0;transform:translateY(8px)}}
.stagger>*{animation-delay:calc(var(--i,0)*45ms)}
.toast{position:fixed;left:50%;bottom:calc(var(--nav-h) + 16px + env(safe-area-inset-bottom));
  transform:translateX(-50%) translateY(14px);background:var(--surface2);border:1px solid var(--line);
  padding:12px 16px;border-radius:14px;font-size:14px;font-weight:600;opacity:0;pointer-events:none;transition:.28s var(--ease);z-index:50;box-shadow:var(--shadow)}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.toast.ok{border-color:rgba(61,190,122,.4)}
.skel{height:78px;border-radius:var(--r);background:linear-gradient(90deg,rgba(255,255,255,.04),rgba(255,255,255,.08),rgba(255,255,255,.04));background-size:200% 100%;animation:sh 1.3s infinite;margin-bottom:11px}
@keyframes sh{to{background-position:-200% 0}}
.empty{text-align:center;color:var(--muted);padding:40px 20px}.empty .e{font-size:34px;margin-bottom:10px}

/* ── Login (glass, pré-rempli) ────────────────────────────────────────────── */
.login{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px;max-width:460px;margin:0 auto}
.logomark{width:78px;height:78px;border-radius:26px;background:linear-gradient(160deg,var(--accent2),var(--accent));
  display:grid;place-items:center;margin-bottom:20px;box-shadow:0 20px 50px -14px rgba(232,161,58,.75)}
.logomark svg{width:42px;height:42px}
.login h1{font-size:33px;font-weight:800;letter-spacing:-.03em;margin:0 0 8px}
.login .lead{color:var(--muted);font-size:15px;max-width:330px;line-height:1.5;margin:0 0 26px}
.gcard{width:100%;padding:20px;border-radius:26px;border:1px solid var(--glass-brd);background:var(--glass);
  backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 30px 60px -30px rgba(0,0,0,.7),var(--hl);text-align:left}
.field{margin-bottom:12px}
.field label{font-size:12px;font-weight:700;color:var(--muted);margin:0 0 7px 3px;display:block;letter-spacing:.02em}
.field .inp{display:flex;align-items:center;gap:10px;padding:14px;border-radius:15px;
  background:rgba(255,255,255,.06);border:1px solid var(--glass-brd)}
.field .inp span{opacity:.6}
.field input{flex:1;background:transparent;border:0;outline:0;color:var(--text);font-size:15.5px;font-weight:600;font-family:inherit}
.btn-xl{width:100%;padding:16px;border-radius:16px;border:0;background:var(--ivory);color:#111;
  font-size:16px;font-weight:800;cursor:pointer;transition:transform .16s var(--ease);margin-top:6px}
.btn-xl:active{transform:scale(.97)}
.btn-xl.amber{background:var(--accent);color:var(--accent-ink)}
.demo-note{display:flex;align-items:center;gap:8px;justify-content:center;margin-top:16px;font-size:12.5px;color:var(--muted2)}
.demo-note .pill{background:rgba(61,190,122,.14);color:var(--green);font-weight:800;padding:3px 9px;border-radius:99px;font-size:11px}

/* ── Onboarding (pop-ups glass, style Apple) ──────────────────────────────── */
.ob{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;padding:calc(env(safe-area-inset-top) + 20px) 22px calc(env(safe-area-inset-bottom) + 22px);max-width:520px;margin:0 auto}
.ob-prog{display:flex;gap:6px;margin-bottom:26px}
.ob-prog i{height:4px;flex:1;border-radius:99px;background:rgba(255,255,255,.14);overflow:hidden;position:relative}
.ob-prog i.done::after,.ob-prog i.cur::after{content:"";position:absolute;inset:0;background:var(--accent);border-radius:99px;animation:fillbar .5s var(--ease)}
.ob-prog i.cur::after{width:60%}
@keyframes fillbar{from{transform:scaleX(0);transform-origin:left}}
.ob-body{flex:1;display:flex;flex-direction:column;justify-content:center}
.ob-step{animation:obin .42s var(--ease)}
@keyframes obin{from{opacity:0;transform:translateY(16px) scale(.98)}}
.ob-lea{display:flex;align-items:center;gap:11px;margin-bottom:18px}
.ob-lea .orbit{width:40px;height:40px}
.ob-lea b{font-size:13.5px;font-weight:800}.ob-lea span{display:block;font-size:11.5px;color:var(--muted)}
.ob-step h2{font-size:29px;font-weight:800;letter-spacing:-.03em;line-height:1.12;margin:0 0 12px}
.ob-step .sub{font-size:15.5px;color:var(--muted);line-height:1.5;margin:0 0 24px}
.ob-step h2 .hl{color:var(--accent2)}
.opts{display:flex;flex-direction:column;gap:11px;margin-bottom:8px}
.opt{display:flex;align-items:center;gap:13px;padding:16px;border-radius:18px;cursor:pointer;
  background:var(--glass);border:1.5px solid var(--glass-brd);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);
  box-shadow:var(--hl);transition:.18s var(--ease)}
.opt:active{transform:scale(.98)}
.opt.sel{border-color:var(--accent);background:linear-gradient(180deg,rgba(232,161,58,.16),rgba(232,161,58,.05))}
.opt .oi{width:44px;height:44px;border-radius:13px;flex:0 0 auto;display:grid;place-items:center;font-size:21px;background:rgba(255,255,255,.06)}
.opt .oc{flex:1}.opt .oc b{font-size:15.5px;font-weight:700;display:block}.opt .oc span{font-size:12.5px;color:var(--muted)}
.opt .chk{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--muted2);flex:0 0 auto;display:grid;place-items:center;transition:.18s}
.opt.sel .chk{background:var(--accent);border-color:transparent}
.opt .reco{font-size:10px;font-weight:800;color:var(--accent-ink);background:var(--accent2);padding:2px 7px;border-radius:99px}
.chipset{display:flex;flex-wrap:wrap;gap:9px}
.cchip{padding:11px 15px;border-radius:14px;font-size:14px;font-weight:700;cursor:pointer;
  background:var(--glass);border:1.5px solid var(--glass-brd);backdrop-filter:var(--blur);transition:.16s}
.cchip.sel{background:var(--accent);color:var(--accent-ink);border-color:transparent}
.ob-input{width:100%;padding:16px;border-radius:16px;background:rgba(255,255,255,.06);border:1.5px solid var(--glass-brd);
  color:var(--text);font-size:16px;font-weight:600;font-family:inherit;outline:0}
.ob-input:focus{border-color:var(--accent)}
.ob-foot{display:flex;gap:12px;align-items:center;margin-top:22px}
.ob-back{background:none;border:0;color:var(--muted);font-weight:700;font-size:15px;cursor:pointer;padding:14px 4px}
.ob-next{flex:1;padding:16px;border-radius:16px;border:0;background:var(--accent);color:var(--accent-ink);
  font-size:16px;font-weight:800;cursor:pointer;transition:transform .16s var(--ease);display:flex;align-items:center;justify-content:center;gap:8px}
.ob-next:active{transform:scale(.975)}
.ob-next:disabled{opacity:.4}
.ob-hero-ic{width:88px;height:88px;border-radius:28px;background:linear-gradient(160deg,var(--accent2),var(--accent));
  display:grid;place-items:center;margin:0 auto 22px;box-shadow:0 24px 54px -16px rgba(232,161,58,.7)}
.ob-hero-ic svg{width:44px;height:44px}
.ob-center{text-align:center}
.ob-summary{display:flex;flex-direction:column;gap:10px;margin:6px 0 4px}
.ob-sum{display:flex;align-items:center;gap:12px;padding:14px;border-radius:15px;background:var(--glass);border:1px solid var(--glass-brd);backdrop-filter:var(--blur)}
.ob-sum .si{font-size:19px}.ob-sum .sc{flex:1;text-align:left}.ob-sum .sc b{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;display:block}.ob-sum .sc span{font-size:14.5px;font-weight:700}
.ob-sum .ok{color:var(--green)}

/* Responsive : desktop plus large et immersif */
@media (min-width:820px){
  .app{max-width:640px}
  body{font-size:16px}
}
