/* Backoffice NMCOR: preso dal mockup approvato (docs/mockups/backoffice/index.html, 27/10/2026). */
/* ═══════════════════════════════════════════
   BACKOFFICE — mockup del 27/10/2026
   Stessi caratteri, colori e colonna del sito (main.css, caffe-colonna.css),
   ma senza gli ornamenti del Caffè: carta grigia, filo d'oro sostituito da
   un filetto blu, testata con l'etichetta BACKOFFICE. Si capisce subito
   che è il dietro le quinte.
   ═══════════════════════════════════════════ */
:root{
	--bo-carta:#eef0f2; --bo-riquadro:#fff; --bo-filo:#d9dee5; --bo-ink:#0d1321; --bo-ink-2:#4a5568;
	--bo-ok:#356a50; --bo-ok-bg:#e3efe7; --bo-attesa:#8a5a10; --bo-attesa-bg:#f6ecd9;
	--bo-errore:#9c4430; --bo-errore-bg:#f6e2dc; --bo-spento:#555c68; --bo-spento-bg:#eceef1;
}
body.bo{background:var(--bo-carta);color:var(--bo-ink);font-family:var(--font-body)}
/* testata: quella del sito, ridotta, con l'etichetta */
.bo-testa{background:var(--cf-navy);color:#fff;border-bottom:3px solid var(--c-warm)}
.bo-testa__dentro{max-width:92rem;margin:0 auto;display:flex;align-items:center;gap:14px;padding:10px 1rem}
.bo-testa img{width:34px;height:34px;border-radius:50%;background:#fff}
.bo-testa__nome{font-family:var(--font-headline);font-size:1.15rem;color:#fff;text-decoration:none}
.bo-etichetta{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;background:var(--c-warm-ink);color:#fff;padding:3px 9px;border-radius:3px}
.bo-dominio{font-family:var(--font-mono);font-size:.75rem;color:#b8c5d6}
.bo-testa__spazio{flex:1}
.bo-cerca{background:#1d2d44;border:1px solid #2e4a63;color:#fff;border-radius:6px;padding:7px 12px;font:inherit;font-size:.85rem;width:min(320px,30vw)}
.bo-cerca::placeholder{color:#8fa3bd}
.bo-utente{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#dfe6ef}
.bo-utente span.ruolo{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cf-oro)}
.bo-tornasito{color:#b8c5d6;font-size:.82rem;text-decoration:none;display:flex;align-items:center;gap:4px}
.bo-tornasito:hover{color:#fff}
/* impianto: la colonna del sito, ma piatta */
.bo-page{max-width:92rem;margin:0 auto;padding:1rem;display:grid;grid-template-columns:236px minmax(0,1fr);gap:1.25rem}
.bo .cf-sidebar::before{border-color:rgba(184,197,214,.18)}
.bo .cf-sidebar{box-shadow:none}
.bo-stanza{margin-top:.6rem}
.bo-stanza__titolo{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cf-oro);padding:.5rem .6rem .25rem;display:flex;gap:6px;align-items:center}
.bo-nav a{display:flex;align-items:center;gap:.55rem;padding:.42rem .6rem;border-radius:5px;color:#dfe6ef;text-decoration:none;font-size:.88rem}
.bo-nav a .material-symbols-outlined{font-size:18px;opacity:.8}
.bo-nav a:hover{background:rgba(255,255,255,.06)}
.bo-nav a.active{background:rgba(255,255,255,.14);color:#fff;font-weight:600}
.bo-nav .cnt{margin-left:auto;font-family:var(--font-mono);font-size:.7rem;background:var(--c-warm-ink);color:#fff;border-radius:99px;padding:0 7px}
.bo-nav .migra{margin-left:auto;font-family:var(--font-mono);font-size:.72rem;color:#8fa3bd;border:1px dashed #5a7a9e;border-radius:3px;padding:0 4px}
.bo-piede{margin-top:auto;padding:.8rem .6rem 0;font-size:.75rem;color:#8fa3bd;line-height:1.5}
/* contenuto */
.bo-main{min-width:0}
.bo-titolo{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:.2rem 0 1rem}
.bo-titolo h1{font-family:var(--font-headline);font-weight:400;font-size:2rem;margin:0;line-height:1.1}
.bo-occhiello{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--bo-ink-2);margin:0 0 .2rem}
.bo-sotto{color:var(--bo-ink-2);margin:.2rem 0 0;font-size:.92rem}
.bo-titolo .spazio{flex:1}
.bo-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--cf-navy-2);background:var(--cf-navy-2);color:#fff;border-radius:5px;padding:.5rem .9rem;font:inherit;font-size:.88rem;cursor:pointer;text-decoration:none}
.bo-btn--chiaro{background:#fff;color:var(--cf-navy-2)}
.bo-btn .material-symbols-outlined{font-size:18px}
.bo-grid{display:grid;gap:14px}
.bo-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.bo-grid--2{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.bo-box{background:var(--bo-riquadro);border:1px solid var(--bo-filo);border-radius:8px;padding:14px 16px;min-width:0}
.bo-box h2{font-family:var(--font-headline);font-weight:400;font-size:1.25rem;margin:0 0 .6rem;display:flex;align-items:center;gap:8px}
.bo-box h2 .material-symbols-outlined{font-size:20px;color:var(--c-accent)}
.bo-box h2 .link{margin-left:auto;font-family:var(--font-body);font-size:.8rem;color:var(--c-accent);text-decoration:none}
.bo-kpi .num{font-family:var(--font-headline);font-size:2.2rem;line-height:1}
.bo-kpi .lab{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--bo-ink-2)}
.bo-kpi .nota{font-size:.82rem;color:var(--bo-ink-2);margin-top:4px}
.bo-kpi .lab::before{content:"";display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:6px;vertical-align:1px;background:var(--k)}
.bo-kpi--warm{--k:var(--c-warm-ink)}.bo-kpi--blu{--k:var(--c-accent)}.bo-kpi--verde{--k:var(--c-green-ink)}.bo-kpi--grigio{--k:var(--bo-spento)}
.stato{display:inline-flex;flex:none;align-self:flex-start;align-items:center;gap:4px;font-size:.74rem;font-weight:600;border-radius:99px;padding:1px 9px;white-space:nowrap}
.stato::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.s-ok{background:var(--bo-ok-bg);color:var(--bo-ok)}.s-attesa{background:var(--bo-attesa-bg);color:var(--bo-attesa)}
.s-errore{background:var(--bo-errore-bg);color:var(--bo-errore)}.s-spento{background:var(--bo-spento-bg);color:var(--bo-spento)}
.s-blu{background:#e3ebf3;color:var(--c-accent)}
/* squadra */
.bo-squadra{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.bo-agente{display:flex;gap:10px;align-items:center;border:1px solid var(--bo-filo);border-radius:8px;padding:8px;background:#fff;cursor:pointer;text-align:left;font:inherit;color:inherit}
.bo-agente:hover{border-color:var(--c-accent)}
.bo-agente img{width:44px;height:44px;border-radius:50%;background:#b7d4cf;flex:none}
.bo-agente b{display:block;font-size:.9rem}
.bo-agente small{display:block;color:var(--bo-ink-2);font-size:.74rem;margin-bottom:3px}
/* tabelle */
.bo-tab{width:100%;border-collapse:collapse;font-size:.86rem}
.bo-tab th{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--bo-ink-2);text-align:left;font-weight:500;padding:6px 8px;border-bottom:1px solid var(--bo-filo)}
.bo-tab td{padding:7px 8px;border-bottom:1px solid #eef0f3;vertical-align:top}
.bo-tab tr:last-child td{border-bottom:0}
.bo-tab .cod{font-family:var(--font-mono);font-size:.78rem;color:var(--c-accent)}
.bo-mini{display:inline-flex;align-items:center;gap:6px}
.bo-mini img{width:22px;height:22px;border-radius:50%;background:#b7d4cf}
.bo-lista{list-style:none;margin:0;padding:0}
.bo-lista li{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid #eef0f3;font-size:.87rem}
.bo-lista li:last-child{border-bottom:0}
.bo-lista .ora{font-family:var(--font-mono);font-size:.74rem;color:var(--bo-ink-2);min-width:74px}
.bo-azioni{margin-left:auto;display:flex;gap:6px}
.bo-azioni button{border:1px solid var(--bo-filo);background:#fff;border-radius:5px;padding:2px 8px;font:inherit;font-size:.76rem;cursor:pointer}
.bo-azioni button.si{background:var(--c-green-ink);border-color:var(--c-green-ink);color:#fff}
/* settimana di Oprah */
.bo-settimana{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.bo-giorno{border:1px solid var(--bo-filo);border-radius:8px;padding:8px;background:#fafbfc;min-height:120px}
.bo-giorno h4{margin:0 0 6px;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--bo-ink-2);display:flex;justify-content:space-between}
.bo-giorno.oggi{border-color:var(--c-warm);background:#fff}
.bo-giorno.oggi h4{color:var(--c-warm-ink)}
.bo-evento{font-size:.78rem;background:#fff;border:1px solid var(--bo-filo);padding:4px 6px;border-radius:4px;margin-bottom:5px}
.bo-evento.fatto{color:var(--bo-ink-2);background:#f1f3f5;text-decoration:line-through}
.bo-evento.ceo{background:#fbeee9;border-color:#f0cfc4}
/* kanban */
.bo-kanban{display:grid;grid-template-columns:repeat(5,minmax(200px,1fr));gap:10px;overflow-x:auto;padding-bottom:6px}
.bo-col{background:#e6e9ee;border-radius:8px;padding:8px}
.bo-col h3{margin:0 0 8px;font-size:.82rem;display:flex;justify-content:space-between;font-weight:600}
.bo-card{background:#fff;border:1px solid var(--bo-filo);border-radius:6px;padding:8px;margin-bottom:8px;font-size:.83rem}
.bo-card .meta{display:flex;align-items:center;gap:6px;margin-top:6px;color:var(--bo-ink-2);font-size:.74rem}
.bo-card .prio{margin-left:auto;font-family:var(--font-mono);font-size:.72rem}
/* agente */
.bo-scheda{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px}
.bo-volto{width:100%;aspect-ratio:1;border-radius:12px;background:#b7d4cf;object-fit:cover}
.bo-carta dt{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bo-ink-2);margin-top:8px}
.bo-carta dd{margin:2px 0 0;font-size:.88rem}
.bo-vista{display:none}.bo-vista.on{display:block}
.bo-nota{font-size:.78rem;color:var(--bo-ink-2);background:#fff8e6;border:1px dashed #d9b46a;border-radius:6px;padding:6px 10px;margin-bottom:12px}
.bo-vuoto{color:var(--bo-ink-2);text-align:center;padding:40px 10px}
@media (max-width:1000px){.bo-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.bo-grid--2,.bo-scheda{grid-template-columns:1fr}.bo-settimana{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.bo-page{grid-template-columns:1fr}.bo-cerca,.bo-dominio{display:none}}
/* Aggiunte per le pagine vere */
.bo-esci{display:inline}
.bo-esci button{background:none;border:0;color:inherit;font:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.bo-messaggio{max-width:520px;margin:12vh auto;text-align:center}
.bo-messaggio h1{font-family:var(--font-display, 'Newsreader', serif);font-size:1.8rem;margin:.4em 0}
.bo-chiave{font-family:'IBM Plex Mono',monospace;background:var(--c-cream,#f6f1e7);padding:12px;border-radius:8px;word-break:break-all;user-select:all}
.bo-form-inline{display:inline}

/* Correzioni dopo il primo collaudo (27/10) */
.bo-squadra{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.bo-agente{text-decoration:none;min-width:0}
.bo-agente>span{min-width:0}
.bo-agente .stato{max-width:100%;white-space:normal}
.bo-nav a .migra{flex:none}
.bo-tab td{vertical-align:middle}
.bo-tab .bo-btn,.bo-tab button.bo-btn{padding:.22rem .6rem;font-size:.78rem;line-height:1.4;min-height:0}
.bo-tab .bo-form-inline+.bo-form-inline{margin-left:4px}
.bo-box h2 .bo-form-inline .bo-btn{padding:.22rem .6rem;font-size:.78rem}
