/* Stature Agency brand: black ground, ice-blue monogram. Single dark theme by design.
   Layout: sticky brand header + tabs; library = single column of video rows with thumbnail */
:root{
  color-scheme:dark;
  --bg:#070708; --bg-top:#161718; --surface:#121314; --surface-2:#1a1c1e; --fg:#e8eef2; --muted:#8a949c; --line:#25292c;
  --accent:#c4d9e7; --accent-soft:rgba(196,217,231,.12); --on-accent:#070708;
  --viral:#6fd8ad; --viral-soft:rgba(111,216,173,.13); --good:#9fc4ff; --good-soft:rgba(159,196,255,.12); --ok:#e6c76f; --ok-soft:rgba(230,199,111,.12); --low:#8a949c; --low-soft:rgba(138,148,156,.14);
  --scrim:rgba(0,0,0,.72);
  --f-brand:"Josefin Sans","Century Gothic",ui-sans-serif,system-ui,sans-serif;
  --f-display:"Josefin Sans","Century Gothic",ui-sans-serif,system-ui,sans-serif;
  --f-body:"Instrument Sans",ui-sans-serif,system-ui,sans-serif;
  --f-mono:"JetBrains Mono",ui-monospace,Consolas,monospace;
}
*{box-sizing:border-box}
body{background:var(--bg) linear-gradient(180deg,var(--bg-top),var(--bg) 420px) no-repeat;color:var(--fg);font-family:var(--f-body);font-size:15px;line-height:1.45;min-height:100%}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--fg)}
.brand img{width:40px;height:40px;border-radius:9px;border:1px solid var(--line);display:block}
.brand span{font-family:var(--f-brand);font-weight:300;letter-spacing:.32em;text-transform:uppercase;font-size:14px}
.login .brand{flex-direction:column;gap:14px;margin-bottom:8px}
.login .brand img{width:88px;height:88px;border-radius:18px}
.login .brand span{font-size:16px}
.cat .n,.day,h2,h3{font-family:var(--f-display)}
h1,h2{font-weight:600;letter-spacing:.01em}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg)}
.wrap{max-width:1100px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:20px 64px}
h1{font-family:var(--f-display);font-weight:700;font-size:clamp(24px,4vw,34px);margin:0;letter-spacing:-.01em;text-wrap:balance}
h2{font-family:var(--f-display);font-weight:700;font-size:20px;margin:24px 0 10px}
.sub{margin:4px 0 0;color:var(--muted)}
.sub a{color:var(--accent)}
.sync{font-size:13px;color:var(--muted);margin-top:6px}
.tabs{display:flex;gap:4px;margin-top:16px;border-bottom:1px solid var(--line);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.tabs a{padding:9px 14px;color:var(--muted);text-decoration:none;font-weight:600;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}
.tabs a[aria-current="page"]{color:var(--fg);border-color:var(--accent)}
.tabs .badge{font-family:var(--f-mono);font-size:11px;background:var(--accent);color:var(--on-accent);border-radius:999px;padding:1px 6px;margin-left:4px}
.cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:10px;margin:16px 0}
.cat{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:11px 13px;text-align:left;font:inherit;color:inherit;cursor:pointer}
.cat[aria-pressed="true"]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.cat .n{font-family:var(--f-display);font-weight:700;font-size:15px}
.cat .m{font-family:var(--f-mono);font-size:19px;margin-top:4px;font-variant-numeric:tabular-nums}
.cat .s{font-size:12px;color:var(--muted)}
.bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--bg);padding-block:10px;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px;align-items:center}
select,input[type=search],input[type=text],input[type=date],input[type=time]{font:inherit;font-size:14px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--fg);min-width:0}
.bar input[type=search]{flex:1 1 170px}
.chk{display:flex;align-items:center;gap:6px;font-size:14px;white-space:nowrap}
.btn{font:inherit;font-size:14px;font-weight:600;padding:7px 12px;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.btn.ghost{background:transparent;color:var(--accent)}
.btn.quiet{background:transparent;color:var(--fg);border-color:var(--line)}
.btn.sm{font-size:13px;padding:5px 10px}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.btn.on-win{background:var(--viral);border-color:var(--viral);color:var(--surface)}
.btn.on-flop{background:var(--low);border-color:var(--low);color:var(--surface)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.count{font-size:13px;color:var(--muted);margin:12px 0 6px}
.list{display:flex;flex-direction:column;gap:8px}
.row{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px;display:grid;grid-template-columns:78px minmax(0,1fr) auto;gap:14px;align-items:start}
.thumb{width:78px;aspect-ratio:9/16;max-width:100%;border-radius:7px;background:var(--low-soft);object-fit:cover;display:block;border:0;padding:0;cursor:pointer;position:relative;overflow:hidden}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.thumb .play{position:absolute;inset:auto 4px 4px auto;background:var(--scrim);color:#fff;border-radius:999px;font-size:10px;padding:2px 6px}
.views{font-family:var(--f-mono);font-size:18px;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.views small{font-family:var(--f-body);font-size:12px;color:var(--muted)}
.pills{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 6px}
.pill{font-size:12px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--low-soft);color:var(--low)}
.pill.cat-p{background:var(--accent-soft);color:var(--accent)}
.pill.t-viral,.pill.win{background:var(--viral-soft);color:var(--viral)}
.pill.t-tres{background:var(--good-soft);color:var(--good)}
.pill.t-bon,.pill.planned{background:var(--ok-soft);color:var(--ok)}
.desc{margin:0;overflow-wrap:anywhere}
.desc.empty{color:var(--muted);font-style:italic}
.meta{font-size:12.5px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}
.acts{display:flex;flex-direction:column;gap:6px;align-items:stretch;min-width:140px}
.linkbtn{color:var(--accent);background:none;border:0;padding:0;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;text-decoration:none;text-align:left}
.posted{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.empty-state{background:var(--surface);border:1px dashed var(--line);border-radius:10px;padding:18px;color:var(--muted)}
.comptes{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.chip{display:inline-flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:4px 6px 4px 12px;font-weight:600;font-size:14px}
.chip button{border:0;background:var(--low-soft);color:var(--fg);border-radius:999px;font:inherit;font-size:12px;padding:2px 8px;cursor:pointer}
.chip button.confirm{background:var(--accent);color:var(--on-accent)}
.day{font-family:var(--f-display);font-weight:700;font-size:16px;margin:18px 0 8px;display:flex;gap:8px;align-items:baseline}
.day small{font-family:var(--f-body);font-weight:500;color:var(--muted);font-size:13px}
.post{grid-template-columns:56px minmax(0,1fr) auto}
.post .thumb{width:56px}
.hour{font-family:var(--f-mono);font-size:15px}
.tbl-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:10px}
table{border-collapse:collapse;width:100%;font-size:14px}
th,td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}
th{font-size:12px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
td.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.rate{display:flex;align-items:center;gap:8px}
.rate i{display:block;height:6px;border-radius:3px;background:var(--viral);min-width:2px}
.winners{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}
.winners .thumb{width:100%}
.winners figcaption{font-size:12px;color:var(--muted);margin-top:4px}
.winners figure{margin:0}
/* modal */
.scrim{position:fixed;inset:0;background:var(--scrim);z-index:30;display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.modal{background:var(--surface);border:1px solid var(--line);color:var(--fg);border-radius:14px;width:min(640px,100%);max-height:100%;overflow:auto;padding:18px}
.modal h3{font-family:var(--f-display);font-size:19px;margin:0 0 4px}
.modal .top{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:12px}
.modal video{width:100%;max-height:62vh;background:#000;border-radius:10px;display:block}
.form{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.form label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--muted)}
.form .full{grid-column:1/-1}
.vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:12px 0}
.vgrid video{max-height:280px}
.vgrid .lab{font-size:12px;color:var(--muted);margin:4px 0}
.note{font-size:13px;color:var(--muted);background:var(--bg);border-radius:8px;padding:10px 12px;margin-top:10px}
.warn{color:var(--accent);font-size:13px;font-weight:600}
.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--fg);color:var(--bg);padding:8px 14px;border-radius:8px;font-size:14px;z-index:40}
@media (max-width:760px){
  .row{grid-template-columns:64px minmax(0,1fr)}
  .row .thumb{width:64px}
  .acts{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;min-width:0}
  .post{grid-template-columns:48px minmax(0,1fr)}
  .post .thumb{width:48px}
  .form{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* app additions */
.top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.top .right{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.who{font-size:13px;color:var(--muted)}
#modeleSel{font-family:var(--f-display);font-weight:600;font-size:22px;padding:6px 12px;background:var(--surface-2)}
.login{min-height:100%;display:flex;align-items:center;justify-content:center;padding-block:60px}
.login form{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px;width:min(380px,100%);display:flex;flex-direction:column;gap:12px}
.login input{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--fg)}
.err{color:var(--accent);font-size:14px;min-height:1em}
input[type=email],input[type=password],input[type=number],input[type=url]{font:inherit;font-size:14px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--fg);min-width:0}
.jobs{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.job{font-size:13px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px 12px;display:flex;gap:8px;flex-wrap:wrap}
.job b{font-weight:600}
.job.erreur{border-color:var(--accent)}
.job.erreur b{color:var(--accent)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:8px}
.card h3{font-family:var(--f-display);margin:0;font-size:17px}
.inline{display:flex;gap:8px;flex-wrap:wrap;align-items:end}
.inline label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--muted)}
.checks{display:flex;flex-wrap:wrap;gap:10px}
.catsel{font-size:12px;padding:2px 6px;border-radius:999px;border:1px solid var(--line);background:var(--accent-soft);color:var(--accent);font-weight:600}
.pill.ig{background:var(--accent-soft);color:var(--accent);font-family:var(--f-body)}
input[type=file]{font:inherit;font-size:14px;color:var(--fg)}

/* today page */
.slotbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:16px 0 4px;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:10px}
.slot-label{flex:1 1 260px;min-width:0}
.slot-label b{color:var(--accent);font-family:var(--f-mono)}
.slot-progress{font-size:13px;color:var(--muted)}
.tmodel h2{margin-top:22px}
.acc{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:12px}
.acc.done{opacity:.72}
.acc-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}
.acc-name{font-family:var(--f-display);font-weight:600;font-size:18px;color:var(--fg);text-decoration:none;margin-right:6px}
.acc-meta{display:flex;gap:10px;align-items:center;font-size:13px;color:var(--muted)}
.acc-note{margin:8px 0 0;font-size:13.5px;color:var(--accent);background:var(--accent-soft);padding:6px 10px;border-radius:8px}
.acc details summary{cursor:pointer;color:var(--muted);font-size:13px;margin-top:8px}
.acc h4{font-family:var(--f-display);font-size:15px;margin:16px 0 8px}
.acc h4 small{color:var(--muted);font-family:var(--f-mono);font-size:12px;margin-left:6px}
.acc h5{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:14px 0 6px;font-weight:600}
.todo{margin:8px 0;padding:8px 12px;border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 8px 8px 0}
.ok{margin:8px 0;color:var(--viral)}
.sug,.live{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:start;padding:10px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;background:var(--surface-2)}
.sug .thumb,.live .thumb{width:56px}
.sug-main{min-width:0}
.sug-acts{display:flex;flex-direction:column;gap:6px;align-items:stretch;min-width:130px}
.live.is-best{border-color:var(--viral)}
.live.is-hot{border-color:var(--ok)}
.pill.hot{background:var(--ok-soft);color:var(--ok)}
.links{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.ver{display:flex;flex-direction:column;font-size:11px;color:var(--muted);gap:2px}
.ver select{font-size:13px;padding:4px 6px}
.live input[type=number]{width:120px}
.live input.need{border-color:var(--accent)}
@media (max-width:760px){
  .sug,.live{grid-template-columns:48px minmax(0,1fr)}
  .sug .thumb,.live .thumb{width:48px}
  .sug-acts{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;min-width:0;align-items:center}
}

/* ===== simplified UI ===== */
.tabs.big a{font-size:17px;padding:12px 18px}
.center{text-align:center}
.slotbar{display:flex;align-items:center;gap:12px;justify-content:space-between}
.slot-mid{text-align:center;flex:1;min-width:0}
.slot-title{font-family:var(--f-display);font-size:22px;font-weight:600;text-transform:capitalize}
.acc.small{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px}
.acc.small.ok-card{border-color:var(--viral);opacity:1}
.acc-head{margin-bottom:6px}
.step{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;margin-top:14px}
.step.dim{opacity:.5}
.step-n{width:30px;height:30px;border-radius:50%;background:var(--accent);color:var(--on-accent);display:flex;align-items:center;justify-content:center;font-weight:700;font-family:var(--f-mono)}
.step-body{min-width:0}
.step-body h4{margin:4px 0 6px;font-size:17px;font-family:var(--f-body);font-weight:600}
.help{margin:0 0 8px;color:var(--muted);font-size:13.5px}
.item{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;background:var(--surface-2)}
.item .thumb{width:56px}
.item-main{min-width:0}
.item-main.inline input{width:140px;font-size:16px}
.item-acts{display:flex;flex-direction:column;gap:6px;align-items:stretch;min-width:150px}
.item.hot{border-color:var(--ok)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.chip-btn{font:inherit;font-size:14px;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer}
.chip-btn.big{font-size:17px;font-family:var(--f-display);font-weight:600}
.chip-btn[aria-pressed="true"]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.vbar{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.vbar input{flex:1 1 200px}
.vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-top:8px}
.vgrid.small{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.vgrid video{width:100%;max-height:260px;background:#000;border-radius:8px}
.vcard{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:0;overflow:hidden;cursor:pointer;color:var(--fg);font:inherit;text-align:left}
.vthumb{display:block;aspect-ratio:9/16;background:var(--low-soft);position:relative;max-width:100%}
.vthumb img{width:100%;height:100%;object-fit:cover;display:block}
.vbadge{position:absolute;top:6px;right:6px;background:var(--accent);color:var(--on-accent);font-size:11px;font-weight:700;border-radius:999px;padding:2px 7px}
.vinfo{display:block;padding:8px 10px;font-size:13px}
.vinfo small{display:block;color:var(--muted);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mtop{display:flex;justify-content:flex-end;margin-bottom:8px}
.mrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0}
.btn.full{width:100%;justify-content:center;margin-top:6px}
.setcard{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:12px;display:flex;flex-direction:column;gap:10px}
.setcard.inline{flex-direction:row;flex-wrap:wrap;align-items:end}
.setcard h3{margin:8px 0 0;font-size:15px}
.big-input{font-family:var(--f-display)!important;font-size:20px!important;font-weight:600}
.arow{display:flex;flex-wrap:wrap;gap:10px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.arow label,.setcard label,.inline label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--muted)}
.arow input[type=number]{width:90px}
.arow .wide{flex-basis:100%}
.arow details summary{cursor:pointer;color:var(--muted);font-size:13px}
.acc-name.sm{font-size:16px;align-self:center;min-width:150px}
@media (max-width:760px){
  .item{grid-template-columns:48px minmax(0,1fr)}
  .item .thumb{width:48px}
  .item-acts{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;min-width:0}
  .item-acts .btn{flex:1 1 auto;justify-content:center}
  .slot-title{font-size:18px}
  .tabs.big a{font-size:15px;padding:10px 12px}
}
