@import "https://fonts.googleapis.com/css2?family=Heebo:wght@400;600;700;800&display=swap";:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#eef3f8;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 0 0,#4a90e22e,#0000 34rem),linear-gradient(135deg,#f7fbff 0%,#e7eef6 100%);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}.app-shell{min-height:100vh;position:relative}.app-shell[data-language=hebrew]{font-family:Heebo,Segoe UI,Arial,sans-serif}.language-select{z-index:25;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border:1px solid #8294ae47;border-radius:999px;align-items:center;gap:.5rem;padding:.55rem .65rem;display:flex;position:fixed;top:1rem;right:1rem;box-shadow:0 .75rem 1.75rem #2033541f}.app-shell[dir=rtl] .language-select{left:1rem;right:auto}.language-select span{color:#4a6383;font-size:.82rem;font-weight:800}.language-select select{border-radius:999px;width:auto;min-width:8rem;padding:.45rem .65rem}.topbar-language-select{display:none}.startup-screen,.login-screen{place-items:center;min-height:100vh;padding:5rem 1rem 1rem;display:grid}.brand-logo{object-fit:contain;width:min(11rem,58vw);height:auto;margin-bottom:1.25rem;display:block}.brand-logo-large{width:min(14rem,64vw)}.eyebrow{color:#4a6383;letter-spacing:.08em;text-transform:uppercase;margin:0 0 .35rem;font-size:.78rem;font-weight:800}.login-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;border:1px solid #8294ae47;border-radius:1.75rem;width:min(100%,28rem);padding:2rem;box-shadow:0 1.5rem 4rem #20335429}.login-card h1,.calendar-topbar h1,.modal-header h2{color:#172033;margin:0}.login-copy{color:#52657d;margin:.75rem 0 1.5rem;line-height:1.55}.login-form,.appointment-form{gap:1rem;display:grid}label{color:#34445c;gap:.4rem;font-weight:700;display:grid}input,select,textarea{color:#172033;background:#fff;border:1px solid #ccd7e4;border-radius:.85rem;outline:none;width:100%;padding:.85rem .95rem;transition:border-color .15s,box-shadow .15s}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:#2563eb;box-shadow:0 0 0 .2rem #2563eb24}.field-help{color:#667a92;font-size:.82rem;font-weight:600}.phone-input-grid{direction:ltr;grid-template-columns:minmax(6rem,.45fr) minmax(0,1fr);gap:.65rem;display:grid}.primary-button,.secondary-button,.danger-button,.icon-button{border:0;border-radius:.85rem;font-weight:800}.primary-button{color:#fff;background:linear-gradient(135deg,#2563eb,#14b8a6);padding:.9rem 1.15rem;box-shadow:0 .75rem 1.5rem #2563eb38}.secondary-button{color:#1e3a5f;background:#e7eef8;padding:.85rem 1rem}.danger-button{color:#fff;background:#dc2626;padding:.85rem 1rem}.icon-button{color:#4a6383;background:#eef3f8;width:2.5rem;height:2.5rem;font-size:1.1rem}.calendar-shell{gap:1rem;width:min(100%,90rem);margin:0 auto;padding:5rem 1rem 1rem;display:grid}.calendar-topbar,.filters-card,.calendar-card{background:#ffffffeb;border:1px solid #8294ae42;border-radius:1.35rem;box-shadow:0 1rem 2.25rem #2033541a}.calendar-topbar{justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.calendar-topbar-actions{align-items:center;gap:.75rem;display:flex}.filters-card{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1rem;display:grid}.calendar-card{padding:.75rem;overflow:hidden}.view-switcher{justify-content:flex-end;gap:.65rem;padding:.25rem .25rem .9rem;display:flex}.view-switcher button{padding:.7rem 1rem}.list-view-header{padding:.75rem .75rem 1rem}.list-view-header h2{margin:0}.appointment-list{gap:.75rem;display:grid}.appointment-list-item{color:#172033;text-align:start;background:#fff;border:1px solid #d9e2ee;border-radius:1rem;gap:.35rem;width:100%;padding:1rem;display:grid;box-shadow:0 .75rem 1.5rem #20335414}.appointment-list-item:hover,.appointment-list-item:focus-visible{border-color:#2563eb;outline:none;box-shadow:0 0 0 .2rem #2563eb24}.appointment-list-item strong{font-size:1.05rem}.appointment-list-time{color:#2563eb;font-weight:900}.empty-list-state{color:#52657d;place-items:center;min-height:14rem;font-weight:800;display:grid}.loading-state{color:#52657d;place-items:center;min-height:24rem;font-weight:700;display:grid}.fc{--fc-border-color:#d9e2ee;--fc-button-bg-color:#2563eb;--fc-button-border-color:#2563eb;--fc-button-active-bg-color:#1745a3;--fc-button-active-border-color:#1745a3;--fc-event-bg-color:#2563eb;--fc-event-border-color:#1d4ed8;--fc-today-bg-color:#14b8a61f}.fc .fc-toolbar{flex-wrap:wrap;gap:.75rem}.app-shell[dir=rtl] .fc{direction:rtl}.fc .fc-toolbar-title{font-size:clamp(1.05rem,2.4vw,1.45rem)}.fc .fc-button{text-transform:capitalize;border-radius:.7rem;font-weight:800}.fc .fc-event{border-radius:.55rem;padding:.1rem .2rem}.modal-backdrop{z-index:20;background:#0f172a8a;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.appointment-modal{background:#fff;border-radius:1.4rem;width:min(100%,44rem);max-height:min(92vh,54rem);overflow:auto;box-shadow:0 2rem 5rem #0f172a47}.confirm-modal{background:#fff;border-radius:1.4rem;width:min(100%,28rem);overflow:hidden;box-shadow:0 2rem 5rem #0f172a47}.modal-header,.modal-actions{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.modal-header{z-index:1;background:#fff;border-bottom:1px solid #e2e8f0;padding:1.25rem;position:sticky;top:0}.appointment-form{padding:1.25rem}.reminder-sent-banner{color:#14532d;background:#dcfce7;border:2px solid #16a34a;border-radius:1rem;gap:.25rem;margin:1rem 1.25rem 0;padding:1rem 1.1rem;display:grid;box-shadow:0 .8rem 1.8rem #16a34a24}.reminder-sent-banner strong{font-size:1.18rem;font-weight:900}.reminder-sent-banner span{font-size:.95rem;font-weight:700}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.modal-actions{padding-top:.5rem}.confirm-modal-body{color:#334155;padding:1.25rem;font-weight:700;line-height:1.6}.confirm-modal-body p{margin:0}.confirm-modal-actions{padding:0 1.25rem 1.25rem}.modal-spacer{flex:1}.toast-host{z-index:30;gap:.75rem;width:min(24rem,100vw - 2rem);display:grid;position:fixed;bottom:1rem;right:1rem}.toast{color:#fff;border-radius:1rem;padding:.9rem 1rem;font-weight:800;box-shadow:0 1rem 2rem #0f172a3d}.toast-success{background:#059669}.toast-error{background:#dc2626}.toast-info{background:#2563eb}@media (width<=760px){.calendar-shell{padding:.75rem}.language-select{justify-content:space-between;left:.75rem;right:.75rem}.app-shell[dir=rtl] .language-select{left:.75rem;right:.75rem}.app-shell[data-authenticated=true]>.language-select{display:none}.topbar-language-select{width:auto;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0;display:flex;position:static}.topbar-language-select select{min-width:7.5rem}.calendar-topbar,.filters-card,.form-grid{grid-template-columns:1fr}.calendar-topbar{flex-direction:column;align-items:stretch}.calendar-topbar-actions{flex-direction:row;justify-content:space-between}.calendar-topbar .secondary-button{width:100%}.calendar-topbar-actions .secondary-button{width:auto}.fc .fc-toolbar{flex-direction:column;align-items:stretch}.fc .fc-toolbar-chunk{justify-content:center;display:flex}.view-switcher{justify-content:stretch}.view-switcher button{flex:1}.modal-actions{flex-direction:column;align-items:stretch}.modal-actions button,.modal-spacer{width:100%}}
