:root{--blu:#002FA7;--nero:#0B0B0C;--carta:#F3F2EE;--linea:#D9D8D2;--grigio:#6B6B70;--verde:#1F7A4D;--rosso:#B3261E;--ambra:#A15C00;--bianco:#fff}
*{box-sizing:border-box}
body{margin:0;font-family:"Instrument Sans",system-ui,sans-serif;color:var(--nero);background:var(--bianco);
background-image:radial-gradient(rgba(0,47,167,.13) 1px,transparent 1px);background-size:22px 22px;font-size:15px;line-height:1.45}
a{color:var(--blu)}
header{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.94);border-bottom:1px solid var(--linea);backdrop-filter:blur(6px)}
.bar{max-width:1100px;margin:0 auto;padding:12px 16px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.logo{font-family:Lustria,serif;font-size:22px;text-decoration:none;color:var(--nero)}
.logo em{color:var(--blu)}
nav{display:flex;gap:6px;flex-wrap:wrap;flex:1}
nav a{text-decoration:none;color:var(--nero);padding:6px 12px;border-radius:99px;font-size:14px}
nav a:hover,nav a.on{background:var(--blu);color:#fff}
main{max-width:1100px;margin:0 auto;padding:22px 16px 80px}
h1,h2{font-family:Lustria,serif;font-weight:400;margin:0 0 12px}
h1{font-size:30px}h2{font-size:21px;margin-top:28px}
h1 em,h2 em{color:var(--blu)}
.mono{font-family:"JetBrains Mono",monospace;text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:var(--grigio)}
.card{background:var(--carta);border:1px solid var(--linea);border-radius:12px;padding:16px;margin-bottom:14px}
.flash{border:1.5px solid var(--nero);background:#fff;border-radius:12px;padding:10px 14px;margin-bottom:16px}
.prova{background:#FFF4DB;border-bottom:1px solid #EAD29A;text-align:center;font-size:13px;padding:5px}
.btn,button{font:inherit;font-size:14px;border:1.5px solid var(--blu);background:var(--blu);color:#fff;border-radius:99px;padding:7px 16px;cursor:pointer;text-decoration:none;display:inline-block}
.btn.sec,button.sec{background:#fff;color:var(--blu)}
button.rosso{border-color:var(--rosso);background:#fff;color:var(--rosso)}
button:hover{filter:brightness(1.1)}
input,select,textarea{font:inherit;width:100%;border:1px solid var(--linea);border-radius:8px;padding:8px 10px;background:#fff;color:var(--nero)}
textarea{resize:vertical}
label{display:block;margin:10px 0 4px;font-size:13px;color:var(--grigio)}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.chip{display:inline-block;font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:99px;border:1px solid currentColor;white-space:nowrap}
.s-bozza,.s-da_approvare{color:var(--ambra)}.s-approvato{color:var(--blu)}.s-pubblicato{color:var(--verde)}
.s-errore{color:var(--rosso)}.s-annullato,.s-ricevuta,.s-in_lavorazione,.s-in_pubblicazione{color:var(--grigio)}
.day{margin-bottom:18px}
.item{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--linea);border-radius:10px;padding:9px 12px;margin-bottom:6px;text-decoration:none;color:inherit}
.item:hover{border-color:var(--blu)}
.item .ora{font-family:"JetBrains Mono",monospace;font-size:13px;min-width:48px}
.item .nome{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pl{font-size:12px;font-weight:600;min-width:84px}
.clipcard{display:flex;gap:12px;text-decoration:none;color:inherit}
.clipcard img{width:64px;height:114px;object-fit:cover;border-radius:6px;background:#ddd;flex:none}
.detail{display:grid;grid-template-columns:300px 1fr;gap:22px}
.detail video{width:100%;border-radius:12px;background:#000;aspect-ratio:9/16}
.warn{color:var(--ambra);font-size:13px;margin:4px 0}
.err{color:var(--rosso);font-size:13px;white-space:pre-wrap}
.count{font-size:12px;color:var(--grigio);text-align:right}
.post h3{margin:0;font-size:16px}
details summary{cursor:pointer;color:var(--blu)}
table{width:100%;border-collapse:collapse;background:#fff}
td,th{text-align:left;padding:8px;border-bottom:1px solid var(--linea);font-size:14px;vertical-align:top}
.drop{border:2px dashed var(--blu);border-radius:12px;padding:30px;text-align:center;background:#fff}
@media (max-width:760px){.detail{grid-template-columns:1fr}.detail video{max-height:42vh;width:auto;margin:0 auto;display:block}h1{font-size:23px}
.bar{flex-wrap:nowrap;gap:10px}nav{flex-wrap:nowrap;overflow-x:auto}nav a{padding:6px 9px;white-space:nowrap}.logo{font-size:18px;white-space:nowrap}}
