/* psa.css — stile condiviso pagine PSA reali (usa theme-vars: light/dark). */
body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,sans-serif}
.psa-wrap{max-width:1340px;margin:0 auto;padding:20px 18px 60px}
.psa-head{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.psa-head h1{margin:0;font-size:21px;font-weight:800}
.psa-head .sub{color:var(--text-3);font-size:13px;margin-top:3px}
.psa-head .right{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.psa-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:14px;box-shadow:var(--shadow-sm)}
.psa-card h2,.psa-card h3{margin:0 0 12px;font-size:15px;font-weight:700}
.psa-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:16px}
.psa-kpi{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:13px 15px}
.psa-kpi .l{font-size:10.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-3);font-weight:700}
.psa-kpi .v{font-size:24px;font-weight:800;margin-top:5px;font-variant-numeric:tabular-nums}
.psa-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:900px){.psa-grid2{grid-template-columns:1fr}}
table.psa{width:100%;border-collapse:collapse;font-size:13px}
table.psa thead th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-3);font-weight:700;padding:9px 12px;border-bottom:1px solid var(--border);white-space:nowrap}
table.psa tbody td{padding:10px 12px;border-bottom:1px solid var(--border)}
table.psa tbody tr:hover{background:var(--surface-2)}
table.psa td.num,table.psa th.num{text-align:right;font-variant-numeric:tabular-nums}
.psa-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:13px;font-weight:600;cursor:pointer;transition:.15s}
.psa-btn:hover{border-color:var(--border-hi)}
.psa-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}
.psa-btn.ok{background:var(--green);border-color:var(--green);color:#fff}
.psa-btn.sm{padding:5px 10px;font-size:12px}
.psa-btn.danger{color:var(--danger);border-color:var(--danger)}
.psa input,.psa select,.psa-form input,.psa-form select,.psa-form textarea{background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:7px;padding:7px 9px;font-size:13px}
.bdg{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:2px 9px;border-radius:20px}
.bdg.green{background:rgba(16,163,74,.15);color:var(--green)}
.bdg.amber{background:rgba(217,119,6,.15);color:var(--warn)}
.bdg.red{background:rgba(220,38,38,.15);color:var(--danger)}
.bdg.blue{background:rgba(37,99,235,.15);color:var(--accent)}
.bdg.grey{background:var(--surface-3);color:var(--text-3)}
.bar{height:7px;background:var(--surface-3);border-radius:6px;overflow:hidden}
.bar>span{display:block;height:100%;background:var(--accent)}
.bar.g>span{background:var(--green)}.bar.a>span{background:var(--warn)}.bar.r>span{background:var(--danger)}
.psa-form{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end;margin-bottom:12px}
.psa-form label{display:flex;flex-direction:column;font-size:11px;color:var(--text-3);gap:3px}
.psa-empty{color:var(--text-3);padding:24px;text-align:center}
.psa-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:14px;flex-wrap:wrap}
.psa-tabs .t{padding:9px 13px;font-size:13px;font-weight:600;color:var(--text-3);cursor:pointer;border-bottom:2px solid transparent}
.psa-tabs .t.on{color:var(--text);border-bottom-color:var(--accent)}
.psa-toast{position:fixed;right:16px;bottom:16px;background:var(--bg-2);border:1px solid var(--border);color:var(--text);padding:10px 16px;border-radius:10px;box-shadow:var(--shadow-lg);opacity:0;transform:translateY(8px);transition:.2s;z-index:9999;font-size:13px}
.psa-toast.show{opacity:1;transform:none}
.psa-toast.bad{border-color:var(--danger);color:var(--danger)}
.mono{font-family:ui-monospace,Menlo,monospace}
.muted{color:var(--text-3)}
.ts-in{width:52px;text-align:center;font-variant-numeric:tabular-nums}
.ts-in.has{border-color:var(--accent)}
/* G27 — mobile/responsive */
@media(max-width:760px){
  .psa-wrap{padding:12px 10px 48px}
  .psa-head{flex-direction:column;align-items:stretch}
  .psa-head .right{margin-left:0;width:100%}
  .psa-head .right>*{flex:1}
  .psa-grid2{grid-template-columns:1fr}
  .psa-kpis{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
  .psa-card{padding:12px;overflow-x:auto}
  table.psa{font-size:12px}
  .psa-tabs{overflow-x:auto;flex-wrap:nowrap}
  .psa-tabs .t{white-space:nowrap}
  .psa-form{flex-direction:column;align-items:stretch}
  .psa-form label,.psa-form input,.psa-form select{width:100%}
}
