.ownermgr-wrap{max-width:1100px;margin:30px auto;padding:0 15px}
.ownermgr-row{display:flex;flex-wrap:wrap;gap:12px}
.ownermgr-card{border:1px solid #eee;border-radius:14px;padding:18px;margin-top:16px;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.04)}

.ownermgr-btn{padding:10px 14px;border-radius:10px;border:1px solid #e5e7eb;background:#f3f4f6;cursor:pointer;font-weight:600}
.ownermgr-btn:hover{filter:brightness(.95)}
.ownermgr-btn-primary{background:#13172b;color:#fff;border-color:#13172b}
.ownermgr-btn-primary:hover{filter:brightness(1.1)}

.ownermgr-link{background:none;border:none;color:#13172b;cursor:pointer;font-weight:700;text-decoration:none}
.ownermgr-link:hover{text-decoration:underline}

.ownermgr-hp{position:absolute;left:-9999px;opacity:0;height:1px;width:1px}

.ownermgr-calendar-controls{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:10px}
.ownermgr-month-label{font-size:22px;text-transform:capitalize;font-weight:800}
.ownermgr-nav{width:44px;height:44px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;color:#13172b;font-size:28px;line-height:1;cursor:pointer}
.ownermgr-nav:hover{filter:brightness(.92)}

.ownermgr-calendar{overflow-x:auto;-webkit-overflow-scrolling:touch}
.ownermgr-table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:680px}
.ownermgr-table th{padding:10px;border-bottom:1px solid #eee;text-transform:uppercase;font-size:12px;letter-spacing:.06em;color:#6b7280}
.ownermgr-table td{border:1px solid #f0f0f0;padding:10px;vertical-align:top;height:96px}
.ownermgr-table td.empty{background:#fafafa;border-color:#fafafa}

.daycell{cursor:pointer;position:relative;border-radius:10px}
.daycell .day{font-weight:800}
.daycell .price{margin-top:6px;font-size:12px;opacity:.85}

/* Disponibile: grigio perlato */
.daycell.available{background:#f3f4f6}
.daycell.available:hover{filter:brightness(.97)}

/* Non disponibile: rosso */
.daycell.unavailable{cursor:not-allowed}
.daycell.unavailable-client{background:#fee2e2;color:#991b1b}
.daycell.unavailable-owner{background:#e7e9ff;color:#13172b}
.daycell.unavailable .price{opacity:.75}

/* Oggi: evidenza */
.daycell.today{outline:2px solid #13172b;outline-offset:-2px}

/* Selezione */
.daycell.selected-range{box-shadow:inset 0 0 0 2px rgba(19,23,43,.25)}
.daycell.selected-start,
.daycell.selected-end{box-shadow:inset 0 0 0 2px #13172b}

.ownermgr-actions{margin-top:14px;padding-top:14px;border-top:1px solid #eee}
.ownermgr-pill{display:inline-block;padding:8px 10px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb;min-width:140px;font-weight:700}
.ownermgr-small{font-size:12px;opacity:.75;margin-bottom:6px}
.ownermgr-time{padding:9px 10px;border-radius:10px;border:1px solid #e5e7eb;background:#fff}

/* Stats */
.ownermgr-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.ownermgr-stat{border:1px solid #e5e7eb;border-radius:14px;padding:12px;background:#fff}
.ownermgr-stat-label{font-size:12px;opacity:.75}
.ownermgr-stat-value{font-size:22px;font-weight:800;margin-top:6px}
@media (max-width: 900px){.ownermgr-stats{grid-template-columns:1fr}}

.ownermgr-legend{display:flex;flex-wrap:wrap;gap:10px}
.ownermgr-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid #e5e7eb;background:#fff;font-size:12px;font-weight:700}
.ownermgr-badge:before{content:"";width:10px;height:10px;border-radius:3px;display:inline-block}
.ownermgr-badge-today:before{background:#13172b}
.ownermgr-badge-avail:before{background:#f3f4f6;border:1px solid #d1d5db}
.ownermgr-badge-unavail:before{background:#fee2e2;border:1px solid #fca5a5}
.ownermgr-badge-owner:before{background:#e7e9ff;border:1px solid #b8bdf2}
.ownermgr-badge-selected:before{background:rgba(19,23,43,.25);border:1px solid #13172b}

.ownermgr-list{display:flex;flex-direction:column;gap:10px}
.ownermgr-yacht{display:block;padding:14px 14px;border:1px solid #e5e7eb;border-radius:12px;text-decoration:none;color:inherit;background:#fff}
.ownermgr-yacht:hover{background:#f8fafc}
.ownermgr-yacht-title{font-weight:800}
.ownermgr-yacht-sub{margin-top:4px;font-size:12px;opacity:.75}

/* Tablet */
@media (max-width: 768px){
  .ownermgr-wrap{margin:18px auto}
  .ownermgr-month-label{font-size:18px}
  .ownermgr-nav{width:40px;height:40px;font-size:26px}
  .ownermgr-table{min-width:640px}
}

/* Mobile */
@media (max-width: 520px){
  .ownermgr-card{padding:14px}
  .ownermgr-month-label{font-size:16px}
  .ownermgr-table{min-width:600px}
  .ownermgr-table th{padding:6px;font-size:10px}
  .ownermgr-table td{padding:6px;height:72px}
  .daycell .price{font-size:10px}
  #ownermgr-create{width:100%}
}
