/* Foglio di stile unico. Niente stili dentro l'HTML: la CSP non ammette
   'unsafe-inline', e un attributo style="" smetterebbe semplicemente di
   funzionare. */

:root { --ink:#1b2430; --muto:#6b7785; --linea:#d8dee4; --sfondo:#f4f6f8;
        --ok:#1a5c1a; --errore:#b3261e; --avviso:#8a6d00; }

* { box-sizing: border-box; }
body { margin:0; font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
       color: var(--ink); background: var(--sfondo); line-height:1.5; }

.barra { display:flex; justify-content:space-between; align-items:center; gap:1rem;
         padding:.8rem 1.2rem; background:#fff; border-bottom:1px solid var(--linea); }
.marchio { font-weight:700; }
.barra nav { display:flex; gap:1rem; align-items:center; }
.barra a { color:var(--ink); text-decoration:none; }
.barra a:hover { text-decoration:underline; }
.chi { color:var(--muto); font-size:.9rem; }

main { max-width:1000px; margin:0 auto; padding:1.2rem; }
main.centrata { max-width:560px; text-align:center; padding-top:4rem; }
h1 { font-size:1.4rem; margin:.4rem 0 1rem; }
h2 { font-size:1.1rem; margin:1.6rem 0 .6rem; }

table { width:100%; border-collapse:collapse; background:#fff; border:1px solid var(--linea); }
th, td { text-align:left; padding:.45rem .6rem; border-bottom:1px solid var(--linea); vertical-align:top; }
th { background:#eef1f4; font-weight:600; }
td.num { text-align:right; white-space:nowrap; }
td.agente { color:var(--muto); font-size:.85rem; word-break:break-all; max-width:22rem; }

.muto { color:var(--muto); }
.sparito td { color:var(--muto); text-decoration:line-through; }
.stato-attivo td:first-child { color:var(--ok); font-weight:600; }
.stato-scaduto td:first-child, .stato-esaurito td:first-child { color:var(--avviso); }
.stato-annullato td:first-child { color:var(--errore); }

form { background:#fff; border:1px solid var(--linea); padding:1rem; margin:.6rem 0; }
form.in-riga { display:inline; border:0; padding:0; background:none; }
form.riga-azioni { display:flex; align-items:center; gap:1rem; }
label { display:block; margin:.5rem 0; }
input[type=text], input[type=number], input[type=datetime-local], select {
    display:block; margin-top:.2rem; padding:.4rem; border:1px solid var(--linea);
    min-width:18rem; font:inherit; }
button, .btn { display:inline-block; padding:.45rem .9rem; border:1px solid var(--linea);
    background:#fff; cursor:pointer; font:inherit; color:var(--ink); text-decoration:none; }
button:hover, .btn:hover { background:#eef1f4; }
.piccolo { padding:.2rem .5rem; font-size:.85rem; }
.pericolo { color:var(--errore); border-color:var(--errore); }

.msg { padding:.6rem .8rem; border:1px solid var(--linea); background:#fff; }
.msg.errore { color:var(--errore); border-color:var(--errore); }

.nuovo-link { border:2px solid var(--ok); background:#fff; padding:1rem; margin:1rem 0; }
.token { font-family: ui-monospace, monospace; font-size:1rem; word-break:break-all;
         background:var(--sfondo); padding:.6rem; border:1px solid var(--linea); }
.piede { max-width:1000px; margin:2rem auto 1rem; padding:0 1.2rem;
         color:var(--muto); font-size:.85rem; }

/* Navigazione per cartelle */
.briciole { margin:.2rem 0 .8rem; color:var(--muto); }
.briciole a { color:var(--ink); }
td.azioni { white-space:nowrap; }
