@import"https://fonts.googleapis.com/css2?family=Heebo:wght@400;600;700;800&display=swap";:root{color:#172033;background:#eef3f8;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;background:radial-gradient(circle at top left,rgba(74,144,226,.18),transparent 34rem),linear-gradient(135deg,#f7fbff,#e7eef6)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}.app-shell{position:relative;min-height:100vh}.app-shell[data-language=hebrew]{font-family:Heebo,Segoe UI,Arial,sans-serif}.language-select{position:static;z-index:25;display:flex;align-items:center;gap:.5rem;width:fit-content;margin:1rem 1rem 0 auto;padding:.55rem .65rem;border:1px solid rgba(130,148,174,.28);border-radius:999px;background:#ffffffeb;box-shadow:0 .75rem 1.75rem #2033541f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.app-shell[dir=rtl] .language-select{margin-right:auto;margin-left:1rem}.language-select span{color:#4a6383;font-size:.82rem;font-weight:800}.language-select select{width:auto;min-width:8rem;padding:.45rem .65rem;border-radius:999px}.topbar-language-select{display:flex;width:auto;margin:0;box-shadow:none}.app-shell[data-authenticated=true]>.language-select{display:none}.startup-screen,.login-screen{display:grid;min-height:100vh;place-items:center;padding:5rem 1rem 1rem}.brand-logo{display:block;width:min(11rem,58vw);height:auto;margin:0 auto 1.25rem;object-fit:contain}.brand-logo-large{width:min(14rem,64vw)}.login-brand-logo{width:min(8.25rem,44vw)}.eyebrow{margin:0 0 .35rem;color:#4a6383;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.login-card{width:min(100%,28rem);padding:2rem;border:1px solid rgba(130,148,174,.28);border-radius:1.75rem;background:#ffffffe0;box-shadow:0 1.5rem 4rem #20335429;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.login-card h1,.calendar-topbar h1,.modal-header h2{margin:0;color:#172033}.login-copy{margin:.75rem 0 1.5rem;color:#52657d;line-height:1.55}.login-secure-note{margin:.15rem 0 0;text-align:center}.login-form,.appointment-form{display:grid;gap:1rem}label{display:grid;gap:.4rem;color:#34445c;font-weight:700}input,select,textarea{width:100%;border:1px solid #ccd7e4;border-radius:.85rem;background:#fff;color:#172033;outline:none;padding:.85rem .95rem;transition:border-color .15s ease,box-shadow .15s ease}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}.error-text{color:#dc2626}.phone-input-grid{display:grid;grid-template-columns:minmax(6rem,.45fr) minmax(0,1fr);direction:ltr;gap:.65rem}.otp-input-grid{display:grid;gap:.65rem}.request-code-button{display:none}.desktop-otp-help{display:block}.primary-button,.secondary-button,.danger-button,.icon-button{border:0;border-radius:.85rem;font-weight:800}.primary-button{padding:.9rem 1.15rem;color:#fff;background:linear-gradient(135deg,#2563eb,#14b8a6);box-shadow:0 .75rem 1.5rem #2563eb38}.secondary-button{padding:.85rem 1rem;color:#1e3a5f;background:#e7eef8}.danger-button{padding:.85rem 1rem;color:#fff;background:#dc2626}.icon-button{width:2.5rem;height:2.5rem;color:#4a6383;background:#eef3f8;font-size:1.1rem}.calendar-shell{display:grid;gap:1rem;width:min(100%,90rem);margin:0 auto;padding:5rem 1rem 1rem}.calendar-topbar,.filters-card,.calendar-card{border:1px solid rgba(130,148,174,.26);border-radius:1.35rem;background:#ffffffeb;box-shadow:0 1rem 2.25rem #2033541a}.calendar-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.2rem}.calendar-topbar-actions{display:flex;align-items:center;gap:.75rem}.desktop-options-wrapper{position:relative}.desktop-options-button{min-width:3rem}.desktop-options-panel{position:absolute;inset-block-start:calc(100% + .55rem);inset-inline-end:0;z-index:18;display:grid;gap:.85rem;width:min(22rem,86vw);padding:1rem;border:1px solid rgba(130,148,174,.28);border-radius:1rem;background:#fff;box-shadow:0 1rem 2.25rem #0f172a29}.desktop-options-panel label,.hour-cycle-setting,.working-hours-setting{display:grid;gap:.45rem}.desktop-options-panel label span,.hour-cycle-setting>span,.working-hours-setting>span{color:#34445c;font-size:.78rem;font-weight:800;line-height:1}.desktop-options-panel select,.desktop-options-panel button{width:100%}.desktop-options-panel select{padding:.65rem .75rem;border:1px solid #ccd7e4;border-radius:.75rem;background:#fff;color:#172033;font:inherit;font-size:.9rem}.hour-cycle-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem;padding:.25rem;border:1px solid #ccd7e4;border-radius:999px;background:#eef3f8;color:#52657d;font-weight:900}.hour-cycle-switch span{padding:.5rem .65rem;border-radius:999px;text-align:center}.hour-cycle-switch .active{color:#fff;background:#2563eb;box-shadow:0 .45rem 1rem #2563eb2e}.working-hours-switch span{display:grid;align-items:center;min-height:2.35rem;font-size:.78rem;line-height:1.15}.mobile-menu-button,.mobile-menu-panel{display:none}.filters-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1rem}.calendar-card{overflow:visible;padding:.75rem}.view-switcher{display:flex;gap:.65rem;justify-content:flex-end;padding:.25rem .25rem .9rem}.view-switcher button{padding:.7rem 1rem}.list-view-header{padding:.75rem .75rem 1rem}.list-view-header h2{margin:0}.appointment-list{display:grid;gap:.75rem}.appointment-list-item{display:grid;gap:.35rem;width:100%;padding:1rem;border:1px solid #dbe7f5;border-inline-end:.32rem solid #2563eb;border-radius:.9rem;background:linear-gradient(135deg,#f8fbff,#eef5ff);color:#172033;text-align:start;box-shadow:0 .65rem 1.25rem #2033541f}.app-shell[dir=ltr] .appointment-list-item{border-inline:.32rem solid #2563eb 1px solid #dbe7f5}.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{color:#172033;font-size:.98rem;font-weight:900;line-height:1.2}.appointment-list-time{color:#334155;font-size:.78rem;font-weight:800;line-height:1.15}.appointment-list-item span:last-child{color:#52657d;font-size:.86rem;font-weight:700}.empty-list-state{display:grid;min-height:14rem;place-items:center;color:#52657d;font-weight:800}.loading-state{display:grid;min-height:24rem;place-items:center;color:#52657d;font-weight:700}.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: rgba(20, 184, 166, .12)}.fc .fc-toolbar{position:sticky;top:.5rem;z-index:10;gap:.75rem;flex-wrap:wrap;padding:.5rem;border-radius:1rem;background:#fffffff0;box-shadow:0 .75rem 1.75rem #2033541a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.app-shell[dir=rtl] .fc{direction:rtl}.fc .fc-toolbar-title{font-size:clamp(1.05rem,2.4vw,1.45rem)}.fc .fc-button{border-radius:.7rem;font-weight:800;text-transform:capitalize}.fc .fc-event{border-radius:.55rem;padding:.1rem .2rem}.fc .fc-timegrid-event{overflow:hidden;border:1px solid #dbe7f5;border-inline-end:.28rem solid #2563eb;border-radius:.75rem;background:linear-gradient(135deg,#f8fbff,#eef5ff);color:#172033;box-shadow:0 .65rem 1.25rem #2033541f}.app-shell[dir=ltr] .fc .fc-timegrid-event{border-inline:.28rem solid #2563eb 1px solid #dbe7f5}.fc .fc-timegrid-event .fc-event-main{display:grid;align-content:start;padding:.45rem .55rem;color:inherit}.fc .fc-timegrid-event .fc-event-title{color:#172033;font-size:.92rem;font-weight:900;line-height:1.2}.fc .fc-timegrid-event .fc-event-time{margin-top:.15rem;color:#334155;font-size:.75rem;font-weight:700;line-height:1.15}.fc .working-hours-background{background:#2563eb14}.landscape-timeline{display:grid;gap:.75rem}.landscape-timeline-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.4rem .55rem .2rem}.landscape-timeline-header h2{margin:0;color:#172033;font-size:clamp(1rem,2.8vw,1.35rem)}.landscape-timeline-header strong{padding:.45rem .7rem;border-radius:999px;background:#e0f2fe;color:#075985;font-size:.78rem;font-weight:900}.landscape-timeline-grid{display:grid;grid-template-columns:minmax(5.6rem,7rem) minmax(36rem,1fr);overflow:auto;border:1px solid #d9e2ee;border-radius:1rem;background:linear-gradient(135deg,#2563eb14,#14b8a614),#fff;box-shadow:inset 0 0 0 1px #ffffffbf}.landscape-worker-axis,.landscape-time-axis{position:sticky;top:0;z-index:3;min-height:2.7rem;border-bottom:1px solid #cdd9e8;background:#fffffff0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.landscape-worker-axis{inset-inline-start:0;z-index:4;display:grid;align-items:center;padding:.6rem;color:#1e3a5f;font-size:.78rem;font-weight:900}.landscape-time-axis{position:sticky;min-width:36rem}.landscape-time-label{position:absolute;top:50%;color:#334155;font-size:.76rem;font-weight:900;transform:translate(-50%,-50%);white-space:nowrap}.app-shell[dir=rtl] .landscape-time-label{transform:translate(50%,-50%)}.landscape-worker-name{position:sticky;inset-inline-start:0;z-index:2;display:grid;align-items:center;min-height:4.9rem;padding:.65rem;border-bottom:1px solid #dbe7f5;background:#f8fbfff5;color:#172033;font-size:.82rem;font-weight:900;box-shadow:.45rem 0 1rem #20335414}.app-shell[dir=rtl] .landscape-worker-name{box-shadow:-.45rem 0 1rem #20335414}.landscape-worker-lane{position:relative;min-width:36rem;min-height:4.9rem;overflow:hidden;border-bottom:1px solid #dbe7f5;background:repeating-linear-gradient(90deg,rgba(37,99,235,.05) 0,rgba(37,99,235,.05) 1px,transparent 1px,transparent 4rem),#ffffff8f}.landscape-grid-line,.landscape-now-line{position:absolute;top:0;bottom:0;width:1px;pointer-events:none}.landscape-grid-line{background:#94a3b852}.landscape-now-line{z-index:2;width:2px;background:#ef4444;box-shadow:0 0 .8rem #ef444473}.landscape-now-line:before{position:absolute;top:.35rem;left:50%;width:.55rem;height:.55rem;border-radius:999px;background:#ef4444;content:"";transform:translate(-50%)}.landscape-appointment{position:absolute;top:.55rem;bottom:.55rem;z-index:1;display:grid;align-content:start;gap:.12rem;min-width:4rem;overflow:hidden;padding:.45rem .55rem;border:1px solid #dbe7f5;border-inline-end:.28rem solid #2563eb;border-radius:.75rem;background:linear-gradient(135deg,#f8fbff,#eef5ff);color:#172033;text-align:start;box-shadow:0 .55rem 1rem #20335424;cursor:grab;touch-action:none;transition:box-shadow .14s ease,transform .14s ease}.app-shell[dir=ltr] .landscape-appointment{border-inline:.28rem solid #2563eb 1px solid #dbe7f5}.landscape-appointment strong,.landscape-appointment span,.landscape-appointment small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landscape-appointment strong{font-size:.84rem;font-weight:900}.landscape-appointment span{color:#334155;font-size:.7rem;font-weight:800}.landscape-appointment small{color:#52657d;font-size:.68rem;font-weight:700}.landscape-appointment-dragging{z-index:5;opacity:.92;cursor:grabbing;box-shadow:0 1rem 2rem #2563eb3d;transition:none}@media(orientation:landscape)and (max-height:540px)and (pointer:coarse){.topbar-language-select,.inline-calendar-filters,.inline-view-switcher{display:none}.mobile-controls-fab{display:grid;right:.65rem;bottom:.65rem;width:2.8rem;height:2.8rem}.app-shell[dir=rtl] .mobile-controls-fab{right:auto;left:.65rem}.calendar-shell{gap:.45rem;width:100%;padding:.45rem}.calendar-topbar,.filters-card,.calendar-card{border-radius:.75rem}.calendar-topbar{padding:.4rem .55rem}.calendar-topbar .eyebrow{display:none}.calendar-topbar h1{font-size:.95rem}.filters-card{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;padding:.45rem}.filters-card label{gap:.2rem}.filters-card label span{font-size:.72rem}.filters-card select{min-height:2.1rem;padding:.42rem .55rem;font-size:.78rem}.calendar-card{padding:.45rem}.landscape-timeline-header{padding:.15rem .2rem}.landscape-timeline-header .eyebrow{display:none}.landscape-timeline-header h2{font-size:.92rem}.landscape-timeline-grid{max-height:none;overflow-x:auto;overflow-y:visible}.landscape-time-axis,.landscape-worker-lane{min-width:36rem}.landscape-appointment{touch-action:pan-y}}.modal-backdrop{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:1rem;background:#0f172a8a}.appointment-modal{width:min(100%,44rem);max-height:min(92vh,54rem);overflow:auto;border-radius:1.4rem;background:#fff;box-shadow:0 2rem 5rem #0f172a47}.confirm-modal{width:min(100%,28rem);overflow:hidden;border-radius:1.4rem;background:#fff;box-shadow:0 2rem 5rem #0f172a47}.share-modal{width:min(100%,30rem);overflow:hidden;border-radius:1.4rem;background:#fff;box-shadow:0 2rem 5rem #0f172a47}.modal-header,.modal-actions{display:flex;align-items:center;gap:.75rem;justify-content:space-between}.modal-header{position:sticky;top:0;z-index:1;padding:1.25rem;border-bottom:1px solid #e2e8f0;background:#fff}.appointment-form{padding:1.25rem}.reminder-sent-banner{display:grid;gap:.25rem;margin:1rem 1.25rem 0;padding:1rem 1.1rem;border:2px solid #16a34a;border-radius:1rem;background:#dcfce7;color:#14532d;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{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.appointment-overlap-warning{grid-column:1 / -1;padding:.65rem .75rem;border:1px solid #fecaca;border-radius:.75rem;background:#fef2f2;color:#b91c1c;font-weight:800}.modal-actions{padding-top:.5rem}.confirm-modal-body{padding:1.25rem;color:#334155;font-weight:700;line-height:1.6}.confirm-modal-body p{margin:0}.confirm-modal-actions{padding:0 1.25rem 1.25rem}.share-modal-body{display:grid;gap:1rem;padding:1.25rem}.share-modal-body strong{padding:.85rem 1rem;border:1px solid #d9e2ee;border-radius:.85rem;background:#f8fafc;color:#172033;direction:ltr;font-size:1.05rem;text-align:center}.share-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.share-actions a{display:grid;place-items:center;text-align:center;text-decoration:none}.session-duration-copy{margin:0;color:#52657d;font-weight:700;line-height:1.55}.session-duration-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.modal-spacer{flex:1}.toast-host{position:fixed;right:1rem;bottom:1rem;z-index:30;display:grid;gap:.75rem;width:min(24rem,calc(100vw - 2rem))}.toast{padding:.9rem 1rem;border-radius:1rem;color:#fff;font-weight:800;box-shadow:0 1rem 2rem #0f172a3d}.toast-success{background:#059669}.toast-error{background:#dc2626}.toast-info{background:#2563eb}.pwa-update-banner{position:fixed;right:1rem;bottom:1rem;left:1rem;z-index:31;display:flex;align-items:center;justify-content:space-between;gap:1rem;width:min(42rem,calc(100vw - 2rem));margin:0 auto;padding:1rem;border:1px solid rgba(130,148,174,.28);border-radius:1.1rem;background:#fffffff5;box-shadow:0 1rem 2.5rem #0f172a38;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.pwa-update-banner strong,.pwa-update-banner span{display:block}.pwa-update-banner strong{color:#172033}.pwa-update-banner span{margin-top:.25rem;color:#52657d;font-weight:600}.pwa-update-actions{display:flex;flex:0 0 auto;gap:.6rem}.pwa-update-actions .primary-button,.pwa-update-actions .secondary-button{padding:.7rem .95rem}.back-to-top-button{position:fixed;right:1rem;bottom:5.5rem;z-index:18;display:grid;width:3rem;height:3rem;place-items:center;border:0;border-radius:999px;color:#fff;background:linear-gradient(135deg,#2563eb,#14b8a6);font-size:1.35rem;font-weight:900;box-shadow:0 1rem 2rem #2563eb47}.new-appointment-fab{position:fixed;right:1rem;bottom:1rem;z-index:19;display:grid;width:3.25rem;height:3.25rem;place-items:center;border:0;border-radius:999px;color:#fff;background:linear-gradient(135deg,#2563eb,#14b8a6);font-size:2rem;font-weight:900;line-height:1;box-shadow:0 1rem 2rem #2563eb4d}.mobile-controls-fab{position:fixed;right:1rem;bottom:1rem;z-index:19;display:none;width:3.25rem;height:3.25rem;place-items:center;border:0;border-radius:999px;color:#fff;background:linear-gradient(135deg,#172033,#2563eb);font-size:1.35rem;font-weight:900;box-shadow:0 1rem 2rem #0f172a47}.mobile-controls-panel{width:min(100%,28rem);overflow:hidden;border-radius:1.25rem;background:#fff;box-shadow:0 2rem 5rem #0f172a47}.mobile-controls-body{display:grid;gap:.85rem;padding:1rem}.mobile-controls-view-switcher{padding:0}.mobile-controls-panel .filters-card{display:grid;grid-template-columns:1fr;gap:.75rem;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.mobile-controls-panel .view-switcher{justify-content:stretch;gap:.4rem}.mobile-controls-panel .view-switcher button{flex:1}.app-shell[dir=rtl] .back-to-top-button,.app-shell[dir=rtl] .new-appointment-fab,.app-shell[dir=rtl] .mobile-controls-fab{right:auto;left:1rem}@media(max-width:760px){.calendar-shell{gap:.45rem;max-width:100vw;padding:.45rem}.language-select{left:.75rem;right:.75rem;justify-content:space-between}.otp-input-grid{grid-template-columns:minmax(0,1fr) auto}.request-code-button{display:block;padding:.65rem .75rem;white-space:nowrap}.desktop-otp-help{display:none}.app-shell[dir=rtl] .language-select{left:.75rem;right:.75rem}.app-shell[data-authenticated=true]>.language-select{display:none}.topbar-language-select{position:static;display:none;width:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.topbar-language-select select{min-width:4.8rem;max-width:5.8rem;padding:.5rem .6rem;border-radius:.65rem;font-size:.85rem}.form-grid{grid-template-columns:1fr}.calendar-topbar,.filters-card,.calendar-card{border-radius:.9rem;box-shadow:0 .45rem 1.1rem #20335414}.calendar-topbar{align-items:center;flex-direction:row;gap:.45rem;padding:.45rem .55rem}.calendar-topbar>div:first-child{min-width:0;flex:1}.calendar-topbar .eyebrow,.topbar-language-select span{display:none}.calendar-topbar h1{overflow:hidden;font-size:clamp(.95rem,4vw,1.1rem);text-overflow:ellipsis;white-space:nowrap}.calendar-topbar-actions{position:relative;flex:0 0 auto;flex-direction:row;gap:.4rem;justify-content:flex-end}.calendar-topbar .secondary-button{padding:.55rem .65rem;font-size:.85rem}.calendar-topbar-actions .secondary-button{width:auto}.desktop-logout-button,.desktop-options-wrapper,.inline-calendar-filters,.inline-view-switcher{display:none}.mobile-controls-fab{display:grid}.new-appointment-fab{bottom:5rem}.mobile-controls-panel .filters-card{display:grid;grid-template-columns:1fr;gap:.75rem;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.mobile-controls-panel .view-switcher{justify-content:stretch;gap:.4rem}.mobile-controls-panel .view-switcher button{flex:1;padding:.65rem .7rem;font-size:.85rem}.mobile-menu-button{display:inline-grid;width:2.35rem;height:2.35rem;place-items:center;gap:.2rem;padding:.5rem;border:0;border-radius:.75rem;background:#e7eef8}.mobile-menu-button span{display:block;width:1.05rem;height:.12rem;border-radius:999px;background:#1e3a5f}.mobile-menu-panel{position:fixed;top:0;bottom:0;inset-inline-end:0;z-index:28;display:grid;align-content:start;gap:1rem;width:80vw;max-width:24rem;padding:1rem;border:1px solid rgba(130,148,174,.3);border-block:0;border-inline-end:0;border-radius:1.1rem 0 0 1.1rem;background:#fff;box-shadow:-1rem 0 2.25rem #0f172a2e;touch-action:pan-y}.mobile-menu-enter-active,.mobile-menu-leave-active{transition:opacity .22s ease,transform .22s ease}.mobile-menu-enter-from,.mobile-menu-leave-to{opacity:0;transform:translate(100%)}.app-shell[dir=rtl] .mobile-menu-panel{border-inline-start:1px solid rgba(130,148,174,.3);border-inline-end:0;border-radius:0 1.1rem 1.1rem 0;box-shadow:1rem 0 2.25rem #0f172a2e}.app-shell[dir=rtl] .mobile-menu-enter-from,.app-shell[dir=rtl] .mobile-menu-leave-to{transform:translate(-100%)}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-bottom:.5rem;border-bottom:1px solid #e2e8f0}.mobile-menu-header strong{overflow:hidden;color:#172033;text-overflow:ellipsis;white-space:nowrap}.mobile-menu-header .icon-button{flex:0 0 auto;width:2.25rem;height:2.25rem}.mobile-menu-panel label{gap:.3rem}.mobile-menu-panel label span,.hour-cycle-setting>span,.working-hours-setting>span{color:#34445c;font-size:.78rem;font-weight:800;line-height:1}.mobile-menu-panel select,.mobile-menu-panel button{width:100%}.mobile-menu-panel select{padding:.6rem .7rem;border-radius:.7rem;font-size:.9rem}.hour-cycle-setting,.working-hours-setting{display:grid;gap:.45rem}.hour-cycle-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem;padding:.25rem;border:1px solid #ccd7e4;border-radius:999px;background:#eef3f8;color:#52657d;font-weight:900}.hour-cycle-switch span{padding:.5rem .65rem;border-radius:999px;text-align:center}.hour-cycle-switch .active{color:#fff;background:#2563eb;box-shadow:0 .45rem 1rem #2563eb2e}.working-hours-switch span{display:grid;align-items:center;min-height:2.35rem;font-size:.78rem;line-height:1.15}.pwa-update-banner{align-items:stretch;flex-direction:column}.pwa-update-actions{justify-content:stretch}.pwa-update-actions button{flex:1}.filters-card{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;padding:.5rem}.filters-card label{min-width:0;gap:.25rem}.filters-card label span{font-size:.75rem;line-height:1}.filters-card select{min-width:0;padding:.55rem .6rem;border-radius:.65rem;font-size:.85rem}.calendar-card{padding:.45rem;overflow:visible}.fc .fc-toolbar{align-items:center;flex-direction:column;gap:.45rem;top:.25rem;margin:-.2rem -.2rem .35rem;padding:.4rem;border:1px solid rgba(130,148,174,.2);border-radius:.85rem}.fc .fc-toolbar-chunk{display:flex;max-width:100%;flex-wrap:wrap;gap:.35rem;justify-content:center}.fc .fc-toolbar-chunk:empty{display:none}.fc .fc-button-group{max-width:100%;flex-wrap:wrap;gap:.25rem}.fc .fc-button-group .fc-button{border-radius:.7rem}.fc .fc-toolbar-title{font-size:clamp(.95rem,5vw,1.15rem);line-height:1.2;text-align:center}.fc .fc-button{padding:.45rem .6rem;font-size:.84rem;line-height:1.15}.view-switcher{justify-content:stretch;gap:.4rem;padding:.1rem .1rem .45rem}.view-switcher button{flex:1;padding:.55rem .65rem;font-size:.85rem}.back-to-top-button{bottom:1rem;width:2.65rem;height:2.65rem;font-size:1.15rem}.modal-actions{align-items:stretch;flex-direction:column}.modal-actions button,.modal-spacer{width:100%}}@media(orientation:landscape)and (max-height:540px)and (pointer:coarse){.modal-backdrop{align-items:start;padding:.35rem}.appointment-modal{width:min(76vw,48rem);max-height:calc(100vh - .7rem);border-radius:.95rem}.appointment-modal .modal-header{padding:.55rem .75rem}.appointment-modal .modal-header .eyebrow{font-size:.68rem}.appointment-modal .modal-header h2{font-size:1.05rem}.appointment-modal .modal-header .icon-button{width:2rem;height:2rem}.appointment-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem .8rem;padding:.75rem}.appointment-form>label,.appointment-form>.form-grid{min-width:0}.appointment-form>.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.appointment-form>.appointment-time-grid{grid-column:1 / -1}.appointment-form>.client-contact-grid{grid-column:1 / -1}.appointment-form label{gap:.25rem}.appointment-form label span{font-size:.76rem}.appointment-form input,.appointment-form select{width:100%;min-width:0;min-height:2.45rem;padding:.55rem .65rem;font-size:.86rem}.appointment-time-grid input[type=datetime-local]{font-size:.78rem}.appointment-form .phone-input-grid{grid-template-columns:minmax(4.6rem,.6fr) minmax(0,1fr);gap:.45rem}.appointment-form .modal-actions{grid-column:1 / -1;align-items:center;flex-direction:row;padding-top:.2rem}.appointment-form .modal-actions button{width:auto;padding:.65rem .9rem}.appointment-form .modal-spacer{width:auto}}
