/* Skeye Client : même matière que Skeye Sales V1 Luxe. Noir profond, verre dépoli à liseré doré, ivoire, or, titres éditoriaux. */
:root{
  --bg:#0B0B0C;--ink:#F3EFE7;--muted:#B9B1A3;--cap:#BDAE92;--soft:#D9CDB4;
  --gold:#D4AF63;--gold-hi:#ECD5A3;--gold-lo:#A9873F;--ivory:#FBF6EC;--ivory-2:#EDE3CF;--onyx:#120E0A;
  --good:#7BC897;--warn:#E8B45A;--bad:#EE8578;--info:#9DBBE6;
  --line:rgba(212,175,99,.14);--line-2:rgba(246,230,192,.16);
  --rim:linear-gradient(150deg,rgba(246,230,192,.55),rgba(212,175,99,.08) 35%,rgba(212,175,99,.04) 65%,rgba(246,230,192,.35));
  --glass:linear-gradient(160deg,rgba(255,248,232,.12),rgba(255,248,232,.032) 50%,rgba(255,248,232,.065));
  --f:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
}
*{box-sizing:border-box}
body{margin:0;background:#0B0B0C}
img{max-width:100%}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* Fond */
.sk{position:relative;min-height:100%;overflow:hidden;color:var(--ink);font-family:var(--f);font-size:14px;line-height:1.5;letter-spacing:-.012em;-webkit-font-smoothing:antialiased;background:radial-gradient(120% 90% at 82% -6%,#4E391B 0%,#24190D 30%,#110D08 56%,#0B0B0C 80%),#0B0B0C}
.sk-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.orb1{position:absolute;width:980px;height:980px;right:-260px;top:-360px;border-radius:50%;background:radial-gradient(circle at 40% 40%,rgba(236,201,130,.30),rgba(212,175,99,.08) 45%,transparent 70%)}
.orb2{position:absolute;width:760px;height:760px;left:-320px;top:640px;border-radius:50%;background:radial-gradient(circle,rgba(212,175,99,.15),transparent 68%)}
.ring{position:absolute;width:760px;height:760px;right:-160px;top:560px;opacity:.36}
.vig{position:absolute;inset:0;background:radial-gradient(120% 90% at 50% 40%,transparent 50%,rgba(0,0,0,.5))}

/* Barre du haut */
.top{position:relative;z-index:3;display:flex;align-items:center;gap:12px;padding:18px 32px;background:linear-gradient(180deg,rgba(11,9,7,.7),rgba(11,9,7,0))}
.brand{display:flex;align-items:center;gap:12px;margin-right:auto;min-width:0}
.mark{width:44px;height:44px;border-radius:50%;background:#000;overflow:hidden;flex:none;box-shadow:0 0 0 1px rgba(212,175,99,.45),0 10px 30px rgba(0,0,0,.45)}
.mark img{width:100%;height:100%;object-fit:cover;display:block}
.word{height:17px;width:auto;display:block}
.app{font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);border-left:1px solid rgba(212,175,99,.35);padding-left:12px;white-space:nowrap}
.iconbtn{position:relative;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;flex:none;border:1px solid transparent;background:var(--glass) padding-box,var(--rim) border-box;color:var(--ink);cursor:pointer;text-decoration:none}
.iconbtn svg{width:18px;height:18px}
.dotnew{position:absolute;top:10px;right:11px;width:8px;height:8px;border-radius:50%;background:#D4AF63;box-shadow:0 0 10px rgba(212,175,99,.8)}
.client{display:flex;align-items:center;gap:10px;padding:4px 16px 4px 4px;border-radius:99px;border:1px solid transparent;background:var(--glass) padding-box,var(--rim) border-box;text-decoration:none;color:var(--ink)}
.client b{display:block;font-size:13px;font-weight:600;line-height:1.2}
.client small{display:block;font-size:11px;color:var(--cap);line-height:1.2}
.av{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;flex:none;background:#1A140C;color:#F6E6C0;font-weight:700;font-size:12px;box-shadow:0 0 0 1.5px #C9A24E}
.av.sm{width:28px;height:28px;font-size:11px;box-shadow:0 0 0 1px rgba(212,175,99,.5)}
.av.sk{background:#000;overflow:hidden}
.av.sk img{width:100%;height:100%;object-fit:cover}

/* Page */
.view{position:relative;z-index:1;max-width:1240px;margin:0 auto;padding:8px 32px 0}
.demo{display:inline-flex;align-items:center;gap:10px;font-size:12.5px;color:var(--cap);border-radius:99px;padding:9px 16px;margin-bottom:24px;border:1px solid transparent;background:var(--glass) padding-box,var(--rim) border-box}
.demo::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(212,175,99,.18);flex:none}
.head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px 20px;flex-wrap:wrap;margin-bottom:26px}
h1.page{font-family:var(--serif);font-weight:300;font-size:58px;letter-spacing:-.012em;line-height:1;margin:0}
h1.page em{font-style:italic;font-weight:300;background:linear-gradient(100deg,#B48E3E 0%,#F6E6C0 38%,#D4AF63 55%,#FFF4DA 70%,#A9873F 100%);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em}
.sub{color:var(--cap);margin:10px 0 0;font-size:14.5px}
.stack{display:flex;flex-direction:column;gap:18px}
.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.between{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.g2{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:18px}
.g2r{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:18px}
.g2e{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.muted{color:var(--cap)}
.small{font-size:12.5px;color:var(--cap)}
.serif{font-family:var(--serif);font-weight:400}
.goldtx{color:#F6E6C0}
.hr{height:1px;background:linear-gradient(90deg,rgba(212,175,99,.4),transparent);border:0;margin:18px 0}

/* Verre */
.card,.kpi,.banner,.glass{border:1px solid transparent;background:var(--glass) padding-box,var(--rim) border-box;box-shadow:inset 0 1px 0 rgba(255,250,240,.2),0 34px 70px rgba(0,0,0,.42);-webkit-backdrop-filter:blur(40px) saturate(150%);backdrop-filter:blur(40px) saturate(150%)}
.card{border-radius:28px;padding:26px;min-width:0}
.card h2{font-family:var(--serif);font-weight:400;font-size:25px;letter-spacing:-.005em;line-height:1.15;margin:0 0 16px;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.card h2 .small,.card h2 .pill,.card h2 a{font-family:var(--f)}
.lab{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.22em;color:#ECD5A3;font-weight:500;margin:0 0 8px}
.card .lab.mt{margin-top:20px}
.onyx{background:linear-gradient(170deg,rgba(18,14,10,.86),rgba(10,9,8,.9)) padding-box,linear-gradient(150deg,rgba(212,175,99,.3),rgba(212,175,99,.06)) border-box}

/* Chiffres clés */
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.kpi{border-radius:26px;padding:22px 24px;display:flex;flex-direction:column;min-width:0}
.kpi .l{font-size:10.5px;color:var(--cap);font-weight:500;text-transform:uppercase;letter-spacing:.22em}
.kpi .v{font-family:var(--serif);font-weight:300;font-size:50px;letter-spacing:-.01em;line-height:1;margin-top:14px;font-variant-numeric:lining-nums;white-space:nowrap}
.kpi .v small{font-size:22px;color:var(--cap);margin-left:4px}
.kpi .h{margin-top:12px;padding-top:10px;border-top:1px solid;border-image:linear-gradient(90deg,rgba(212,175,99,.45),transparent) 1;color:var(--cap);font-size:12.5px}
.kpi.feature{background:linear-gradient(160deg,#F7EEDB,#E6D2A8 55%,#C9A55A) padding-box,linear-gradient(150deg,#FFF6E0,#C9A55A) border-box;color:#17110A;box-shadow:inset 0 1px 0 #fff,0 34px 70px rgba(0,0,0,.42)}
.kpi.feature .l{color:#5E4518}.kpi.feature .v{color:#17110A}.kpi.feature .v small{color:#5E4518}.kpi.feature .h{color:#4F3B18;border-image:linear-gradient(90deg,rgba(23,17,10,.25),transparent) 1}
.up{color:var(--good)}.down{color:var(--bad)}

/* Boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:999px;padding:11px 20px;font-weight:600;font-size:13px;cursor:pointer;text-decoration:none;white-space:nowrap;background:linear-gradient(180deg,var(--ivory),var(--ivory-2));color:#17110A;border:1px solid rgba(246,230,192,.9);box-shadow:inset 0 1px 0 #fff,inset 0 -2px 6px rgba(150,110,40,.16),0 12px 28px rgba(0,0,0,.35)}
.btn svg{width:16px;height:16px}
.btn.ghost{background:linear-gradient(170deg,rgba(22,17,12,.85),rgba(10,9,8,.9));color:var(--ink);border-color:rgba(212,175,99,.28);box-shadow:inset 0 1px 0 rgba(246,230,192,.08)}
.btn.gold{background:linear-gradient(180deg,#F1DCA8,#D4AF63 55%,#A9873F);border-color:rgba(246,230,192,.8);color:#17110A}
.btn.sm{min-height:36px;padding:7px 14px;font-size:12.5px}
.btn.okb{background:linear-gradient(180deg,#9AD7AF,#6DB88A);color:#0E1A12;border-color:rgba(154,215,175,.8)}
.btn.block{width:100%}
.link{color:#ECD5A3;font-weight:600;text-decoration:none;font-size:13px;background:none;border:0;padding:0;cursor:pointer}

/* Pastilles */
.pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:500;padding:4px 11px;border-radius:999px;border:1px solid rgba(246,230,192,.22);color:var(--soft);white-space:nowrap;background:transparent}
.pill.good{background:rgba(123,200,151,.12);color:#9AD7AF;border-color:rgba(123,200,151,.35)}
.pill.warn{background:rgba(232,180,90,.12);color:#F0C67C;border-color:rgba(232,180,90,.35)}
.pill.bad{background:rgba(238,133,120,.12);color:#F2A49A;border-color:rgba(238,133,120,.35)}
.pill.info{background:rgba(157,187,230,.12);color:#B5CDEE;border-color:rgba(157,187,230,.32)}
.pill.gold{background:rgba(212,175,99,.12);border-color:rgba(212,175,99,.55);color:#F6E6C0}
.pill i{width:6px;height:6px;border-radius:50%;background:currentColor;display:inline-block}
.tag{font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;padding:3px 9px;border-radius:999px;border:1px solid rgba(212,175,99,.5);color:#ECD5A3;white-space:nowrap}

/* Sélecteur */
.seg{display:inline-flex;padding:5px;border-radius:999px;gap:2px;flex-wrap:wrap;border:1px solid transparent;background:var(--glass) padding-box,var(--rim) border-box}
.seg button,.seg a{border:0;background:transparent;padding:9px 18px;border-radius:999px;font-size:13px;font-weight:500;color:var(--soft);cursor:pointer;text-decoration:none}
.seg .on{background:linear-gradient(180deg,var(--ivory),var(--ivory-2));color:#17110A;box-shadow:inset 0 1px 0 #fff;font-weight:600}

/* Barres */
.bar{height:6px;background:rgba(246,230,192,.08);border-radius:99px;overflow:hidden}
.bar i{display:block;height:100%;background:linear-gradient(90deg,#8A6420,#D4AF63 60%,#F6E6C0);border-radius:99px}
.bar.ok i{background:linear-gradient(90deg,#4E9A6A,#7BC897)}
.prow{display:flex;flex-direction:column;gap:7px}
.prow-h{display:flex;justify-content:space-between;gap:10px;font-weight:550;font-size:13.5px}

/* Tableaux */
.tw{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:13.5px}
th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.2em;color:var(--cap);font-weight:500;padding:10px 12px;border-bottom:1px solid rgba(212,175,99,.28);white-space:nowrap}
td{padding:13px 12px;border-bottom:1px solid rgba(212,175,99,.12);vertical-align:middle}
tbody tr:last-child td{border-bottom:0}
.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}
th.num{font-weight:500}

/* Champs */
.field{display:flex;flex-direction:column;gap:7px;min-width:0}
.field label,.field .flab{font-size:10.5px;font-weight:500;color:var(--cap);text-transform:uppercase;letter-spacing:.2em}
input,select,textarea{font:inherit;color:var(--ink);background:rgba(10,8,6,.55);border:1px solid rgba(246,230,192,.16);border-radius:16px;padding:12px 14px;min-width:0;width:100%;box-shadow:inset 0 1px 2px rgba(0,0,0,.35)}
textarea{min-height:90px;resize:vertical}
input::placeholder,textarea::placeholder{color:#8F836C}
input[type=checkbox],input[type=radio]{width:18px;height:18px;accent-color:#D4AF63;box-shadow:none;flex:none;margin:0}
.chip{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(246,230,192,.16);border-radius:99px;padding:7px 13px;font-size:12.5px;background:rgba(12,10,8,.55);color:var(--soft);cursor:pointer}
.chip.on{background:rgba(212,175,99,.14);border-color:rgba(212,175,99,.6);color:#F6E6C0}
.check{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid rgba(212,175,99,.12);font-size:13.5px}
.check:last-child{border-bottom:0}
.check.done span{color:var(--cap);text-decoration:line-through}

/* Dock */
.dockwrap{position:sticky;bottom:0;z-index:6;display:flex;justify-content:center;padding:26px 16px 22px;margin-top:40px;pointer-events:none}
.dock{pointer-events:auto;display:flex;align-items:center;gap:4px;height:72px;padding:0 9px;border-radius:40px;border:1px solid transparent;background:linear-gradient(160deg,rgba(40,31,20,.82),rgba(16,13,9,.88)) padding-box,var(--rim) border-box;box-shadow:inset 0 1px 0 rgba(255,250,240,.2),0 24px 60px rgba(0,0,0,.55);-webkit-backdrop-filter:blur(30px) saturate(160%);backdrop-filter:blur(30px) saturate(160%);max-width:100%;overflow-x:auto}
.tab{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;min-width:54px;padding:0 16px;border-radius:30px;color:#E8DCC4;font-size:14px;font-weight:600;text-decoration:none;white-space:nowrap}
.tab svg{width:19px;height:19px;flex:none}
.tab span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.tab.on{background:linear-gradient(180deg,var(--ivory),var(--ivory-2));color:#17110A;box-shadow:inset 0 1px 0 #fff;padding:0 22px}
.tab.on span{position:static;width:auto;height:auto;clip:auto}
.tab.on svg{color:#8A6420}
.tab .badge{position:absolute;top:6px;right:5px;font-size:10px;font-weight:700;padding:0 6px;line-height:16px;border-radius:99px;background:linear-gradient(180deg,#F1DCA8,#C9A24E);color:#17110A}
.dock .sep{width:1px;height:30px;background:rgba(212,175,99,.25);margin:0 4px;flex:none}

/* Suivi façon colis */
.trk{position:relative;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:0;margin:8px 0 4px}
.trk .rail{position:absolute;left:6.25%;right:6.25%;top:17px;height:3px;border-radius:9px;background:rgba(246,230,192,.1)}
.trk .rail i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,#8A6420,#D4AF63 70%,#F6E6C0);box-shadow:0 0 14px rgba(212,175,99,.5)}
.st{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:0 4px}
.st .d{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;border:1.5px dashed rgba(246,230,192,.28);background:#120E0A;color:var(--cap);z-index:1}
.st .d svg{width:16px;height:16px}
.st.done .d{border:0;background:linear-gradient(180deg,#F1DCA8,#C9A24E);color:#17110A}
.st.now .d{border:0;background:linear-gradient(180deg,var(--ivory),var(--ivory-2));color:#17110A;box-shadow:0 0 0 6px rgba(212,175,99,.18),0 0 30px rgba(212,175,99,.55)}
.st b{font-size:12.5px;font-weight:600;line-height:1.25}
.st small{font-size:11.5px;color:var(--cap);line-height:1.2}
.st.todo b{color:var(--cap);font-weight:500}
.eta{display:flex;flex-direction:column;align-items:flex-end;text-align:right}
.eta .big{font-family:var(--serif);font-weight:300;font-size:46px;line-height:1;color:#F6E6C0}

/* Chronologie verticale */
.tl{display:flex;flex-direction:column}
.tli{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:14px;position:relative;padding-bottom:22px}
.tli::before{content:"";position:absolute;left:13px;top:28px;bottom:0;width:2px;background:rgba(246,230,192,.1)}
.tli.done::before{background:linear-gradient(180deg,#D4AF63,rgba(212,175,99,.4))}
.tli:last-child::before{display:none}
.tli .d{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:1.5px dashed rgba(246,230,192,.28);background:#120E0A}
.tli .d svg{width:13px;height:13px}
.tli.done .d{border:0;background:linear-gradient(180deg,#F1DCA8,#C9A24E);color:#17110A}
.tli.now .d{border:0;background:var(--ivory);color:#17110A;box-shadow:0 0 0 5px rgba(212,175,99,.2)}
.tli b{display:block;font-size:14px;font-weight:600}
.tli p{margin:3px 0 0;color:var(--cap);font-size:13px}
.tli .when{font-size:12.5px;color:var(--cap);white-space:nowrap;text-align:right}

/* Lecteur vidéo */
.player{position:relative;aspect-ratio:9/16;width:100%;border-radius:24px;overflow:hidden;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.65)),radial-gradient(90% 60% at 30% 25%,#C08A45,#5B3A1A 55%,#1A120A);box-shadow:0 0 0 1px rgba(212,175,99,.35),0 30px 60px rgba(0,0,0,.5)}
.player .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:rgba(251,246,236,.92);color:#17110A;border:0;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.player .play svg{width:26px;height:26px;margin-left:4px}
.player .cap{position:absolute;left:18px;right:18px;bottom:96px;text-align:center;font-weight:800;font-size:20px;line-height:1.2;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.player .cap mark{background:#D4AF63;color:#17110A;padding:0 6px;border-radius:6px}
.player .ctrl{position:absolute;left:16px;right:16px;bottom:16px;display:flex;flex-direction:column;gap:10px}
.scrub{position:relative;height:6px;border-radius:9px;background:rgba(255,255,255,.22)}
.scrub i{position:absolute;left:0;top:0;bottom:0;border-radius:9px;background:var(--ivory)}
.scrub .mk{position:absolute;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#D4AF63;border:2px solid #17110A;box-shadow:0 0 10px rgba(212,175,99,.8)}
.tc{display:flex;justify-content:space-between;font-size:12px;font-variant-numeric:tabular-nums;color:#F3EFE7;font-weight:600}
.cmt{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px;border-radius:18px;border:1px solid rgba(212,175,99,.14);background:rgba(10,8,6,.4)}
.cmt.sel{border-color:rgba(212,175,99,.6);background:rgba(212,175,99,.08)}
.cmt .t{font-variant-numeric:tabular-nums;font-weight:700;font-size:12px;color:#17110A;background:linear-gradient(180deg,#F1DCA8,#C9A24E);border-radius:99px;padding:3px 9px;height:fit-content}
.cmt p{margin:4px 0 0;font-size:13.5px}
.cmt .meta{font-size:11.5px;color:var(--cap)}

/* Vignettes de livrables et références */
.ph{position:relative;border-radius:20px;overflow:hidden;min-height:120px;box-shadow:0 0 0 1px rgba(212,175,99,.22)}
.ph1{background:radial-gradient(80% 70% at 30% 30%,#E0A45A,#7A4A20 55%,#2A1A0C)}
.ph2{background:radial-gradient(90% 80% at 70% 20%,#9FB7A8,#3E5A4C 50%,#13201A)}
.ph3{background:radial-gradient(80% 80% at 50% 80%,#2F6F8F,#173A4D 50%,#08141C)}
.ph4{background:linear-gradient(160deg,#F3E2C2,#C9A26A 60%,#6F5330)}
.ph5{background:radial-gradient(70% 60% at 60% 40%,#C2563A,#6A2416 55%,#1E0C08)}
.ph6{background:linear-gradient(200deg,#E9D9B8,#8C8170 50%,#2C2925)}
.ph7{background:radial-gradient(90% 70% at 20% 80%,#D9B26A,#4A3518 55%,#0D0A06)}
.ph8{background:linear-gradient(180deg,#5C7FA0,#E6B98A 70%,#B3743F)}
.ph .lbl{position:absolute;left:12px;bottom:12px;right:12px;display:flex;justify-content:space-between;align-items:flex-end;gap:8px;font-size:12px;font-weight:600;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.ph .lbl .pill{background:rgba(10,8,6,.6);text-shadow:none}
.ph .corner{position:absolute;top:10px;left:10px}
.ph .dur{position:absolute;top:10px;right:10px;font-size:11px;font-weight:700;background:rgba(10,8,6,.7);border-radius:99px;padding:2px 8px;font-variant-numeric:tabular-nums}
.ph .pbtn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(251,246,236,.9);color:#17110A}
.ph .pbtn svg{width:16px;height:16px;margin-left:2px}
.mb{columns:4 220px;column-gap:16px}
.mb>*{break-inside:avoid;margin-bottom:16px}
.add{display:grid;place-items:center;gap:6px;min-height:150px;border-radius:20px;border:1.5px dashed rgba(212,175,99,.45);color:#ECD5A3;text-align:center;font-weight:600;font-size:13px;background:rgba(212,175,99,.04);text-decoration:none}
.sw{display:flex;gap:10px;flex-wrap:wrap}
.sw div{display:flex;flex-direction:column;gap:6px;font-size:11.5px;color:var(--cap)}
.sw i{display:block;width:64px;height:64px;border-radius:16px;box-shadow:0 0 0 1px rgba(246,230,192,.2)}

/* Graphique */
.chart{width:100%;height:auto;display:block}
.chart text{fill:#BDAE92;font:11px var(--f)}
.legend{display:flex;gap:16px;font-size:12px;color:var(--cap);margin-top:10px;flex-wrap:wrap}
.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}

/* Calendrier */
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.cal .dh{font-size:10.5px;text-transform:uppercase;letter-spacing:.2em;color:var(--cap);padding:0 6px 4px}
.day{min-height:104px;border-radius:16px;padding:8px;border:1px solid rgba(212,175,99,.12);background:rgba(10,8,6,.35);display:flex;flex-direction:column;gap:5px;min-width:0}
.day .n{font-size:12px;color:var(--cap);font-weight:600}
.day.out{opacity:.4}
.day.today{border-color:rgba(212,175,99,.6);background:rgba(212,175,99,.07)}
.day.today .n{color:#F6E6C0}
.ev{font-size:11.5px;font-weight:600;padding:4px 7px;border-radius:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:0}
.ev.reel{background:rgba(212,175,99,.18);color:#F6E6C0}
.ev.shoot{background:rgba(157,187,230,.16);color:#C9DBF3}
.ev.wait{background:rgba(232,180,90,.16);color:#F0C67C}
.ev.pub{background:rgba(123,200,151,.14);color:#A9DDBD}

/* Abonnement */
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.plan{position:relative;display:flex;flex-direction:column;gap:14px}
.plan .price{font-family:var(--serif);font-weight:300;font-size:52px;line-height:1}
.plan .price small{font-family:var(--f);font-size:13px;color:var(--cap);margin-left:4px}
.plan ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;font-size:13.5px}
.plan li{display:flex;gap:10px;align-items:flex-start}
.plan li svg{width:16px;height:16px;flex:none;margin-top:2px;color:#D4AF63}
.plan.cur{background:linear-gradient(160deg,rgba(212,175,99,.2),rgba(255,248,232,.04) 55%) padding-box,linear-gradient(150deg,rgba(246,230,192,.8),rgba(212,175,99,.15) 40%,rgba(246,230,192,.5)) border-box}
.plan .ribbon{position:absolute;top:-12px;right:22px}
.ring-q{position:relative;width:132px;height:132px;flex:none}
.ring-q svg{width:100%;height:100%;transform:rotate(-90deg)}
.ring-q .c{position:absolute;inset:0;display:grid;place-items:center;text-align:center}
.ring-q .c b{font-family:var(--serif);font-weight:300;font-size:40px;line-height:1;display:block}
.ring-q .c small{font-size:11px;color:var(--cap)}

/* Documents */
.doc{display:flex;align-items:center;gap:14px;padding:14px 4px;border-bottom:1px solid rgba(212,175,99,.12)}
.doc:last-child{border-bottom:0}
.doc .ic{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;flex:none;background:rgba(255,248,232,.05);border:1px solid rgba(246,230,192,.2);color:#ECD5A3}
.doc .ic svg{width:18px;height:18px}
.doc .m{flex:1;min-width:0}
.doc .m b{display:block;font-weight:600;font-size:14px}
.doc .amt{font-family:var(--serif);font-size:24px;font-weight:400;white-space:nowrap}
.paper{border-radius:20px;background:linear-gradient(180deg,#FBF6EC,#F1E7D3);color:#1F1A12;padding:28px;box-shadow:0 30px 60px rgba(0,0,0,.45)}
.paper .lab{color:#7A5A1E}
.paper table th{color:#6F6656;border-bottom-color:rgba(31,26,18,.2)}
.paper table td{border-bottom-color:rgba(31,26,18,.1)}
.paper .tot{font-family:var(--serif);font-size:34px;font-weight:400}
.sign{height:86px;border-radius:14px;border:1.5px dashed rgba(122,90,30,.5);display:grid;place-items:center;color:#7A5A1E;font-family:var(--serif);font-style:italic;font-size:22px;background:rgba(255,255,255,.5)}

/* Messages */
.thread{display:flex;flex-direction:column;gap:2px}
.th{display:flex;gap:12px;align-items:center;padding:12px;border-radius:18px;text-decoration:none;color:var(--ink)}
.th.on{background:rgba(212,175,99,.1);box-shadow:inset 0 0 0 1px rgba(212,175,99,.35)}
.th .m{flex:1;min-width:0}
.th .m b{display:block;font-size:13.5px;font-weight:600}
.th .m span{display:block;font-size:12.5px;color:var(--cap);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.msgs{display:flex;flex-direction:column;gap:14px}
.bub{max-width:72%;padding:12px 16px;border-radius:20px;font-size:13.5px;line-height:1.5}
.bub.them{align-self:flex-start;background:rgba(255,248,232,.07);border:1px solid rgba(246,230,192,.14);border-bottom-left-radius:6px}
.bub.me{align-self:flex-end;background:linear-gradient(180deg,#F7EEDB,#E6D2A8);color:#17110A;border-bottom-right-radius:6px}
.bub small{display:block;font-size:11px;margin-top:6px;opacity:.7}
.att{display:flex;align-items:center;gap:10px;margin-top:8px;padding:8px 10px;border-radius:12px;background:rgba(10,8,6,.4);font-size:12.5px}
.daysep{align-self:center;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--cap)}

/* Étapes d'onboarding */
.steps{display:flex;gap:8px;flex-wrap:wrap}
.step{display:flex;align-items:center;gap:10px;padding:8px 16px 8px 8px;border-radius:99px;border:1px solid rgba(246,230,192,.14);font-size:13px;color:var(--cap)}
.step i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:700;font-size:12px;border:1.5px dashed rgba(246,230,192,.3)}
.step.done{color:var(--ink)}
.step.done i{border:0;background:linear-gradient(180deg,#F1DCA8,#C9A24E);color:#17110A}
.step.now{color:#17110A;background:linear-gradient(180deg,var(--ivory),var(--ivory-2));border-color:transparent;font-weight:600}
.step.now i{border:0;background:#17110A;color:#F6E6C0}
.drop{display:grid;place-items:center;text-align:center;gap:6px;padding:26px;border-radius:20px;border:1.5px dashed rgba(212,175,99,.45);background:rgba(212,175,99,.04);color:var(--cap);font-size:13px}
.drop b{color:#ECD5A3}
.stars{display:flex;gap:6px;color:#D4AF63}
.stars svg{width:30px;height:30px}

/* Connexion */
.auth{position:relative;z-index:1;min-height:860px;display:grid;place-items:center;padding:40px 16px}
.authcard{width:min(440px,100%);display:flex;flex-direction:column;gap:16px;padding:38px 34px;border-radius:34px}
.authcard .mark{width:68px;height:68px}
.authcard h1{font-family:var(--serif);font-weight:300;font-size:44px;line-height:1;margin:6px 0 0}
.authcard h1 em{font-style:italic;color:#F6E6C0}

/* Mobile */
.phone .top{padding:14px 16px}
.phone .view{padding:4px 16px 0}
.phone h1.page{font-size:40px}
.phone .card{padding:20px;border-radius:24px}
.phone .card h2{font-size:22px}
.phone .kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.phone .kpi{padding:16px 18px;border-radius:22px}
.phone .kpi .v{font-size:38px;margin-top:10px}
.phone .dockwrap{position:absolute;left:0;right:0;bottom:0;margin:0;padding:0 12px 18px}
.phone .dock{width:100%;height:64px;justify-content:space-between;padding:0 7px;border-radius:34px}
.phone .tab{height:50px;min-width:46px;padding:0 12px}
.phone .tab.on{padding:0 16px}

@media (max-width:1080px){.g2,.g2r,.g3,.plans{grid-template-columns:minmax(0,1fr)}.kpis,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.top,.view{padding-left:16px;padding-right:16px}.app,.client div{display:none}h1.page{font-size:42px}.g2e{grid-template-columns:minmax(0,1fr)}.trk{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:20px}.trk .rail{display:none}.cal{gap:4px}.day{min-height:70px;padding:5px}.ev{font-size:10px}}
