:root{--cream:#fcfbf8;--ink:#28241f;--muted:#756f67;--line:#e9e2d7;--shadow:0 6px 20px rgba(83,61,27,.05)}
.admin-only{display:none}
.admin-mode .admin-only{display:block}
.client-mode .sidebar,.client-mode .topbar{display:none}
.client-mode .workspace{margin-left:0}
.client-mode .client-shell{padding-top:30px}
.sidebar{background:#fff;color:var(--ink);border-right:1px solid var(--line)}
.brand{color:var(--ink)}
.brand img{box-shadow:none}
.brand small{color:#9a7b45}
.nav-title{color:#9b8e7a}
.nav-btn{color:#5f584e}
.nav-btn span{color:var(--gold)}
.nav-btn:hover,.nav-btn.active{background:#f7f1e5;color:var(--gold-dark)}
.system-status{border-top-color:var(--line)}
.system-status small{color:var(--muted)}
.client-hero{min-height:345px;color:var(--ink);border:1px solid var(--line);background:radial-gradient(circle at 88% 18%,rgba(225,190,113,.28),transparent 29%),linear-gradient(135deg,#fff 0%,#fbf7ee 64%,#f4e5c5 100%);box-shadow:none}
.client-hero:after{color:rgba(183,134,40,.07)}
.hero-copy p{color:var(--muted)}
.date-chip.active{background:var(--gold-dark);border-color:var(--gold-dark);color:#fff2d7}
.procedure-card,.panel{box-shadow:none}
.admin-hero{color:var(--ink);border:1px solid var(--line);background:linear-gradient(135deg,#fff,#f6ead2);box-shadow:none}
.admin-hero p{color:var(--muted)}
.gold-outline{border-color:#d9bf89;background:#fff;color:var(--gold-dark)}
.single-link-panel{display:flex;align-items:center;justify-content:space-between;gap:24px}
.single-link-panel p{margin:6px 0 0;color:var(--muted)}
@media(max-width:720px){.single-link-panel{align-items:stretch;flex-direction:column}}
.collaborator-form{grid-template-columns:1.2fr .7fr .9fr auto auto}
.login-form{grid-template-columns:1fr 1fr auto}
.form-message{color:#a33232;font-weight:700}
.registration-badge{display:inline-flex;margin:6px 0 12px;padding:5px 10px;border-radius:999px;background:#f7f1e5;color:var(--gold-dark);font-size:12px;font-weight:800}
.collaborator-summary{display:flex;flex-direction:column;gap:3px;margin-bottom:13px;color:var(--muted);font-size:13px}
.collaborator-summary strong{color:var(--gold-dark);margin-top:4px}
.collaborator-welcome{display:flex;align-items:center;justify-content:space-between;padding:22px 5px 0}
.collaborator-welcome h2{font:700 30px "Playfair Display",serif;margin:0}
.collaborator-welcome p{color:var(--muted);margin:3px 0}
.deposit-notice{display:flex;flex-direction:column;gap:3px;margin:0 0 18px;padding:14px;border:1px solid #e3c987;border-radius:14px;background:#fff9e9;color:var(--gold-dark)}
.deposit-notice span{color:#6f6048;font-size:13px}
.referral-feedback{display:block;margin-top:-8px;color:var(--muted)}
.referral-feedback.valid{color:#25774a;font-weight:700}
.referral-feedback.invalid{color:#a33232;font-weight:700}
.booking-admin-row .row-actions{align-items:center}
.booking-admin-row select{min-width:155px;padding:8px 10px;font-size:13px}
.whatsapp-confirm-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:9px;padding:9px 12px;background:#e2f6e9;color:#16733a;font-weight:800;font-size:13px;text-decoration:none;white-space:nowrap}
.whatsapp-confirm-btn:hover{background:#ccefd8}
.booking-status{border-radius:999px;padding:6px 10px;background:#f7f1e5;color:var(--gold-dark);font-size:12px;font-weight:800;white-space:nowrap}
.status-pago,.status-realizado,.status-confirmado{background:#e6f5eb;color:#237147}
.status-cancelado,.status-não-compareceu{background:#fceaea;color:#9b3333}
@media(max-width:980px){.collaborator-form{grid-template-columns:1fr 1fr}.login-form{grid-template-columns:1fr 1fr}.login-form button{grid-column:1/-1}}
@media(max-width:720px){.collaborator-form,.login-form{grid-template-columns:1fr}.login-form button{grid-column:auto}.collaborator-welcome{align-items:flex-start}.collaborator-metrics{grid-template-columns:1fr}}

/* Cabeçalhos mais proporcionais: a atividade principal aparece mais cedo. */
@media(min-width:721px){
  .topbar{height:66px}
  .client-shell,.admin-shell{padding-top:18px}
  .client-hero{min-height:255px;padding:25px 40px;border-radius:24px}
  .hero-brand img{width:42px;height:42px}
  .hero-copy h1,.admin-hero h1{font-size:clamp(38px,4.4vw,56px);line-height:1}
  .hero-copy p{font-size:16px;margin-top:12px;max-width:680px}
  .client-hero:after{font-size:290px;bottom:-38%}
  .date-chips{padding:22px 2px 10px}
  .section-heading{margin:22px 0 16px}
  .admin-hero{min-height:185px;padding:28px 34px;border-radius:24px}
  .admin-hero.compact{min-height:165px}
  .admin-hero p{margin-top:7px}
}
@media(max-width:720px){
  .client-hero{min-height:255px;padding:22px;border-radius:22px}
  .hero-copy h1,.admin-hero h1{font-size:38px}
  .client-hero:after{font-size:250px}
  .admin-hero,.admin-hero.compact{min-height:auto;padding:24px;border-radius:22px}
}
