/* ============================================================
   Pannello admin — stessi colori e font del sito, layout da gestionale.
   Qui le misure sono in px: niente scala "adattiva" del sito pubblico.
   ============================================================ */
html{ font-size:16px !important }
body{ background:#F4F7FF }
.adm, .adm-loading{ --ink:#0A1240; --muted:#4B5687; --subtle:#7E88B3; --line:#D6DEF7; --surface:#EEF3FF; --accent:#2456F0; --gold:#FFC63A; --ok:#1F9D5B; --err:#C2410C;
  font-family:'Nunito',sans-serif; color:var(--ink); font-size:15px; line-height:1.5 }
.adm .icon, .adm-loading .icon{ width:1.15em; height:1.15em; flex:none }
.adm-loading{ min-height:100vh; display:grid; place-items:center; color:var(--muted) }

.adm{ display:grid; grid-template-columns:240px 1fr; min-height:100vh }
.adm-side{ position:sticky; top:0; height:100vh; display:flex; flex-direction:column; gap:20px; background:var(--ink); color:#fff; padding:22px 14px }
.adm-brand{ display:flex; align-items:center; gap:10px; font-family:'Fredoka',sans-serif; font-weight:700; font-size:22px; padding:0 8px }
.adm-brand .icon{ width:34px; height:34px }
.adm-brand small{ font-family:'Nunito',sans-serif; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; color:var(--gold); margin-left:2px }
.adm-nav{ display:flex; flex-direction:column; gap:2px }
.adm-nav a{ display:flex; align-items:center; gap:11px; padding:10px 12px; border-radius:12px; font-weight:700; color:#C9D5FF }
.adm-nav a:hover{ background:rgba(255,255,255,.07); color:#fff }
.adm-nav a[aria-current="page"]{ background:#fff; color:var(--ink); box-shadow:0 3px 0 var(--gold) }
.adm-side__bot{ margin-top:auto; display:flex; flex-direction:column; gap:4px; font-size:14px }
.adm-side__bot a{ display:flex; align-items:center; gap:8px; padding:8px 12px; border-radius:10px; color:#C9D5FF }
.adm-side__bot a:hover{ color:#fff; background:rgba(255,255,255,.07) }
.adm-side__bot small{ margin-left:auto; font-size:10px; text-transform:uppercase; letter-spacing:.08em; color:var(--gold) }

.adm-main{ min-width:0 }
.adm-top{ display:none }
.adm-body{ max-width:1180px; margin:0 auto; padding:32px 32px 80px }

.adm-h1{ font-family:'Fredoka',sans-serif; font-size:28px; font-weight:700; line-height:1.15; letter-spacing:-.01em }
.adm-h2{ font-family:'Fredoka',sans-serif; font-size:18px; font-weight:600; margin-bottom:12px }
.adm-muted{ color:var(--muted) }
.adm-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:20px }
.adm-back{ display:inline-block; font-size:13px; font-weight:700; color:var(--accent); margin-bottom:4px }
.adm-foot{ margin-top:14px; font-size:13px }

.adm-card{ background:#fff; border:2px solid var(--ink); border-radius:18px; box-shadow:0 4px 0 var(--ink); padding:20px; display:flex; flex-direction:column; gap:14px }
.adm-card--flush{ padding:0; overflow:auto }
.adm-card + .adm-card{ margin-top:18px }
.adm-grid2{ display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:22px }
.adm-grid2 .adm-card + .adm-card{ margin-top:0 }
.adm-note{ flex-direction:row; align-items:center; flex-wrap:wrap; background:#FFF8E1; margin-bottom:16px }
.adm-note code{ font-size:15px; background:#fff; border:1px solid var(--line); padding:2px 8px; border-radius:6px }

.adm-tiles{ display:grid; grid-template-columns:repeat(auto-fill, minmax(190px,1fr)); gap:16px; margin-top:20px }
.adm-tile{ display:flex; flex-direction:column; gap:2px; background:#fff; border:2px solid var(--ink); border-radius:18px; box-shadow:0 4px 0 var(--ink); padding:16px 18px; transition:transform .15s }
a.adm-tile:hover{ transform:translateY(-2px) }
.adm-tile.is-hot{ background:var(--gold) }
.adm-tile__k{ font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; color:var(--muted) }
.adm-tile__v{ font-family:'Fredoka',sans-serif; font-size:36px; font-weight:700; line-height:1.1 }
.adm-tile__d{ font-size:13px; color:var(--muted) }

.adm-btn{ display:inline-flex; align-items:center; justify-content:center; gap:6px; padding:9px 16px; border-radius:999px; border:2px solid var(--ink); background:var(--accent); color:#fff; font-weight:800; font-size:14px; box-shadow:0 3px 0 var(--ink); cursor:pointer; white-space:nowrap; transition:transform .12s }
.adm-btn:hover{ transform:translateY(-1px) }
.adm-btn:active{ transform:translateY(2px); box-shadow:0 1px 0 var(--ink) }
.adm-btn:disabled{ opacity:.55; cursor:default; transform:none }
.adm-btn--ghost{ background:#fff; color:var(--ink) }
.adm-btn--danger{ background:#fff; color:var(--err); border-color:var(--err); box-shadow:0 3px 0 var(--err) }
.adm-btn--sm{ padding:5px 11px; font-size:12.5px; box-shadow:0 2px 0 var(--ink) }
.adm-btn--block{ width:100%; margin-top:18px }
.adm-actions{ display:flex; flex-wrap:wrap; gap:8px; align-items:center }

.adm-bar{ display:flex; gap:10px; margin-bottom:16px }
.adm-input{ width:100%; font:inherit; color:var(--ink); background:#fff; border:2px solid var(--line); border-radius:12px; padding:9px 12px; outline:none; transition:border-color .15s }
.adm-input:focus{ border-color:var(--accent) }
.adm-input--sm{ width:auto; padding:6px 10px; font-size:14px }
.adm-input--lg{ font-family:'Fredoka',sans-serif; font-size:22px; font-weight:600 }
textarea.adm-input{ resize:vertical; line-height:1.55 }
.adm-bar .adm-input:not(.adm-input--sm){ max-width:420px }
.adm-field{ display:flex; flex-direction:column; gap:6px }
.adm-field__l{ font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:var(--muted) }
.adm-field__h{ font-size:12.5px; color:var(--subtle) }
.adm-field__e{ font-size:12.5px; font-weight:700; color:var(--err) }
.adm-field.has-err .adm-input{ border-color:var(--err); background:#FEF6F1 }
.adm-check{ display:flex; gap:9px; align-items:flex-start; font-weight:600; font-size:14px; cursor:pointer }
.adm-check input{ margin-top:3px; width:16px; height:16px; accent-color:var(--accent) }

.adm-seg{ display:inline-flex; border:2px solid var(--ink); border-radius:999px; overflow:hidden; background:#fff }
.adm-seg button{ font:inherit; font-size:13px; font-weight:800; padding:6px 14px; background:none; border:0; cursor:pointer; color:var(--ink) }
.adm-seg button[aria-pressed="true"]{ background:var(--ink); color:#fff }

.adm-table{ width:100%; border-collapse:collapse; font-size:14px }
.adm-table th{ text-align:left; font-size:11.5px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:var(--muted); background:var(--surface); padding:11px 14px; border-bottom:2px solid var(--ink) }
.adm-table td{ padding:11px 14px; border-top:1px solid var(--line); vertical-align:middle }
.adm-table tr:hover td{ background:#FAFBFF }
.adm-table tr.is-banned td{ opacity:.55 }
.adm-td-act{ text-align:right; white-space:nowrap }
.adm-td-act .adm-btn + .adm-btn{ margin-left:6px }
.adm-link{ font-weight:800 }
.adm-link:hover{ color:var(--accent) }
.adm-empty{ padding:28px; text-align:center; color:var(--muted) }
.adm-empty a{ color:var(--accent); font-weight:700 }
.adm-list{ display:flex; flex-direction:column; gap:8px }
.adm-list li{ display:flex; justify-content:space-between; gap:10px; font-weight:700 }
.adm-list small{ color:var(--subtle); font-weight:600 }

.adm-status{ display:inline-block; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; padding:3px 9px; border-radius:999px; border:2px solid var(--line); color:var(--muted); background:#fff }
.adm-status.is-published{ background:#DDF7E8; border-color:#9FDDBA; color:#11683C }
.adm-status.is-draft{ background:#FFF4D6; border-color:#F5D983; color:#7A5400 }
.adm-status.is-cancelled{ background:#FDE8E0; border-color:#F2B9A1; color:var(--err) }
.adm-pill{ display:inline-block; margin-left:6px; font-size:11px; font-weight:800; padding:2px 8px; border-radius:999px; background:var(--surface); color:var(--accent) }
.adm-pill.is-live{ background:#3BE38B; color:var(--ink) }
.adm-pill.is-upcoming{ background:var(--gold); color:var(--ink) }
.adm-pill.is-cancelled{ background:#FDE8E0; color:var(--err) }

/* editor */
.adm-editor__grid{ display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:22px; align-items:start }
.adm-editor__main, .adm-editor__side{ display:flex; flex-direction:column; gap:18px }
.adm-editor__main .adm-card + .adm-card, .adm-editor__side .adm-card + .adm-card{ margin-top:0 }
.adm-cover{ aspect-ratio:2.2/1; border-radius:12px; overflow:hidden; border:2px solid var(--ink); background:#0B1150; display:grid; place-items:center }
.adm-cover img{ width:100%; height:100%; object-fit:cover }
.adm-cover.is-contain img{ object-fit:contain }
.adm-cover--empty{ background:var(--surface); border-style:dashed; border-color:var(--line); color:var(--subtle); font-weight:700; font-size:13px }
.adm-md__bar{ display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-bottom:8px }
.adm-md__tools{ display:flex; flex-wrap:wrap; gap:4px; align-items:center }
.adm-md__tools > button{ font:inherit; font-size:13px; font-weight:700; padding:5px 10px; border-radius:8px; border:1px solid var(--line); background:#fff; cursor:pointer; color:var(--ink) }
.adm-md__tools > button:hover{ border-color:var(--accent); color:var(--accent) }
.adm-md__tools .adm-seg{ margin-left:6px }
.adm-md__ta{ font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:14px; min-height:360px }
.adm-md__preview{ min-height:360px; max-width:none; border:2px dashed var(--line); border-radius:12px; padding:18px 20px; font-size:15px }
.adm-md__preview img{ max-width:100%; border-radius:10px }

/* media */
.adm-drop{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; border:2px dashed var(--line); border-radius:16px; background:#fff; padding:16px 18px; font-size:13px }
.adm-media{ display:grid; grid-template-columns:repeat(auto-fill, minmax(200px,1fr)); gap:14px; margin-top:18px }
.adm-media__i{ margin:0; background:#fff; border:2px solid var(--ink); border-radius:14px; overflow:hidden; display:flex; flex-direction:column; padding:0; cursor:default }
.adm-media__i img{ width:100%; aspect-ratio:16/10; object-fit:cover; background:repeating-conic-gradient(#EEF3FF 0% 25%, #fff 0% 50%) 50%/16px 16px }
.adm-media__i figcaption{ padding:10px; display:flex; flex-direction:column; gap:8px; font-size:12px; color:var(--muted) }
.adm-media--pick{ max-height:55vh; overflow:auto; grid-template-columns:repeat(auto-fill, minmax(150px,1fr)) }
.adm-media--pick .adm-media__i{ cursor:pointer }
.adm-media--pick .adm-media__i:hover{ border-color:var(--accent); box-shadow:0 0 0 3px var(--accent) }

.adm-modal{ position:fixed; inset:0; z-index:100; background:rgba(10,18,64,.55); display:grid; place-items:center; padding:20px }
.adm-modal__panel{ width:min(920px,100%); max-height:90vh; overflow:auto; background:#F4F7FF; border:2px solid var(--ink); border-radius:20px; box-shadow:0 6px 0 var(--ink); padding:20px; display:flex; flex-direction:column; gap:14px }
.adm-modal__panel .adm-head{ margin:0 }

/* messaggi */
.adm-msgs{ display:flex; flex-direction:column; gap:14px }
.adm-msgs .adm-card + .adm-card{ margin-top:0 }
.adm-msg{ gap:10px; cursor:default }
.adm-msg.is-new{ border-color:var(--accent); box-shadow:0 4px 0 var(--accent); cursor:pointer }
.adm-msg__top{ display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; font-size:14px }
.adm-msg__top a{ color:var(--accent) }
.adm-msg__top small{ margin-left:auto; color:var(--subtle) }
.adm-msg__t{ white-space:pre-wrap; font-size:15px }

.adm-toast{ position:fixed; right:20px; bottom:20px; z-index:200; background:var(--ink); color:#fff; font-weight:800; padding:12px 18px; border-radius:14px; box-shadow:0 4px 0 var(--gold); animation:admIn .2s ease-out }
.adm-toast.is-err{ background:var(--err); box-shadow:0 4px 0 var(--ink) }
@keyframes admIn{ from{ transform:translateY(10px); opacity:0 } }

@media (max-width:1000px){
  .adm-editor__grid{ grid-template-columns:1fr }
  .adm-grid2{ grid-template-columns:1fr }
}
@media (max-width:820px){
  .adm{ grid-template-columns:1fr }
  .adm-side{ position:fixed; z-index:50; left:0; top:0; width:260px; transform:translateX(-100%); transition:transform .2s }
  .adm-side.is-open{ transform:none; box-shadow:0 0 0 100vw rgba(10,18,64,.45) }
  .adm-top{ display:flex; align-items:center; gap:12px; position:sticky; top:0; z-index:40; background:var(--ink); color:#fff; padding:10px 16px }
  .adm-top__t{ font-family:'Fredoka',sans-serif; font-weight:600; font-size:18px }
  .adm-burger{ display:grid; place-items:center; width:38px; height:38px; border-radius:10px; background:rgba(255,255,255,.1); color:#fff; border:0 }
  .adm-body{ padding:20px 16px 60px }
  .hide-sm{ display:none }
  .adm-h1{ font-size:24px }
}

/* staff, pagine, elenchi */
.adm-card__head{ padding:12px 18px; background:var(--surface); border-bottom:2px solid var(--ink); font-family:'Fredoka',sans-serif; font-weight:600; font-size:17px }
.adm-card__head small{ font-family:'Nunito',sans-serif; font-size:12px; color:var(--muted); margin-left:6px }
.adm-rows{ display:flex; flex-direction:column }
.adm-row{ display:flex; align-items:center; gap:14px; padding:12px 18px; border-top:1px solid var(--line) }
.adm-row:first-child{ border-top:0 }
.adm-row.is-hidden{ opacity:.55 }
.adm-row__main{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px }
.adm-row__main small{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12.5px }
.adm-order{ display:flex; flex-direction:column; gap:2px }
.adm-order button{ width:26px; height:18px; font-size:10px; line-height:1; border:1px solid var(--line); border-radius:6px; background:#fff; cursor:pointer; color:var(--ink) }
.adm-order button:disabled{ opacity:.3; cursor:default }
.adm-av{ width:40px; height:40px; flex:none; border-radius:50%; border:2px solid var(--ink); display:grid; place-items:center; overflow:hidden; color:#fff; font-family:'Fredoka',sans-serif; font-weight:700; font-size:17px }
.adm-av img{ width:100%; height:100%; object-fit:cover }
.adm-av--lg{ width:96px; height:96px; font-size:38px; box-shadow:0 3px 0 var(--ink) }
.adm-form2{ display:grid; grid-template-columns:170px 1fr; gap:22px; align-items:start }
.adm-form2__fields{ display:flex; flex-direction:column; gap:12px }
.adm-staffav{ display:flex; flex-direction:column; align-items:center; gap:12px; text-align:center }
.adm-grid2in{ display:grid; grid-template-columns:1fr 1fr; gap:12px }
.adm-input--color{ padding:3px; height:40px; width:80px; cursor:pointer }
.adm-tabs{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:18px }
.adm-tabs a{ padding:7px 14px; border-radius:999px; border:2px solid var(--ink); background:#fff; font-weight:800; font-size:13.5px }
.adm-tabs a[aria-current="page"]{ background:var(--ink); color:#fff }
.adm-icons{ display:flex; flex-wrap:wrap; gap:6px }
.adm-icons button{ width:40px; height:40px; display:grid; place-items:center; border-radius:10px; border:2px solid var(--line); background:#fff; cursor:pointer; color:var(--ink) }
.adm-icons button[aria-pressed="true"]{ border-color:var(--ink); background:var(--gold) }
.adm-icons .icon{ width:20px; height:20px }
@media (max-width:820px){
  .adm-form2{ grid-template-columns:1fr }
  .adm-grid2in{ grid-template-columns:1fr }
  .adm-row{ flex-wrap:wrap }
}
.adm-fieldset{ border:0; margin:0; padding:0; min-width:0 }
.adm-fieldset:disabled{ opacity:.7 }
.adm-status.is-pending{ background:#E3ECFF; border-color:#BCCBFA; color:var(--accent) }
.adm-roles{ margin-top:18px }
.adm-roles dl{ display:grid; grid-template-columns:repeat(auto-fill, minmax(260px,1fr)); gap:10px 18px }
.adm-roles dt{ font-weight:800 }
.adm-roles dd{ margin:2px 0 0; font-size:13.5px; color:var(--muted) }

/* ============================================================ editor visuale */
.rte{ border:2px solid var(--line); border-radius:14px; background:#fff; margin-top:6px }
.rte:focus-within{ border-color:var(--accent) }
.rte--loading{ padding:24px; color:var(--muted) }
.rte-bar{ position:sticky; top:0; z-index:5; display:flex; flex-wrap:wrap; gap:6px; padding:8px; background:#F7F9FF; border-bottom:1px solid var(--line); border-radius:12px 12px 0 0 }
.rte-group{ display:flex; gap:2px; padding-right:6px; border-right:1px solid var(--line) }
.rte-group:last-of-type, .rte-group--end{ border-right:0 }
.rte-group--end{ margin-left:auto }
.rte-btn{ font:inherit; font-size:13.5px; font-weight:700; min-width:34px; height:34px; padding:0 9px; border-radius:8px; border:1px solid transparent; background:none; color:var(--ink); cursor:pointer; white-space:nowrap }
.rte-btn:hover:not(:disabled){ background:#fff; border-color:var(--line) }
.rte-btn.is-on{ background:var(--ink); color:#fff }
.rte-btn:disabled{ opacity:.35; cursor:default }
.rte-sub{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:8px 10px; background:#FFF8E1; border-bottom:1px solid var(--line); font-size:13.5px; font-weight:700 }
.rte-sub .adm-input{ width:auto; flex:1; min-width:200px; padding:6px 10px }
.rte-body{ cursor:text }
.rte-content{ max-width:none; padding:20px 24px; outline:none; font-size:16px; line-height:1.7 }
.rte-content > * + *{ margin-top:.9em }
.rte-content h2{ font-size:1.5em; margin-top:1.2em } .rte-content h3{ font-size:1.2em; margin-top:1em }
.rte-content p{ color:var(--ink) }
.rte-content ul{ list-style:disc; padding-left:1.4em } .rte-content ol{ list-style:decimal; padding-left:1.4em }
.rte-content blockquote{ border-left:3px solid var(--accent); padding-left:1em; color:var(--muted) }
.rte-content a{ color:var(--accent); text-decoration:underline }
.rte-content hr{ border:0; border-top:2px solid var(--line); margin:1.5em 0 }
.rte-content img{ display:block; max-width:100%; height:auto; border-radius:12px; margin:1em auto }
.rte-content img.img-small{ max-width:50% }
.rte-content img.img-left{ float:left; max-width:45%; margin:.3em 1.2em .8em 0 }
.rte-content img.img-right{ float:right; max-width:45%; margin:.3em 0 .8em 1.2em }
.rte-content img.ProseMirror-selectednode{ outline:3px solid var(--accent); outline-offset:3px }
.rte-content::after{ content:""; display:block; clear:both }
.rte-content p.is-editor-empty:first-child::before{ content:attr(data-placeholder); float:left; height:0; pointer-events:none; color:var(--subtle) }
.rte-foot{ display:flex; justify-content:space-between; gap:10px; padding:7px 12px; border-top:1px solid var(--line); font-size:12.5px; color:var(--subtle); background:#FAFBFF; border-radius:0 0 12px 12px }
.rte--compact .rte-content{ padding:12px 14px; font-size:15px }

.adm-drop2{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; width:100%; aspect-ratio:2.6/1; border:2px dashed var(--line); border-radius:14px; background:var(--surface); color:var(--muted); font:inherit; cursor:pointer; text-align:center; padding:12px }
.adm-drop2 b{ font-size:17px; color:var(--ink) }
.adm-drop2 span{ font-size:13px }
.adm-drop2:hover, .adm-drop2.is-over{ border-color:var(--accent); background:#E3ECFF }
.adm-more summary{ cursor:pointer; font-weight:800; font-family:'Fredoka',sans-serif; font-size:17px }
.adm-more summary small{ font-family:'Nunito',sans-serif; font-weight:600; font-size:13px; color:var(--subtle); margin-left:6px }
.adm-more[open] summary{ margin-bottom:6px }
.adm-chips{ display:flex; flex-wrap:wrap; gap:6px }
.adm-chip{ font:inherit; font-size:13px; font-weight:700; padding:5px 12px; border-radius:999px; border:2px solid var(--line); background:#fff; cursor:pointer; color:var(--ink) }
.adm-chip.is-on{ background:var(--ink); border-color:var(--ink); color:#fff }
@media (max-width:820px){ .rte-group--end{ margin-left:0 } .rte-content{ padding:14px } }
.rte-content strong{ font-weight:800; color:var(--ink) }
.rte-btn svg{ display:block }
.adm-thumb{ width:56px; height:40px; border-radius:8px; object-fit:cover; border:1.5px solid var(--ink); flex:none; display:grid; place-items:center; background:var(--surface); font-size:20px }
.adm-linkbtn{ font:inherit; font-weight:800; background:none; border:0; padding:0; color:var(--accent); cursor:pointer }
.adm-list--ledger li{ align-items:flex-start; border-top:1px solid var(--line); padding-top:8px; font-weight:600 }
.adm-list--ledger b{ color:#11683C; white-space:nowrap } .adm-list--ledger b.is-neg{ color:var(--err) }
/* impostazioni */
.adm-settings{ display:flex; flex-direction:column; gap:18px }
.adm-settings .adm-card + .adm-card{ margin-top:0 }
.adm-setting{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:16px; align-items:center; padding-top:12px; border-top:1px solid var(--line) }
.adm-setting__l{ display:flex; flex-direction:column; gap:2px }
.adm-setting__l small{ font-size:12.5px; color:var(--muted) }
.adm-setting__src{ color:var(--subtle) !important; font-style:italic }
.adm-setting__v{ display:flex; align-items:center; gap:10px }
.adm-secret{ display:flex; flex-direction:column; gap:6px; width:100% }
.adm-switch{ position:relative; display:inline-block; width:48px; height:28px }
.adm-switch input{ opacity:0; width:0; height:0 }
.adm-switch span{ position:absolute; inset:0; border-radius:999px; background:var(--line); border:2px solid var(--ink); cursor:pointer; transition:background .15s }
.adm-switch span::before{ content:""; position:absolute; left:3px; top:3px; width:18px; height:18px; border-radius:50%; background:#fff; border:2px solid var(--ink); transition:transform .15s }
.adm-switch input:checked + span{ background:#3BE38B }
.adm-switch input:checked + span::before{ transform:translateX(20px) }
.adm-ok{ color:var(--ok); font-weight:800; font-size:14px } .adm-ko{ color:var(--err); font-weight:800; font-size:14px }
@media (max-width:820px){ .adm-setting{ grid-template-columns:1fr } }

/* quiz e sondaggi del giorno */
.adm-mtable td{ vertical-align:top }
.adm-mtable tr.is-today td{ background:#FFF8E1 }
.adm-mday{ white-space:nowrap; font-weight:700 }
.adm-mday small{ display:block; font-weight:400; color:var(--adm-muted, #6b7280) }
.adm-mcell{ display:flex; flex-direction:column; align-items:flex-start; gap:2px; width:100%; text-align:left; font:inherit; font-size:.85rem; padding:8px 10px; border:1px dashed #cbd5e1; border-radius:10px; background:transparent; color:#64748b; cursor:pointer }
.adm-mcell:hover{ border-color:#2456F0; color:#2456F0 }
.adm-mcell.is-set{ border-style:solid; background:#fff; color:inherit }
.adm-mcell.is-set b{ font-weight:600; overflow-wrap:anywhere }
.adm-mcell small{ font-size:.75rem; color:#64748b }
.adm-msg.is-hidden{ opacity:.6 }
.adm-quote{ margin:6px 0 2px; padding:6px 10px; border-left:3px solid #cbd5e1; font-size:.85rem }
/* barra laterale: si scorre se le voci non ci stanno */
.adm-side{ overflow-y:auto; overscroll-behavior:contain }
.adm-nav, .adm-side__bot{ flex-shrink:0 }
.adm-sync{ font-size:.85rem; line-height:1.5 } .adm-sync ul{ margin:.4rem 0 0 1rem; list-style:disc }

/* ============================================================
   Stile "gestionale" (v2): bordi sottili, ombre morbide, tabelle compatte.
   Sovrascrive le regole sopra per tutto il pannello.
   ============================================================ */
.adm, .adm-loading{ --line:#E3E8F5; --line-2:#EEF1FA; --bg:#F6F8FD; --card:#fff; --shadow:0 1px 2px rgba(10,18,64,.06), 0 4px 16px rgba(10,18,64,.05); font-size:14px }
body{ background:var(--bg, #F6F8FD) }
.adm{ grid-template-columns:248px 1fr; background:#F6F8FD }
.adm-side{ padding:18px 12px; gap:14px }
.adm-brand{ font-size:20px; padding:4px 10px 10px }
.adm-nav{ gap:1px; overflow-y:auto }
.adm-nav__sec{ font-size:10.5px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#7F8BC2; padding:14px 12px 6px }
.adm-nav a{ padding:8px 12px; border-radius:9px; font-size:14px; font-weight:700 }
.adm-nav a[aria-current="page"]{ background:rgba(255,255,255,.12); color:#fff; box-shadow:inset 3px 0 0 var(--gold) }
.adm-nav__n{ margin-left:auto; min-width:20px; height:20px; padding:0 6px; border-radius:999px; background:var(--gold); color:var(--ink); font-size:11px; font-weight:800; display:grid; place-items:center }

.adm-body{ max-width:1400px; padding:28px 32px 80px }
.adm-h1{ font-size:24px }
.adm-h2{ font-size:16px }
.adm-head{ align-items:center; margin-bottom:18px }
.adm-head .adm-muted{ font-size:13.5px; margin-top:2px; max-width:760px }

.adm-card{ border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow); padding:18px }
.adm-card + .adm-card{ margin-top:16px }
.adm-note{ border-color:#F1D48A; box-shadow:none; background:#FFF9E8; gap:10px; font-size:13.5px }
.adm-tiles{ gap:12px; grid-template-columns:repeat(auto-fill, minmax(180px,1fr)) }
.adm-tile{ border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow); padding:14px 16px }
.adm-tile.is-hot{ background:#FFF6D8; border-color:#F1D48A }
.adm-tile__v{ font-size:28px }
.adm-tile__k{ font-size:11px }

.adm-btn{ border:1px solid transparent; box-shadow:0 1px 2px rgba(10,18,64,.15); padding:8px 14px; font-size:13.5px; border-radius:10px; gap:6px }
.adm-btn:hover{ transform:none; filter:brightness(1.06) }
.adm-btn:active{ transform:none; box-shadow:none }
.adm-btn--ghost{ background:#fff; color:var(--ink); border-color:var(--line); box-shadow:none }
.adm-btn--ghost:hover{ background:var(--surface); filter:none }
.adm-btn--danger{ border-color:#F2B9A1; box-shadow:none }
.adm-btn--sm{ padding:5px 10px; font-size:12.5px; border-radius:8px; box-shadow:none }
.adm-seg{ border:1px solid var(--line); border-radius:10px; padding:2px; gap:2px }
.adm-seg button{ border-radius:8px; padding:5px 12px; font-size:12.5px; color:var(--muted) }
.adm-seg button[aria-pressed="true"]{ background:var(--ink); color:#fff }
.adm-input{ border:1px solid var(--line); border-radius:10px; padding:8px 11px; font-size:14px }
.adm-input:focus{ border-color:var(--accent); box-shadow:0 0 0 3px rgba(36,86,240,.12) }
.adm-input--sm{ padding:6px 9px; font-size:13px; border-radius:8px }
.adm-tabs{ gap:2px; padding:3px; background:#fff; border:1px solid var(--line); border-radius:12px; width:fit-content; max-width:100%; overflow-x:auto }
.adm-tabs a{ border:0; border-radius:9px; padding:7px 14px; font-size:13.5px; color:var(--muted); white-space:nowrap }
.adm-tabs a:hover{ background:var(--surface); color:var(--ink) }
.adm-tabs a[aria-current="page"]{ background:var(--ink); color:#fff }

/* tabelle */
.adm-card--flush{ padding:0; overflow:visible }
.adm-table{ font-size:13.5px }
.adm-table th{ background:#FAFBFE; border-bottom:1px solid var(--line); padding:10px 14px; font-size:11px; white-space:nowrap; position:sticky; top:0; z-index:1 }
.adm-table th:first-child{ border-top-left-radius:14px } .adm-table th:last-child{ border-top-right-radius:14px }
.adm-table td{ padding:10px 14px; border-top:1px solid var(--line-2) }
.adm-table tr:hover td{ background:#F8FAFF }
.adm-table tr.is-click{ cursor:pointer }
.adm-nowrap{ white-space:nowrap }
.adm-date{ white-space:nowrap; line-height:1.3 }
.adm-date small{ display:block; color:var(--subtle); font-size:11.5px }
.adm-pill{ margin-left:0; border-radius:6px; padding:2px 7px; font-size:11px }
.adm-pill + .adm-pill{ margin-left:4px }
.adm-status{ border-width:1px; border-radius:6px; padding:2px 8px; font-size:10.5px }

/* intestazione di pagina, barra strumenti, paginazione */
.adm-ph{ display:flex; align-items:flex-start; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:18px }
.adm-ph__t{ display:flex; flex-direction:column; gap:2px }
.adm-ph__t h1{ display:flex; align-items:center; gap:10px }
.adm-ph__n{ font-family:'Nunito',sans-serif; font-size:13px; font-weight:800; padding:2px 9px; border-radius:999px; background:var(--surface); color:var(--accent) }
.adm-ph__t p{ color:var(--muted); font-size:13.5px; max-width:760px }
.adm-ph__a{ display:flex; gap:8px; align-items:center; flex-wrap:wrap }
.adm-kpis{ display:grid; grid-template-columns:repeat(auto-fill, minmax(160px,1fr)); gap:12px; margin-bottom:16px }
.adm-kpi{ display:flex; flex-direction:column; gap:2px; padding:12px 14px; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow); text-align:left; font:inherit; cursor:pointer }
.adm-kpi:hover{ border-color:#C6D2F5 } .adm-kpi.is-on{ border-color:var(--accent); box-shadow:0 0 0 3px rgba(36,86,240,.12) }
.adm-kpi small{ font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--subtle) }
.adm-kpi b{ font-family:'Fredoka',sans-serif; font-size:24px; line-height:1.15 }
.adm-tb{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; padding:12px 14px; border-bottom:1px solid var(--line) }
.adm-tb__search{ position:relative; flex:1; min-width:220px; max-width:420px }
.adm-tb__search .ico{ position:absolute; left:10px; top:50%; transform:translateY(-50%); color:var(--subtle) }
.adm-tb__search input{ padding-left:32px }
.adm-tb__sp{ flex:1 }
.adm-pager{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:10px 14px; border-top:1px solid var(--line); font-size:13px; color:var(--muted) }
.adm-pager__btns{ display:flex; gap:4px; align-items:center }
.adm-pager__btns button{ min-width:32px; height:32px; padding:0 8px; border-radius:8px; border:1px solid var(--line); background:#fff; font:inherit; font-size:13px; font-weight:800; color:var(--ink); cursor:pointer; display:inline-grid; place-items:center }
.adm-pager__btns button:hover:not(:disabled){ background:var(--surface) }
.adm-pager__btns button[aria-current="page"]{ background:var(--ink); color:#fff; border-color:var(--ink) }
.adm-pager__btns button:disabled{ opacity:.4; cursor:default }
.adm-pager__gap{ padding:0 4px }

/* utente in tabella */
.adm-who{ display:flex; align-items:center; gap:10px; min-width:0 }
.adm-who__av{ flex:none; width:34px; height:34px; border-radius:50%; overflow:hidden; background:var(--surface); display:grid; place-items:center; font-weight:800; color:var(--accent); border:1px solid var(--line) }
.adm-who__av img{ width:100%; height:100%; object-fit:cover }
.adm-who__t{ display:flex; flex-direction:column; min-width:0 }
.adm-who__t b{ font-weight:800; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.adm-who__t small{ color:var(--subtle); font-size:12px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:260px }
.adm-badge{ display:inline-flex; align-items:center; gap:4px; font-size:11.5px; font-weight:800; padding:2px 8px; border-radius:6px; background:var(--surface); color:var(--muted); white-space:nowrap }
.adm-badge--admin{ background:#EDE7FF; color:#5B35D5 } .adm-badge--editor{ background:#E4EDFF; color:#2456F0 } .adm-badge--moderator{ background:#E0F5EC; color:#11683C }
.adm-badge--event_manager{ background:#FFF1DC; color:#9A5B00 } .adm-badge--author{ background:#F3E8FF; color:#7A2EB8 }
.adm-badge--active{ background:#DDF7E8; color:#11683C } .adm-badge--requested{ background:#FFF4D6; color:#7A5400 } .adm-badge--rejected{ background:#FDE8E0; color:var(--err) }
.adm-badge--banned{ background:#FDE8E0; color:var(--err) } .adm-badge--staff{ background:var(--ink); color:#fff }

/* menu azioni della riga */
.adm-rm{ position:relative; display:inline-block }
.adm-rm__b{ width:32px; height:32px; border-radius:8px; border:1px solid transparent; background:none; color:var(--muted); cursor:pointer; display:grid; place-items:center }
.adm-rm__b:hover, .adm-rm.is-open .adm-rm__b{ background:var(--surface); border-color:var(--line); color:var(--ink) }
.adm-rm__m{ position:absolute; right:0; top:calc(100% + 4px); z-index:30; min-width:190px; padding:6px; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:0 10px 30px rgba(10,18,64,.15); display:flex; flex-direction:column }
.adm-rm__m button, .adm-rm__m a{ display:flex; align-items:center; gap:8px; width:100%; text-align:left; font:inherit; font-size:13.5px; font-weight:700; padding:8px 10px; border-radius:8px; border:0; background:none; color:var(--ink); cursor:pointer; text-decoration:none }
.adm-rm__m button:hover, .adm-rm__m a:hover{ background:var(--surface) }
.adm-rm__m .is-danger{ color:var(--err) }
.adm-rm__m hr{ border:0; border-top:1px solid var(--line); margin:4px 0 }

/* pannello laterale (scheda utente) */
.adm-drawer{ position:fixed; inset:0; z-index:120; background:rgba(10,18,64,.35); display:flex; justify-content:flex-end }
.adm-drawer__p{ width:min(520px,100%); height:100%; overflow:auto; background:#fff; box-shadow:-10px 0 40px rgba(10,18,64,.2); display:flex; flex-direction:column; animation:admSlide .18s ease-out }
@keyframes admSlide{ from{ transform:translateX(30px); opacity:.5 } }
.adm-drawer__h{ position:sticky; top:0; z-index:2; display:flex; align-items:center; gap:12px; padding:16px 18px; background:#fff; border-bottom:1px solid var(--line) }
.adm-drawer__h .adm-who__av{ width:48px; height:48px; font-size:18px }
.adm-drawer__h h2{ font-family:'Fredoka',sans-serif; font-size:20px; line-height:1.2 }
.adm-drawer__x{ margin-left:auto }
.adm-drawer__b{ padding:18px; display:flex; flex-direction:column; gap:18px }
.adm-dl{ display:grid; grid-template-columns:140px 1fr; gap:8px 12px; font-size:13.5px }
.adm-dl dt{ color:var(--subtle); font-weight:700 }
.adm-dl dd{ margin:0; min-width:0; overflow-wrap:anywhere }
.adm-sec{ display:flex; flex-direction:column; gap:10px }
.adm-sec h3{ font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--subtle) }
.adm-mini{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px }
.adm-mini div{ padding:10px; border-radius:10px; background:var(--surface); display:flex; flex-direction:column }
.adm-mini b{ font-family:'Fredoka',sans-serif; font-size:20px }
.adm-mini small{ font-size:11.5px; color:var(--muted) }
.adm-danger-zone{ padding:14px; border:1px solid #F2B9A1; border-radius:12px; background:#FFF8F5; display:flex; flex-direction:column; gap:10px }
@media (max-width:820px){ .adm-body{ padding:18px 14px 60px } .adm-hide-md{ display:none } .adm-dl{ grid-template-columns:110px 1fr } }
@media (max-width:1100px){ .adm-hide-lg{ display:none } }
.adm-msg.is-new{ border-color:var(--line); box-shadow:var(--shadow), inset 4px 0 0 var(--accent) }
.adm-msg.is-hidden{ opacity:.6 }
.adm-msgs{ gap:10px }
@media (max-width:820px){
  .adm{ grid-template-columns:1fr }
  .adm-kpis{ grid-template-columns:1fr 1fr; gap:8px }
  .adm-kpi{ padding:10px 12px } .adm-kpi b{ font-size:20px }
  .adm-tb{ gap:8px } .adm-tb__search{ max-width:none; min-width:100%; }
  .adm-table td, .adm-table th{ padding:9px 10px }
  .adm-drawer__p{ width:100% }
}
@media (max-width:820px){ .adm-card--flush{ overflow-x:auto } }

/* ============================================================ dashboard */
.adm{ --c1:#2456F0; --c2:#12A37F }
.sr-only{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap }
.dash{ display:flex; flex-direction:column; gap:16px }
.dash .adm-ph{ margin-bottom:2px }
.dk-row{ display:grid; grid-template-columns:repeat(6, minmax(0,1fr)); gap:12px }
@media (max-width:1300px){ .dk-row{ grid-template-columns:repeat(3, minmax(0,1fr)) } }
@media (max-width:600px){ .dk-row{ grid-template-columns:1fr 1fr } .dk__row .ch-spark{ display:none } }
.dk{ display:flex; flex-direction:column; gap:4px; padding:14px 16px; background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow); min-width:0 }
.dk__l{ font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--subtle) }
.dk__row{ display:flex; align-items:flex-end; justify-content:space-between; gap:8px }
.dk__row b{ font-family:'Fredoka',sans-serif; font-size:28px; line-height:1.05; color:var(--ink) }
.dk__s{ font-size:12.5px; color:var(--muted) }
.dk__s em{ font-style:normal; font-weight:800; padding:1px 6px; border-radius:6px; margin-right:2px }
.dk__s em.is-up{ background:#DDF7E8; color:#11683C } .dk__s em.is-down{ background:#FDE8E0; color:var(--err) }
.dash-grid{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:16px }
.dp{ background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow); padding:16px 18px; display:flex; flex-direction:column; gap:12px; min-width:0 }
.dp header{ display:flex; align-items:flex-start; justify-content:space-between; gap:10px; flex-wrap:wrap }
.dp h2{ font-family:'Fredoka',sans-serif; font-size:16px; font-weight:600; line-height:1.25 }
.dp header p{ font-size:12.5px; color:var(--subtle) }
.dp--wide{ grid-column:span 2 }
.dp--todo{ align-self:stretch }
@media (max-width:1200px){ .dash-grid{ grid-template-columns:1fr 1fr } .dp--todo{ grid-row:auto } }
@media (max-width:760px){ .dash-grid{ grid-template-columns:1fr } .dp--wide{ grid-column:auto } }
.dtodo{ display:flex; flex-direction:column; gap:6px }
.dtodo a{ display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:10px; border:1px solid var(--line); color:var(--ink); font-size:13.5px }
.dtodo a:hover{ background:var(--surface); border-color:#C6D2F5 }
.dtodo a > .ico:last-child{ margin-left:auto; color:var(--subtle) }
.dtodo b{ font-family:'Fredoka',sans-serif; font-size:18px }
.dtodo__i{ display:grid; place-items:center; width:30px; height:30px; border-radius:9px; background:#FFF4D6; color:#8A5A00; flex:none }
.dclear{ display:flex; align-items:center; gap:12px; padding:14px; border-radius:12px; background:#F1FBF5; color:#11683C; font-size:13.5px }
.dclear p{ color:var(--muted) } .dclear b{ color:#11683C }
.dtop, .dlist, .dfeed{ display:flex; flex-direction:column }
.dtop li, .dlist li{ display:flex; align-items:center; gap:10px; padding:8px 0; border-top:1px solid var(--line-2) }
.dtop li:first-child, .dlist li:first-child, .dfeed li:first-child{ border-top:0 }
.dtop li > b{ margin-left:auto; font-size:13px; white-space:nowrap }
.dtop__n{ width:22px; height:22px; border-radius:50%; background:var(--surface); display:grid; place-items:center; font-size:11.5px; font-weight:800; color:var(--accent); flex:none }
.dlist li .adm-who{ flex:1 } .dlist li .adm-date{ text-align:right }
.dfeed li{ display:flex; gap:10px; padding:8px 0; border-top:1px solid var(--line-2); font-size:13px; line-height:1.4 }
.dfeed__dot{ flex:none; width:8px; height:8px; border-radius:50%; background:var(--c1); margin-top:6px; box-shadow:0 0 0 3px #E4EDFF }
.dfeed em{ font-style:normal; color:var(--muted) }
.dfeed small{ display:block; color:var(--subtle); font-size:11.5px } .dfeed small .adm-date small{ display:inline }

/* grafici */
.ch{ position:relative; width:100%; min-height:40px }
.ch-svg{ display:block; overflow:visible }
.ch-grid{ stroke:#EEF1FA; stroke-width:1 }
.ch-base{ stroke:#D6DEF0; stroke-width:1 }
.ch-cross{ stroke:#B8C3E0; stroke-width:1 }
.ch-tick{ fill:#7E88B3; font-size:11px; font-family:'Nunito',sans-serif; font-weight:700 }
.ch-tip{ position:absolute; top:-6px; width:120px; pointer-events:none; background:var(--ink); color:#fff; border-radius:10px; padding:6px 10px; font-size:12px; box-shadow:0 6px 20px rgba(10,18,64,.25); text-align:center }
.ch-tip b{ font-family:'Fredoka',sans-serif; font-size:15px }
.ch-tip small{ display:block; color:#B9C3EA; font-size:11px }
.ch-hb{ display:flex; flex-direction:column; gap:10px }
.ch-hb li{ display:grid; grid-template-columns:minmax(90px, 38%) 1fr auto; align-items:center; gap:10px; font-size:13px }
.ch-hb__l{ color:var(--ink); font-weight:700; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.ch-hb__t{ height:10px; border-radius:0 4px 4px 0; background:#F2F4FB; overflow:hidden }
.ch-hb__t i{ display:block; height:100%; border-radius:0 4px 4px 0 }
.ch-hb b{ font-size:13px; white-space:nowrap } .ch-hb b small{ color:var(--subtle); font-weight:700 }
.ch-spark{ flex:none }

/* footer del pannello */
.adm-footer{ max-width:1400px; margin:0 auto; padding:18px 32px 28px; display:flex; align-items:center; justify-content:space-between; gap:10px 20px; flex-wrap:wrap; border-top:1px solid var(--line); font-size:12.5px; color:var(--subtle) }
.adm-footer b{ color:var(--ink) }
.adm-footer a{ color:var(--muted); font-weight:700 }
.adm-footer a:hover{ color:var(--accent) }
.adm-footer__links{ display:flex; gap:16px; flex-wrap:wrap }
.adm-main{ display:flex; flex-direction:column; min-height:100vh } .adm-body{ flex:1; width:100% }
@media (max-width:820px){ .adm-footer{ padding:16px 14px 24px; flex-direction:column; align-items:flex-start } }
.dfeed{ display:grid; grid-template-columns:1fr 1fr; column-gap:24px } .dfeed li:nth-child(2){ border-top:0 } @media (max-width:760px){ .dfeed{ grid-template-columns:1fr } .dfeed li:nth-child(2){ border-top:1px solid var(--line-2) } }

/* annunci */
.adm-ann{ display:grid; gap:18px; align-items:start }
@media (min-width:1100px){ .adm-ann{ grid-template-columns:minmax(0,5fr) minmax(0,6fr) } }
.adm-ann .adm-field{ margin-bottom:12px }
.adm-ann__icons{ display:flex; flex-wrap:wrap; gap:6px }
.adm-ann__icons button{ width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--adm-line, #E3E7F2); border-radius:10px; background:#fff; color:#2456F0; cursor:pointer }
.adm-ann__icons button.is-on{ border-color:#2456F0; background:#EEF2FF; box-shadow:0 0 0 2px #2456F0 inset }
.adm-ann__icons .icon, .adm-ann__pi .icon{ width:18px; height:18px }
.adm-ann__prev{ display:flex; gap:12px; align-items:flex-start; padding:12px 14px; border:1px dashed #C9D2EA; border-radius:12px; background:#F7F9FE }
.adm-ann__pi{ flex:none; width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:#EEF2FF; color:#2456F0 }
.adm-ann__prev b{ display:block; font-size:14px } .adm-ann__prev small{ display:block; font-size:13px; color:#5B6485; margin-top:2px } .adm-ann__prev em{ display:block; font-style:normal; font-size:12px; color:#8A93B2; margin-top:4px }
.adm-ann > .adm-card{ margin-top:0 }
.adm-annstats{ display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; margin-top:14px }
.adm-annstats--sm{ grid-template-columns:repeat(auto-fit,minmax(110px,1fr)); gap:8px; margin:8px 0 4px }
.adm-annst{ padding:10px 12px; border:1px solid #E3E7F2; border-radius:12px; background:#F9FAFE }
.adm-annst b{ display:block; font-size:22px; line-height:1.1; color:#0A1240 } .adm-annst b small{ font-size:13px; color:#8A93B2; font-weight:600 }
.adm-annstats--sm .adm-annst{ padding:7px 9px } .adm-annstats--sm .adm-annst b{ font-size:16px }
.adm-annst span{ display:block; font-size:12px; color:#5B6485; margin-top:2px }
.adm-annst i{ display:block; height:5px; border-radius:9px; background:#E3E7F2; margin-top:7px; overflow:hidden } .adm-annst i s{ display:block; height:100%; background:#2456F0; border-radius:9px }
.adm-annvis{ display:grid; gap:8px }
.adm-annvis label{ display:flex; gap:10px; align-items:flex-start; padding:10px 12px; border:1px solid #E3E7F2; border-radius:12px; cursor:pointer; background:#fff }
.adm-annvis label.is-on{ border-color:#2456F0; background:#F3F6FF; box-shadow:0 0 0 1px #2456F0 inset }
.adm-annvis input{ margin-top:3px; accent-color:#2456F0 } .adm-annvis b{ display:block; font-size:14px } .adm-annvis small{ display:block; font-size:12.5px; color:#5B6485 }
/* bacheca e assistenza */
.adm-wall__body{ white-space:pre-wrap; overflow-wrap:anywhere; margin:8px 0 0; line-height:1.5 }
.adm-wall__img{ display:block; max-width:min(100%,360px); max-height:280px; object-fit:contain; border-radius:10px; margin-top:10px; border:1px solid #E3E7F2 }
.adm-sup{ display:grid; gap:18px; align-items:start } @media (min-width:1100px){ .adm-sup{ grid-template-columns:minmax(0,1fr) 300px } }
.adm-sup__list{ list-style:none; margin:0; padding:0; display:grid; gap:10px }
.adm-sup__list li{ background:#fff; border:1px solid #E3E7F2; border-radius:12px; padding:12px 14px } .adm-sup__list li.is-staff{ background:#F3F6FF; border-color:#C9D6FF }
.adm-sup__who{ display:flex; justify-content:space-between; gap:12px; font-size:13px } .adm-sup__who small{ color:#8A93B2 }
.adm-sup__list p{ margin:6px 0 0; white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.5 }
.adm-sup__user p{ margin:6px 0 }
/* pagina utente */
.adm-up{ display:grid; gap:18px; align-items:start; margin-top:18px } @media (min-width:1150px){ .adm-up{ grid-template-columns:minmax(0,1fr) 340px } }
.adm-up__main, .adm-up__side{ display:grid; gap:18px }
.adm-up__id{ display:flex; gap:14px; align-items:center; margin-top:6px } .adm-up__av{ width:56px !important; height:56px !important; font-size:22px }
.adm-up__mini{ grid-template-columns:repeat(6,minmax(0,1fr)) } @media (max-width:900px){ .adm-up__mini{ grid-template-columns:repeat(3,minmax(0,1fr)) } }
.adm-up__form{ margin-top:14px; background:#F7F9FE }
.adm-grid2{ display:grid; gap:12px } @media (min-width:700px){ .adm-grid2{ grid-template-columns:1fr 1fr } }
.adm-up__award{ display:grid; grid-template-columns:auto 90px 1fr auto; gap:8px; align-items:center; margin-top:16px; padding-top:14px; border-top:1px solid #E3E7F2 }
@media (max-width:700px){ .adm-up__award{ grid-template-columns:1fr } }
.adm-err{ color:#B42318 }
/* trasferimenti */
.adm-tr{ display:grid; grid-template-columns:1fr auto 1fr; gap:10px; align-items:center; margin-top:10px }
.adm-tr__acc{ padding:10px 12px; border-radius:12px; border:1px solid #E3E7F2; display:flex; flex-direction:column; gap:2px }
.adm-tr__acc--from{ background:#FFF5F2; border-color:#F6D2C5 } .adm-tr__acc--to{ background:#EEF8F3; border-color:#C6E9D6 }
.adm-tr__acc small{ font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:#8A93B2 } .adm-tr__acc b{ font-size:16px } .adm-tr__acc span{ font-size:13px; color:#5B6485 }
.adm-tr__arrow{ color:#8A93B2 }
.adm-cover{ display:block; width:100%; max-width:640px; aspect-ratio:3/1; object-fit:cover; border-radius:12px; border:1px solid #E3E7F2; margin:10px 0 }
.adm-shopimg{ display:flex; gap:16px; align-items:center; padding:12px; border:1px solid #E3E7F2; border-radius:14px; background:#fff }
.adm-shopimg__prev{ width:110px; height:110px; flex:none; border-radius:14px; overflow:hidden; background:#EEF2FF; display:grid; place-items:center; color:#8A93B2; font-size:12px; border:1px solid #E3E7F2 }
.adm-shopimg__prev img{ width:100%; height:100%; object-fit:cover }
.adm-shopimg__act{ display:flex; flex-direction:column; gap:6px }
.adm-thumb img{ width:100%; height:100%; object-fit:cover; border-radius:inherit }
.adm-cardprev{ display:grid; gap:14px; margin:10px 0 } @media (min-width:1000px){ .adm-cardprev{ grid-template-columns:1fr 1fr } } .adm-cardprev .lcard{ max-width:26rem }
.adm-wall__ctx{ margin:.5rem 0 0; padding:.5rem .75rem; border-left:3px solid var(--line, #dfe3ee); background:rgba(0,0,0,.03); border-radius:.4rem; font-size:.85rem }
.adm-wall__ctx small{ display:block; opacity:.7 }
.adm-emogrid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr)); gap:12px }
.adm-emo{ display:grid; justify-items:center; text-align:center; gap:6px; padding:16px }
.adm-emo img{ width:56px; height:56px; object-fit:contain }
.adm-emo.is-off{ opacity:.55 }
.adm-emoprev img{ object-fit:contain !important; padding:12px; background:repeating-conic-gradient(#eef0f5 0 25%, #fff 0 50%) 0 0/16px 16px }
.adm-actkinds{ display:grid; grid-template-columns:repeat(auto-fit,minmax(10rem,1fr)); gap:8px; margin-bottom:12px }
.adm-actkinds button{ display:grid; gap:4px; text-align:left; padding:10px 12px; border:2px solid var(--line, #dfe3ee); border-radius:12px; background:#fff; font:inherit; cursor:pointer }
.adm-actkinds button small{ font-size:.75rem; opacity:.75; line-height:1.35 }
.adm-actkinds button.is-on{ border-color:#2563EB; background:#EEF4FF }
.adm-actkinds button:disabled{ opacity:.4; cursor:not-allowed }
.adm-optrow{ display:flex; align-items:center; gap:8px; margin-bottom:6px }
.adm-actres{ list-style:none; margin:0 0 14px; padding:0; display:grid; gap:6px }
.adm-actres li{ position:relative; display:flex; justify-content:space-between; gap:10px; padding:8px 12px; border-radius:8px; background:#F3F5FA; overflow:hidden }
.adm-actres li i{ position:absolute; inset:0 auto 0 0; background:#DCE7FF } .adm-actres li span, .adm-actres li b{ position:relative }
.adm-note{ padding:14px 16px; background:#FFF7E0; border-color:#F5D27A }
.adm-note a{ display:inline; padding:0; margin:0 }
.adm-xpbar{ display:flex; height:12px; border-radius:9999px; background:#E6EAF3; overflow:hidden; margin:10px 0 12px }
.adm-xpbar i.is-locked{ background:#0A1240 } .adm-xpbar i.is-free{ background:#FFC83D }
.adm-xpsplit{ display:grid; grid-template-columns:repeat(auto-fit,minmax(9rem,1fr)); gap:10px; margin-bottom:10px }
.adm-xpsplit > div{ display:grid; gap:2px; padding:10px 12px; border-radius:10px; background:#F3F5FA }
.adm-xpsplit small{ font-size:.72rem; text-transform:uppercase; letter-spacing:.05em; opacity:.7 } .adm-xpsplit b{ font-size:1.25rem } .adm-xpsplit span{ font-size:.78rem; opacity:.7 }
.adm-xpsplit .is-locked{ background:#E4E7F2 } .adm-xpsplit .is-free{ background:#FFF4D1 }
.adm-fund{ display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr)); gap:16px }
.adm-fund__card{ display:grid; gap:4px; padding:20px 22px; border-radius:16px; color:#fff; background:linear-gradient(120deg,#0A1240,#1D4ED8); box-shadow:0 4px 0 #050A26 }
.adm-fund__card.is-xp{ background:linear-gradient(120deg,#7C4A03,#E0A21A) }
.adm-fund__card small{ font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; opacity:.8; font-weight:800 }
.adm-fund__card b{ font-size:2.2rem; line-height:1.1 } .adm-fund__card span{ font-size:.82rem; opacity:.85 }
.adm-plus{ color:#15803D } .adm-minus{ color:#B91C1C }
.adm-giftrev{ display:grid; grid-template-columns:minmax(0,22rem) 1fr; gap:14px; align-items:start; flex-basis:100%; margin-top:10px }
.adm-giftrev__meta{ display:grid; gap:8px; justify-items:start }
@media (max-width:760px){ .adm-giftrev{ grid-template-columns:1fr } }
.adm-row:has(.adm-giftrev){ flex-wrap:wrap }
/* ---------- premi in xats pagati */
.adm-h3{ margin:18px 0 8px; font-size:15px; font-weight:800 }
.adm-xrsum{ display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:12px; margin-bottom:16px }
.adm-xrsum > div{ padding:16px 18px; border-radius:14px; background:var(--adm-card,#fff); border:1px solid var(--adm-line,#E3E7F0) }
.adm-xrsum small{ display:block; font-size:12px; font-weight:700; color:var(--adm-muted,#64708A); text-transform:uppercase; letter-spacing:.06em }
.adm-xrsum b{ display:block; margin:4px 0 2px; font-size:26px; line-height:1.1 }
.adm-xrsum span{ font-size:12.5px; color:var(--adm-muted,#64708A) }
.adm-xrsum .is-ok{ border-color:#9BE0C0; background:#F0FBF5 } .adm-xrsum .is-wait{ border-color:#F3D27A; background:#FFF9E8 }
.adm-xrfilters{ display:flex !important; flex-direction:row !important; flex-wrap:wrap; gap:10px; align-items:center }
.adm-xrfilters .adm-input{ height:auto !important } .adm-xrfilters .adm-input{ flex:1 1 240px; min-width:0 }
.adm-xrlist{ list-style:none; margin:0; padding:0 }
.adm-xrlist--box{ border:1px solid var(--adm-line,#E3E7F0); border-radius:12px; margin-bottom:12px }
.adm-xrrow{ display:flex; flex-wrap:wrap; gap:12px; align-items:center; padding:12px 16px; border-top:1px solid var(--adm-line,#E3E7F0) }
.adm-xrrow:first-child{ border-top:0 }
.adm-xrrow__main{ flex:1 1 260px; min-width:0; display:flex; flex-direction:column; gap:3px }
.adm-xrrow__main b{ font-size:14.5px } .adm-xrrow__main small{ font-size:12.5px; overflow-wrap:anywhere }
.adm-xrrow__act{ display:flex; gap:6px; align-items:center; flex-wrap:wrap }
.adm-xrlvl{ flex:none; display:grid; place-items:center; width:58px; height:40px; border-radius:10px; font-weight:800; font-size:13px; color:#fff; background:linear-gradient(135deg,#C98A4B,#8A4A1F) }
.adm-xrlvl--20{ background:linear-gradient(135deg,#9AA6BD,#51607D) } .adm-xrlvl--30{ background:linear-gradient(135deg,#F2C94C,#C08400) } .adm-xrlvl--40, .adm-xrlvl--50{ background:linear-gradient(135deg,#6FE3FF,#3B6BFF) }
.adm-xrproof{ width:52px; height:40px; padding:0; border:1px solid var(--adm-line,#E3E7F0); border-radius:8px; overflow:hidden; cursor:zoom-in; background:#f4f6fa }
.adm-xrproof img{ width:100%; height:100%; object-fit:cover; display:block }
.adm-xredit{ flex-basis:100%; display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:10px; align-items:end; padding:12px; border-radius:10px; background:#F6F8FC }
.adm-xrview{ width:min(760px,100%); max-height:90vh; overflow:auto; background:#fff; border-radius:14px }
.adm-xrview header{ display:flex; justify-content:space-between; align-items:center; padding:12px 16px; border-bottom:1px solid #E3E7F0; position:sticky; top:0; background:#fff }
.adm-xrview header button{ background:none; border:0; cursor:pointer } .adm-xrview img{ display:block; width:100%; height:auto }
.adm-xrform{ display:grid; gap:12px }
.adm-xrlv{ display:flex; flex-wrap:wrap; gap:6px }
.adm-xrlv button{ padding:7px 12px; border-radius:9px; border:1px solid var(--adm-line,#D6DCE8); background:#fff; font:inherit; font-weight:700; font-size:13px; cursor:pointer }
.adm-xrlv button[aria-pressed="true"]{ background:#0A1240; border-color:#0A1240; color:#fff }
.adm-fundtop{ display:grid; gap:12px; align-items:end } @media (min-width:900px){ .adm-fundtop{ grid-template-columns:2fr 1fr 1.4fr auto } }
.adm-tablewrap{ overflow-x:auto }
.adm-galrev{ display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:14px }
.adm-galrev img{ width:100%; aspect-ratio:1; object-fit:cover; border-radius:10px; display:block; margin-bottom:8px }
.adm-momline{ display:grid; grid-template-columns:28px 1fr 1fr 2.4fr auto; gap:8px; align-items:center } .adm-momline__n{ width:26px; height:26px; border-radius:50%; background:#0A1240; color:#fff; display:grid; place-items:center; font-weight:800; font-size:12px }
@media (max-width:900px){ .adm-momline{ grid-template-columns:28px 1fr 1fr } .adm-momline__t{ grid-column:2 / -1 } }
.adm-moms{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:14px } .adm-mom p{ margin:6px 0 } .adm-mom img{ width:100%; max-height:160px; object-fit:cover; border-radius:8px; margin-top:6px } .adm-mom.is-off{ opacity:.6 }
.adm-crea{ display:grid; grid-template-columns:repeat(auto-fill,minmax(360px,1fr)); gap:14px } .adm-crea img{ width:100%; border-radius:10px; display:block; margin-bottom:8px; background:#0A1240 }

/* pagina Games (MewBots arcade) */
.gadm-list{ display:grid; grid-template-columns:repeat(auto-fill, minmax(260px,1fr)); gap:14px }
.gadm-g{ display:grid; gap:8px; align-content:start; padding:18px; background:#fff; border:1px solid var(--line); border-radius:16px; color:var(--ink); transition:border-color .15s, transform .15s }
.gadm-g:hover{ border-color:var(--accent); transform:translateY(-2px) }
.gadm-g.is-off{ background:var(--surface) }
.gadm-g.is-off .gadm-g__ico{ background:#CBD5E1 }
.gadm-g__ico{ width:42px; height:42px; border-radius:12px; display:grid; place-items:center; background:linear-gradient(135deg,#2456F0,#7C4DFF); color:#fff }
.gadm-g__top{ display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:16px }
.gadm-g__d{ color:var(--muted); font-size:13px; line-height:1.45 }
.gadm-g__meta{ display:flex; flex-wrap:wrap; gap:6px }
.gadm-g__meta span{ font-size:11.5px; font-weight:700; padding:3px 8px; border-radius:999px; background:var(--surface); color:var(--muted) }
.gadm-g__meta span.is-ours{ background:#E0E7FF; color:#3730A3 }
.gadm-dot{ display:inline-flex; align-items:center; gap:5px; font-size:12px; font-weight:800; padding:3px 9px; border-radius:999px; background:#F1F5F9; color:#64748B; vertical-align:middle }
.gadm-dot::before{ content:''; width:7px; height:7px; border-radius:50%; background:#94A3B8 }
.gadm-dot.is-on{ background:#DCFCE7; color:#166534 }
.gadm-dot.is-on::before{ background:#22C55E }
.gadm-form{ display:grid; grid-template-columns:repeat(auto-fill, minmax(240px,1fr)); gap:16px 20px; margin-top:12px }
.gadm-pre{ white-space:pre-wrap; font-size:12.5px; background:var(--surface); padding:12px; border-radius:10px }
.gadm-kv > div{ display:contents }
.gadm-code{ font-size:12px; overflow-wrap:anywhere }
.gadm-facts{ display:flex; flex-wrap:wrap; gap:8px; margin-top:10px }
.gadm-facts span{ display:inline-flex; align-items:center; gap:6px; font-size:13px; font-weight:600; padding:5px 10px; border-radius:10px; background:var(--surface); white-space:nowrap }
.gadm-facts code{ font-weight:800 }
.gadm-docs{ display:grid; gap:4px; max-width:860px }
.gadm-docs section{ padding:4px 0 10px; border-bottom:1px solid var(--line) }
.gadm-docs section:last-child{ border-bottom:0 }
.gadm-docs p{ margin:0; line-height:1.55 }
.gadm-ul{ margin:0; padding-left:20px; list-style:disc; display:grid; gap:5px; line-height:1.5 }
.gadm-warn{ background:#FFF7ED; border:1px solid #FED7AA !important; border-radius:12px; padding:4px 14px 12px !important; margin-top:6px }
.gadm-warn h3{ display:flex; align-items:center; gap:6px; color:#9A3412 }
.gadm-docs .adm-dl{ grid-template-columns:200px 1fr }
.gadm-ul li::marker{ color:var(--accent) }
.gadm-sl{ overflow-x:auto }
.gadm-sl .adm-table td{ padding:6px 8px }
.sadm-strip{ display:grid; grid-template-columns:repeat(12, minmax(54px,1fr)); gap:8px; margin:6px 0 14px; overflow-x:auto }
.sadm-strip .stk{ min-width:54px }

/* ---------- navigazione 2026: sidebar a gruppi, schede, filtri */
.adm-nav{ gap:4px }
.adm-nav__find{ display:flex; align-items:center; gap:8px; margin:0 2px 8px; padding:8px 12px; border-radius:11px; background:rgba(255,255,255,.08); color:#A5B4FC }
.adm-nav__find input{ flex:1; min-width:0; border:0; background:none; color:#fff; font:inherit; font-size:14px; outline:none }
.adm-nav__find input::placeholder{ color:#8C97C9 }
.adm-nav__find:focus-within{ background:rgba(255,255,255,.14); box-shadow:0 0 0 2px rgba(255,200,61,.5) }
.adm-nav__list{ display:flex; flex-direction:column; gap:1px }
.adm-nav__g{ border-radius:12px }
.adm-nav__g.is-open{ background:rgba(255,255,255,.04); padding-bottom:4px }
.adm-nav__gh{ width:100%; display:flex; align-items:center; gap:10px; padding:9px 12px; border:0; border-radius:11px; background:none; color:#E0E7FF; font:inherit; font-size:13px; font-weight:800; letter-spacing:.02em; cursor:pointer; text-align:left }
.adm-nav__gh:hover{ background:rgba(255,255,255,.07) }
.adm-nav__gh span:first-of-type{ flex:1 }
.adm-nav__g.is-cur .adm-nav__gh{ color:#FFC83D }
.adm-nav__chev{ transition:transform .15s; opacity:.7 }
.adm-nav__g.is-open .adm-nav__chev{ transform:rotate(90deg) }
.adm-nav__g .adm-nav__list a{ padding-left:22px }
.adm-nav a{ gap:10px }
.adm-nav a span:first-of-type{ flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.adm-nav a .ico{ flex:none; opacity:.85 }
.adm-nav a[aria-current="page"] .ico{ opacity:1; color:#FFC83D }

/* schede: sezioni della pagina (sottolineate, con icona e numero) */
.adm-tabs{ display:flex; gap:2px; width:auto; max-width:100%; margin:0 0 20px; padding:0; border:0; border-bottom:2px solid var(--line); border-radius:0; background:none; overflow-x:auto; scrollbar-width:none }
.adm-tabs::-webkit-scrollbar{ display:none }
.adm-tabs a{ position:relative; display:inline-flex; align-items:center; gap:8px; padding:11px 16px 12px; margin-bottom:-2px; border:0; border-bottom:3px solid transparent; border-radius:10px 10px 0 0; background:none; color:var(--muted); font-size:14.5px; font-weight:800; white-space:nowrap; box-shadow:none }
.adm-tabs a:hover{ color:var(--ink); background:var(--surface) }
.adm-tabs a[aria-current="page"]{ color:var(--ink); background:none; border-bottom-color:var(--accent) }
.adm-tabs a[aria-current="page"] .ico{ color:var(--accent) }
.adm-tabs em{ font-style:normal; min-width:20px; height:20px; padding:0 6px; border-radius:999px; display:inline-grid; place-items:center; background:#EF4444; color:#fff; font-size:11px; font-weight:800 }

/* filtri: pillole separate, chiaramente diverse dalle schede */
.adm-seg{ display:inline-flex; flex-wrap:wrap; gap:6px; padding:0; border:0; background:none; border-radius:0; overflow:visible }
.adm-seg button{ padding:6px 13px; border-radius:999px; border:1.5px solid var(--line); background:#fff; color:var(--muted); font-size:13px; font-weight:700 }
.adm-seg button:hover{ border-color:var(--accent); color:var(--ink) }
.adm-seg button[aria-pressed="true"]{ background:color-mix(in srgb, var(--accent) 12%, #fff); border-color:var(--accent); color:var(--accent) }

/* ---------- KPI di ogni pagina: vanno sotto il titolo della pagina */
.adm-body{ display:flex; flex-direction:column }
.adm-body > *{ order:3 }
.adm-body > .adm-head{ order:1 }
.adm-body > .kpis{ order:2 }
.kpis{ display:grid; grid-template-columns:repeat(auto-fill, minmax(200px, 1fr)); gap:12px; margin:0 0 20px }
.kpi{ position:relative; display:grid; align-content:start; gap:2px; min-height:118px; padding:14px 16px 12px; border-radius:16px; background:#fff; border:1px solid var(--line); overflow:hidden }
.kpis.is-loading .kpi{ background:linear-gradient(90deg, #fff 30%, var(--surface) 50%, #fff 70%); background-size:300% 100%; animation:kpiload 1.2s linear infinite }
@keyframes kpiload{ to{ background-position:-150% 0 } }
.kpi.is-hot{ border-color:#FCD34D; background:#FFFBEB }
.kpi__k{ display:flex; align-items:center; gap:5px; font-size:11.5px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--muted) }
.kpi.is-hot .kpi__k{ color:#B45309 }
.kpi__v{ font:800 30px/1.1 Fredoka, sans-serif; color:var(--ink); margin-top:4px }
.kpi__d{ font-size:12px; color:var(--muted); padding-right:104px; min-height:16px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.kpi__d em{ font-style:normal; font-weight:800; padding:1px 6px; border-radius:6px; background:#F1F5F9; color:#475569; margin-right:3px }
.kpi__d em.is-up{ background:#DCFCE7; color:#15803D }
.kpi__d em.is-down{ background:#FEE2E2; color:#B91C1C }
.kpi__spark{ position:absolute; right:12px; bottom:12px; width:96px; height:34px }
.kpi__area{ fill:color-mix(in srgb, var(--accent) 14%, transparent) }
.kpi__line{ fill:none; stroke:var(--accent); stroke-width:2; stroke-linejoin:round; stroke-linecap:round; vector-effect:non-scaling-stroke }
.kpi__dot{ fill:var(--accent) }
.kpi__area.is-hot{ fill:rgba(245,158,11,.18) } .kpi__line.is-hot{ stroke:#F59E0B } .kpi__dot.is-hot{ fill:#F59E0B }

/* guida della pagina */
.adm-body > .pg{ order:1 }
.adm-body > .adm-head{ order:0 }
.pg{ margin:0 0 16px; border-radius:16px; background:linear-gradient(135deg, #EEF2FF, #F5F3FF); border:1px solid #DDD6FE }
.pg__h{ width:100%; display:flex; align-items:center; gap:12px; padding:12px 16px; border:0; background:none; cursor:pointer; text-align:left; font:inherit; color:var(--ink) }
.pg__ic{ flex:none; width:30px; height:30px; border-radius:10px; display:grid; place-items:center; background:#7C3AED; color:#fff }
.pg__what{ flex:1; font-size:14.5px; font-weight:700 }
.pg__more{ flex:none; display:inline-flex; align-items:center; gap:4px; font-size:13px; font-weight:800; color:#6D28D9 }
.pg.is-open .pg__more .ico{ transform:rotate(90deg) }
.pg__body{ display:grid; grid-template-columns:1fr 1fr; gap:16px; padding:0 16px 14px 58px }
.pg__body h4{ display:flex; align-items:center; gap:6px; margin:0 0 6px; font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:#6D28D9 }
.pg__body ul{ margin:0; padding-left:18px; display:grid; gap:4px; font-size:14px; color:#334155 }
@media (max-width:760px){ .pg__body{ grid-template-columns:1fr; padding-left:16px } .pg__more{ display:none } }

/* Games → Players */
.gp{ display:grid; grid-template-columns:320px 1fr; gap:16px; align-items:start }
.gp-list{ position:sticky; top:12px; display:grid; gap:8px; padding:12px; border-radius:18px; background:#fff; border:1px solid var(--line); max-height:calc(100vh - 120px); overflow:auto }
.gp-find{ display:flex; align-items:center; gap:8px; padding:9px 12px; border-radius:12px; border:1.5px solid var(--line); color:var(--muted) }
.gp-find:focus-within{ border-color:var(--accent) }
.gp-find input{ flex:1; min-width:0; border:0; outline:none; font:inherit; font-size:14px; color:var(--ink); background:none }
.gp-list__k{ margin:0; font-size:12px; color:var(--muted); font-weight:700 }
.gp-list ul{ list-style:none; margin:0; padding:0; display:grid; gap:2px }
.gp-list li button{ width:100%; display:flex; align-items:center; gap:10px; padding:8px; border:0; border-radius:12px; background:none; cursor:pointer; text-align:left; font:inherit; color:var(--ink) }
.gp-list li button:hover{ background:var(--surface) }
.gp-list li button.is-on{ background:color-mix(in srgb, var(--accent) 12%, #fff); box-shadow:inset 3px 0 0 var(--accent) }
.gp-list__n{ flex:1; min-width:0; display:grid }
.gp-list__n b, .gp-list__n small{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.gp-list__n small{ color:var(--muted); font-size:12px }
.gp-list__c{ min-width:22px; height:22px; padding:0 6px; border-radius:999px; display:grid; place-items:center; background:#EDE9FE; color:#6D28D9; font-size:11px; font-weight:800 }
.gp-none{ padding:10px; font-size:13px }
.gp-av{ flex:none; width:52px; height:52px; border-radius:50%; overflow:hidden; display:grid; place-items:center; background:#FFC83D; color:var(--ink); font-weight:900; font-size:20px; border:2px solid var(--ink) }
.gp-av img{ width:100%; height:100%; object-fit:cover }
.gp-av.is-sm{ width:36px; height:36px; font-size:14px; border-width:1.5px }
.gp-main{ min-width:0 }
.gp-intro{ display:grid; justify-items:start; gap:8px; padding:28px; border-radius:18px; background:#fff; border:1px dashed var(--line); color:var(--ink) }
.gp-intro > .ico{ color:var(--accent) }
.gp-intro h3{ margin:0; font:800 22px Fredoka, sans-serif }
.gp-intro p{ margin:0; color:var(--muted) }
.gp-intro ul{ margin:0; padding-left:18px; display:grid; gap:4px }
.gp-card{ display:grid; gap:16px; padding:20px; border-radius:18px; background:#fff; border:1px solid var(--line) }
.gp-card__h{ display:flex; align-items:center; gap:14px; flex-wrap:wrap }
.gp-card__h > div{ flex:1; min-width:200px }
.gp-card__h h3{ margin:0; font:800 21px Fredoka, sans-serif; color:var(--ink) }
.gp-card__h h3 small{ font:600 14px Nunito, sans-serif; color:var(--muted) }
.gp-card__h p{ margin:2px 0 0; color:var(--muted); font-size:14px }
.gp-x{ width:32px; height:32px; border-radius:50%; border:0; background:var(--surface); display:grid; place-items:center; cursor:pointer }
.gp-state{ display:inline-flex; align-items:center; gap:6px; padding:7px 12px; border-radius:999px; font-weight:800; font-size:13px }
.gp-state.is-ok{ background:#DCFCE7; color:#166534 } .gp-state.is-no{ background:#FEE2E2; color:#991B1B }
.gp-why{ margin:0; display:flex; align-items:center; gap:8px; padding:10px 14px; border-radius:12px; background:#FEF2F2; color:#991B1B; font-weight:700 }
.gp-sec h4{ margin:0 0 10px; font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--muted) }
.gp-meters{ display:grid; grid-template-columns:1fr 1fr; gap:14px }
.gp-meter__t{ display:flex; justify-content:space-between; font-size:13.5px; margin-bottom:6px; color:var(--muted) }
.gp-meter__t b{ color:var(--ink) }
.gp-meter__bar{ height:10px; border-radius:5px; background:var(--surface); overflow:hidden }
.gp-meter__bar i{ display:block; height:100%; border-radius:5px }
.gp-meter__bar i.is-win{ background:#22C55E } .gp-meter__bar i.is-lose{ background:#EF4444 }
.gp-tag{ display:inline-block; padding:3px 9px; border-radius:999px; font-size:12px; font-weight:800 }
.gp-tag.is-ok{ background:#DCFCE7; color:#166534 } .gp-tag.is-no{ background:#F1F5F9; color:#475569 }
.gp-plus{ color:#15803D; font-weight:800 } .gp-minus{ color:#B91C1C; font-weight:800; margin-left:6px }
.gp-empty{ display:flex; gap:12px; align-items:flex-start; padding:14px; border-radius:12px; background:#FFFBEB; color:#92400E }
.gp-empty p{ margin:0 }
@media (max-width:900px){ .gp{ grid-template-columns:1fr } .gp-list{ position:static; max-height:340px } .gp-meters{ grid-template-columns:1fr } }

/* ---------- Media: cartelle + griglia + dettaglio */
.md{ display:grid; grid-template-columns:270px 1fr auto; gap:16px; align-items:start }
.md-tree{ position:sticky; top:12px; display:grid; gap:2px; padding:12px; border-radius:18px; background:#fff; border:1px solid var(--line); max-height:calc(100vh - 110px); overflow:auto }
.md-tree__k{ margin:12px 6px 4px; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); display:flex; justify-content:space-between; gap:6px }
.md-tree__k small{ letter-spacing:0; text-transform:none; font-weight:700 }
.md-node{ display:flex; align-items:center; gap:9px; width:100%; padding:8px 10px; border:0; border-radius:10px; background:none; cursor:pointer; text-align:left; font:inherit; font-size:14px; font-weight:700; color:var(--ink) }
.md-node.is-sub{ padding-left:18px; font-weight:600 }
.md-node span:not(.md-av){ flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.md-node small{ font-size:11.5px; color:var(--muted); font-weight:800 }
.md-node:hover{ background:var(--surface) }
.md-node.is-on{ background:color-mix(in srgb, var(--accent) 12%, #fff); box-shadow:inset 3px 0 0 var(--accent) }
.md-node.is-on .ico{ color:var(--accent) }
.md-find{ margin:4px 0 6px }
.md-av{ flex:none; width:24px; height:24px; border-radius:50%; overflow:hidden; display:grid; place-items:center; background:#FFC83D; color:var(--ink); font-size:11px; font-weight:900 }
.md-av img{ width:100%; height:100%; object-fit:cover }
.md-main{ min-width:0; display:grid; gap:14px; align-content:start }
.md-bar{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 14px; border-radius:14px; background:#fff; border:1px solid var(--line) }
.md-crumb{ display:flex; align-items:center; gap:4px; flex-wrap:wrap; color:var(--muted) }
.md-crumb button{ border:0; background:none; padding:2px 4px; border-radius:6px; font:inherit; font-weight:800; color:var(--accent); cursor:pointer }
.md-crumb button:hover{ background:var(--surface) }
.md-crumb b{ color:var(--ink) }
.md-count{ font-size:13px; font-weight:800; color:var(--muted) }
.md-folders{ display:grid; gap:8px }
.md-folders p{ margin:0 }
.md-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); gap:12px }
.md-tile{ display:grid; gap:4px; padding:8px; border-radius:14px; border:2px solid transparent; background:#fff; box-shadow:0 1px 0 var(--line), 0 0 0 1px var(--line); cursor:pointer; text-align:left; font:inherit; color:var(--ink); transition:transform .12s }
.md-tile:hover{ transform:translateY(-2px) }
.md-tile.is-on{ border-color:var(--accent) }
.md-tile.is-loading{ height:170px; background:linear-gradient(90deg, #fff 30%, var(--surface) 50%, #fff 70%); background-size:300% 100%; animation:kpiload 1.2s linear infinite }
.md-tile__img{ aspect-ratio:1; border-radius:10px; overflow:hidden; background:repeating-conic-gradient(#F1F5F9 0 25%, #fff 0 50%) 0 0/16px 16px; display:grid; place-items:center }
.md-tile__img img{ width:100%; height:100%; object-fit:contain }
.md-tile__t{ display:flex; align-items:center; gap:4px; font-size:12.5px; font-weight:800 }
.md-tile__s{ font-size:11.5px; color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.md-empty{ display:grid; justify-items:center; gap:6px; padding:50px; border-radius:18px; border:2px dashed var(--line); color:var(--muted) }
.md-pages{ display:flex; align-items:center; justify-content:center; gap:12px; font-weight:700; color:var(--muted) }
.md-detail{ position:sticky; top:12px; width:320px; display:grid; gap:12px; padding:14px; border-radius:18px; background:#fff; border:1px solid var(--line); max-height:calc(100vh - 110px); overflow:auto }
.md-detail__h{ display:flex; align-items:center; justify-content:space-between }
.md-detail__img{ display:grid; place-items:center; border-radius:12px; overflow:hidden; background:repeating-conic-gradient(#F1F5F9 0 25%, #fff 0 50%) 0 0/16px 16px; max-height:260px }
.md-detail__img img{ max-width:100%; max-height:260px; object-fit:contain }
.md-dl{ margin:0; display:grid; gap:4px; font-size:13px }
.md-dl div{ display:flex; justify-content:space-between; gap:10px }
.md-dl dt{ color:var(--muted); font-weight:700 }
.md-dl dd{ margin:0; text-align:right; overflow-wrap:anywhere }
.md-sec h4{ margin:0 0 6px; font-size:11.5px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--muted) }
.md-sec h4 small{ text-transform:none; letter-spacing:0; font-weight:600 }
.md-uses{ list-style:none; margin:0; padding:0; display:grid; gap:4px; font-size:13px }
.md-uses li{ display:flex; gap:6px; align-items:center; padding:6px 8px; border-radius:8px; background:#EEF2FF }
.md-free{ margin:0; display:flex; align-items:center; gap:6px; font-size:13px; color:#15803D; font-weight:700 }
.md-alt{ display:flex; gap:6px }
.md-alt .adm-input{ flex:1; min-width:0 }
.md-actions{ display:flex; flex-wrap:wrap; gap:6px }
@media (max-width:1200px){ .md{ grid-template-columns:240px 1fr } .md-detail{ position:fixed; right:12px; top:12px; bottom:12px; max-height:none; z-index:50; box-shadow:0 20px 50px rgba(10,18,64,.25) } }
@media (max-width:800px){ .md{ grid-template-columns:1fr } .md-tree{ position:static; max-height:300px } .md-detail{ left:12px; width:auto } }

/* ---------- moderazione: card di post, commenti e foto */
.mod-list{ display:grid; gap:14px }
.mod-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(240px, 1fr)); gap:14px }
.mod{ display:grid; gap:12px; padding:16px 18px; border-radius:18px; background:#fff; border:1px solid var(--line); box-shadow:0 1px 2px rgba(10,18,64,.04) }
.mod.is-wait{ border-left:4px solid #F59E0B }
.mod.is-pinned{ border-left:4px solid var(--accent) }
.mod__h{ display:flex; justify-content:space-between; align-items:flex-start; gap:12px; flex-wrap:wrap }
.mod__who{ display:flex; align-items:center; gap:10px; min-width:0 }
.mod__av{ flex:none; width:42px; height:42px; border-radius:50%; overflow:hidden; display:grid; place-items:center; background:#FFC83D; color:var(--ink); font-weight:900; border:2px solid #fff; box-shadow:0 0 0 1px var(--line) }
.mod__av img{ width:100%; height:100%; object-fit:cover }
.mod__n{ display:grid; min-width:0 }
.mod__n a{ color:var(--ink); text-decoration:none; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.mod__n a span{ color:var(--muted); font-weight:600; font-size:13px }
.mod__n small{ color:var(--muted); font-size:12.5px }
.mod__tags{ display:flex; flex-wrap:wrap; gap:6px; align-items:center }
.mod__tag, .mod__st{ display:inline-flex; align-items:center; gap:4px; padding:3px 9px; border-radius:999px; font-size:12px; font-weight:800; background:#F1F5F9; color:#475569; white-space:nowrap }
.mod__tag.is-green{ background:#DCFCE7; color:#166534 } .mod__tag.is-gold{ background:#FEF3C7; color:#92400E } .mod__tag.is-blue{ background:#DBEAFE; color:#1E40AF }
.mod__st.is-wait{ background:#FEF3C7; color:#92400E } .mod__st.is-ok{ background:#F0FDF4; color:#15803D } .mod__st.is-no{ background:#FEF2F2; color:#B91C1C }
.mod__content{ display:grid; gap:14px }
.mod__content.has-img{ grid-template-columns:1fr 200px; align-items:start }
.mod__body{ font-size:16px; line-height:1.55; color:var(--ink); padding:12px 14px; border-radius:12px; background:var(--surface); overflow-wrap:anywhere }
.mod__img{ display:block; border-radius:12px; overflow:hidden; border:1px solid var(--line) }
.mod__img img{ display:block; width:100%; max-height:200px; object-fit:cover }
.mod__photo{ display:block; border-radius:12px; overflow:hidden; aspect-ratio:1; background:var(--surface) }
.mod__photo img{ width:100%; height:100%; object-fit:cover }
.mod__cover{ display:block; width:100%; max-height:220px; object-fit:cover; border-radius:12px }
.mod__ctx{ display:flex; gap:8px; align-items:flex-start; padding:10px 12px; border-radius:10px; border:1px dashed var(--line); color:var(--muted); font-size:13.5px; text-decoration:none }
.mod__ctx b{ color:var(--ink) }
.mod__ctx.is-plain{ margin:0 }
.mod__hint{ margin:0; font-size:13px; color:var(--muted) }
.mod__reason{ margin:0; display:flex; gap:8px; align-items:center; padding:9px 12px; border-radius:10px; background:#FEF2F2; color:#991B1B; font-size:13.5px; font-weight:600 }
.mod__f{ display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; padding-top:12px; border-top:1px solid var(--line) }
.mod__main, .mod__side{ display:flex; flex-wrap:wrap; gap:8px; align-items:center }
.mod__btn{ display:inline-flex; align-items:center; gap:6px; padding:8px 14px; border-radius:10px; border:1.5px solid var(--line); background:#fff; color:var(--ink); font:inherit; font-size:13.5px; font-weight:800; cursor:pointer }
.mod__btn:hover{ border-color:var(--ink) }
.mod__btn.is-ok{ background:#16A34A; border-color:#16A34A; color:#fff }
.mod__btn.is-ok:hover{ background:#15803D }
.mod__btn.is-no{ color:#B91C1C; border-color:#FECACA; background:#FFF5F5 }
.mod__btn.is-no:hover{ border-color:#B91C1C }
.mod__btn.is-on{ background:#DBEAFE; border-color:#93C5FD; color:#1E40AF }
.mod__link{ display:inline-flex; align-items:center; gap:5px; padding:6px 8px; border:0; border-radius:8px; background:none; color:var(--muted); font:inherit; font-size:13px; font-weight:700; cursor:pointer; text-decoration:none }
.mod__link:hover{ background:var(--surface); color:var(--ink) }
.mod__link.is-del:hover{ background:#FEF2F2; color:#B91C1C }
.mod__stats{ display:inline-flex; align-items:center; gap:5px; color:var(--muted); font-size:13px; font-weight:700; margin-right:6px }
.mod-empty{ display:grid; justify-items:center; gap:6px; padding:44px; border-radius:18px; background:#fff; border:2px dashed var(--line); color:#15803D }
.mod-empty p{ margin:0; color:var(--muted); font-weight:700 }
@media (max-width:700px){ .mod__content.has-img{ grid-template-columns:1fr } .mod__f{ align-items:flex-start } }

/* ============ stile unico delle pagine admin: barra filtri, card degli elenchi, stati vuoti ============ */
.adm-toolbar{ display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:0 0 14px }
.adm-toolbar::before{ content:'Show'; font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--muted) }
.adm-head{ align-items:flex-start }

/* card degli elenchi (commenti, messaggi, idee, richieste…) come le card di moderazione */
.adm-msgs{ display:grid; gap:14px }
.adm-card.adm-msg{ display:grid; gap:10px; padding:16px 18px; border-radius:18px; background:#fff; border:1px solid var(--line); box-shadow:0 1px 2px rgba(10,18,64,.04); margin:0 }
.adm-card.adm-msg.is-new{ border-left:4px solid #F59E0B; background:#fff }
.adm-card.adm-msg.is-hidden{ opacity:.75; border-left:4px solid #CBD5E1 }
.adm-msg__top{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:0 }
.adm-msg__top > b{ font-size:15.5px; color:var(--ink) }
.adm-msg__top > a{ font-weight:700; color:var(--accent); text-decoration:none }
.adm-msg__top > small{ margin-left:auto; color:var(--muted); font-size:12.5px }
.adm-msg .adm-pill{ margin:0; padding:3px 9px; border-radius:999px; font-size:12px; font-weight:800; background:#F1F5F9; color:#475569 }
.adm-msg.is-new .adm-pill:first-of-type{ background:#FEF3C7; color:#92400E }
.adm-msg__t, .adm-msg .adm-wall__body{ margin:0; font-size:15.5px; line-height:1.55; color:var(--ink); padding:12px 14px; border-radius:12px; background:var(--surface); white-space:pre-wrap; overflow-wrap:anywhere }
.adm-msg .adm-quote, .adm-msg .adm-wall__ctx{ margin:0; display:flex; gap:8px; align-items:flex-start; padding:9px 12px; border-radius:10px; border:1px dashed var(--line); font-size:13.5px }
.adm-msg > .adm-actions{ display:flex; flex-wrap:wrap; gap:8px; padding-top:12px; border-top:1px solid var(--line); margin:0 }
.adm-msg > .adm-actions .adm-btn{ border-radius:10px; font-size:13.5px; padding:8px 14px }
.adm-msg > .adm-actions .adm-btn:not(.adm-btn--ghost){ background:#16A34A; border-color:#16A34A; color:#fff; box-shadow:none }
.adm-msg > .adm-actions .adm-btn--ghost:last-child{ margin-left:auto; border-color:transparent; color:var(--muted) }
.adm-msg > .adm-actions .adm-btn--ghost:last-child:hover{ background:#FEF2F2; color:#B91C1C }
.adm-msg .adm-input{ margin:0 !important }

/* stato vuoto: riquadro chiaro con icona, mai una riga di testo sola */
.adm-empty, p.adm-empty, div.adm-empty{ display:grid !important; justify-items:center; gap:8px; margin:0; padding:40px 20px !important; border-radius:18px; background:#fff; border:2px dashed var(--line) !important; color:var(--muted); font-weight:700; text-align:center; box-shadow:none !important }
.adm-empty::before{ content:''; width:40px; height:40px; border-radius:50%; background:#DCFCE7 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316A34A' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/20px no-repeat }
td.adm-empty, .adm-table .adm-empty{ display:table-cell !important; border:0 !important; padding:30px !important }
td.adm-empty::before, .adm-table .adm-empty::before{ display:none }

/* righe di elenco (support, liste) */
.adm-rows > li{ transition:background .12s }
.adm-rows > li:hover{ background:var(--surface) }
.adm-body > .adm-ph{ order:0 }

/* i riquadri numerici propri di alcune pagine hanno lo stesso aspetto dei KPI */
.adm-kpis, .adm-xrsum{ display:grid !important; grid-template-columns:repeat(auto-fill, minmax(200px, 1fr)) !important; gap:12px !important; margin:0 0 20px !important }
.adm-kpi, .adm-xrsum > div{ display:grid !important; align-content:start; gap:2px; min-height:96px; padding:14px 16px 12px !important; border-radius:16px !important; background:#fff !important; border:1px solid var(--line) !important; box-shadow:none !important; text-align:left }
.adm-kpi small, .adm-xrsum > div small{ font-size:11.5px !important; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--muted) !important }
.adm-kpi b, .adm-xrsum > div b{ font:800 30px/1.1 Fredoka, sans-serif !important; color:var(--ink) !important; margin-top:4px }
.adm-kpi span, .adm-xrsum > div span{ font-size:12px; color:var(--muted) }
.adm-kpi[aria-pressed="true"], .adm-kpi.is-on{ border-color:var(--accent) !important; box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 15%, transparent) !important }
.adm-xrsum > div.is-ok{ background:#F0FDF4 !important; border-color:#BBF7D0 !important }
.adm-xrsum > div.is-wait{ background:#FFFBEB !important; border-color:#FDE68A !important }
.adm-subhead{ display:flex; justify-content:space-between; align-items:center; gap:12px; margin:8px 0 10px }
.mod__av.is-sm{ width:36px; height:36px; font-size:14px }
.adm-msg__top .mod__who{ margin-right:4px }
.adm-msg__top .mod__n small a{ color:var(--muted) }
.adm-msg__t b{ display:block; margin-bottom:4px; font-size:16.5px }
/* API chat di MewBots */
.adm-chatapi{ margin-top:14px; padding-top:14px; border-top:1px solid var(--line) }
.adm-chatapi h3{ display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin:0 0 10px; font-size:15px } .adm-chatapi h3 small{ font-weight:600; color:var(--muted); font-size:12px }
.adm-chatapi__st{ list-style:none; margin:0 0 10px; padding:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:8px }
.adm-chatapi__st li{ display:flex; gap:8px; align-items:flex-start; padding:10px; border-radius:10px; border:1px solid var(--line); font-size:13px } .adm-chatapi__st small{ color:var(--muted) }
.adm-chatapi__st li.is-ok{ border-color:var(--ok) } .adm-chatapi__st li.is-ok > svg{ color:var(--ok) } .adm-chatapi__st li.is-ko{ border-color:var(--err) } .adm-chatapi__st li.is-ko > svg{ color:var(--err) }
.adm-chatapi__ppl{ display:flex; flex-wrap:wrap; gap:5px; margin:8px 0 } .adm-chatapi__ppl span{ padding:3px 9px; border-radius:99px; border:1px solid var(--line); font-size:12px; font-weight:700 } .adm-chatapi__ppl .is-site{ border-color:var(--ok) }
.adm-chatapi__ev{ list-style:none; margin:6px 0 0; padding:0; display:flex; flex-direction:column; gap:3px; font-size:13px } .adm-chatapi__ev small{ color:var(--muted); font-variant-numeric:tabular-nums }
/* Chat insights */
.ci{ display:flex; flex-direction:column; gap:18px } .ci .adm-card + .adm-card, .ci .adm-grid2{ margin-top:0 }
.ci-bar{ display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px } .ci-bar__src{ display:inline-flex; align-items:center; gap:5px; font-size:13px }
.ci-note{ flex-direction:row; align-items:center; gap:8px; padding:12px 16px; font-size:13.5px }
.ci-h3{ margin:0 0 10px; font-size:14px; font-weight:800 } .ci-h3 small{ font-weight:600 }
.ci-small{ font-size:12.5px; margin:0 }
.adm-h2 small{ font-family:'Nunito',sans-serif; font-size:12.5px; font-weight:700; margin-left:6px }
.ci-live__head{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px }
.ci-live__big{ display:flex; align-items:center; gap:12px } .ci-live__big b{ font:700 52px/1 Fredoka, sans-serif } .ci-live__big span:last-child{ font-weight:800; color:var(--muted) }
.ci-live__dot{ width:14px; height:14px; border-radius:50%; background:#CBD5E1 } .ci-live__dot[data-on="1"]{ background:#22C55E; box-shadow:0 0 0 5px rgba(34,197,94,.18); animation:cipulse 2s infinite }
@keyframes cipulse{ 50%{ box-shadow:0 0 0 9px rgba(34,197,94,.06) } } @media (prefers-reduced-motion:reduce){ .ci-live__dot{ animation:none } }
.ci-live__facts{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:8px } .ci-live__facts li{ padding:6px 12px; border-radius:999px; background:var(--surface); font-size:13px; font-weight:700; color:var(--muted) } .ci-live__facts b{ color:var(--ink) }
.ci-live__body{ display:grid; grid-template-columns:minmax(220px,1fr) 2fr; gap:24px; align-items:start }
.ci-live__ph{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; margin-bottom:10px } .ci-live__ph .ci-h3{ margin:0 }
.ci-chips{ display:flex; flex-wrap:wrap; gap:4px } .ci-chips button{ padding:4px 11px; border-radius:999px; border:1px solid var(--line); background:#fff; font:inherit; font-size:12.5px; font-weight:800; color:var(--muted); cursor:pointer } .ci-chips button.is-on{ background:var(--ink); border-color:var(--ink); color:#fff }
.ci-people{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); gap:6px; max-height:300px; overflow:auto }
.ci-people li{ display:flex; flex-direction:column; padding:7px 10px; border-radius:10px; border:1px solid var(--line); min-width:0 } .ci-people small{ color:var(--subtle); font-size:11.5px; font-weight:700 }
.ci-people__n{ font-weight:800; font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis } .ci-people__n a{ color:var(--accent) }
.ci-people li.is-staff{ border-color:#86EFAC; background:#F0FDF4 } .ci-people li.is-new{ border-color:#FCD34D; background:#FFFBEB } .ci-people__none{ color:var(--muted); font-size:13px; border:0 !important }
.ci-kpis{ margin:0 } .ci-kpi{ min-height:104px } .ci-kpi__d{ padding-right:0; white-space:normal }
.ci-heat__grid{ display:grid; grid-template-columns:34px repeat(24, minmax(0,1fr)); gap:2px; font-size:10.5px; font-weight:700; color:var(--subtle) }
.ci-heat__row{ display:contents } .ci-heat__d{ align-self:center } .ci-heat__h{ text-align:left; height:14px }
.ci-heat__c{ display:block; aspect-ratio:1; min-height:10px; border-radius:3px; background:#F2F4FB }
.ci-heat__c.is-blue.l0{ background:#EEF2FC } .ci-heat__c.is-blue.l1{ background:#D4DFFD } .ci-heat__c.is-blue.l2{ background:#A9C0FA } .ci-heat__c.is-blue.l3{ background:#7598F5 } .ci-heat__c.is-blue.l4{ background:#4472F2 } .ci-heat__c.is-blue.l5{ background:#1F47C9 }
.ci-heat__c.is-orange.l0{ background:#F3F4F6 } .ci-heat__c.is-orange.l1{ background:#FDE5CF } .ci-heat__c.is-orange.l2{ background:#FBC594 } .ci-heat__c.is-orange.l3{ background:#F59E58 } .ci-heat__c.is-orange.l4{ background:#E2722A } .ci-heat__c.is-orange.l5{ background:#B4511A }
.ci-heat__grid .ci-heat__c:hover{ outline:2px solid var(--ink); outline-offset:1px }
.ci-heat__tip{ margin:10px 0 6px; min-height:18px; font-size:13px }
.ci-heat__key{ display:flex; align-items:center; gap:3px; font-size:11.5px; color:var(--subtle); font-weight:700 } .ci-heat__key i{ width:14px; height:14px; min-height:0; aspect-ratio:auto } .ci-heat__key span{ margin:0 4px }
.ci-gaps{ display:flex; gap:6px; align-items:flex-start; margin:10px 0 0; padding:10px 12px; border-radius:10px; background:#FFF7ED; color:#9A3412; font-size:13px; font-weight:700 }
.ci-tablewrap{ overflow-x:auto } .ci-table th.num, .ci-table td.num{ text-align:right; font-variant-numeric:tabular-nums } .ci-table td a{ color:var(--ink) }
.ci-tag{ display:inline-flex; align-items:center; gap:5px; padding:2px 9px; border-radius:999px; font-size:12px; font-weight:800 } .ci-tag.is-on{ background:#DCFCE7; color:#166534 } .ci-tag.is-on i{ width:7px; height:7px; border-radius:50%; background:#22C55E } .ci-tag.is-off{ background:#F1F5F9; color:#64748B }
.ci-top{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px }
.ci-top li{ display:grid; grid-template-columns:24px 1fr auto auto; align-items:center; gap:10px; font-size:13.5px } .ci-top b{ font-variant-numeric:tabular-nums } .ci-top small{ font-size:12px }
.ci-top__i{ display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:var(--surface); font-size:11px; font-weight:800 }
.ci-top__n{ font-weight:800; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap } .ci-top__n a{ color:var(--accent) } .ci-top__n small{ color:var(--subtle); font-weight:700 }
.ci-feed{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:4px; font-size:13px } .ci-feed small{ color:var(--subtle); font-variant-numeric:tabular-nums } .ci-feed a{ color:var(--accent) }
.ci-feed li.is-livello{ color:#166534 }
.ci-lift{ font-weight:800; padding:2px 8px; border-radius:6px } .ci-lift.is-up{ background:#DCFCE7; color:#15803D } .ci-lift.is-down{ background:#FEE2E2; color:#B91C1C }
@media (max-width:900px){ .ci-live__body{ grid-template-columns:1fr } .ci-live__big b{ font-size:42px } }
@media (max-width:560px){ .ci-heat__grid{ grid-template-columns:28px repeat(24, minmax(0,1fr)); gap:1px } .ci-heat__h{ font-size:8px } .ci-top li{ grid-template-columns:22px 1fr auto } .ci-top li > small{ display:none } }
.ci-tag{ white-space:nowrap } .ci-table td, .ci-table th{ white-space:nowrap } .ci-table td:first-child{ white-space:normal; min-width:150px }
@media (max-width:560px){ .ci-kpis{ grid-template-columns:1fr 1fr; gap:8px } .ci-kpi{ min-height:92px; padding:10px 12px } .ci-kpi .kpi__v{ font-size:24px } .ci-kpi .kpi__k{ font-size:10px } .ci-kpi__d{ font-size:11px } .ci-live__facts li{ padding:4px 9px; font-size:12px } }
/* scheda completa del membro */
.ui-load{ display:grid; gap:12px } .ui-load span{ height:90px; border-radius:16px; background:linear-gradient(90deg,#fff 30%,var(--surface) 50%,#fff 70%); background-size:300% 100%; animation:kpiload 1.2s linear infinite }
.ui-st{ display:inline-flex; align-items:center; padding:2px 8px; border-radius:99px; font-size:11.5px; font-weight:800; text-transform:capitalize; white-space:nowrap }
.ui-st.is-ok{ background:#DCFCE7; color:#166534 } .ui-st.is-wait{ background:#FEF3C7; color:#92400E } .ui-st.is-no{ background:#FEE2E2; color:#991B1B } .ui-st.is-neutral{ background:#EEF1FA; color:#4B5687 }
.ui-glance{ display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:14px; margin-bottom:18px } .ui-glance .adm-card + .adm-card{ margin-top:0 }
.ui-gl{ padding:16px 18px; gap:8px } .ui-gl h3{ margin:0; font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--muted) }
.ui-gl dl{ margin:0; display:flex; flex-direction:column }
.ui-gl dl div{ display:flex; justify-content:space-between; gap:10px; padding:6px 0; border-bottom:1px solid var(--line-2,#EEF1FA); font-size:13.5px } .ui-gl dl div:last-child{ border-bottom:0 }
.ui-gl dt{ color:var(--ink) } .ui-gl dd{ margin:0; text-align:right; font-variant-numeric:tabular-nums } .ui-gl dd small{ display:block; font-size:11.5px; color:var(--subtle) }
.ui-gl dl div.is-warn dd b{ color:#C2410C }
.ui-head{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 14px } .ui-head .adm-h2{ margin:0 }
.ui-chips{ display:flex; flex-wrap:wrap; gap:5px } .ui-chips button{ padding:5px 11px; border-radius:99px; border:1px solid var(--line); background:#fff; font:inherit; font-size:12.5px; font-weight:800; color:var(--muted); cursor:pointer } .ui-chips button.is-on{ background:var(--ink); border-color:var(--ink); color:#fff }
.ui-day h3{ display:flex; align-items:baseline; gap:8px; margin:18px 0 6px; font-size:13px; font-weight:800 } .ui-day h3 small{ font-weight:700; color:var(--subtle) }
.ui-tl{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column }
.ui-tl li{ display:grid; grid-template-columns:44px 26px minmax(0,1fr) auto; align-items:center; gap:10px; padding:7px 0; border-bottom:1px solid var(--line-2,#EEF1FA); font-size:13.5px }
.ui-tl__t{ color:var(--subtle); font-variant-numeric:tabular-nums; font-size:12px }
.ui-tl__ic{ display:grid; place-items:center; width:26px; height:26px; border-radius:8px; background:var(--surface); color:var(--accent) }
.ui-tl__ic.k-content{ background:#EEF3FF; color:#2456F0 } .ui-tl__ic.k-support{ background:#FEF3C7; color:#B45309 } .ui-tl__ic.k-taking{ background:#F3E8FF; color:#7C3AED } .ui-tl__ic.k-economy{ background:#DCFCE7; color:#166534 } .ui-tl__ic.k-access{ background:#F1F5F9; color:#475569 }
.ui-tl li > div{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap } .ui-tl__x{ color:var(--muted) }
.ui-tiles{ display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:10px; margin-bottom:12px }
.ui-tile{ display:flex; flex-direction:column; gap:2px; padding:12px 14px; border-radius:14px; background:#fff; border:1px solid var(--line) }
.ui-tile span{ font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--muted) } .ui-tile b{ font:700 24px/1.15 Fredoka, sans-serif; color:var(--ink) } .ui-tile small{ font-size:12px; color:var(--subtle) }
.ui-tile.is-hot{ border-color:#86EFAC; background:#F0FDF4 } .ui-tile.is-hot b{ color:#166534 }
.ui-note{ display:flex; align-items:center; gap:6px; margin:0 0 14px; font-size:13px }
.ui-hours{ display:grid; grid-template-columns:repeat(24,1fr); gap:3px; height:90px; align-items:end } .ui-hours span{ display:flex; align-items:flex-end; height:100% } .ui-hours i{ display:block; width:100%; border-radius:3px 3px 0 0; background:var(--c1) }
.ui-hours__ax{ display:flex; justify-content:space-between; font-size:11px; font-weight:700; color:var(--subtle); margin-top:4px }
.ui-h3{ margin:14px 0 6px; font-size:13px; font-weight:800 }
.ui-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:5px; font-size:13px } .ui-list li{ display:flex; align-items:center; gap:6px } .ui-list small{ margin-left:auto; color:var(--subtle) }
.ui-tw{ overflow-x:auto } .ui-table td, .ui-table th{ vertical-align:top } .ui-table .num{ text-align:right; font-variant-numeric:tabular-nums }
.ui-nw{ white-space:nowrap; color:var(--muted); font-size:12.5px } .ui-txt{ max-width:460px; line-height:1.45 } .ui-mono{ font-family:ui-monospace,monospace; font-size:12px }
.ui-thumb{ float:left; width:44px; height:44px; margin:0 10px 4px 0; border-radius:8px; object-fit:cover; background:var(--surface) }
.ui-why{ display:block; margin-top:3px; color:#B45309; font-size:12px } .ui-by{ display:block; margin-top:3px; color:var(--subtle); font-size:11.5px }
.ui-sts{ display:flex; flex-wrap:wrap; gap:8px; font-size:12px; font-weight:700; color:var(--muted) } .ui-sts > span{ display:inline-flex; align-items:center; gap:4px }
.ui-small{ font-size:12px; margin:8px 0 0 }
.ui-bars{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px }
.ui-bars li{ display:grid; grid-template-columns:minmax(120px,30%) 1fr auto 36px; align-items:center; gap:10px; font-size:13px } .ui-bars li > span:first-child{ text-transform:capitalize; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.ui-bars__t{ height:10px; border-radius:0 4px 4px 0; background:#F2F4FB } .ui-bars__t i{ display:block; height:100%; border-radius:0 4px 4px 0; background:#16A34A } .ui-bars__t i.is-neg{ background:#DC2626 }
.ui-bars b{ font-variant-numeric:tabular-nums; color:#166534 } .ui-bars b.is-neg{ color:#B91C1C } .ui-bars small{ color:var(--subtle); text-align:right }
@media (max-width:700px){ .ui-tl li{ grid-template-columns:40px 24px minmax(0,1fr); } .ui-tl li .ui-st{ grid-column:3 } }
/* in fondo alla pagina (rimbalzo di Safari/trackpad): niente bianco sotto il pannello, la barra laterale resta piena */
html:has(.adm), html:has(.adm) body{ background:#F6F8FD; overscroll-behavior-y:none }
html:has(.adm) body{ background:linear-gradient(90deg, var(--ink, #0A1240) 248px, #F6F8FD 248px) }
@media (max-width:820px){ html:has(.adm) body{ background:#F6F8FD } }
/* moderatore AI */
.aip{ display:flex; flex-direction:column; gap:.7rem; margin-top:.8rem; padding-top:.8rem; border-top:1px solid var(--adm-line, #E5E9F5) }
.aip__state{ display:flex; flex-wrap:wrap; align-items:center; gap:.6rem }
.aip__nums{ display:grid; grid-template-columns:repeat(auto-fit,minmax(9rem,1fr)); gap:.5rem; margin:0 }
.aip__nums div{ padding:.55rem .7rem; border-radius:.7rem; background:#F4F6FC } .aip__nums dt{ font-size:.72rem; font-weight:700; color:#5B6488 } .aip__nums dd{ margin:.1rem 0 0; font-size:1.05rem; font-weight:800; font-variant-numeric:tabular-nums }
.aiv{ display:flex; gap:.5rem; align-items:flex-start; margin-top:.6rem; padding:.6rem .75rem; border-radius:.8rem; font-size:.84rem; background:#F1F4FF; color:#1E2A5A }
.aiv svg{ flex:none; margin-top:.15rem } .aiv p{ margin:0 } .aiv__note{ margin-top:.2rem !important; color:#4A5480 }
.aiv.is-approve{ background:#ECFDF3; color:#14532D } .aiv.is-reject{ background:#FEF2F2; color:#7F1D1D } .aiv.is-review{ background:#FFF7E6; color:#7C4A03 } .aiv.is-err{ background:#F4F4F5; color:#3F3F46 }
.adm-pill.is-ok{ background:#DCFCE7; color:#166534 }

/* ======================================================= pannello su telefono */
.adm-up{ grid-template-columns:minmax(0,1fr) }
@media (min-width:1150px){ .adm-up{ grid-template-columns:minmax(0,1fr) 340px } }
.adm-up__main > *, .adm-up__side > *, .adm-body > *, .adm-card > *{ min-width:0 }
@media (max-width:720px){
  .adm-table{ display:block; overflow-x:auto; -webkit-overflow-scrolling:touch }
  .adm-head > *{ min-width:0; max-width:100% }
  .adm-head .adm-h1, .adm-head .adm-h2{ overflow-wrap:anywhere }
  .adm-toolbar .adm-input{ min-width:0; flex:1 1 12rem }
  .adm-actions{ flex-wrap:wrap }
  .adm-crea{ grid-template-columns:minmax(0,1fr) !important }
  .adm-card{ max-width:100% }
  .pg__what{ font-size:13px }
}
@media (max-width:720px){
  .adm-bar{ flex-wrap:wrap } .adm-bar > *{ min-width:0; max-width:100% }
  .adm-chatapi__ppl span{ overflow-wrap:anywhere; max-width:100% }
}
/* passaggio al proprio account (telefono) */
.adm-top__me{ display:inline-flex; align-items:center; gap:6px; margin-left:auto; padding:7px 12px; border-radius:9999px; background:#FFC83D; color:var(--ink); font-size:13px; font-weight:800; text-decoration:none }

/* ======================================================= Cloudflare */
.cf{ display:flex; flex-direction:column; gap:18px }
.cf .adm-card + .adm-card, .cf .adm-grid2{ margin-top:0 }
.cf-zone{ display:flex; align-items:center; flex-wrap:wrap; gap:10px; font-size:14px }
.cf-zone .adm-btn{ margin-left:auto }
.cf-dot{ width:10px; height:10px; border-radius:50%; background:#DC2626 } .cf-dot.is-ok{ background:#16A34A; box-shadow:0 0 0 4px #DCFCE7 }
.cf-h{ display:flex; align-items:center; gap:8px; margin:0 0 6px; font-family:'Fredoka',sans-serif; font-size:20px }
.cf-h3{ margin:16px 0 8px; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:var(--muted) }
.cf-attack{ display:flex; flex-direction:row; align-items:center; flex-wrap:wrap; gap:16px; justify-content:space-between }
.cf-attack__t{ display:flex; gap:14px; align-items:flex-start; flex:1; min-width:260px }
.cf-attack__t h2{ margin:0; font-family:'Fredoka',sans-serif; font-size:21px } .cf-attack__t p{ margin:4px 0 0; color:var(--muted); font-size:14px }
.cf-attack__ic{ flex:none; display:grid; place-items:center; width:46px; height:46px; border-radius:14px; background:#EEF3FF; color:#2456F0 }
.cf-attack.is-on{ background:#FEF2F2; border-color:#DC2626; box-shadow:0 4px 0 #DC2626 } .cf-attack.is-on .cf-attack__ic{ background:#DC2626; color:#fff }
.adm-btn.cf-red{ background:#DC2626; border-color:#991B1B; color:#fff }
.cf-purge{ display:flex; flex-direction:column; align-items:flex-start; gap:6px; margin:14px 0 }
.cf-lbl{ display:block; margin:6px 0; font-size:13px; font-weight:700 }
.cf textarea.adm-input{ width:100%; font-family:ui-monospace,monospace; font-size:13px; margin-bottom:8px; resize:vertical }
.cf-sech{ display:flex; align-items:center; flex-wrap:wrap; gap:10px; justify-content:space-between }
.cf-seg{ display:inline-flex; padding:3px; border-radius:999px; background:var(--surface); border:1px solid var(--line) }
.cf-seg button{ border:0; background:none; padding:6px 12px; border-radius:999px; font:inherit; font-size:13px; font-weight:700; cursor:pointer; color:var(--muted) }
.cf-seg button.is-on{ background:var(--ink); color:#fff }
.cf-kpis{ display:grid; grid-template-columns:repeat(5,1fr); gap:10px; margin:12px 0 4px }
.cf-kpis div{ display:flex; flex-direction:column; gap:2px; padding:12px 14px; border-radius:14px; background:var(--surface); border:1px solid var(--line) }
.cf-kpis span{ font-size:12px; font-weight:700; color:var(--muted) } .cf-kpis b{ font-family:'Fredoka',sans-serif; font-size:24px }
.cf-kpis .is-red b{ color:#DC2626 }
.cf-tops{ display:grid; grid-template-columns:1fr 1fr; gap:6px 24px }
.cf-ips{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px }
.cf-ips li{ display:flex; align-items:center; gap:10px; font-size:14px } .cf-ips code{ font-size:13px; overflow-wrap:anywhere } .cf-ips span{ color:var(--muted); margin-left:auto }
.cf-latest{ margin-top:14px } .cf-latest summary{ cursor:pointer; font-weight:800; font-size:14px }
.cf-tablewrap{ overflow-x:auto; margin-top:10px }
.cf-path{ max-width:300px; overflow-wrap:anywhere; font-family:ui-monospace,monospace; font-size:12px } .cf-path small{ display:block; color:var(--muted) }
.cf-expr{ display:block; margin-top:6px; padding:6px 8px; border-radius:8px; background:var(--surface); font-size:11.5px; white-space:pre-wrap; overflow-wrap:anywhere; max-height:90px; overflow:auto }
.cf-rs + .cf-rs{ margin-top:8px }
.cf-accform{ display:grid; grid-template-columns:200px 1fr 1fr auto; gap:8px; margin:12px 0 }
.cf-acc{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column }
.cf-acc li{ display:flex; align-items:center; flex-wrap:wrap; gap:10px; padding:10px 0; border-top:1px solid var(--line); font-size:14px }
.cf-acc small{ color:var(--muted); flex:1; min-width:140px } .cf-acc code{ font-size:13px }
.cf-mode{ padding:3px 10px; border-radius:999px; font-size:12px; font-weight:800; background:#FEF3C7; color:#92400E }
.cf-mode--block{ background:#FEE2E2; color:#991B1B } .cf-mode--whitelist{ background:#DCFCE7; color:#166534 }
.cf-ro{ list-style:none; margin:10px 0; padding:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:8px }
.cf-ro li{ display:flex; flex-direction:column; padding:10px 12px; border-radius:12px; background:var(--surface); font-size:13px } .cf-ro span{ color:var(--muted) }
.cf-warn{ color:#B91C1C !important; font-weight:800 }
.cf-small{ font-size:12.5px }
.cf-setup{ max-width:620px } .cf-setup h2{ margin:0; font-family:'Fredoka',sans-serif }
@media (max-width:820px){
  .cf-kpis{ grid-template-columns:1fr 1fr } .cf-tops{ grid-template-columns:1fr }
  .cf-accform{ grid-template-columns:1fr }
  .cf-attack .adm-btn{ width:100% }
}
/* Sociale app: registro in tempo reale e anteprima della notifica */
.appl{ align-items:center } .appl.is-new{ animation:applNew 2.5s ease-out }
@keyframes applNew{ from{ background:#E8FFF1 } to{ background:transparent } }
.appl__ic{ flex:none; display:grid; place-items:center; width:32px; height:32px; border-radius:50%; background:#EAF7EF; color:#16A34A }
.appl__ic.is-bad{ background:#FDECEE; color:#E11D48 }
.appl__dot{ display:inline-block; width:8px; height:8px; margin-right:6px; border-radius:50%; background:#16A34A; box-shadow:0 0 0 0 rgba(22,163,74,.5); animation:applDot 1.6s infinite }
@keyframes applDot{ 70%{ box-shadow:0 0 0 8px rgba(22,163,74,0) } 100%{ box-shadow:0 0 0 0 rgba(22,163,74,0) } }
.appsend__prev{ display:flex; gap:10px; align-items:center; margin:14px 0 6px; padding:10px 12px; border-radius:14px; background:#F2F4FA; box-shadow:0 2px 8px rgba(10,18,64,.08) }
.appsend__prev img{ border-radius:9px } .appsend__prev span{ display:flex; flex-direction:column; min-width:0 }
.appsend__prev b{ font-size:14px } .appsend__prev small{ font-size:13px; color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
/* revisione dei pacchetti di sticker */
.spk{ margin-bottom:14px } .spk__head{ display:flex; justify-content:space-between; gap:12px; align-items:flex-start; flex-wrap:wrap }
.spk__grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(96px, 1fr)); gap:10px; margin-top:12px }
.spk__grid figure{ margin:0; padding:6px; border-radius:12px; background:repeating-conic-gradient(#F1F3F9 0 25%, #fff 0 50%) 0 0/16px 16px; text-align:center }
.spk__grid img{ width:100%; aspect-ratio:1; object-fit:contain } .spk__grid figcaption{ font-size:11px; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
