*{box-sizing:border-box}body{margin:0;background:#f3f5f8;color:#1c293a;font:15px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}a{color:#1757a6;text-decoration:none}a:hover{text-decoration:underline}header{background:#112b46;color:#fff;padding:20px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{color:white;font-size:23px;font-weight:850;letter-spacing:1.5px}.brand span{display:block;font-size:10px;font-weight:500;letter-spacing:2.8px}nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap}nav a{color:#e6eef7}nav form{margin:0}main{max-width:1280px;margin:auto;padding:22px 28px 60px}.identity{text-align:right;color:#617083;font-size:13px;margin-bottom:26px}.heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:25px}h1{font-size:30px;line-height:1.25;margin:8px 0 20px;overflow-wrap:anywhere}h2{font-size:18px;margin:0 0 20px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:2px;color:#698095}.card{background:white;border:1px solid #e1e6ed;border-radius:12px;padding:26px;margin-bottom:22px;box-shadow:0 3px 12px #102b4610}.narrow{max-width:800px}.login{max-width:460px;margin:65px auto}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stats a{display:block;border:1px solid #e1e6ed;border-radius:10px;background:white;padding:18px 22px;color:#596779}.stats strong{display:block;color:#14344e;font-size:30px}.filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:22px}.filters input[name=q]{flex:1;min-width:220px}.filters select{width:auto}.check{display:flex;align-items:center;gap:6px;white-space:nowrap}.check input{width:auto}input,select,textarea{font:inherit;border:1px solid #cbd4df;border-radius:6px;padding:11px 12px;width:100%;background:#fff;color:#1c293a}input:focus,textarea:focus,select:focus{outline:2px solid #8db8ea;outline-offset:1px}input[type=checkbox]{width:auto}input[type=file]{font-size:13px}label{display:block;font-weight:600;margin-bottom:6px}textarea{resize:vertical}button,.button{display:inline-block;border:0;border-radius:6px;background:#195a9d;color:white;padding:11px 18px;font:600 14px system-ui;cursor:pointer}.button:hover{text-decoration:none;background:#124779}button:hover{filter:brightness(.94)}.secondary{background:#e8eef5;color:#244866}.success{background:#217753}.quiet{background:transparent;color:white;padding:0}.actions{display:flex;gap:10px;flex-wrap:wrap}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:#6d7b8c;background:#f7f9fb;padding:12px}td{padding:18px 12px;border-bottom:1px solid #e9edf2;font-size:14px}.ticket-title{display:block;min-width:180px;font-weight:650;max-width:380px;overflow-wrap:anywhere}.ticket-title small{display:block;color:#7a8797;font-weight:500;margin-bottom:4px}.badge{display:inline-block;white-space:nowrap;padding:5px 10px;border-radius:20px;font-size:12px;font-weight:650;background:#edf1f5}.APERTO{background:#e7efff;color:#325f9f}.IN_LAVORAZIONE{background:#e0f2f4;color:#15727c}.SOSPESO{background:#fff1cf;color:#966915}.CHIUSO{background:#e5f2e9;color:#2e7144}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px}.event{border-left:3px solid #dbe7f3;padding:0 0 24px 18px;margin-top:24px}.event-head{display:flex;justify-content:space-between;gap:15px}.event-head time{font-size:12px;color:#7a8797}.event-text{margin:12px 0;overflow-wrap:anywhere}.attachment{display:block;margin-top:8px;font-size:13px;overflow-wrap:anywhere}dt{color:#7a8797;font-size:12px;margin-top:20px}dd{margin:4px 0}.muted{color:#6a798b}.small,.helptext{font-size:12px}.helptext{display:block;color:#6a798b}.errorlist{color:#a52e37;padding-left:20px}.message,.alert{padding:14px 20px;border-radius:7px;margin-bottom:20px;background:#e6f1e9}.error{background:#ffe9e9}.alert{background:#fff1ce;color:#785b16}.back{display:inline-block;margin-bottom:22px}.pagination{display:flex;justify-content:space-between;margin-top:20px;font-size:13px}.empty{text-align:center;padding:45px;color:#6a798b}footer{color:#8a95a3;font-size:12px;text-align:center;padding:20px}details{margin-top:10px}aside button{margin-top:10px}@media(max-width:800px){header{align-items:flex-start;flex-direction:column}nav{gap:16px}main{padding:20px 14px}.detail-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.heading{align-items:flex-start}h1{font-size:24px}.card{padding:18px}.event-head{flex-direction:column;gap:3px}}
.private-link{min-width:300px;font-size:12px}input[type=checkbox]{width:auto}#id_members label{font-weight:400}td form{margin-top:8px}
.stats{grid-template-columns:repeat(5,minmax(0,1fr))}.ASSEGNATO{background:#eee8fa;color:#64408a}.overdue{background:#ffe4e4;color:#9e2020}.due-soon{background:#fff0c2;color:#7a5500}.deadline-alerts{display:flex;gap:12px;flex-wrap:wrap}.deadline-alerts a{display:block}.detail-grid{grid-template-columns:minmax(0,1fr) 330px}@media(max-width:800px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:1fr}}

.stats{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}.ATTESA_RICHIEDENTE,.needs-reply{background:#fff0c2;color:#795200}.ATTESA_ESTERNO{background:#eee8fa;color:#64408a}.BLOCCANTE{background:#ffe4e4;color:#a11b1b}.DIFFICOLTA{background:#fff0c2;color:#795200}.RICHIESTA{background:#e7efff;color:#325f9f}.reply-label{color:#8b5000}summary{cursor:pointer;font-weight:650;padding:8px 0}
/* V7: quiet surfaces, consistent spacing and action dialogs. */
:root{--ink:#223047;--muted:#64748b;--line:#e4e9f0;--blue:#245bcc}body{background:#f6f8fb;color:var(--ink);font-size:14px}header{background:#fff;border-bottom:1px solid var(--line);padding:18px 4%;color:var(--ink)}.brand{color:#17345e;font-size:22px}nav a,.quiet{color:#425775;font-size:13px}main{max-width:1500px;padding:24px 4% 56px}.identity{font-size:12px;margin-bottom:20px}.heading{margin-bottom:20px;gap:18px}.heading h1{margin:6px 0;font-size:28px;letter-spacing:-.6px}h2{font-size:17px;margin:0 0 16px}.card{border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:none;margin-bottom:18px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stats a{border-radius:12px;padding:16px 20px;transition:border-color .15s}.stats a:hover,.stats .selected{border-color:#82a5ee;text-decoration:none;background:#f0f5ff}.stats strong{font-size:28px;font-weight:650;margin-bottom:4px}.deadline-alerts{gap:8px}.deadline-alerts .alert{padding:8px 12px;font-size:12px;margin-bottom:14px}.alert.error{background:#fff0f0;color:#a23636}button,.button{background:var(--blue);padding:10px 15px;border-radius:8px;font-weight:600;font-size:13px}.secondary{background:#eef2f8;color:#34506f}.success{background:#20765a}.danger{background:#b83d43}.quiet{background:transparent}.actions{margin-top:18px;gap:8px}.shortcuts{margin:8px 0}.filters{gap:10px}.filters select{max-width:220px}.filters input,.filters select{font-size:13px;padding:9px 10px}th{font-weight:600;font-size:10px;padding:12px 10px}td{padding:17px 10px;font-size:13px;vertical-align:top}tbody tr:hover{background:#fafcff}.ticket-title{font-weight:600;min-width:230px;line-height:1.5}.ticket-title small{font-size:10px;letter-spacing:.8px}.badge{font-size:10px;padding:4px 8px;white-space:normal;margin-top:4px}.row-actions{display:flex;gap:6px;margin-bottom:8px}.row-actions .button,.row-actions button{font-size:11px;padding:7px 10px}.comment-preview{display:block;font-size:12px;color:var(--muted);margin-top:7px;max-width:370px;overflow-wrap:anywhere}.admin-actions{display:flex;gap:8px;justify-content:flex-end;padding-bottom:16px}.admin-actions form{margin:0}.admin-actions button{font-size:11px}.detail-grid{grid-template-columns:minmax(0,1fr) 310px}.event{padding:0 0 18px 18px;border-color:#e4ebf6}.event-head strong{font-size:13px}.event-text{font-size:14px;line-height:1.7}.title-preview{background:#f3f6fb;border:1px solid var(--line);padding:16px;border-radius:10px;margin:18px 0}.title-preview p{margin:8px 0 0}.PROGRAMMATO{background:#edf0ff;color:#4a5593}.ATTESA_COLLEGA{background:#f4edfb;color:#795496}dialog{border:1px solid var(--line);border-radius:16px;padding:28px;width:min(620px,calc(100vw - 32px));max-height:88vh;color:var(--ink);box-shadow:0 24px 80px #14243c33}dialog::backdrop{background:#172c465c;backdrop-filter:blur(3px)}dialog .heading{margin-bottom:20px}dialog .heading h2{margin:0}dialog button{margin-top:10px}dialog [hidden]{display:none}dialog input,dialog textarea,dialog select{margin-bottom:4px}input,select,textarea{border-color:#d4deea;padding:10px 12px;border-radius:8px}footer{border-top:1px solid var(--line);background:#fff}.narrow{margin-left:auto;margin-right:auto}aside details summary{font-size:14px}aside h2{font-size:15px}@media(max-width:900px){.detail-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}main{padding:18px}.card{padding:18px}.filters select{max-width:100%}header{padding:18px}.heading h1{font-size:24px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* V8: predictable columns, compact status and screenshots. */
.ticket-table{min-width:1160px;table-layout:auto}.ticket-table th,.ticket-table td{padding:16px 12px}.ticket-table .ticket-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-width:230px;max-width:360px;line-height:1.5}.ticket-title small{display:block}.priority{display:inline-block;padding:7px 10px;border-radius:7px;font-size:12px;font-weight:600;white-space:nowrap}.state-badge,.ticket-table .badge.APERTO,.ticket-table .badge.ASSEGNATO{white-space:nowrap;word-break:normal;border-radius:7px;padding:7px 10px;font-size:11px}.ticket-table th{white-space:nowrap}.ticket-table td:last-child{min-width:180px}.ticket-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px}.ticket-heading>div{min-width:0}.ticket-heading h1{font-size:25px;line-height:1.4;max-width:1000px}.ticket-heading>.state-badge{margin-top:24px}.ticket-screenshot{display:block;max-width:100%;max-height:450px;object-fit:contain;object-position:left;border:1px solid #dfe5ee;border-radius:8px;margin:14px 0 8px}.screenshot-link{display:block}.image-dialog{width:min(1400px,96vw);padding:16px}.image-dialog img{display:block;max-width:100%;height:auto;margin-top:12px}.image-dialog button{position:sticky;top:0}.upload-preview{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.upload-card{width:160px;padding:10px;border:1px solid #dfe5ee;border-radius:8px;display:flex;flex-direction:column;gap:8px}.upload-card img{width:100%;height:90px;object-fit:contain}.upload-card span{overflow-wrap:anywhere;font-size:11px}.upload-card button{font-size:11px;padding:6px}.upload-notice{color:#9d3035;font-size:13px}.row-actions{flex-wrap:nowrap}@media(max-width:700px){.ticket-heading{grid-template-columns:1fr;gap:8px}.ticket-heading>.state-badge{margin-top:0;justify-self:start}.ticket-heading h1{font-size:22px}}
.ticket-code{display:block;color:#7a8797;font-size:10px;letter-spacing:.8px;margin-bottom:4px}
@keyframes urgent-pulse{0%,100%{background:#ffe4e4;box-shadow:0 0 0 0 #dc354500}50%{background:#ffb6b9;box-shadow:0 0 0 3px #dc354522}}.urgent-pulse{animation:urgent-pulse 2s ease-in-out infinite}.notice-panel{position:fixed;right:24px;top:90px;width:min(430px,calc(100vw - 32px));max-height:75vh;overflow:auto;z-index:50;background:#fff;border:1px solid #d6e0ef;box-shadow:0 12px 40px #162c4630;border-radius:14px;padding:20px}.notice-panel[hidden]{display:none}.notice-panel .heading{margin-bottom:10px}.notice-item{display:block;padding:12px 0;border-bottom:1px solid #e4e9f0;font-size:13px;overflow-wrap:anywhere}#notice-read{margin-top:14px}#notice-summary{font-size:13px}#notice-toggle.has-notices{background:#ffedc7;color:#784b00}@media(prefers-reduced-motion:reduce){.urgent-pulse{animation:none;border:2px solid #c53643}}@media(max-width:700px){.notice-panel{top:150px;right:16px}}
