.pa-dashboard-root{
  --pa-bg:#0f1420; --pa-panel:#171e2e; --pa-panel2:#1d2536; --pa-border:#2a3247;
  --pa-text:#e8ecf4; --pa-muted:#8b96ab; --pa-accent:#5b8cff; --pa-accent2:#7ee0c0;
  --pa-warn:#f2a94d; --pa-danger:#f26d6d;

  box-sizing:border-box;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  background:var(--pa-bg); color:var(--pa-text);
  padding:32px; border-radius:14px;
  max-width:100%;
  overflow-x:hidden;
}
.pa-dashboard-root *{box-sizing:border-box;}

.pa-h1{font-size:22px; margin:0 0 4px 0; font-weight:600; color:var(--pa-text);}
.pa-sub{color:var(--pa-muted); font-size:14px; margin-bottom:8px;}

.pa-status-bar{display:flex; align-items:center; gap:10px; flex-wrap:wrap; font-size:12px; color:var(--pa-muted); margin-bottom:20px;}
.pa-status-bar.pa-live{color:var(--pa-accent2);}
.pa-status-bar.pa-stale{color:var(--pa-warn);}
.pa-status-bar .pa-dot{width:8px; height:8px; border-radius:50%; background:currentColor; flex:none;}

.pa-cards{display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:28px;}
.pa-card{background:var(--pa-panel); border:1px solid var(--pa-border); border-radius:12px; padding:18px 20px;}
.pa-card .pa-label{color:var(--pa-muted); font-size:12.5px; text-transform:uppercase; letter-spacing:.04em; margin-bottom:8px;}
.pa-card .pa-value{font-size:28px; font-weight:600;}

.pa-grid2{display:grid; grid-template-columns:1.6fr 1fr; gap:16px; margin-bottom:16px;}
.pa-panel{background:var(--pa-panel); border:1px solid var(--pa-border); border-radius:12px; padding:20px;}
.pa-panel h2{font-size:14px; font-weight:600; margin:0 0 16px 0; color:var(--pa-text);}

.pa-dashboard-root table{width:100%; border-collapse:collapse; font-size:13.5px; color:var(--pa-text);}
.pa-dashboard-root th{text-align:left; color:var(--pa-muted); font-weight:500; padding:6px 8px; border-bottom:1px solid var(--pa-border); font-size:12px; text-transform:uppercase;}
.pa-dashboard-root td{padding:8px; border-bottom:1px solid var(--pa-border);}
.pa-dashboard-root tr:last-child td{border-bottom:none;}

.pa-bar-track{background:var(--pa-panel2); border-radius:4px; height:8px; width:100%; overflow:hidden;}
.pa-bar-fill{background:var(--pa-accent); height:100%; border-radius:4px;}

.pa-note{background:var(--pa-panel2); border:1px solid var(--pa-border); border-left:3px solid var(--pa-warn); border-radius:8px; padding:12px 16px; font-size:13px; color:var(--pa-muted); margin-top:16px;}
.pa-note b{color:var(--pa-warn);}

.pa-dashboard-root canvas{max-height:300px; cursor:pointer; max-width:100%;}
.pa-footer{color:var(--pa-muted); font-size:12px; margin-top:24px; text-align:right;}
.pa-day-hint{color:var(--pa-muted); font-size:12px; margin-top:8px;}
.pa-day-title{font-size:13px; color:var(--pa-text); margin-bottom:4px;}
.pa-day-title .pa-count{color:var(--pa-muted); font-weight:400;}
.pa-salg-yes{color:var(--pa-accent2); font-weight:600;}
.pa-salg-no{color:var(--pa-muted);}

.pa-summary-groups{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:28px;}
.pa-summary-card{background:var(--pa-panel); border:1px solid var(--pa-border); border-top:3px solid var(--pa-accent); border-radius:12px; padding:20px;}
.pa-summary-card.pa-yesterday{border-top-color:var(--pa-accent2);}
.pa-summary-card.pa-period28{border-top-color:var(--pa-warn);}
.pa-summary-card h3{margin:0 0 16px 0; font-size:13px; text-transform:uppercase; letter-spacing:.04em; color:var(--pa-text); font-weight:600;}
.pa-summary-stats{display:flex; gap:10px;}
.pa-summary-stat{flex:1; text-align:center; background:var(--pa-panel2); border-radius:8px; padding:12px 6px;}
.pa-summary-stat .pa-num{font-size:22px; font-weight:700; display:block; line-height:1.2; color:var(--pa-text);}
.pa-summary-stat .pa-lbl{font-size:10.5px; color:var(--pa-muted); text-transform:uppercase; letter-spacing:.03em; margin-top:6px; display:block;}
.pa-summary-footnote{font-size:11px; color:var(--pa-muted); margin-top:10px;}

.pa-table-wrap{overflow-x:auto;}
.pa-dashboard-root .pa-table-wrap table{min-width:480px;}

.pa-dashboard-error{background:#3a1414; border:1px solid #7a2a2a; color:#f2c4c4; padding:16px 20px; border-radius:10px; font-size:14px;}

@media (max-width: 900px){
  .pa-dashboard-root{padding:20px;}
  .pa-cards{grid-template-columns:repeat(2,1fr);}
  .pa-summary-groups{grid-template-columns:1fr; gap:10px;}
  .pa-grid2{grid-template-columns:1fr;}
}
@media (max-width: 560px){
  .pa-dashboard-root{padding:12px;}
  .pa-h1{font-size:17px; margin-bottom:2px;}
  .pa-sub{font-size:11.5px; margin-bottom:6px;}
  .pa-summary-groups{gap:8px; margin-bottom:12px;}
  .pa-summary-card{padding:12px;}
  .pa-summary-card h3{margin-bottom:8px; font-size:11.5px;}
  .pa-summary-stats{gap:6px;}
  .pa-summary-stat{padding:8px 4px;}
  .pa-summary-stat .pa-num{font-size:16px;}
  .pa-summary-stat .pa-lbl{font-size:9px; margin-top:3px;}
  .pa-summary-footnote{font-size:10px; margin-top:6px;}
  .pa-cards{grid-template-columns:1fr 1fr; gap:8px; margin-bottom:14px;}
  .pa-card{padding:10px 12px;}
  .pa-card .pa-label{font-size:10.5px; margin-bottom:4px;}
  .pa-card .pa-value{font-size:19px;}
  .pa-panel{padding:12px; margin-bottom:2px;}
  .pa-panel h2{font-size:12.5px; margin-bottom:10px;}
  .pa-grid2{gap:10px; margin-bottom:10px;}
  .pa-dashboard-root .pa-table-wrap table{min-width:420px; font-size:12.5px;}
  .pa-dashboard-root canvas{max-height:220px;}
}

/* --- Platform-filter --- */
.pa-filter-bar{display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:20px;}
.pa-filter-label{font-size:12.5px; color:var(--pa-muted); margin-right:2px;}
.pa-filter-btn{
  background:var(--pa-panel); border:1px solid var(--pa-border); color:var(--pa-text);
  font-size:12.5px; padding:7px 14px; border-radius:20px; cursor:pointer;
  transition:background .15s ease, border-color .15s ease;
}
.pa-filter-btn:hover:not(:disabled){border-color:var(--pa-accent);}
.pa-filter-btn.is-active{background:var(--pa-accent); border-color:var(--pa-accent); color:#fff; font-weight:600;}
.pa-filter-btn:disabled{opacity:.4; cursor:not-allowed;}

/* --- Platform badges i tabeller --- */
.pa-badge{display:inline-block; font-size:10.5px; font-weight:700; letter-spacing:.02em; padding:2px 7px; border-radius:5px; text-transform:uppercase;}
.pa-badge-pa{background:rgba(91,140,255,.18); color:#8fb0ff;}
.pa-badge-at{background:rgba(126,224,192,.18); color:var(--pa-accent2);}

.pa-day-subtitle{font-size:12.5px; font-weight:600; color:var(--pa-muted); text-transform:uppercase; letter-spacing:.03em; margin:18px 0 8px 0;}
.pa-day-subtitle:first-of-type{margin-top:0;}

@media (max-width: 560px){
  .pa-filter-bar{gap:6px; margin-bottom:14px;}
  .pa-filter-btn{padding:6px 10px; font-size:11.5px;}
}
