/* Cockpit Content Voost. Tokenii, fontul și comenzile de bază vin din ui.css (comune cu „Spații”).
   Un font, două greutăți, trei mărimi (--t-s / --t-m / --t-l). Animațiile rulează mereu: nu folosim prefers-reduced-motion (cerința lui Radu).
   Layout: antet sus; pe desktop librăria în stânga și calendarul în dreapta, „De revizuit” ține locul lor cât are clipuri; pe telefon totul pe o coloană. */
:root{--spring:cubic-bezier(.3,1.45,.5,1);--out:cubic-bezier(.2,.9,.3,1);--bar-h:64px;--over:rgba(0,0,0,.62)}

.link{font-weight:600;font-size:var(--t-s);color:var(--muted);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line)}
.link:hover{color:var(--fg)}
.link.danger{color:var(--warn)}
.btn:active{transform:scale(.97)}

/* ---------- poarta ---------- */
#gate{min-height:100dvh;display:grid;place-items:center;padding:24px max(16px,env(safe-area-inset-left))}
.gate-box{width:min(340px,100%);display:flex;flex-direction:column;gap:12px}
.gate-box .logo{width:40px;height:auto;margin-bottom:4px}
.gate-box h1{font-size:var(--t-l);font-weight:600;margin-bottom:8px}
.gate-box label{font-size:var(--t-s);font-weight:600;color:var(--muted)}
.gate-box .field{min-height:44px}
.gate-box .btn{min-height:44px}
.gate-err{color:var(--warn);font-size:var(--t-s);min-height:20px}

/* ---------- antet ---------- */
.bar{display:flex;align-items:center;gap:12px;min-height:var(--bar-h);padding:8px 20px;border-bottom:1px solid var(--line);position:relative;z-index:5;background:var(--bg)}
.brand{display:flex;align-items:center;flex:none}
.brand img{width:28px;height:auto}
.sync{display:flex;align-items:center;gap:6px;font-size:var(--t-s);color:var(--muted);white-space:nowrap;min-width:0}
.sync i{width:6px;height:6px;border-radius:50%;background:var(--faint);flex:none;transition:background-color .2s}
.sync[data-s=saving] i{background:var(--accent);animation:blink .9s ease-in-out infinite}
.sync[data-s=offline] i,.sync[data-s=error] i{background:var(--warn)}
.sync[data-s=offline],.sync[data-s=error]{color:var(--warn)}
.sync[data-s=remote] i{background:var(--accent)}
.sync[data-s=remote]{color:var(--fg)}
@keyframes blink{50%{opacity:.25}}
.next{display:flex;align-items:center;gap:10px;margin-left:auto;padding:4px 10px 4px 4px;border-radius:10px;text-align:left;min-width:0;transition:background-color .15s}
.next:hover{background:var(--sunk)}
.next-cover{width:28px;height:50px;border-radius:4px;object-fit:cover;background:var(--sunk);flex:none}
.next-txt{display:flex;flex-direction:column;min-width:0;font-size:var(--t-s);line-height:1.3}
.next-lbl,.next-when{color:var(--muted)}
.next-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
.next-cd{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:4px}
.next.soon .next-cd{color:var(--accent-text)}
.next.empty .next-cd{display:none}
.late{font-size:var(--t-s);font-weight:600;color:var(--warn);white-space:nowrap;padding:6px 8px;border-radius:8px}
.late:hover{background:var(--sunk)}
.actions{display:flex;align-items:center;gap:6px;position:relative}
.actions .btn:not(.btn-primary),#statsBtn{background:none;border-color:transparent;color:var(--muted)}
.actions .btn:not(.btn-primary):hover,#statsBtn:hover{background:var(--sunk);color:var(--fg)}
#statsBtn[aria-pressed=true]{background:var(--sunk);color:var(--fg)}
#soundBtn{order:9;color:var(--muted)}
/* o singură acțiune principală pe ecran: cât e deschis „De revizuit” sau „Cifre”, „Așază automat” devine buton obișnuit */
body.ib-on #arrange,body.st-on #arrange{background:var(--surface);border-color:var(--line);color:var(--fg)}
.confirm{position:absolute;right:0;min-width:100%;top:50%;translate:0 -50%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 6px 6px 14px;border-radius:10px;background:var(--surface);border:1px solid var(--line);white-space:nowrap;box-shadow:var(--lift);z-index:3}
.confirm p{font-size:var(--t-s);font-weight:600;margin-right:4px}
.confirm .btn{min-height:34px;padding:0 12px}

/* ---------- puntea: librăria + calendarul ---------- */
.rail{position:relative}
.rail-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}
.rail-head h2,.board-head h2{font-weight:600}
.rail-head h2 span{color:var(--muted);font-weight:400;margin-left:4px}
.filters{display:flex;gap:2px 4px;flex-wrap:wrap;margin-bottom:14px}
.fchip{min-height:32px;padding:0 8px;border-radius:7px;font-size:var(--t-s);font-weight:600;color:var(--muted);display:inline-flex;align-items:center;gap:5px;white-space:nowrap;transition:background-color .15s,color .15s}
.fchip:hover{color:var(--fg)}
.fchip[aria-pressed=true],.fchip.style-on{background:var(--sunk);color:var(--fg)}
.fchip svg{width:13px;height:13px}
.fchip .cnt{font-weight:400;font-variant-numeric:tabular-nums;color:var(--faint)}
.fchip.hot .cnt{color:var(--accent-text);font-weight:600}
.fchip[aria-pressed=true] .cnt{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}

.clip{position:relative;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation;outline:none}
.clip:focus-visible .clip-media{outline:2px solid var(--accent);outline-offset:3px}
.clip-media{position:relative;aspect-ratio:9/16;border-radius:8px;overflow:hidden;background:var(--sunk);transition:transform .3s var(--spring),opacity .2s,filter .2s}
.clip-media img,.clip-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.clip-video{opacity:0;transition:opacity .25s}
.clip-video.on{opacity:1}
.clip:hover .clip-media{transform:translateY(-3px)}
.clip.pressing .clip-media{transform:scale(.95);transition:transform .26s ease-out}
.clip.is-lifted .clip-media{opacity:.3;filter:grayscale(1);transform:scale(.96)}
.clip-media img{transition:filter .35s,opacity .35s}
.clip.is-scheduled .clip-media img{filter:grayscale(.85);opacity:.5}
.clip.is-scheduled:hover .clip-media img,.clip.is-scheduled.previewing .clip-media img{filter:none;opacity:1}
.clip.is-scheduled .clip-title{color:var(--muted)}
/* pe imagine: texte albe pe umbră, independente de temă */
.num{position:absolute;left:8px;top:7px;font-size:var(--t-s);font-weight:600;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.fav{position:absolute;right:7px;top:7px;width:18px;height:18px;fill:var(--accent);filter:drop-shadow(0 1px 3px rgba(0,0,0,.55))}
.dur{position:absolute;right:6px;bottom:6px;font-size:var(--t-s);font-weight:600;line-height:1;padding:3px 5px;border-radius:5px;background:var(--over);color:#fff;font-variant-numeric:tabular-nums}
.promo{position:absolute;left:6px;bottom:6px;font-size:var(--t-s);font-weight:600;line-height:1;padding:3px 6px;border-radius:5px;background:var(--accent);color:var(--on-accent);pointer-events:none}
.prog{position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--accent);transition:width .25s linear}
.clip-meta{padding:8px 1px 0;display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.clip-row{display:flex;align-items:flex-start;gap:4px;width:100%}
.clip-row .clip-title{flex:1;min-width:0}
.cmore{margin:-3px -4px 0 0;flex:none}
.clip-title{font-weight:600;line-height:1.25}
.rail-empty{grid-column:1/-1;color:var(--muted);font-size:var(--t-s);padding:18px 0}
/* stilul clipului: text simplu care filtrează, fără chenar */
.chip{font-size:var(--t-s);color:var(--muted);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;text-align:left}
button.chip:hover{color:var(--fg);text-decoration:underline;text-underline-offset:3px}
.clip-voice{display:none}
.clip-sched{font-size:var(--t-s);color:var(--muted);line-height:1.35;display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px}
.clip-sched b{color:var(--fg);font-weight:600}
.clip.is-rejected .clip-media img{filter:grayscale(1);opacity:.4}
.clip.is-rejected .clip-title{color:var(--muted)}
.clip.is-new .clip-media{box-shadow:0 0 0 2px var(--accent)}

/* starea clipului: un punct și un cuvânt */
.st{font-size:var(--t-s);color:var(--muted)}
.st-new{color:var(--accent-text)}
.st-rej{color:var(--warn)}
.st-free{color:var(--fg)}
.st-free::before{background:transparent;box-shadow:inset 0 0 0 1.5px currentColor}
.st-ok,.st-plan{color:var(--fg)}
.st-done{color:var(--ok)}

/* căutare + stil + rundă/lot + ordine */
.lib-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:0 0 18px}
.search{grid-column:1/-1;display:flex;align-items:center;gap:8px;min-height:40px;padding:0 10px;border-radius:8px;background:var(--surface);border:1px solid var(--line)}
.search svg{width:16px;height:16px;color:var(--muted);flex:none}
.search input{flex:1;min-width:0;height:100%;background:none;border:0;outline:none;color:var(--fg)}
.search input::placeholder{color:var(--faint)}
.search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--wash)}
.sel select{min-height:36px;font-size:var(--t-s)}
.sel-wide:last-child{grid-column:1/-1}
.sel.on select{background:var(--sunk);border-color:var(--muted)}

/* zona de scos din program, cât timp tragi o postare */
.rail-drop{position:absolute;inset:8px;border-radius:12px;border:1.5px dashed var(--muted);background:color-mix(in srgb,var(--bg) 92%,transparent);display:grid;place-items:center;text-align:center;padding:20px;font-weight:600;color:var(--fg);opacity:0;pointer-events:none;transition:opacity .2s,border-color .15s,background-color .15s;z-index:4}
body.drag-post .rail-drop{opacity:1}
.rail.is-over .rail-drop{border-color:var(--accent);background:var(--wash);color:var(--accent-text)}

.board{min-width:0;position:relative}
.board-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 24px 10px}
.board-head .fill{color:var(--muted);font-size:var(--t-s);margin-left:auto}
.board-head .fill b{color:var(--fg);font-weight:600}
.reflow{display:flex;align-items:center;gap:10px;padding:4px 4px 4px 12px;border-radius:10px;background:var(--wash);font-size:var(--t-s)}
.reflow .btn{min-height:32px;padding:0 12px}
.period{display:flex;align-items:center;gap:4px}
.period .btn-icon{width:36px;min-height:36px;background:none;border-color:transparent;color:var(--muted)}
.period .btn-icon:hover{background:var(--sunk);color:var(--fg)}
.period .btn-icon svg{width:16px;height:16px}
#range{min-width:118px;text-align:center;font-weight:600;white-space:nowrap}
#range.big{font-size:var(--t-l);min-width:0;padding:0 6px}
#todayBtn{color:var(--accent-text)}
.toggle{display:inline-flex;align-items:center;gap:8px;font-size:var(--t-s);color:var(--muted);cursor:pointer;user-select:none}
.toggle input{accent-color:var(--accent)}
.cal{display:flex;gap:10px}
.cal.month{display:block}

.day{display:flex;flex-direction:column;gap:8px;padding:8px 6px 12px;border-radius:10px;position:relative}
.day.is-today{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}
.day.is-off{background-image:repeating-linear-gradient(135deg,var(--sunk) 0 6px,transparent 6px 13px)}
.day.is-off .slot,.day.is-off .day-num,.day.is-off .day-wd{opacity:.55}
.day.is-past{opacity:.6}
.day-head{display:flex;align-items:flex-end;gap:8px;padding:2px 4px 8px;border-bottom:1px solid var(--line);min-height:44px}
.day-num{font-size:var(--t-l);font-weight:600;line-height:1;font-variant-numeric:tabular-nums}
.day.is-today .day-num{color:var(--accent-text)}
.day-wd{font-size:var(--t-s);line-height:1.15;color:var(--muted)}
.day-wd b{display:block;color:var(--fg);font-weight:600}
.day-tag{align-self:center;font-size:var(--t-s);font-weight:600;color:var(--accent-text)}
.day-off{align-self:center;font-size:var(--t-s);color:var(--muted)}
.day-count{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:5px;font-size:var(--t-s);color:var(--muted);font-variant-numeric:tabular-nums}
.meter{display:flex;gap:3px}
.meter i{width:9px;height:3px;border-radius:2px;background:var(--line);transition:background-color .3s}
.meter i.on{background:var(--fg)}
.day.is-full .day-count{color:var(--fg)}
.day-slots{display:flex;flex-direction:column;gap:8px}

.slot{container-type:inline-size;position:relative;min-height:106px;border-radius:10px;border:1.5px dashed var(--line);display:flex;transition:transform .24s var(--spring),border-color .15s,background-color .15s,box-shadow .24s}
.slot[data-filled="1"]{border-color:transparent;border-style:solid}
.slot-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--faint);border-radius:9px;transition:color .15s,background-color .15s}
.slot-empty:hover{color:var(--muted);background:var(--sunk)}
.slot-empty .t{font-weight:600;font-variant-numeric:tabular-nums;transition:transform .24s var(--spring)}
.slot-empty .s{font-size:var(--t-s)}
.slot[data-filled="1"] .slot-empty{display:none}
.slot.is-past:not([data-filled="1"]){opacity:.45}
.slot.extra::before{content:'oră extra';position:absolute;top:-9px;right:10px;font-size:var(--t-s);line-height:1.3;color:var(--muted);background:var(--bg);padding:0 5px;border-radius:4px;z-index:1}
body.is-dragging .slot:not([data-filled="1"]){border-color:color-mix(in srgb,var(--accent) 45%,transparent)}
body.is-dragging .slot-empty .s{visibility:hidden}
.slot.is-over{border-color:var(--accent)!important;border-style:solid;background:var(--wash);transform:scale(1.045);box-shadow:0 0 0 5px var(--wash)}
.slot.is-over .slot-empty{color:var(--accent-text)}
.slot.is-over .slot-empty .t{transform:translateY(-4px) scale(1.12)}
.ring{position:absolute;inset:-2px;border-radius:12px;border:2px solid var(--accent);pointer-events:none}

.post{flex:1;display:grid;grid-template-columns:50px minmax(0,1fr) auto auto;grid-template-rows:auto auto auto auto 1fr auto;grid-template-areas:"cover time pin more" "cover title title title" "cover late late late" "cover client client client" "cover plats plats plats" "cover posted posted posted";column-gap:9px;row-gap:2px;align-items:start;padding:7px;border-radius:10px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);position:relative;min-width:0;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation;transition:background-color .2s,opacity .2s,filter .2s,transform .22s var(--spring),box-shadow .2s}
.post:hover{background:var(--sunk)}
.post-cover{grid-area:cover;width:50px;height:89px;border-radius:6px;object-fit:cover;background:var(--sunk);transition:filter .3s,opacity .3s}
.post-time{grid-area:time;align-self:center;font-weight:600;font-variant-numeric:tabular-nums}
.post .pin{grid-area:pin}
.post .more{grid-area:more}
.ibtn{width:26px;height:26px;display:grid;place-items:center;border-radius:7px;color:var(--faint);transition:color .15s,background-color .15s}
.ibtn:hover{color:var(--fg);background:var(--sunk)}
.ibtn svg{width:16px;height:16px}
.pin svg path{fill:transparent;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round;transition:fill .2s}
.pin[aria-pressed=true]{color:var(--accent-text)}
.pin[aria-pressed=true] svg path{fill:currentColor}
.post-title{grid-area:title;font-size:var(--t-s);font-weight:600;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.post-late{grid-area:late;display:none;font-size:var(--t-s);font-weight:600;color:var(--warn)}
/* răspunsul clientului (06.11): punct + cuvinte, ca celelalte stări; gol în spațiile fără link de client */
.post-client{grid-area:client;min-width:0;overflow:hidden}
.post-client:empty{display:none}
.post-client .st{white-space:normal}
.pl-client{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:var(--t-s)}
.pl-client .pl-note{overflow-wrap:anywhere}
.plats{grid-area:plats;align-self:end;display:flex;margin:0 0 0 -4px}
.plat{position:relative;width:23px;height:23px;display:grid;place-items:center;border-radius:6px;color:var(--faint);opacity:.7;transition:color .15s,opacity .15s,transform .2s var(--spring)}
.plat svg{width:14px;height:14px}
/* platformă manuală (Radu postează de pe telefon): un telefon mic în colț */
.plat.manual::after{content:'';position:absolute;right:0;bottom:0;width:6px;height:9px;border-radius:2px;border:1.5px solid var(--accent);background:var(--surface);transition:background-color .2s}
.post:hover .plat.manual::after{background:var(--sunk)}
.plat.manual:not([aria-pressed=true])::after{border-color:var(--faint)}
.plat[aria-pressed=true]{color:var(--fg);opacity:1}
.plat:hover{background:var(--sunk)}
.plat:active{transform:scale(.8)}
.posted{grid-area:posted;display:inline-flex;align-items:center;gap:6px;font-size:var(--t-s);color:var(--muted);cursor:pointer;justify-self:start;padding:2px 0}
.posted input{appearance:none;margin:0;width:16px;height:16px;border-radius:4px;border:1.5px solid var(--faint);display:grid;place-items:center;cursor:pointer;transition:background-color .15s,border-color .15s,transform .25s var(--spring)}
.posted input:checked{background:var(--ok);border-color:var(--ok);transform:scale(1.08)}
.posted input:checked::after{content:'';width:9px;height:5px;border-left:2px solid var(--surface);border-bottom:2px solid var(--surface);transform:translateY(-1px) rotate(-45deg)}
.post.is-posted{background:transparent}
.post.is-posted .post-cover{filter:grayscale(.85);opacity:.55}
.post.is-posted .post-title,.post.is-posted .post-time{color:var(--muted)}
.post.is-posted .posted{color:var(--ok)}
.post.is-next{box-shadow:inset 0 0 0 1.5px var(--accent)}
.post.is-next .post-time{color:var(--accent-text)}
.post.is-overdue .post-time{color:var(--warn)}
.post.is-overdue .post-late{display:block}
.post.is-lifted{opacity:.2;filter:grayscale(1)}
.post.will-move{opacity:.32;filter:grayscale(1);box-shadow:inset 0 0 0 1.5px var(--accent)}
.post.will-swap{transform:translateY(6px) rotate(-1.6deg) scale(.96);opacity:.7}
.post.incoming,.post.landing{opacity:0!important;transition:none}
.post.incoming{position:absolute;inset:0}
.ghost{container-type:inline-size}
@container (max-width:176px){
  .post{grid-template-columns:40px minmax(0,1fr) auto auto;grid-template-rows:auto auto auto 1fr auto;grid-template-areas:"cover time time more" "cover title title title" "cover late late late" "cover client client client" "plats plats posted pin";column-gap:7px;padding:6px}
  .post-cover{width:40px;height:71px;border-radius:5px}
  .plats{margin:5px 0 0 -3px}
  .plat{width:20px;height:22px}
  .posted{margin-top:5px;justify-self:end;padding:3px 2px}
  .posted span{display:none}
  .post .pin{margin-top:4px;width:22px}
  .post .more{width:22px}
}

/* ---------- vederea Lună ---------- */
.month{display:flex;flex-direction:column;gap:6px;min-height:100%}
.mweek,.mgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.mweek span{font-size:var(--t-s);color:var(--muted);padding:0 8px}
.mgrid{grid-auto-rows:minmax(112px,1fr);flex:1;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.mcell{position:relative;min-width:0;background:var(--bg);padding:6px;display:flex;flex-direction:column;gap:6px;cursor:pointer;outline:none;transition:transform .24s var(--spring),background-color .15s,box-shadow .2s}
.mcell:hover{background:var(--sunk)}
.mcell:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}
.mcell.is-out{background:var(--sunk)}
.mcell.is-out .mhead,.mcell.is-out .minis{opacity:.5}
.mcell.is-past:not(.is-today) .minis{opacity:.6}
.mcell.is-past:not(.is-today) .mnum{color:var(--muted)}
.mcell.is-off{background-image:repeating-linear-gradient(135deg,var(--sunk) 0 6px,transparent 6px 13px)}
.mcell.is-today .mnum{color:var(--accent-text)}
.mhead{display:flex;align-items:baseline;justify-content:space-between;gap:4px}
.mnum{font-size:var(--t-s);font-weight:600;font-variant-numeric:tabular-nums}
.mcount{font-size:var(--t-s);color:var(--muted);font-variant-numeric:tabular-nums}
.mcell.is-full .mcount{color:var(--fg)}
.minis{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start}
.mini,.mfree{width:38px;display:flex;flex-direction:column;align-items:center;gap:3px}
.mini{position:relative;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation;transition:opacity .2s,filter .2s,transform .2s var(--spring)}
.mini img{width:36px;height:64px;border-radius:5px;object-fit:cover;background:var(--sunk);pointer-events:none}
.mini:hover{transform:translateY(-2px)}
.mt{font-size:var(--t-s);font-variant-numeric:tabular-nums;color:var(--muted);line-height:1.1}
.mcl{position:absolute;top:3px;right:4px;width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 1.5px var(--surface);pointer-events:none}
.mini.is-next img{box-shadow:0 0 0 2px var(--accent)}
.mini.is-next .mt{color:var(--accent-text)}
.mini.is-posted img{filter:grayscale(.85);opacity:.55}
.mini.is-overdue .mt{color:var(--warn)}
.mini.is-lifted,.mini.will-move{opacity:.25;filter:grayscale(1)}
.mini.incoming,.mini.landing{opacity:0!important;transition:none}
.mfree i{width:36px;height:64px;border-radius:5px;border:1.5px dashed var(--line)}
.mfree .mt{color:var(--faint)}
.mmore{align-self:center;font-size:var(--t-s);font-weight:600;color:var(--muted);padding:0 2px}
body.is-dragging .mcell:not(.is-out){box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}
.mcell.is-over{background:var(--wash)!important;box-shadow:inset 0 0 0 2px var(--accent)!important;transform:scale(1.04);z-index:2}
.mcell .ring{border-radius:10px}
#daySheet{width:min(560px,calc(100vw - 32px))}
.sheet-day{padding:0}
.sheet-day .day-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.dlg-head h2 .day-tag,.dlg-head h2 .day-off{vertical-align:middle;margin-left:6px}

/* ---------- strat pentru tragere și zboruri ---------- */
#layer{position:fixed;inset:0;pointer-events:none;z-index:80;overflow:hidden}
.ghost{position:absolute;left:0;top:0;transform-origin:50% 40%;border-radius:10px;will-change:transform;box-shadow:var(--lift)}
.ghost-clip{overflow:hidden;box-shadow:var(--lift),0 0 0 2px var(--accent)}
.ghost-clip img{width:100%;height:100%;object-fit:cover}
.ghost .post{height:100%;width:100%;background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--accent);opacity:1;filter:none}
.flyer{position:absolute;left:0;top:0;transform-origin:0 0;border-radius:6px;object-fit:cover;will-change:transform,opacity;box-shadow:var(--lift)}
body.is-dragging,body.is-dragging *{cursor:grabbing!important}
body.is-dragging{user-select:none;-webkit-user-select:none}

#trash{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:79;display:flex;flex-direction:column;align-items:center;gap:8px;translate:-50% 0;transform:translateY(150%) scale(.8);opacity:0;transition:transform .35s var(--spring),opacity .2s;pointer-events:none}
body.drag-post #trash{transform:none;opacity:1;pointer-events:auto}
.trash-can{width:64px;height:64px;border-radius:50%;background:var(--surface);border:1px solid var(--line);color:var(--fg);display:grid;place-items:center;box-shadow:var(--lift);transition:background-color .2s,transform .3s var(--spring),border-color .2s}
.trash-can svg{width:26px;height:26px;overflow:visible}
.trash-can .lid{transform-origin:20px 6px;transition:transform .3s var(--spring)}
#trash span{font-size:var(--t-s);font-weight:600;color:var(--muted);background:var(--surface);padding:3px 8px;border-radius:6px}
#trash.is-over .trash-can{background:var(--warn);border-color:var(--warn);transform:scale(1.18);color:var(--surface)}
#trash.is-over .lid{transform:rotate(28deg) translate(1px,-2px)}
#trash.is-over span{color:var(--fg)}

/* ---------- mesajele scurte ---------- */
.toasts-in{position:fixed;left:50%;bottom:20px;translate:-50% 0;display:flex;flex-direction:column;gap:8px;z-index:90;width:min(460px,calc(100vw - 32px));pointer-events:none}
#toasts{position:fixed;inset:auto auto calc(20px + env(safe-area-inset-bottom)) 50%;margin:0;border:0;padding:0;background:transparent;color:inherit;overflow:visible;height:auto;translate:-50% 0;display:flex;flex-direction:column;gap:8px;z-index:90;width:min(460px,calc(100vw - 32px));pointer-events:none}
.toast{pointer-events:auto;background:var(--fg);color:var(--bg);border-radius:10px;padding:10px 10px 10px 14px;display:flex;gap:12px;align-items:center;line-height:1.35;box-shadow:var(--lift)}
.toast p{flex:1}
.toast button{color:inherit;font-weight:600;padding:6px 8px;border-radius:7px;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}
.toast button:hover{background:color-mix(in srgb,var(--bg) 14%,transparent)}
.toast.multi{flex-wrap:wrap;row-gap:8px}
.toast.multi p{flex:1 1 100%}
.toast-acts{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}
.toast button.pri{background:var(--accent);color:var(--on-accent);padding:8px 12px;text-decoration:none}
.toast button.pri:hover{filter:brightness(1.06)}
.toast.err{background:var(--warn);color:var(--surface)}

/* ---------- ferestre ---------- */
.dlg-head{display:flex;align-items:center;gap:12px;padding:18px 20px 6px;position:sticky;top:0;background:var(--surface);z-index:2}
.dlg-head h2{font-size:var(--t-l);font-weight:600;line-height:1.2;flex:1}
.x{width:36px;height:36px;border-radius:8px;display:grid;place-items:center;color:var(--muted);flex:none;transition:background-color .15s,color .15s}
.x:hover{background:var(--sunk);color:var(--fg)}
.x svg{width:18px;height:18px}
.dlg-body{padding:10px 20px 20px}
.dlg-note{color:var(--muted);font-size:var(--t-s);max-width:52ch}
.more-box summary{display:flex;align-items:center;gap:8px;min-height:32px;cursor:pointer;list-style:none;font-weight:600;color:var(--muted)}
.more-box summary::-webkit-details-marker{display:none}
.more-box summary::before{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .15s}
.more-box[open] summary::before{transform:rotate(45deg)}
.more-box[open] summary{margin-bottom:8px}

/* playerul */
#player{width:min(980px,calc(100vw - 32px))}
.pl{display:grid;grid-template-columns:auto minmax(0,1fr)}
.pl-video{height:min(84dvh,760px);aspect-ratio:9/16;background:#000;display:block;border-radius:14px 0 0 14px}
.pl-info{padding:22px 24px 24px;display:flex;flex-direction:column;gap:16px;max-height:min(84dvh,760px);overflow:auto;position:relative}
.pl-info .x{position:absolute;right:12px;top:12px}
.pl-num{font-size:var(--t-l);font-weight:600;color:var(--accent-text);line-height:1}
.pl-title{font-size:var(--t-l);font-weight:600;line-height:1.2;margin-top:-10px;padding-right:40px}
.pl-tags{display:flex;gap:4px 12px;flex-wrap:wrap;align-items:center;color:var(--muted);font-size:var(--t-s)}
.pl-dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;font-size:var(--t-s)}
.pl-dl dt{color:var(--muted)}
.pl-dl dd{margin:0}
.pl-sched{font-size:var(--t-s);color:var(--muted)}
.pl-sched b{color:var(--fg);font-weight:600}
.pl-cap{background:var(--sunk);border-radius:10px;padding:12px 14px;line-height:1.5;white-space:pre-wrap}
.pl-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.pl-actions a{text-decoration:none;color:inherit}
.pl-fav{color:var(--accent-text);display:inline-flex;gap:4px;align-items:center}
.pl-fav svg{width:14px;height:14px}
.pl-promo{color:var(--accent-text);font-weight:600}
.pl-review{display:flex;flex-direction:column;gap:10px;padding:12px 14px;border-radius:10px;background:var(--sunk)}
.pl-review[data-r=approved]{background:transparent;box-shadow:inset 0 0 0 1px var(--line);padding:10px 12px;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}
.pl-rv-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pl-note{font-size:var(--t-s);color:var(--muted)}
.pl-rv-acts{display:flex;gap:8px;flex-wrap:wrap}
.pl-rv-acts .btn{min-height:36px;padding:0 12px}
.pl-why{display:flex;flex-direction:column;gap:8px;flex:1 1 100%}
.pl-why-acts{display:flex;gap:8px}
.note-ta,.pl-why textarea,#ibNote{width:100%;min-height:64px;resize:vertical;border-radius:8px;background:var(--surface);border:1px solid var(--line);color:var(--fg);padding:8px 10px;line-height:1.4}
.pl-why textarea:focus,#ibNote:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--wash)}
.pl-why textarea::placeholder,#ibNote::placeholder{color:var(--faint)}

/* regulile */
dialog.sheet{margin:0 0 0 auto;height:100dvh;max-height:100dvh;width:min(440px,100vw);max-width:100vw;border-radius:14px 0 0 14px}
.rows{display:flex;flex-direction:column}
.row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.row.col{flex-direction:column;align-items:stretch;gap:10px}
.lbl{font-weight:600}
.lbl small{display:block;color:var(--muted);font-size:var(--t-s);font-weight:400;margin-top:2px}
.ctl{display:flex;align-items:center;gap:8px}
.datepick{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px 0 10px;border-radius:8px;background:var(--sunk);font-weight:600;cursor:pointer;white-space:nowrap}
.datepick:hover{background:var(--line)}
.datepick:focus-within{box-shadow:0 0 0 2px var(--accent)}
.datepick svg{width:16px;height:16px;color:var(--muted)}
.datepick input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.stepper{display:flex;align-items:center;gap:4px;background:var(--sunk);border-radius:10px;padding:3px}
.stepper button{width:34px;height:34px;border-radius:7px;display:grid;place-items:center;font-size:var(--t-l);transition:background-color .15s,transform .15s var(--spring)}
.stepper button:hover{background:var(--surface)}
.stepper button:active{transform:scale(.88)}
.stepper button[disabled]{opacity:.3;pointer-events:none}
.stepper output{min-width:38px;text-align:center;font-weight:600;font-variant-numeric:tabular-nums}
.times{display:flex;flex-wrap:wrap;gap:8px}
.time{display:flex;align-items:center;gap:2px;background:var(--sunk);border-radius:8px;padding:3px 3px 3px 4px}
.time input{background:none;border:0;color:var(--fg);font-weight:600;font-variant-numeric:tabular-nums;padding:6px;width:64px;text-align:center}
.time input:focus{outline:none}
.time:focus-within{box-shadow:0 0 0 2px var(--accent)}
.time button{width:26px;height:26px;border-radius:6px;display:grid;place-items:center;color:var(--muted)}
.time button:hover{background:var(--surface);color:var(--fg)}
.time button svg{width:13px;height:13px}
.add-time{min-height:40px;padding:0 12px;border-radius:8px;border:1px dashed var(--muted);font-size:var(--t-s);font-weight:600;color:var(--muted)}
.add-time:hover{color:var(--fg);border-color:var(--fg)}
/* comutatoare cu mai multe alegeri (platformele): aceeași formă ca vederile */
.pills{display:inline-flex;flex-wrap:wrap;gap:2px;padding:3px;border-radius:10px;background:var(--sunk);align-self:flex-start}
.pill{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 10px;border-radius:7px;font-weight:600;color:var(--muted);transition:background-color .15s,color .15s}
.pill svg{width:15px;height:15px}
.pill[aria-pressed=true]{background:var(--surface);color:var(--fg);box-shadow:0 1px 2px rgba(0,0,0,.1)}
.pill-man .man{display:none}
.pill-man[aria-pressed=true] .man{display:inline-flex;color:var(--accent-text)}
.pill-man .man svg{width:15px;height:15px}
.lbl small svg{display:inline-block;width:13px;height:13px;vertical-align:-2px;color:var(--accent-text)}
.week-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.week-days button{min-height:40px;border-radius:8px;background:var(--sunk);font-weight:600;text-align:center}
.week-days button[aria-pressed=true]{background-image:repeating-linear-gradient(135deg,var(--line) 0 4px,transparent 4px 8px);color:var(--muted);text-decoration:line-through}
.switch{width:44px;height:26px;border-radius:13px;background:var(--line);position:relative;flex:none;transition:background-color .2s}
.switch::after{content:'';position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:var(--surface);box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .3s var(--spring)}
.switch[aria-checked=true]{background:var(--accent)}
.switch[aria-checked=true]::after{transform:translateX(18px)}
.presets{display:flex;gap:6px}
.sheet-foot{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:18px 0 4px}
.reflow-box{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px;border-radius:10px;background:var(--wash)}
.reflow-box p{font-weight:600}
.reflow-box small{color:var(--muted);font-size:var(--t-s)}

/* export */
#exportDlg{width:min(560px,calc(100vw - 32px))}
.exp-pre{background:var(--sunk);border-radius:8px;padding:12px 14px;max-height:46dvh;overflow:auto;white-space:pre-wrap;font:inherit;font-size:var(--t-s);line-height:1.6;font-variant-numeric:tabular-nums;margin:4px 0 16px}
.exp-actions{display:flex;flex-wrap:wrap;gap:8px}

/* mută în / alege clipul */
#moveto{width:min(620px,calc(100vw - 32px))}
.mv-day{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.mv-day h3{font-size:var(--t-s);width:96px;flex:none;color:var(--muted)}
.mv-day h3 b{color:var(--fg);font-weight:600}
.mv-slots{display:flex;flex-wrap:wrap;gap:6px}
.mv-slot{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 12px;border-radius:8px;background:var(--sunk);font-size:var(--t-s);max-width:240px;transition:background-color .15s,transform .15s var(--spring)}
.mv-slot b{font-variant-numeric:tabular-nums}
.mv-slot span{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mv-slot.free{box-shadow:inset 0 0 0 1px var(--accent)}
.mv-slot.free span{color:var(--accent-text)}
.mv-slot:hover{background:var(--line)}
.mv-slot:active{transform:scale(.95)}
.mv-slot[disabled]{opacity:.35;pointer-events:none}
#picker{width:min(720px,calc(100vw - 32px));max-height:80vh;overflow:hidden}
#picker[open]{display:flex;flex-direction:column}
#picker .dlg-head{position:static;padding:18px 20px 8px}
.pk-grab{display:none}
.pk-body{overflow:auto;overscroll-behavior:contain;padding:2px 20px 20px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.pk-h{font-size:var(--t-s);font-weight:600;color:var(--muted);margin:4px 0 12px}
.pk-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px 12px}
.pk{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;text-align:left;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation}
.pk-media{position:relative;display:block;width:100%;aspect-ratio:9/16;border-radius:8px;overflow:hidden;background:var(--sunk);transition:transform .28s var(--spring),box-shadow .2s}
.pk-media img,.pk-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.pk-media video{opacity:0;transition:opacity .2s}
.pk-media video.on{opacity:1}
.pk:hover .pk-media{transform:translateY(-3px);box-shadow:0 0 0 2px var(--accent)}
.pk:focus-visible{outline:none}
.pk:focus-visible .pk-media{box-shadow:0 0 0 2px var(--accent)}
.pk:active .pk-media{transform:scale(.95)}
.pk b{font-size:var(--t-s);font-weight:600;line-height:1.25;max-width:100%}
.pk .chip{pointer-events:none}
.pk-note{font-size:var(--t-s);color:var(--muted);line-height:1.3}
.pk-done{font-weight:600;margin:6px 0 4px}
.pk-toggle{margin-top:20px;display:inline-flex;align-items:center;gap:6px;padding:8px 2px;font-size:var(--t-s);font-weight:600;color:var(--muted);border-radius:8px}
.pk-toggle:hover{color:var(--fg)}
.pk-toggle svg{width:14px;height:14px;transition:transform .25s var(--spring)}
.pk-toggle[aria-expanded=true] svg{transform:rotate(90deg)}
.pk-list{display:flex;flex-direction:column;gap:2px;margin-top:4px}
.pk-row{display:flex;align-items:center;gap:12px;padding:7px 8px;border-radius:8px;transition:background-color .15s}
.pk-row:hover{background:var(--sunk)}
.pk-row img{width:34px;height:60px;border-radius:5px;object-fit:cover;flex:none;filter:grayscale(.6);opacity:.8}
.pk-row-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.pk-row-txt b{font-size:var(--t-s);font-weight:600}
.pk-row-txt small{font-size:var(--t-s);color:var(--muted)}
.pk-row .btn{min-height:32px;padding:0 12px;flex:none}

/* meniul unei postări */
.menu{position:fixed;z-index:85;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:4px;min-width:210px;box-shadow:var(--lift)}
.menu button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 11px;border-radius:7px;text-align:left}
.menu button:hover,.menu button:focus-visible{background:var(--sunk);outline:none}
.menu svg{width:16px;height:16px;color:var(--muted)}
.menu .danger{color:var(--warn)}
.menu .danger svg{color:var(--warn)}

/* ---------- desktop ---------- */
@media (min-width:960px){
  body.app-on{overflow:hidden}
  #app:not([hidden]){display:flex;flex-direction:column;height:100dvh}
  .bar{flex:none}
  .deck{display:grid;grid-template-columns:316px minmax(0,1fr);flex:1;min-height:0}
  body.ib-on .deck{display:none}
  .rail{overflow-y:auto;border-right:1px solid var(--line);padding:16px 18px 40px 20px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
  .board{display:flex;flex-direction:column;overflow:hidden}
  .cal{flex:1;overflow:auto;padding:2px 20px 20px 16px;align-items:stretch;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
  .cal.week{display:grid;grid-template-columns:repeat(7,minmax(128px,1fr));gap:6px}
  .cal.week .day{padding:8px 6px 12px}
  .rail-drop{position:fixed;left:8px;top:calc(var(--bar-h) + var(--ib-h, 0px) + 8px);width:300px;bottom:8px;inset-inline-end:auto}
  .inbox{flex:none}
  .inbox[data-state=open]{flex:1;min-height:0;display:flex;flex-direction:column}
  .ib-stage{flex:1;min-height:0;grid-template-columns:auto minmax(300px,520px) 64px;grid-template-rows:minmax(0,1fr)}
  .ib-player{height:min(calc(100dvh - var(--bar-h) - 100px),960px)}
  .ib-info{overflow:auto;padding-right:6px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
  .ib-queue{max-height:100%;overflow:auto;scrollbar-width:none}
  #statsBtn{order:8}
  .late{white-space:normal;max-width:150px;line-height:1.25;text-align:left}
  .stats:not([hidden]){flex:1;min-height:0;display:flex;flex-direction:column;padding:18px 24px}
  .sx-head,.sx-issues,.sx-plats,.sx-legend,.sx-empty{flex:none}
  .sx-wrap{flex:0 1 auto;min-height:0}
}
@media (min-width:960px) and (max-width:1320px){
  .hide-md{display:none}
  .btn.squeeze{width:40px;padding:0}
  .next-title{max-width:150px}
}
@media (min-width:1321px) and (max-width:1599px){
  #clear{width:40px;padding:0}
  #clear span{display:none}
}

/* ---------- telefon ---------- */
@media (max-width:959px){
  :root{--bar-h:auto}
  .bar{flex-wrap:wrap;padding:10px 16px 12px;gap:8px}
  .brand{display:none}
  .apps{order:1;margin-left:-8px}
  .sync{order:2;margin-left:auto}
  .sync span{overflow:hidden;text-overflow:ellipsis}
  #statsBtn{order:2;flex:none;min-height:36px;padding:0 8px}
  #statsBtn svg{width:16px;height:16px}
  #soundBtn{order:2;margin:0 -8px 0 -6px}
  .next{order:3;flex:1 1 100%;margin:0;padding:8px 12px 8px 8px;background:var(--sunk);border-radius:10px}
  .next-title{max-width:none}
  .next-cd{margin-left:auto}
  .late{order:4;flex:1 1 100%;text-align:left;padding:2px}
  .actions{order:5;flex:1 1 100%;display:grid;grid-template-columns:1fr auto auto auto;gap:6px}
  #rulesBtn svg,#exportBtn svg{display:none}
  .actions .btn{padding:0 12px}
  .actions .btn-icon{padding:0}
  .hide-sm{display:none}
  .btn.squeeze-sm{width:40px;padding:0}
  .confirm{left:0;right:0;translate:0 -50%;justify-content:space-between}
  .rail{padding:16px 0 10px;border-bottom:1px solid var(--line)}
  .rail-head,.filters{padding:0 16px}
  .filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-bottom:12px}
  .filters::-webkit-scrollbar{display:none}
  .grid{display:flex;overflow-x:auto;gap:12px;padding:0 16px 6px;scrollbar-width:none;scroll-padding:0 16px}
  .grid::-webkit-scrollbar{display:none}
  .clip{flex:0 0 128px;min-width:0}
  .board-head{padding:16px 16px 10px;gap:10px 12px}
  .period{flex:1;justify-content:flex-end}
  #range{min-width:0}
  #range.big{font-size:var(--t-m)}
  .board-head .fill{margin-left:0;width:100%;order:9}
  .cal{flex-direction:column;gap:14px;padding:0 10px 120px}
  .cal.month{padding:0 8px 120px}
  .mweek span{padding:0;text-align:center}
  .mgrid{grid-auto-rows:minmax(72px,auto)}
  .mcell{padding:4px 2px 6px;gap:5px;align-items:center}
  .mhead{justify-content:center}
  .mcount{display:none}
  .minis{gap:3px;justify-content:center}
  .mini,.mfree{width:17px}
  .mini img,.mfree i{width:17px;height:30px;border-radius:3px}
  .mini .mt,.mfree .mt{display:none}
  .mini.is-promo::after{top:27px;width:11px;margin-left:-5.5px}
  .day{padding:8px 6px 12px}
  .day-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:8px}
  .rail-drop{inset:6px 10px}
  .pl{grid-template-columns:1fr}
  .pl-video{height:min(64dvh,620px);width:auto;max-width:100%;margin:0 auto;border-radius:14px 14px 0 0}
  .pl-info{max-height:none;padding:20px 16px 22px}
  .pl-info .x{position:fixed;right:22px;top:22px;background:var(--surface)}
  dialog.sheet{margin:auto 0 0 0;width:100vw;height:auto;max-height:90dvh;border-radius:14px 14px 0 0}
  #picker{margin:auto 0 0 0;width:100vw;max-width:100vw;max-height:85dvh;border-radius:14px 14px 0 0}
  #picker .dlg-head{padding:6px 16px 8px;touch-action:none}
  .pk-grab{display:block;width:40px;height:4px;border-radius:2px;background:var(--line);margin:9px auto 2px;touch-action:none}
  .pk-body{padding:2px 16px calc(20px + env(safe-area-inset-bottom))}
  .pk-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 10px}
  .mv-day{flex-direction:column;align-items:flex-start;gap:8px}
  .mv-day h3{width:auto}
  .lib-tools{display:flex;overflow-x:auto;scrollbar-width:none;gap:8px;padding:0 16px;margin:0 0 16px}
  .lib-tools::-webkit-scrollbar{display:none}
  .search{flex:0 0 176px}
  .sel{flex:0 0 auto}
  .sel select{width:auto;max-width:200px}
}

/* ---------- „De revizuit” ---------- */
.inbox{position:relative;border-bottom:1px solid var(--line);background:var(--bg)}
.ib-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none;box-shadow:0 0 0 4px var(--wash);animation:ibPulse 2.2s ease-in-out infinite}
@keyframes ibPulse{50%{box-shadow:0 0 0 7px transparent}}
.ib-strip{display:flex;align-items:center;gap:12px;padding:8px 20px;min-height:52px}
.ib-strip p{font-size:var(--t-s);color:var(--muted)}
.ib-strip p b{font-size:var(--t-m);font-weight:600;color:var(--accent-text);margin-right:2px}
.ib-strip > p:has(b){color:var(--fg);font-weight:600}
.ib-minis{display:flex;gap:4px}
.ib-minis img{width:20px;height:36px;border-radius:4px;object-fit:cover}
.ib-open{margin-left:auto}
.ib-strip .ib-open.btn-primary{background:var(--surface);border-color:var(--line);color:var(--fg)}
.ib-open svg{width:15px;height:15px}
.ib-empty{color:var(--muted)}
.ib-empty svg{width:18px;height:18px;flex:none;padding:3px;border-radius:50%;background:var(--sunk);color:var(--ok);box-sizing:content-box}

.ib-head{display:flex;align-items:center;gap:12px;padding:12px 20px 0;flex:none}
.ib-h{font-size:var(--t-l);font-weight:600;white-space:nowrap}
.ib-n{color:var(--accent-text);margin-right:2px;display:inline-block}
.ib-lot{font-size:var(--t-s);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.ib-nav{display:flex;align-items:center;gap:2px;margin-left:auto}
.ib-nav .btn-icon{width:36px;min-height:36px;background:none;border-color:transparent;color:var(--muted)}
.ib-nav .btn-icon:hover{background:var(--sunk);color:var(--fg)}
.ib-nav .btn-icon svg{width:16px;height:16px}
.ib-pos{font-size:var(--t-s);font-weight:600;color:var(--muted);min-width:50px;text-align:center;font-variant-numeric:tabular-nums}
.ib-fold{min-height:36px;padding:0 10px}
.ib-fold svg{width:15px;height:15px}

.ib-stage{display:grid;gap:28px;justify-content:center;padding:16px 20px 20px}
.ib-player{position:relative;aspect-ratio:9/16;border-radius:12px;overflow:hidden;background:#000}
.ib-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;display:block}
.ib-sound{position:absolute;left:50%;top:50%;translate:-50% -50%;display:flex;align-items:center;gap:8px;padding:12px 16px 12px 14px;border-radius:12px;background:var(--over);font-weight:600;color:#fff;white-space:nowrap;box-shadow:0 0 0 0 rgba(236,106,44,.5);animation:ibCall 1.8s ease-out infinite;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.ib-sound svg{width:20px;height:20px;color:var(--accent)}
@keyframes ibCall{70%{box-shadow:0 0 0 14px rgba(236,106,44,0)}100%{box-shadow:0 0 0 0 rgba(236,106,44,0)}}

.ib-info{display:flex;flex-direction:column;gap:14px;min-width:0;padding-top:2px}
.ib-title-row{display:flex;align-items:baseline;gap:10px}
.ib-num{font-size:var(--t-l);font-weight:600;color:var(--accent-text);flex:none}
.ib-title{font-size:var(--t-l);font-weight:600;line-height:1.2}
.ib-tags{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center;font-size:var(--t-s);color:var(--muted)}
.ib-tags .chip{cursor:default}
.ib-dur{font-variant-numeric:tabular-nums;color:var(--fg);font-weight:600}
.jury{font-size:var(--t-s);font-weight:600;color:var(--accent-text);font-variant-numeric:tabular-nums;white-space:nowrap}
.jury.low{color:var(--muted)}
.jury-sc{display:block;font-variant-numeric:tabular-nums}
.jury-why{display:block;margin-top:4px;color:var(--muted);line-height:1.45}
.ib-acts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:2px}
.ib-btn{min-height:52px;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600;transition:background-color .15s,border-color .15s,color .15s,transform .16s var(--spring)}
.ib-btn svg{width:20px;height:20px;flex:none}
.ib-btn:active{transform:scale(.95)}
.ib-yes{background:var(--accent);color:var(--on-accent)}
.ib-yes:hover{filter:brightness(1.06)}
.ib-no{border:1px solid var(--line);background:var(--surface);color:var(--fg)}
.ib-no:hover{border-color:var(--warn);color:var(--warn)}
.ib-no[aria-pressed=true]{border-color:var(--warn);color:var(--warn)}
.ib-btn kbd{font-size:var(--t-s);line-height:1;padding:2px 5px;border-radius:4px;border:1px solid currentColor;opacity:.55}
.ib-why-open{align-self:flex-start;font-size:var(--t-s);font-weight:600;color:var(--fg);padding:2px 0}
.ib-why-open span{color:var(--muted);font-weight:400;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line);margin-left:4px}
.ib-why-open:hover span{color:var(--fg)}
.ib-why-box{display:flex;flex-direction:column;gap:8px}
.ib-why-box label{font-size:var(--t-s);font-weight:600}
.ib-why-box label small{color:var(--muted);font-weight:400;margin-left:4px;font-size:var(--t-s)}
.ib-why-acts{display:none;gap:8px;align-items:center;flex-wrap:wrap}
.ib-info[data-mode=reject] .ib-why-acts{display:flex}
.ib-hint,.ib-keys{display:none}
.ib-dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;font-size:var(--t-s)}
.ib-dl dt{color:var(--muted)}
.ib-dl dd{margin:0}
.ib-cap h4{font-size:var(--t-s);font-weight:600;color:var(--muted);margin:0 0 8px}
.ib-cap p{background:var(--sunk);border-radius:10px;padding:12px 14px;white-space:pre-wrap;line-height:1.5}
.ib-queue{list-style:none;margin:0;padding:2px;display:flex;flex-direction:column;gap:8px}
.ib-q{position:relative;display:block;width:56px;aspect-ratio:9/16;border-radius:6px;overflow:hidden;opacity:.5;transition:opacity .15s,transform .2s var(--spring),box-shadow .2s}
.ib-q img{width:100%;height:100%;object-fit:cover}
.ib-q span{position:absolute;left:5px;top:4px;font-size:var(--t-s);font-weight:600;color:#fff;text-shadow:0 1px 5px rgba(0,0,0,.7)}
.ib-q:hover{opacity:.85}
.ib-q.on{opacity:1;box-shadow:0 0 0 2px var(--accent);transform:scale(1.04)}

/* ieșirea din inbox: ștampila + zborul */
.ib-fly{position:absolute;border-radius:12px;overflow:hidden;box-shadow:var(--lift);transform-origin:50% 50%;will-change:transform,opacity}
.ib-fly canvas,.ib-fly img{width:100%;height:100%;object-fit:cover;display:block}
.ib-fly.no canvas,.ib-fly.no img{filter:grayscale(.85) brightness(.55)}
.ib-stamp{position:absolute;left:50%;top:44%;width:150px;margin:-62px 0 0 -75px;display:flex;flex-direction:column;align-items:center;gap:10px;opacity:0}
.ib-stamp i{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 9px var(--wash),var(--lift)}
.ib-stamp svg{width:54px;height:54px}
.ib-stamp b{font-size:var(--t-l);font-weight:600;padding:6px 12px;border-radius:10px;background:var(--accent);color:var(--on-accent)}
.ib-fly.no .ib-stamp i,.ib-fly.no .ib-stamp b{background:var(--surface);color:var(--fg)}
.spark{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--accent);pointer-events:none}
.spark.c{background:var(--fg);width:6px;height:6px}

@media (max-width:959px){
  .ib-strip{padding:10px 16px;min-height:50px;gap:10px}
  .ib-minis{display:none}
  .ib-head{padding:12px 16px 0;flex-wrap:wrap;gap:4px 10px}
  .ib-lot{order:5;flex:1 1 100%;padding-left:20px}
  .ib-fold{padding:0;width:36px}
  .ib-fold span{display:none}
  .ib-nav{margin-left:auto}
  .ib-stage{display:flex;flex-direction:column;padding:10px 16px 22px;gap:12px}
  .ib-player{width:min(100%,calc((100svh - 252px) * 9 / 16));margin:0 auto}
  .ib-queue,.ib-btn kbd{display:none}
  .ib-info{gap:12px}
}

/* ---------- „Cifre” ---------- */
body.st-on .inbox,body.st-on .deck{display:none!important}
.stats{padding:18px 24px 24px;min-width:0}
.sx-head{display:flex;align-items:baseline;gap:6px 14px;flex-wrap:wrap}
.sx-head h2{font-size:var(--t-l);font-weight:600}
.sx-upd{color:var(--muted);font-size:var(--t-s)}
.sx-close{margin-left:auto;align-self:center;min-height:36px;padding:0 12px 0 8px}
.sx-issues{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:var(--t-s);color:var(--muted);margin-top:8px}
.sx-issues span{cursor:help}
.sx-issues span::before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;box-shadow:inset 0 0 0 1.5px currentColor;margin-right:6px;vertical-align:1px}
.sx-plats{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0 32px;margin:12px 0 18px}
.sx-plat{padding:14px 0;border-bottom:1px solid var(--line);min-width:0}
.sx-plat header{display:flex;align-items:center;gap:8px;font-size:var(--t-s);color:var(--muted);margin-bottom:10px}
.sx-plat header b{color:var(--fg);font-weight:600}
.sx-pi{display:inline-grid;place-items:center}
.sx-pi svg{width:16px;height:16px}
.sx-nums{display:flex;gap:12px 28px;flex-wrap:wrap}
.sx-num{display:flex;flex-direction:column;gap:2px;min-width:0}
.sx-num strong{font-size:var(--t-l);font-weight:600;font-variant-numeric:tabular-nums}
.sx-num span{font-size:var(--t-s);color:var(--muted);line-height:1.3}
.sx-num em{display:block;font-style:normal;color:var(--accent-text);font-weight:600;white-space:nowrap}
.sx-num small{display:block;font-size:var(--t-s);color:var(--faint)}
.sx-wrap{border-radius:10px;box-shadow:inset 0 0 0 1px var(--line);overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.sx-t{width:100%;border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums}
.sx-t th{position:sticky;top:0;z-index:1;background:var(--bg);padding:0;font-size:var(--t-s);font-weight:600;color:var(--muted);text-align:right;white-space:nowrap;border-bottom:1px solid var(--line)}
.sx-t thead tr:first-child th{height:30px}
.sx-t thead tr:nth-child(2) th{top:30px}
.sx-t th.grp{padding:8px 10px 0;text-align:center;color:var(--faint);border-bottom:0}
.sx-t th button{display:flex;align-items:center;justify-content:flex-end;gap:5px;width:100%;padding:8px 10px;color:inherit;font:inherit;transition:color .15s}
.sx-t th.l button{justify-content:flex-start}
.sx-t th button:hover,.sx-t th[aria-sort]{color:var(--fg)}
.sx-t th .sx-pi svg{width:15px;height:15px}
.ar{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:0;transition:transform .25s var(--spring),opacity .15s}
.sx-t th button:hover .ar{opacity:.4}
.sx-t th[aria-sort] .ar{opacity:1}
.sx-t th[aria-sort=ascending] .ar{transform:rotate(180deg)}
.sx-t td{padding:7px 10px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;font-size:var(--t-s);transition:background-color .15s}
.sx-t tbody tr:last-child td{border-bottom:0}
.sx-t tbody tr:hover td{background:var(--sunk)}
.sx-t td.n{font-weight:600}
.sx-t td.g,.sx-kv dd.g,.sx-pv b.g{color:var(--accent-text)}
.sx-t td.w,.sx-kv dd.w,.sx-pv b.w{color:var(--faint)}
.sx-clip{text-align:left!important;min-width:280px}
.sx-cl{display:flex;align-items:center;gap:10px}
.sx-open{display:flex;align-items:center;gap:10px;text-align:left;min-width:0;border-radius:8px}
.sx-open img{width:30px;height:53px;border-radius:4px;object-fit:cover;background:var(--sunk);flex:none;transition:transform .25s var(--spring)}
.sx-open:hover img{transform:scale(1.06)}
.sx-n{font-weight:600;color:var(--muted);flex:none}
.sx-t .sx-tt{font-weight:600;max-width:230px;overflow:hidden;text-overflow:ellipsis}
.sx-open:hover .sx-tt{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line)}
.sx-links{display:flex;gap:2px;margin-left:auto;padding-left:8px}
.sx-ln{width:28px;height:28px;display:grid;place-items:center;border-radius:7px;color:var(--muted);transition:color .15s,background-color .15s}
.sx-ln:hover{color:var(--fg);background:var(--sunk)}
.sx-ln svg{width:15px;height:15px}
.sx-style{text-align:left!important;color:var(--muted);max-width:170px;overflow:hidden;text-overflow:ellipsis}
.sx-date{text-align:left!important;color:var(--muted)}
.sx-legend{font-size:var(--t-s);color:var(--muted);margin-top:12px}
.sx-legend .g{color:var(--accent-text);font-weight:600}
.sx-legend .w{color:var(--faint);font-weight:600}
.sx-empty{margin-top:18px;padding:24px 0;color:var(--muted);display:flex;flex-direction:column;align-items:flex-start;gap:14px;max-width:520px}
/* pe cartonașul din librărie */
.clip-mx{display:flex;flex-wrap:wrap;gap:2px 10px}
.mx{display:inline-flex;align-items:center;gap:4px;font-size:var(--t-s);color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.mx svg{width:12px;height:12px;opacity:.75}
.mx.g{color:var(--accent-text);font-weight:600}
.mx.w{color:var(--faint)}
/* în player */
.pl-mx{display:flex;flex-direction:column;padding:12px 14px 6px;border-radius:10px;background:var(--sunk)}
.pl-mx h3{display:flex;align-items:baseline;gap:8px;font-size:var(--t-s);font-weight:600;color:var(--muted);margin:0 0 4px}
.pl-mx h3 small{font-weight:400;font-size:var(--t-s);color:var(--faint)}
.pmx-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px 12px;padding:9px 0;border-top:1px solid var(--line)}
.pl-mx h3 + .pmx-row{border-top:0}
.pmx-p{display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:var(--t-s);color:var(--fg);text-decoration:none;border-radius:6px}
.pmx-p svg{width:15px;height:15px;flex:none}
a.pmx-p svg:last-child{width:11px;height:11px;color:var(--muted)}
a.pmx-p:hover span{text-decoration:underline;text-underline-offset:3px}
.pmx-v{justify-self:end;font-size:var(--t-s);color:var(--muted);white-space:nowrap}
.pmx-v b{font-weight:600;color:var(--fg);margin-right:3px;font-variant-numeric:tabular-nums}
.pmx-d{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:3px 12px;font-size:var(--t-s);color:var(--muted)}
.pmx-d b{color:var(--fg);font-weight:600}
.pmx-pend{color:var(--faint)}

@media (max-width:959px){
  .sx-head h2{order:1}
  .sx-close{order:2}
  .sx-upd{order:3;flex-basis:100%}
  .stats{padding:16px 16px 120px}
  .sx-plats{grid-template-columns:1fr;margin:10px 0 16px}
  .sx-nums{gap:12px 22px}
  .sx-num small{max-width:19ch}
  .sx-sort{display:inline-flex;margin:0 0 12px}
  .sx-sort select{width:auto;max-width:100%}
  .sx-cards{display:flex;flex-direction:column}
  .sx-card{padding:12px 0 14px;border-bottom:1px solid var(--line)}
  .sx-card .sx-open{width:100%;gap:12px}
  .sx-card .sx-open img{width:36px;height:64px}
  .sx-ct{display:flex;flex-direction:column;gap:2px;min-width:0}
  .sx-card .sx-tt{font-weight:600}
  .sx-card .sx-n{margin-right:2px}
  .sx-meta{font-size:var(--t-s);color:var(--muted)}
  .sx-pv{display:flex;flex-wrap:wrap;gap:4px 14px;margin:10px 0 12px}
  .sx-pv a,.sx-pv span{display:inline-flex;align-items:center;gap:6px;min-height:32px;font-size:var(--t-s);color:var(--fg);text-decoration:none}
  .sx-pv svg{width:14px;height:14px}
  .sx-pv svg:last-child:not(:first-child){width:11px;height:11px;color:var(--muted)}
  .sx-pv b{font-weight:600;font-variant-numeric:tabular-nums}
  .sx-kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px;margin:0}
  .sx-kv dt{font-size:var(--t-s);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .sx-kv dd{margin:2px 0 0;font-weight:600;font-variant-numeric:tabular-nums}
}

/* Promovare (clipurile cu promo: true): un semn mic; regula „una din N” e în Reguli */
.post.is-promo::after{content:'Promo';position:absolute;left:7px;top:78px;width:50px;height:18px;display:grid;place-items:center;font-size:var(--t-s);font-weight:600;line-height:1;background:var(--accent);color:var(--on-accent);border-radius:0 0 6px 6px;pointer-events:none}
.post.is-promo.is-posted::after{filter:grayscale(.85);opacity:.55}
@container (max-width:176px){.post.is-promo::after{content:'';left:6px;top:73px;width:40px;height:4px;border-radius:0 0 4px 4px}}
.mini.is-promo::after{content:'';position:absolute;left:50%;top:58px;width:16px;height:3px;margin-left:-8px;border-radius:2px;background:var(--accent)}

/* ---------- spațiile (02.11.2026): comutatorul, rezervele, fișierul, postarea, linkul clientului, mutarea planului, Conectări ---------- */
.space-sel{flex:none;max-width:220px}
.space-sel select{min-height:36px;font-size:var(--t-m)}
#moreBtn{color:var(--muted)}
#app.switching .deck,#app.switching .inbox,#app.switching .actions,#app.switching #next,#app.switching #overdue,#app.switching #statsBtn{opacity:.4;pointer-events:none;transition:opacity .15s}
.noimg{position:absolute;inset:0;display:block;background:repeating-linear-gradient(135deg,var(--sunk) 0 7px,var(--bg) 7px 14px)}
.clip.is-hidden .clip-media::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 2px var(--faint);border-radius:8px;pointer-events:none}
.clip.is-photo .dur:empty,.pk-media .dur:empty{display:none}
.rail-head .btn{min-height:32px;padding:0 10px}
.rail-head .btn svg{width:16px;height:16px}

/* coperta postării: o imagine, numărul de fișiere din carusel sau ce lipsește */
.post-cover{display:block;position:relative;overflow:hidden}
.post-cover img{width:100%;height:100%;object-fit:cover}
.post-n{position:absolute;left:3px;right:3px;bottom:3px;font-size:var(--t-s);font-weight:600;line-height:1.15;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.7);text-align:right}
.post.is-empty .post-cover{background:repeating-linear-gradient(135deg,var(--sunk) 0 6px,var(--surface) 6px 12px);box-shadow:inset 0 0 0 1.5px var(--line)}
.post.is-empty .post-n{color:var(--muted);text-shadow:none;text-align:left;bottom:auto;top:50%;translate:0 -50%}
.mini .noimg{position:relative;width:36px;height:64px;border-radius:5px}
.next-cover:not(img){display:block;background:repeating-linear-gradient(135deg,var(--sunk) 0 5px,var(--bg) 5px 10px)}
.ghost-clip .noimg,.flyer:not(img){width:100%;height:100%}
.pk-media .noimg{position:absolute;inset:0}
.pk-row .noimg{position:relative;width:36px;height:64px;border-radius:5px;flex:none}

/* rezervele */
.drafts{margin:0 0 22px}
.drafts .rail-head{margin-bottom:8px}
.dr-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}
.draft{position:relative;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation;outline:none;display:flex;flex-direction:column;gap:6px}
.draft .clip-media{aspect-ratio:4/5}
.draft:hover .clip-media{transform:translateY(-3px)}
.draft:focus-visible .clip-media{outline:2px solid var(--accent);outline-offset:3px}
.draft.pressing .clip-media{transform:scale(.95)}
.draft.is-lifted{opacity:.3}
.dr-wait{position:absolute;left:8px;right:8px;top:50%;translate:0 -50%;text-align:center;font-size:var(--t-s);font-weight:600;color:var(--muted)}
.draft .clip-title{font-size:var(--t-s)}
.clip-title{overflow-wrap:anywhere}
.ws-client .clip-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media (min-width:960px){.dr-list{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* fișiere trase peste pagină */
#drop{position:fixed;inset:12px;z-index:95;border-radius:16px;border:2px dashed var(--accent);background:color-mix(in srgb,var(--bg) 88%,transparent);display:grid;place-items:center;padding:24px;text-align:center;pointer-events:none}
#drop b{font-size:var(--t-l);font-weight:600;color:var(--accent-text);max-width:28ch}

/* fereastra fișierului și a postării */
#fileDlg,#editor{width:min(640px,calc(100vw - 32px))}
#linkDlg,#shiftDlg,#spaceDlg{width:min(520px,calc(100vw - 32px))}
.fd,.ed{display:flex;flex-direction:column;gap:8px}
.fd .l,.ed .l{margin-top:6px}
.fd-fields{display:flex;flex-direction:column;gap:8px}
.fd-prev{display:flex;justify-content:center;background:var(--sunk);border-radius:10px;overflow:hidden}
.fd-media{max-height:42dvh;width:auto;max-width:100%;object-fit:contain;background:#000}
img.fd-media{background:transparent}
.fd-checks{display:flex;flex-wrap:wrap;gap:10px 20px;margin:6px 0 2px}
.fd-note{min-height:64px!important}
.fd-answer{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;border-radius:10px;background:var(--wash)}
.fd-foot{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:10px;position:sticky;bottom:-20px;padding:12px 0 22px;margin-bottom:-20px;background:var(--surface)}
.fd-status{flex:1 1 180px;font-size:var(--t-s);color:var(--warn)}
.fd-status:empty{visibility:hidden}
.ed-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin-top:4px}
.ed-row .l{margin:0}
.ed-row .btn{min-height:34px;padding:0 10px}
.ed-files{display:flex;flex-wrap:wrap;gap:10px}
.ed-f{position:relative;width:72px;aspect-ratio:4/5;border-radius:8px;overflow:hidden;background:var(--sunk)}
.ed-f img{width:100%;height:100%;object-fit:cover}
.ed-f>b{position:absolute;left:5px;top:3px;font-size:var(--t-s);font-weight:600;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.7)}
.ed-f .ibtn{position:absolute;bottom:3px;background:var(--surface);color:var(--fg)}
.ed-rm{right:3px}
.ed-first{left:3px}
.ed-lib{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px;max-height:240px;overflow:auto;padding:8px;border-radius:10px;background:var(--sunk)}
.ed-pick{position:relative;aspect-ratio:4/5;border-radius:7px;overflow:hidden;background:var(--bg)}
.ed-pick img{width:100%;height:100%;object-fit:cover}
.ed-pick[aria-pressed=true]{box-shadow:0 0 0 2.5px var(--accent)}
.ed-pick>b{position:absolute;left:5px;top:3px;font-size:var(--t-s);font-weight:600;color:var(--on-accent);background:var(--accent);border-radius:5px;padding:0 5px}
.ed-drop{display:none}
#editor.dragging .ed-drop{display:grid;place-items:center;position:absolute;inset:8px;border-radius:12px;border:2px dashed var(--accent);background:color-mix(in srgb,var(--surface) 90%,transparent);font-weight:600;color:var(--accent-text);z-index:5}
.ed .check{margin-top:6px}

/* playerul unei postări cu fișierele ei */
.pl-img{object-fit:contain}
.pl-title-top{margin-top:0}
.pl-none{color:var(--muted)}
.pl-note{font-size:var(--t-s);color:var(--muted)}
.pl-strip{height:min(84dvh,760px);aspect-ratio:9/16;background:#000;border-radius:14px 0 0 14px;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}
.pl-slide{flex:0 0 100%;width:100%;height:100%;object-fit:contain;scroll-snap-align:start;background:#000}
.pl-strip.many .pl-slide{flex-basis:92%}
.pl-wait{background:repeating-linear-gradient(135deg,var(--sunk) 0 10px,var(--bg) 10px 20px);flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px;text-align:center;font-weight:600;color:var(--muted)}

/* „De revizuit” în spațiile clienților: titlul și textul se scriu pe loc */
.ib-edit{display:flex;flex-direction:column;gap:6px}
.ib-edit textarea.field{min-height:96px}

/* alegerea pentru un slot: rezervele și postarea nouă */
.pk-h2{margin-top:22px}
.pk-new{margin-top:20px}

/* linkul clientului */
.lk{display:flex;flex-direction:column;gap:10px}
.lk-new{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.lk-new .field{flex:1 1 220px}
.lk-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);font-size:var(--t-s)}
.lk-row .off{color:var(--muted)}
.dlg-head h2 small{font-size:var(--t-s);font-weight:400;color:var(--muted)}
.sh-from{width:auto}

/* Conectări */
.cn{display:flex;flex-direction:column;gap:10px}
.cn .l{margin-top:12px}
.cn-na{color:var(--muted);padding:6px 0}
.cn-list{display:flex;flex-direction:column}
.cn-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:6px 10px;padding:10px 0;border-bottom:1px solid var(--line)}
.cn-pi svg{width:20px;height:20px;color:var(--muted)}
.cn-txt{display:flex;flex-direction:column;min-width:0}
.cn-txt .st{white-space:normal}
.cn-acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.cn-acts .btn{min-height:34px;padding:0 10px}
.cn-pub{grid-column:2/-1;display:flex;gap:8px}
.cn-client{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:4px}
.cn-made{width:100%}
.cn-status{font-size:var(--t-s);color:var(--muted);min-height:20px}
.cn-notify{margin-top:6px}
.sx-conn{align-self:center;min-height:36px;padding:0 12px 0 8px}
.sx-head .sx-conn{margin-left:auto}
.sx-head .sx-conn+.sx-close{margin-left:0}

@media (max-width:959px){
  .space-sel{order:1;max-width:60vw;margin-left:-2px}
  .space-sel select{min-height:34px;border-color:transparent;background:var(--sunk)}
  .actions{grid-template-columns:1fr auto auto auto}
  #exportBtn{display:none}
  .drafts{padding:0 16px}
  .drafts .rail-head{padding:0}
  .dr-list{display:flex;overflow-x:auto;gap:12px;scrollbar-width:none}
  .dr-list::-webkit-scrollbar{display:none}
  .draft{flex:0 0 112px}
  .pl-strip{height:min(64dvh,620px);width:100%;aspect-ratio:auto;border-radius:14px 14px 0 0}
  .fd-media{max-height:38dvh}
  #drop{inset:8px}
}
