:root{--navy:#102938;--blue:#146d86;--ink:#183240;--muted:#5d6d78;--line:#dce3e8;--bg:#f3f6f9;--white:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--bg);font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{outline-offset:4px}button,.button{border:1px solid var(--line);background:white;color:var(--ink);border-radius:8px;cursor:pointer;padding:10px 15px;min-height:42px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover,.button:hover{background:#e8f1f5}button:disabled{opacity:.55;cursor:wait}.primary{background:var(--blue);border-color:var(--blue);color:white}.primary:hover{background:#0a5670}.danger{color:#a52030;border-color:#e7bdc1}.layout{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.sidebar{padding:32px 20px;background:var(--navy);color:#fff;display:flex;flex-direction:column;gap:25px}.brand{font-family:Georgia,serif;font-size:25px;line-height:1.2;letter-spacing:-.5px}.brand span{display:block;font:12px sans-serif;letter-spacing:2px;margin-bottom:8px}.sidebar h2{font-size:12px;letter-spacing:1.3px;text-transform:uppercase;color:#a4bbc7;margin:20px 12px 8px}.sidebar nav{display:grid;gap:5px}.sidebar button,.sidebar a{justify-content:flex-start;background:transparent;border:0;color:#c5d5df;text-align:left;font-size:14px;padding:12px}.sidebar .active,.sidebar button:hover,.sidebar a:hover{background:#254655;color:white}.sidebar .active{box-shadow:inset 3px 0 #55d0df}.account{margin-top:auto;font-size:14px;display:grid;gap:10px}.account small{color:#b8c8d3}.main{padding:30px 38px;min-width:0}.topline{display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px;font-size:14px;color:var(--muted)}.tag{border:1px solid #e4c481;color:#77500a;background:#fff5d9;border-radius:5px;padding:5px 9px;font-size:12px;font-weight:700;letter-spacing:.6px}.header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:30px 0 24px}h1{font-size:32px;letter-spacing:-1px;margin:0 0 8px}h2{font-size:20px;letter-spacing:-.3px}p{line-height:1.55}.muted,.subtitle{color:var(--muted)}.subtitle{font-size:14px;margin:0}.actions{display:flex;gap:8px;flex-wrap:wrap}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:26px}.metric{padding:20px;background:white;border:1px solid var(--line);border-radius:12px;display:block;text-align:left}.metric strong{font-size:30px;font-weight:600;display:block;margin:9px 0}.metric span{font-size:14px;color:var(--muted)}.metric b{font-size:12px;color:var(--blue)}.surface{border:1px solid var(--line);background:white;border-radius:12px;overflow:hidden}.toolbar{padding:18px;display:flex;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--line)}input,select,textarea{border:1px solid #bbc9d2;border-radius:7px;padding:10px 12px;max-width:100%;min-width:0;background:white;color:var(--ink)}.toolbar input{flex:1;min-width:170px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}th{font-weight:600;background:#f9fbfc;color:var(--muted);padding:14px 18px;white-space:nowrap}td{padding:18px;border-top:1px solid #e8edf0;vertical-align:middle}td strong{display:block;font-size:15px;margin-bottom:5px}td small{color:var(--muted);font-size:12px}tr:hover td{background:#f9fbfc}.code{font-size:12px;letter-spacing:.3px;color:#647b89;display:block;margin-top:5px}.badge{display:inline-block;padding:5px 9px;font-size:12px;border-radius:5px;background:#e8f0f4;color:#2d596c;font-weight:650;white-space:nowrap}.badge.pending{color:#855709;background:#fff1cc}.badge.progress{color:#fff;background:#146d86;border:1px solid #0a5670}.badge.done{color:#26633c;background:#e2f3e8}.badge.cancel{color:#983546;background:#f7e4e8}.priority{color:#b22a3b;font-weight:700}.empty{padding:54px 24px;text-align:center;color:var(--muted)}.bottom-note{font-size:13px;color:var(--muted);margin-top:18px;line-height:1.55}.login{max-width:450px;margin:7vh auto;background:white;border:1px solid var(--line);border-radius:15px;padding:32px}.login .tag{display:inline-block;margin-bottom:22px}form label{display:grid;gap:7px;font-size:14px;font-weight:600;margin-bottom:16px}form input,form select,form textarea{font-weight:400;width:100%}form .check{display:flex;align-items:flex-start;gap:10px;line-height:1.5}.check input{width:auto;margin:5px 0}dialog{border:0;border-radius:15px;padding:0;max-width:900px;width:calc(100% - 30px);max-height:92vh;color:var(--ink);box-shadow:0 25px 100px #06192755}dialog::backdrop{background:#10293888}.dialog-head{padding:24px 28px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;align-items:center;position:sticky;top:0;background:white;z-index:2}.dialog-head h2{margin:0}.dialog-body{padding:24px 28px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.wide{grid-column:1/-1}.section{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}.section h3{font-size:16px}.file-list{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.error{color:#9d2437;background:#fce8ec;padding:12px;border-radius:7px;line-height:1.5;font-size:14px}.info{background:#edf5f8;padding:14px;border-radius:8px;font-size:14px;line-height:1.5;margin:14px 0}.event{display:grid;grid-template-columns:155px 1fr;font-size:14px;padding:10px 0;border-bottom:1px solid var(--line);gap:12px}.event time{color:var(--muted);font-size:12px}.rules{padding:24px}.rule{display:grid;grid-template-columns:1.6fr 1fr 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.notification{padding:22px;border-bottom:1px solid var(--line)}#notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:15px 24px;background:#173b4b;color:white;border-radius:10px;max-width:90vw;z-index:100;font-size:14px;box-shadow:0 5px 30px #1233}.stale{padding:10px 0;color:#a52839;font-size:14px}.topline a{color:var(--blue)}@media(max-width:1000px){.layout{grid-template-columns:200px 1fr}.main{padding:24px}.metrics{grid-template-columns:repeat(2,1fr)}.header{align-items:flex-start;flex-direction:column}.rule{grid-template-columns:1fr 1fr}.rule strong{grid-column:1/-1}}@media(max-width:700px){.layout{display:block}.sidebar{padding:16px;gap:12px}.brand{font-size:21px}.brand span{font-size:10px}.sidebar nav{display:flex;overflow-x:auto}.sidebar nav button{white-space:nowrap}.sidebar h2,.sidebar .account small{display:none}.sidebar .account{display:flex;justify-content:space-between;align-items:center;margin:0}.sidebar .account strong{font-size:12px}.main{padding:18px 14px}.topline{flex-wrap:wrap}.header{margin:24px 0 18px}h1{font-size:28px}.metrics{gap:10px}.metric{padding:15px}.metric strong{font-size:25px}.grid2{display:block}.dialog-head,.dialog-body{padding:18px}.event{grid-template-columns:1fr;gap:4px}table{min-width:770px}.toolbar select{flex:1;min-width:140px}.login{margin:25px 15px}.rules{padding:14px}}
@media(max-width:700px){.sidebar nav button,.sidebar nav a{flex:none;white-space:nowrap}.dialog-body>.actions{margin-bottom:18px}}
.message-contact,.message-history{padding:14px 0;border-bottom:1px solid var(--line)}.message-contact summary,.message-history summary{cursor:pointer;font-size:14px;margin-bottom:12px}.message-compose{margin-top:20px}.message-compose label{display:block;font-size:14px;font-weight:600;margin:12px 0}.message-compose select,.message-compose textarea{display:block;width:100%;margin-top:8px;font-weight:400}.message-history pre{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.6 inherit}.notification .badge{margin-left:10px}.notification button{margin-top:10px}
.galena-workflow{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px;margin:16px 0;background:#edf5f8;border:1px solid var(--line);border-radius:10px}.galena-workflow>div{flex:1;min-width:180px}.galena-workflow p{font-size:14px;line-height:1.5;margin:6px 0 0}.galena-workflow .button{flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.order-created{font-size:14px;color:var(--muted);margin:14px 0 22px}.order-created time{font-weight:600;color:var(--ink)}.new-attachment{padding:16px;margin:8px 0 20px;background:#edf5f8;border:1px solid var(--line);border-radius:10px}.new-attachment h3{margin:0 0 14px;font-size:16px}.new-attachment .bottom-note{margin:0}
.stats-page{padding:22px}.stats-page>.info{margin-top:0}.stats-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 18px}.stats-presets{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.stats-more,.stats-method{margin:12px 0 20px;border-top:1px solid var(--line);padding-top:14px}.stats-more summary,.stats-method summary{cursor:pointer;font-size:14px;font-weight:600;margin-bottom:16px}.stats-method p{font-size:14px;color:var(--muted)}.stats-search{grid-column:1/-1}.stats-grouping{max-width:750px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:20px}.stats-metrics{margin-top:22px;gap:12px}.stats-metrics .metric{padding:16px}.stats-metrics small{font-size:12px;line-height:1.4;color:var(--muted);display:block}.stats-breakdowns{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin:24px 0}.stats-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:white}.stats-card h2{font-size:18px;margin:20px}.stats-card>p{font-size:13px;margin:0 20px 18px}.stats-card th,.stats-card td{padding:12px}.stats-card td small{display:block;margin-top:5px}.stats-group-table progress{display:block;accent-color:var(--blue);height:7px;width:110px;max-width:100%;margin-top:8px}.stats-orders{min-width:1250px}.stats-group-table{min-width:620px}.stats-page #stats-status{font-size:14px;color:var(--muted)}@media(max-width:1100px){.stats-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.stats-page{padding:14px}.stats-filter-grid{grid-template-columns:1fr}.stats-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stats-metrics .metric{padding:12px}.stats-metrics .metric span{font-size:12px}.stats-metrics .metric strong{font-size:25px}.stats-page .actions>button{flex:1 1 140px}.stats-presets button{font-size:13px;padding:8px 10px}.stats-grouping{max-width:none}}

.stats-charts{margin:28px 0}.stats-chart-heading h2{font-size:22px;margin:0 0 8px}.stats-chart-heading p,.stats-operator-note{font-size:14px;color:var(--muted);line-height:1.6;margin:0 0 20px}.stats-charts .stats-card h3{font-size:18px;margin:20px 20px 8px}.stats-pie-body{display:grid;grid-template-columns:minmax(150px,240px) minmax(0,1fr);align-items:center;gap:24px;padding:0 24px 24px}.stats-pie{display:block;width:100%;max-width:240px;height:auto;margin:auto;overflow:visible}.stats-pie path,.stats-pie circle{stroke:#fff;stroke-width:1.5;stroke-linejoin:round}.stats-pie-legend{list-style:none;padding:0;margin:0;min-width:0}.stats-pie-legend li{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:9px;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px;overflow-wrap:anywhere}.stats-pie-legend li:last-child{border-bottom:0}.stats-pie-swatch{width:12px;height:12px;align-self:center}.stats-pie-legend strong{font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums}.stats-pie-legend small{font-size:12px;color:var(--muted);font-weight:400}.stats-operator-heading{font-size:20px;margin:28px 0 10px}.stats-operator-pies{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.stats-operator-pies .stats-pie-body{grid-template-columns:minmax(0,1fr);gap:14px}.stats-operator-pies .stats-pie{max-width:200px}.stats-pie-empty{padding:22px 0;color:var(--muted)}@media(max-width:850px){.stats-pie-body{grid-template-columns:minmax(0,1fr);gap:16px}.stats-operator-pies{grid-template-columns:minmax(0,1fr)}}@media(max-width:700px){.stats-pie-body{padding:0 16px 20px}.stats-pie-legend li{gap:7px}.stats-charts .stats-card h3{margin-left:16px}.stats-charts .stats-card>p{margin-left:16px;margin-right:16px}}

.status-message{padding:1rem;border:2px solid #337564;border-radius:12px;background:#f2f8f5}.status-message h3{margin-top:0}.status-message textarea{width:100%}

.attachment-open{display:flex;flex-direction:column;align-items:flex-start;text-align:left;max-width:100%;overflow-wrap:anywhere}.attachment-open small{font-size:12px;color:var(--muted);font-weight:400}
.attachment-preview{max-width:1180px;height:92vh;height:92dvh;overflow:hidden}.attachment-preview[open]{display:flex;flex-direction:column}.attachment-preview .dialog-head{flex:none;position:static;align-items:flex-start}.attachment-preview .dialog-head>div:first-child{min-width:0;flex:1}.attachment-preview h2{font-size:18px;overflow-wrap:anywhere}.preview-caption{font-size:12px;color:var(--muted);margin:0 0 6px}.attachment-preview .actions{flex:none}.preview-content{flex:1;min-height:0;overflow:auto;background:#e9eef1;display:flex;align-items:center;justify-content:center}.preview-content>p{margin:24px}.preview-content iframe{border:0;width:100%;height:100%;background:white}.preview-content img{display:block;max-width:100%;max-height:100%;object-fit:contain}.attachment-preview [hidden]{display:none}
@media(max-width:600px){.attachment-preview{width:calc(100% - 16px);height:94vh;height:94dvh;max-height:94vh;max-height:94dvh}.attachment-preview .dialog-head{padding:14px;gap:12px;flex-wrap:wrap}.attachment-preview h2{font-size:16px}.attachment-preview .actions{width:100%;justify-content:flex-end}}

.preview-controls{display:flex;flex:none;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;padding:10px;border-bottom:1px solid var(--line)}.preview-controls button{padding:6px 13px}.preview-controls [role=status]{min-width:100px;text-align:center;font-size:14px}.preview-content.preview-pdf{display:block;overflow:auto}.preview-pdf canvas{display:block;background:white;margin:16px auto;box-shadow:0 2px 10px #173b4b33}

/* Comandi distinti per funzione, con etichette esplicite oltre al colore. */
.dialog-body button[data-op],.dialog-body button[data-operation],.dialog-body .galena-workflow .button,.dialog-body .action-cancel{font-weight:700;box-shadow:0 2px 5px #10293818}
button[data-op="complete"],button[data-op="verify"],button[data-operation="accept"]{background:#217144;border-color:#217144;color:#fff}
button[data-op="reassign"],.galena-workflow .button{background:#6546a3;border-color:#6546a3;color:#fff}
button[data-op="pause"],button[data-op="integrate"]{background:#f3cf77;border-color:#b88621;color:#453109}
button[data-op="cancel"],.action-cancel{background:#ad293d;border:1px solid #ad293d;color:#fff}
button[data-operation="save"],button[data-open]{background:#176b89;border-color:#176b89;color:#fff}
.dialog-body button[data-op]:hover,.dialog-body button[data-operation]:hover,.galena-workflow .button:hover,.action-cancel:hover,button[data-open]:hover{filter:brightness(.9)}
.action-cancel{display:inline-flex;align-items:center;min-height:44px;border-radius:8px;padding:10px 18px;cursor:pointer;font-weight:700;list-style:none}.action-cancel::-webkit-details-marker{display:none}.action-cancel::after{content:' ▾'}details[open]>.action-cancel::after{content:' ▴'}
.order-edit-form{padding:20px;background:#f5f9fc;border:1px solid #c7dce6;border-radius:12px}.order-edit-form h3{margin:0;font-size:22px}.order-edit-form>.actions{position:sticky;bottom:0;padding:12px 0;background:#f5f9fc;z-index:1}
button:focus-visible,.button:focus-visible,.action-cancel:focus-visible{outline:3px solid #102938;outline-offset:3px}
.dialog-body .section>label{display:grid;gap:8px;margin:14px 0;font-weight:600;font-size:14px}.dialog-body .section>label>textarea{width:100%}.dialog-body .section>label>select,.dialog-body .section>label>input{width:100%;max-width:420px;font-weight:400}.dialog-body .section>.actions{margin:16px 0}.action-cancel::after{margin-left:6px}

.order-internal-notes{min-width:180px;max-width:360px;white-space:pre-wrap;overflow-wrap:anywhere}
