/* ---------- coworking-specific styles ---------- */
  .cw-panel{
    background:var(--paper); border:1px solid var(--line); border-radius:2px;
    padding:32px 28px; max-width:480px; margin:0 auto;
  }
  .cw-hidden{ display:none !important; }
  .cw-topbar{
    display:flex; justify-content:space-between; align-items:center; gap:16px;
    flex-wrap:wrap; margin-bottom:28px;
  }
  .cw-user-pill{
    display:inline-flex; align-items:center; gap:10px;
    background:var(--paper-2); border:1px solid var(--line);
    padding:8px 14px; border-radius:100px; font-size:0.86rem; color:var(--charcoal-2);
  }
  .cw-logout{
    background:none; border:1px solid var(--line); color:var(--charcoal-2);
    padding:8px 14px; border-radius:100px; font-size:0.86rem; cursor:pointer;
    font-family:var(--sans); font-weight:600;
  }
  .cw-logout:hover{ border-color:var(--gold); color:var(--gold); }
  .cw-controls{
    display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:24px;
  }
  @media (max-width:760px){ .cw-controls{ grid-template-columns:1fr 1fr !important; } }
  @media (max-width:460px){ .cw-controls{ grid-template-columns:1fr !important; } }
  .cw-confirm-bar{
    display:flex; justify-content:space-between; align-items:center; gap:16px;
    flex-wrap:wrap; padding-top:18px; border-top:1px solid var(--line);
  }
  .cw-timeline-wrap{ margin-bottom:26px; }
  .cw-timeline{
    position:relative; height:48px; background:var(--paper-2);
    border:1px solid var(--line); border-radius:2px; overflow:hidden;
  }
  .cw-timeline-block{
    position:absolute; top:0; bottom:0;
    background:var(--charcoal); opacity:0.55;
  }
  .cw-timeline-block.mine{ background:var(--gold); opacity:0.85; }
  .cw-timeline-labels{
    display:flex; justify-content:space-between;
    font-size:0.72rem; color:var(--stone); margin-top:6px;
  }
  .cw-timeline-legend{
    display:flex; gap:20px; flex-wrap:wrap; margin-top:12px;
    font-size:0.82rem; color:var(--charcoal-2);
  }
  .cw-legend-dot{
    display:inline-block; width:10px; height:10px; border-radius:2px;
    margin-right:6px; vertical-align:middle;
  }
  .cw-legend-dot.mine{ background:var(--gold); }
  .cw-legend-dot.occupied{ background:var(--charcoal); opacity:0.55; }
  .cw-bookings-list{ list-style:none; margin:0; padding:0; }
  .cw-bookings-list li{
    display:flex; justify-content:space-between; align-items:center; gap:16px;
    padding:16px 0; border-bottom:1px solid var(--line); flex-wrap:wrap;
  }
  .cw-bookings-list strong{ display:block; font-size:0.98rem; }
  .cw-bookings-list span{ color:var(--stone); font-size:0.86rem; }
  .cw-cancel-btn{
    background:none; border:1px solid var(--line); color:var(--charcoal-2);
    padding:7px 14px; border-radius:2px; font-size:0.82rem; cursor:pointer;
    font-family:var(--sans); font-weight:600; white-space:nowrap;
  }
  .cw-cancel-btn:hover{ border-color:#B0473F; color:#B0473F; }
  .cw-msg{
    padding:12px 16px; border-radius:2px; font-size:0.9rem; margin-bottom:20px;
  }
  .cw-msg.error{ background:#F6E6E4; color:#8A2E24; }
  .cw-msg.success{ background:#EAF3E6; color:#2E5C23; }
  .cw-loading{ color:var(--stone); font-size:0.9rem; }
  .cw-empty{ color:var(--stone); font-size:0.92rem; padding:20px 0; }
/* ---------- riepilogo mensile amministratore ---------- */
.cw-admin-table{ width:100%; border-collapse:collapse; font-size:0.92rem; }
.cw-admin-table th, .cw-admin-table td{ text-align:left; padding:12px; border-bottom:1px solid var(--line); }
.cw-admin-table th{
  font-weight:600; color:var(--charcoal-2); font-size:0.76rem;
  text-transform:uppercase; letter-spacing:0.05em;
}
.cw-admin-table td:nth-child(2), .cw-admin-table td:nth-child(3),
.cw-admin-table th:nth-child(2), .cw-admin-table th:nth-child(3){ text-align:right; }
.cw-admin-table tfoot td{ border-top:2px solid var(--gold); border-bottom:none; padding-top:16px; }
.cw-admin-row{ cursor:pointer; transition:background-color .2s ease; }
.cw-admin-row:hover, .cw-admin-row:focus{ background-color:rgba(176,126,63,0.08); outline:none; }
.cw-admin-row td:first-child{ color:var(--gold); font-weight:600; }
#cw-admin-month{ width:auto; }
