/* ==========================================================================
   Tema "pazienti" — palette ispirata a studiomedicopanzera.ch
   Carta color crema, inchiostro scuro, accento verde bosco.
   Caricato SOLO dalla pagina pubblica di prenotazione (index.php),
   sopra assets/css/style.css: le aree medici e amministrazione restano
   con il tema predefinito. Solo colori e sfumature: font e forme restano
   quelli originali.
   ========================================================================== */

:root {
    --accento: #1f4d44;        /* verde bosco */
    --accento-scuro: #16382f;
    --accento-chiaro: #dfece6; /* riempimento verde chiaro degli slot */
    --sfondo: #f5efe2;         /* carta */
    --carta: #fbf7ec;
    --testo: #1a1611;          /* inchiostro */
    --testo-dolce: #5a5247;
    --bordo: #dcd3c0;
    --errore: #9c3a2a;
    --errore-sfondo: #f6e3dd;
    --ok: #2d6358;
    --ok-sfondo: #e4efe7;
    --raggio: 4px;
    --ombra: 0 1px 2px rgba(26, 22, 17, .05);
    --carta-profonda: #ede5d3;
}

/* ---------- Barra superiore con ritorno al sito ---------- */

.topbar-pubblica {
    background: var(--sfondo);
    border-bottom: 1px solid var(--bordo);
}

.topbar-pubblica .topbar-interna {
    max-width: 1280px;
    margin: 0 auto;
    padding: 1rem 1.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.marchio-pubblica {
    color: var(--testo);
    text-decoration: none;
    font-size: 1.45rem;
    font-weight: 600;
    letter-spacing: -0.01em;
}

.cta-torna {
    padding: 0.7rem 1.4rem;
    background: var(--testo);
    color: var(--sfondo);
    text-decoration: none;
    font-size: 0.86rem;
    font-weight: 500;
    letter-spacing: 0.01em;
    border-radius: 2px;
    transition: all 240ms ease;
    white-space: nowrap;
}

.cta-torna:hover { background: var(--accento); color: #fff; }

/* ---------- Carte e bordi ---------- */

.card {
    border: 1px solid var(--bordo);
    box-shadow: none;
}

/* ---------- Giorni e slot ---------- */

.giorno-card {
    background: var(--carta);
    border: 1px solid var(--bordo);
    box-shadow: none;
}

.giorno-card.oggi { outline: 1.5px solid var(--accento); outline-offset: -1.5px; }

.slot {
    background: var(--carta-profonda);
    border: 1px solid var(--bordo);
    color: var(--testo);
    border-radius: 2px;
    font-weight: 500;
    transition: all 200ms ease;
}

/* Al passaggio del mouse il verde riempie lo slot */
.slot:hover {
    background: var(--accento-chiaro);
    border-color: var(--accento);
    color: var(--accento-scuro);
}

/* ---------- Pulsanti e form ---------- */

.pulsante.primario {
    background: var(--accento);
    border-color: var(--accento);
    color: #fff;
}
.pulsante.primario:hover:not(:disabled) { background: var(--accento-scuro); border-color: var(--accento-scuro); }

input[type="text"], input[type="password"], input[type="time"], input[type="tel"],
select, textarea {
    background: #fffdf6;
    border-color: var(--bordo);
}

.riepilogo {
    background: var(--carta-profonda);
    color: var(--testo);
}

.conferma-icona { color: var(--accento); }

/* ---------- Varie ---------- */

.piede { color: var(--testo-dolce); }
.piede a:hover { color: var(--accento); }

@media (max-width: 640px) {
    .topbar-pubblica .topbar-interna { padding: 0.9rem 1rem; }
    .marchio-pubblica { font-size: 1.25rem; }
}
