:root{
  --covo-primary:#004C92; --covo-accent:#C4057A; --covo-teal:#098385;
  --covo-text:#0f172a; --card-bg:#ffffff; --muted:#64748b; --bg:#F8FAFC;
}
.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}
*:focus-visible{outline:3px solid var(--covo-accent);outline-offset:3px}

.simone-wrap{max-width:980px;margin:2rem auto;padding:0 1rem}
.stack{display:flex;flex-direction:column;gap:1rem}

.card{background:var(--card-bg);border-radius:20px;padding:1rem 1.25rem;box-shadow:0 12px 36px rgba(2,6,23,.06);position:relative}
.card-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}
.card h2{display:flex;align-items:center;gap:.6rem;margin:0;color:var(--covo-primary)}
.card .sub{margin:0;color:#475569;font-size:.95rem}

.card.hero{border-left:6px solid var(--covo-primary)}
.hero-row{display:flex;gap:1rem;align-items:center}
.hero .avatar{border-radius:999px;border:4px solid var(--covo-primary)}

.icon-badge{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:var(--covo-primary);box-shadow:0 6px 18px rgba(0,76,146,.18)}
.icon-badge.teal{background:var(--covo-teal)}
.icon-badge.magenta{background:var(--covo-accent)}

.kpi-grid{list-style:none;padding:0;margin:0;display:grid;gap:.75rem}
@media(min-width:720px){.kpi-grid{grid-template-columns:1fr 1fr 1fr}}
.kpi{display:flex;align-items:center;gap:.75rem;padding:.75rem;border:1px solid #e5e7eb;border-radius:14px;background:#fff}
.kpi .kpi-label{display:block;color:var(--muted);font-size:.9rem}
.kpi .kpi-value{display:block;font-weight:800;font-size:1.35rem}

.period-list{list-style:none;padding:0;margin:0}
.period-list li{padding:.4rem .1rem;border-bottom:1px dashed #e5e7eb}
.period-list li:last-child{border-bottom:none}
.muted{color:var(--muted)}

.simone-form .field{margin:.75rem 0}
.simone-form .field.two{display:grid;gap:.75rem}
@media(min-width:600px){.simone-form .field.two{grid-template-columns:1fr 1fr}}
.simone-form label{font-weight:600}
.simone-form input[type="text"],
.simone-form input[type="number"],
.simone-form input[type="date"],
.simone-form input[type="time"]{
  width:100%;padding:.7rem .8rem;border:1px solid #e5e7eb;border-radius:12px
}
.simone-form fieldset{border:1px solid #e5e7eb;border-radius:12px;padding:.6rem .85rem;display:grid;gap:.35rem}
.simone-form .hint{margin:.25rem 0 0;color:var(--muted);font-size:.85rem}
.actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-top:.5rem}
.btn-primary,.btn-secondary{border:none;border-radius:999px;padding:.7rem 1rem;cursor:pointer;color:#fff;box-shadow:0 10px 24px rgba(2,6,23,.08);transition:transform .06s ease}
.btn-primary{background:var(--covo-primary)}
.btn-secondary{background:var(--covo-teal)}
.btn-primary:hover,.btn-secondary:hover{transform:translateY(-1px)}
#book-msg.ok{color:var(--covo-teal)} #book-msg.error{color:#b91c1c}

.combo{position:relative}
.combo ul[role="listbox"]{position:absolute;z-index:20;left:0;right:0;top:100%;background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-top:.25rem;max-height:220px;overflow:auto;box-shadow:0 10px 30px rgba(2,6,23,.08);padding:.25rem}
.combo [role="option"]{padding:.55rem .7rem;border-radius:.6rem;cursor:pointer}
.combo [role="option"][aria-selected="true"], .combo [role="option"]:hover{background:#f1f5f9}

.trip-list{padding-left:1.1rem;margin:0}
.trip-list li{padding:.3rem 0}
.history details{border:1px solid #e5e7eb;border-radius:12px;padding:.6rem .8rem;margin:.5rem 0;background:#fff}
.history details[open]{box-shadow:0 8px 20px rgba(2,6,23,.06)}
.history summary{cursor:pointer;font-weight:600;color:var(--covo-primary);list-style:none}
.history summary:focus-visible{outline:3px solid var(--covo-accent);outline-offset:3px;border-radius:6px}

@media (prefers-reduced-motion: no-preference){
  .card{animation:fadeUp .28s ease both}
  .stack > .card:nth-child(1){animation-delay:.00s}
  .stack > .card:nth-child(2){animation-delay:.03s}
  .stack > .card:nth-child(3){animation-delay:.06s}
  .stack > .card:nth-child(4){animation-delay:.09s}
  .stack > .card:nth-child(5){animation-delay:.12s}
  .stack > .card:nth-child(6){animation-delay:.15s}
  .stack > .card:nth-child(7){animation-delay:.18s}
}
@keyframes fadeUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
