:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#25283a;background:#f6f7fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0;padding-bottom:52px}.top{height:72px;background:white;border-bottom:1px solid #ececf2;display:flex;align-items:center;justify-content:space-between;padding:0 max(calc((100vw - 1120px)/2),24px)}.brand{display:flex;align-items:center;gap:10px;font-weight:750;letter-spacing:-.3px}.brandmark{width:34px;height:34px;border-radius:11px;background:#eeeaff;color:#7148d8;display:grid;place-items:center;font-size:21px}.brand small{display:block;font-size:9px;letter-spacing:1.2px;color:#898b9b;margin-top:2px}.topright{display:flex;align-items:center;gap:14px}.demo{font-size:10px;font-weight:800;letter-spacing:.8px;color:#965c08;background:#fff2d8;padding:7px 9px;border-radius:20px}.avatar{border:0;border-radius:50%;height:34px;width:34px;background:#e9e6fa;color:#5e47ad;font-weight:700}main{max-width:1120px;margin:46px auto;padding:0 24px}.welcome{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.2px;color:#7658c5;margin:0 0 8px}.welcome h1{font-size:32px;letter-spacing:-1.1px;margin:0 0 6px}.welcome p:not(.eyebrow){margin:0;color:#7a7c8c}.primary,.secondary,.today{border:0;border-radius:10px;padding:11px 16px;font:600 14px inherit;cursor:pointer}.primary{background:#6546d2;color:white;box-shadow:0 4px 12px #6546d233}.secondary,.today{background:white;border:1px solid #e5e5ee;color:#434557}.toolbar{display:flex;justify-content:space-between;align-items:center;margin:0 0 14px}.toolbar>div{display:flex;align-items:center;gap:18px}.toolbar strong{font-size:18px;min-width:160px}.toolbar button:not(.today){border:1px solid #e7e7ef;background:white;border-radius:9px;width:34px;height:34px;font-size:22px;color:#777}.calendar{display:grid;grid-template-columns:repeat(7,1fr);background:#fff;border:1px solid #e8e8f0;border-radius:15px;overflow:hidden;box-shadow:0 8px 28px #28304d0a}.weekday{padding:12px;text-align:center;color:#858697;font-size:12px;font-weight:650;border-bottom:1px solid #eeeef3}.days{display:contents}.day{min-height:107px;padding:10px;border-bottom:1px solid #eeeef3;border-right:1px solid #eeeef3;background:#fff}.day:nth-child(7n){border-right:0}.day.outside{background:#fafafd;color:#b5b6c2}.day.today .date{background:#7658d1;color:white}.date{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:650}.event{margin-top:6px;padding:5px 7px;background:#f0edff;border-left:3px solid #7557d3;border-radius:4px;color:#483a7a;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.below{display:grid;grid-template-columns:1.3fr 1fr;gap:18px;margin-top:20px}.panel{background:white;border:1px solid #e8e8f0;border-radius:14px;padding:20px}.panel h2{font-size:16px;margin:0 0 8px}.panel p{font-size:13px;color:#888a99}.notice{position:fixed;bottom:0;left:0;right:0;padding:10px 14px;background:#8d5500;color:#fff;text-align:center;font-size:12px;z-index:5}dialog{border:0;border-radius:18px;padding:0;width:min(600px,calc(100% - 28px));box-shadow:0 22px 80px #16132a4a;color:#25283a}dialog::backdrop{background:#17152b88}.dialog-head{display:flex;justify-content:space-between;padding:24px 26px 14px}.dialog-head h2{margin:0;font-size:23px}.icon{border:0;background:transparent;font-size:25px;color:#737587;cursor:pointer}.steps{display:flex;gap:5px;padding:0 26px 18px;overflow:auto}.steps span{white-space:nowrap;background:#f4f4f8;color:#9293a0;border-radius:20px;padding:7px 10px;font-size:10px}.steps span.active{background:#eeeaff;color:#6243c6;font-weight:700}#stepContent{padding:0 26px;min-height:245px}.field{display:block;margin:0 0 15px;font-size:12px;font-weight:650;color:#55576a}.field input,.field textarea,.field select{display:block;margin-top:6px;width:100%;border:1px solid #ddddE8;border-radius:8px;padding:10px 11px;font:14px inherit;color:#292b3c;background:#fff}.field textarea{resize:vertical;min-height:74px}.hint{font-weight:400;color:#9293a0}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 26px 22px}.review{background:#f7f6fb;border-radius:10px;padding:14px;font-size:13px;line-height:1.8}.empty{color:#8b8c98}@media(max-width:680px){.top{height:60px;padding:0 14px}main{margin:28px auto;padding:0 13px}.welcome{align-items:flex-start;gap:10px}.welcome h1{font-size:25px}.welcome>div>p:not(.eyebrow){font-size:12px}.welcome .primary{font-size:12px;padding:10px 11px;white-space:nowrap}.day{min-height:68px;padding:5px}.weekday{padding:9px 2px;font-size:10px}.event{font-size:9px;padding:3px 4px}.below{grid-template-columns:1fr}.steps{padding-left:18px;padding-right:18px}.dialog-head{padding:20px 18px 12px}#stepContent{padding:0 18px}.dialog-actions{padding:12px 18px 20px}.notice{font-size:10px}}
.day.today .date{animation:todayPulse 2.8s ease-in-out infinite}@keyframes todayPulse{0%,100%{box-shadow:0 0 0 0 #7658d133}50%{box-shadow:0 0 0 5px #7658d122}}
.screen[hidden]{display:none}.appnav{display:flex;gap:8px;margin:18px 0}.appnav button.active{background:#eeeaff;color:#6243c6;border-color:#d9d0ff}.event-list,.member-list{display:grid;gap:10px}.record{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #ececf2;border-radius:10px;padding:12px}.record h3{font-size:14px;margin:0 0 4px}.record p{font-size:12px;color:#777;margin:0}.badge{font-size:10px;background:#eeeaff;color:#6243c6;padding:4px 7px;border-radius:12px}.record-actions{display:flex;gap:5px}.small{border:1px solid #e4e4ed;background:#fff;color:#494b5e;border-radius:7px;padding:6px 9px;font-size:11px}.small.danger{color:#b42336}.event-detail{margin-top:16px}.rsvpbar{display:flex;gap:8px;margin-top:12px}.rsvpbar button.picked{border-color:#7658d1;background:#eeeaff;color:#6243c6}.comment{padding:10px 0;border-bottom:1px solid #eee;font-size:12px}.controls{display:flex;gap:7px;flex-wrap:wrap}.invitebox{font:12px ui-monospace,monospace;word-break:break-all;background:#f6f5fa;padding:10px;border-radius:8px}.field input:focus,.field textarea:focus{outline:2px solid #ab9aed;border-color:#7557d3}
.calendar-detail{margin-bottom:16px}.calendar-title{display:flex;align-items:center;justify-content:space-between}.calendar-title h2{font-size:18px;margin:0}.icon-actions{display:flex;gap:5px}.icon-actions button{width:34px;height:34px;padding:0;font-size:16px}.primary-actions{display:flex;gap:10px;margin-top:14px}.primary-actions .primary,.primary-actions .secondary{min-height:44px}.day-peek{margin:12px 0}.day-peek h3{margin:0 0 8px}.tiny-hebrew{font-size:10px;color:#8b879e;margin-left:3px}.progress-track{height:4px;background:#efedf6;margin:0 26px 14px;border-radius:4px;overflow:hidden}.progress-track i{display:block;height:100%;width:20%;background:#7354d1;transition:width .2s}.settings summary{font-weight:700;cursor:pointer;font-size:15px;list-style:none}.settings summary:after{content:'＋';float:right;color:#7658c5}.settings[open] summary:after{content:'−'}.settings-body{padding-top:16px}.day{cursor:pointer}.day:focus-visible{outline:2px solid #7658d1;outline-offset:-2px}.day.selected{background:#f5f2ff}.steps span{font-size:12px}.field{font-size:14px}.field input,.field textarea,.field select{font-size:16px;min-height:44px}.small{font-size:13px;min-height:38px}.appnav button{font-size:13px;min-height:42px}@media(max-width:680px){.topright{gap:6px}.topright #installHelp{font-size:11px;padding:7px}.calendar-detail{padding:15px}.calendar-title h2{font-size:16px}.primary-actions{display:grid;grid-template-columns:1fr 1fr}.day{min-height:62px}.weekday{font-size:11px}.date{font-size:13px}.tiny-hebrew{display:block;margin:0;font-size:10px}.appnav{overflow:auto}.appnav button{white-space:nowrap}.steps span{font-size:12px;padding:8px 11px}.progress-track{margin:0 18px 14px}.primary-actions .primary,.primary-actions .secondary{font-size:13px;padding:10px 8px}.welcome{align-items:center}.welcome h1{font-size:24px}.panel p{font-size:14px}}
.calendar-title .icon-actions .small{width:36px;height:36px;min-height:36px;display:grid;place-items:center}.calendar-title .icon-actions .danger{border-color:#f2d7dc}@media(max-width:680px){main{margin:22px auto}.day{padding:4px}.event{font-size:10px}.welcome{margin-bottom:22px}.calendar{border-radius:12px}.calendar-detail{border-radius:12px}.primary-actions button{min-height:48px}.toolbar strong{min-width:130px;font-size:16px}}
.calendar-title .icon-actions .small{width:36px;height:36px;min-height:36px;display:grid;place-items:center}.calendar-title .icon-actions .danger{border-color:#f2d7dc}@media(max-width:680px){main{margin:22px auto}.day{padding:4px}.event{font-size:10px}.welcome{margin-bottom:22px}.calendar{border-radius:12px}.calendar-detail{border-radius:12px}.primary-actions button{min-height:48px}.toolbar strong{min-width:130px;font-size:16px}}
/* User-provided reference: blue/teal accents, pale blue-gray canvas, rounded white cards. */
:root{--ink:#182338;--muted:#66748a;--brand:#2460d8;--brand-dark:#174bb7;--teal:#198d83;--teal-pale:#e5f4f1;--blue-pale:#eaf0fd;--line:#d5dce8;--canvas:#eef2f7;--coral:#b83b3e;--coral-pale:#fae9e9;--gold:#a8832b}
body{background:var(--canvas);color:var(--ink)}.top{background:#fff}.brandmark{background:var(--teal);color:white;border-radius:50%}.brand{color:var(--brand)}.brand small{color:var(--muted)}.primary{background:var(--brand);box-shadow:none;border-radius:8px}.primary:hover{background:var(--brand-dark)}.secondary,.today{border-color:var(--line);border-radius:9px;background:white;color:var(--brand)}.calendar,.panel{border-color:var(--line);border-radius:14px;box-shadow:0 2px 8px #2639540b}.weekday{background:#f8fafd;color:#58657a}.day{background:#fff}.day.outside{background:#f6f8fb;color:#9aa5b5}.day.today .date{background:var(--teal);color:white}.event{background:var(--blue-pale);border-left-color:var(--brand);color:#203e7c;border-radius:6px}.welcome h1{color:var(--ink)}.eyebrow{color:var(--brand)}.demo{background:#fff2d5;color:#815e10}.notice{background:#805211}.calendar-detail{background:#fff}.calendar-title .danger{color:#b83b3e}.primary-actions .secondary{color:#9a373a;background:var(--coral-pale);border-color:#efd0d0}.badge{background:var(--blue-pale);color:var(--brand)}.record{border-color:var(--line);border-radius:10px}.steps span.active{background:var(--blue-pale);color:var(--brand)}.progress-track i{background:var(--brand)}.dialog-actions .secondary{color:var(--muted)}.field input,.field textarea,.field select{border-color:var(--line);border-radius:9px}.field input:focus,.field textarea:focus{outline:2px solid #a9c0f6;border-color:var(--brand)}.tiny-hebrew{color:var(--teal);font-size:10px}.settings summary:after{color:var(--brand)}
@media(max-width:680px){.tiny-hebrew{font-size:10px;white-space:nowrap;letter-spacing:-.2px}.topright #installHelp{width:72px;min-width:72px;line-height:1.1;white-space:normal}.brand{font-size:14px}.brandmark{width:31px;height:31px}.day{min-height:60px}.weekday{font-size:11px}.date{font-size:13px}.welcome>div>p:not(.eyebrow){max-width:250px}.appnav{padding-bottom:5px}.appnav button{flex:0 0 auto}}
body{padding-bottom:112px}.notice{position:sticky;top:0;bottom:auto;margin:0;padding:8px 10px;font-size:12px;line-height:1.35;z-index:20}.appnav{position:fixed;bottom:39px;left:0;right:0;z-index:19;margin:0;padding:8px max(calc((100vw - 600px)/2),14px);background:#fff;border-top:1px solid var(--line);box-shadow:0 -3px 14px #20304a12;justify-content:space-around}.appnav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:0;background:transparent;min-width:64px;color:#516078;font-size:12px;padding:5px 9px}.appnav button span:first-child{font-size:18px;line-height:1}.appnav button.active{color:var(--brand);background:var(--blue-pale)}.calendar{margin-bottom:14px}.calendar-detail{margin-top:12px}.day.selected{background:var(--blue-pale)}@media(max-width:680px){body{padding-bottom:110px}.notice{font-size:11px}.appnav{bottom:39px;padding:7px 10px}.appnav button{min-width:68px;font-size:12px}.top{position:sticky;top:0;z-index:21}.welcome{margin-top:20px}.day{min-height:61px}}
.share-options{display:grid;gap:10px;margin:14px 0 22px}.share-option{display:flex;align-items:center;gap:12px;text-align:left;padding:13px 14px;background:#fff;border:1px solid var(--line);border-radius:12px;color:var(--ink);min-height:60px}.share-option:not(:disabled){cursor:pointer}.share-option:disabled{opacity:.58}.share-option b,.share-option small{display:block}.share-option b{font-size:14px}.share-option small{font-size:12px;color:var(--muted);margin-top:3px}.share-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--blue-pale);color:var(--brand);font-size:18px}.subhead{font-size:14px;margin:14px 0 8px}.screen .panel{min-height:190px}.event-detail{padding-top:10px}.day-peek{margin:10px 0}
.back-calendar{display:block;border:0;background:var(--blue-pale);color:var(--brand);border-radius:20px;padding:8px 14px;margin:0 auto 12px;font-size:13px;font-weight:700}.calendar-detail:not([hidden]){display:block}.calendar-detail .calendar-title{margin-top:3px}
/* Mobile tabs are true screens over the calendar, with their own scroll area. */
@media(max-width:680px){main .screen:not([hidden]){position:static;margin:0;padding:18px 13px 24px;background:var(--canvas)}.settings-body input[type=checkbox],#stepContent input[type=checkbox]{display:inline-block;width:20px;height:20px;min-height:20px;vertical-align:middle;margin:0 8px 0 0;accent-color:var(--brand)}.settings-body .field{display:flex;align-items:center;gap:8px}.settings-body .field input{flex:0 0 20px}.steps{scrollbar-width:none;scroll-behavior:smooth}.steps::-webkit-scrollbar{display:none}.steps span{flex:0 0 auto}}
@media(max-width:680px){.homeOnly[hidden]{display:none}.homeOnly:not([hidden]){display:block}.settings-body .field{display:block}.settings-body input[type=checkbox],#stepContent input[type=checkbox]{width:20px!important;height:20px!important;min-height:20px!important;display:inline-block!important;flex:none!important;appearance:auto!important;vertical-align:middle;margin:0 8px 0 0}.settings-body .field{display:flex;align-items:center;gap:8px}.settings-body .field input{width:20px!important;flex:0 0 20px!important}.steps span{scroll-margin-inline:18px}}
@media(max-width:680px){.notifications-field{display:flex;align-items:center;gap:8px}.notifications-field input[type=checkbox]{width:20px!important;height:20px!important;min-height:20px!important;display:inline-block!important;flex:0 0 20px!important;appearance:auto!important;margin:0!important}}
@media(max-width:680px){.appnav{bottom:0}.notice{display:none}body{padding-bottom:66px}main .screen:not([hidden]){position:static}.settings-body .field{display:block!important}.settings-body .field input[type=checkbox]{width:20px!important;height:20px!important;min-height:20px!important;display:inline-block!important;flex:0 0 20px!important;appearance:auto!important;vertical-align:middle;margin:0 8px 0 0!important}}
/* Native checkbox sizing on the wizard review step, scoped to mobile. */
@media(max-width:680px){#stepContent .notifications-field{display:flex;align-items:center;gap:8px;line-height:1.35}#stepContent .notifications-field input[type=checkbox]{appearance:none;width:18px!important;height:18px!important;min-height:18px!important;flex:0 0 18px!important;margin:0!important;border:1.5px solid #9aabc0;border-radius:4px;background:#fff;vertical-align:middle}#stepContent .notifications-field input[type=checkbox]:checked{background:var(--brand);border-color:var(--brand);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='white' stroke-width='2.2' d='m3 8 3.2 3.2L13 4.5'/%3E%3C/svg%3E");background-size:14px;background-position:center;background-repeat:no-repeat}.steps{overflow-x:auto;overscroll-behavior-inline:contain;touch-action:pan-x}.steps span{scroll-snap-align:center}.steps{scroll-snap-type:x proximity}}
.calendar-list-item{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:12px;padding:12px;margin:14px 0}.calendar-list-item b,.calendar-list-item small{display:block}.calendar-list-item small{font-size:12px;color:var(--muted);margin-top:4px}.create-calendar-home{display:block;width:100%;min-height:48px;margin-top:12px;text-align:center;font-weight:750}@media(max-width:680px){#calendarScreen .panel:first-child{padding:17px}.calendar-list-item{margin-top:14px}.create-calendar-home{font-size:15px}}
.home-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.home-actions #createDemoCalendar{color:var(--brand);font-weight:700;min-height:44px}.home-actions #openWizard{min-height:44px}@media(max-width:680px){.home-actions{display:grid;grid-template-columns:1fr;gap:6px;min-width:142px}.home-actions button{font-size:12px!important;padding:9px 8px!important;white-space:nowrap}.welcome{margin-bottom:18px}}
:is(#createCalendarDialog,#calendarEditDialog){max-width:420px;padding:0}:is(#createCalendarDialog,#calendarEditDialog) .create-name-field{padding:0 26px}:is(#createCalendarDialog,#calendarEditDialog) .demo-note{margin:2px 26px;padding:10px 12px;border-radius:9px;background:#f4f7fb;color:var(--muted);font-size:12px}:is(#createCalendarDialog,#calendarEditDialog) .dialog-actions{padding-top:16px}
:is(#createCalendarDialog,#calendarEditDialog){max-width:420px;padding:0}:is(#createCalendarDialog,#calendarEditDialog) .create-name-field{padding:0 26px}:is(#createCalendarDialog,#calendarEditDialog) .demo-note{margin:2px 26px;padding:10px 12px;border-radius:9px;background:#f4f7fb;color:var(--muted);font-size:12px}:is(#createCalendarDialog,#calendarEditDialog) .dialog-actions{padding-top:16px}
:is(#createCalendarDialog,#calendarEditDialog){max-width:420px;padding:0}:is(#createCalendarDialog,#calendarEditDialog) .create-name-field{padding:0 26px}:is(#createCalendarDialog,#calendarEditDialog) .demo-note{margin:2px 26px;padding:10px 12px;border-radius:9px;background:#f4f7fb;color:var(--muted);font-size:12px}:is(#createCalendarDialog,#calendarEditDialog) .dialog-actions{padding-top:16px}
.tiny-parsha{display:block;margin-top:3px;color:#315e9c;font-size:8px;line-height:1.05;font-weight:750;letter-spacing:-.2px;overflow-wrap:anywhere}@media(max-width:680px){.tiny-parsha{font-size:7px;line-height:1.05;margin-top:2px}.day{min-height:64px;padding:3px}}
.calendar-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px 0 10px;margin-top:10px;scroll-snap-type:x proximity;scrollbar-width:thin}.calendar-tab{flex:0 0 auto;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--brand);padding:9px 14px;font-size:13px;font-weight:650;scroll-snap-align:start}.calendar-tab.active{background:var(--blue-pale);border-color:#b9cdf4;color:var(--brand-dark)}
/* Hard guard against narrow/in-app viewport overflow. */
html,body{width:100%;max-width:100%;overflow-x:hidden}main{width:100%;min-width:0}.calendar{width:100%;min-width:0;grid-template-columns:repeat(7,minmax(0,1fr))}.weekday,.day{min-width:0;overflow:hidden}.day{overflow-wrap:anywhere}.tiny-hebrew{white-space:normal!important;overflow-wrap:anywhere!important;letter-spacing:-.35px!important}.tiny-parsha{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.days{min-width:0}.home-actions{min-width:0}@media(max-width:400px){.day{padding:2px!important}.date{width:23px;height:23px;font-size:11px!important}.tiny-hebrew{font-size:8px!important;line-height:1.05}.tiny-parsha{font-size:6px!important;line-height:1}.weekday{font-size:9px!important;padding:7px 0!important}.calendar{overflow:hidden}.toolbar>div{gap:7px!important}.toolbar strong{min-width:0!important;font-size:14px!important}.toolbar{gap:6px}}
@media(max-width:380px){body{overflow-x:hidden}main{padding-left:10px!important;padding-right:10px!important;width:100%;max-width:100%;overflow:hidden}.calendar{width:100%;max-width:100%;grid-template-columns:repeat(7,minmax(0,1fr))!important}.day{padding:1px!important}.tiny-hebrew{font-size:7px!important}.tiny-parsha{font-size:5.5px!important}.calendar-tabs{max-width:100%}}
/* Keep hero copy, actions, and many-calendar tabs in separate full-width rows. */
@media(max-width:680px){.homeWelcome{display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-items:start!important;gap:14px!important;margin:18px 0 22px!important}.homeWelcome>div:first-child{min-width:0;width:100%}.homeWelcome h1{font-size:clamp(24px,7vw,30px)!important;line-height:1.14;overflow-wrap:anywhere;margin-bottom:8px!important}.homeWelcome>div:first-child>p:not(.eyebrow){max-width:100%;line-height:1.35}.home-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%;min-width:0!important;gap:10px!important;justify-content:stretch}.home-actions button{width:100%;min-width:0;white-space:normal!important;min-height:50px!important;padding:10px 8px!important;font-size:clamp(12px,3.7vw,15px)!important}.calendar-tabs{width:100%;min-width:0;margin:0!important;padding:2px 0 12px!important;gap:9px!important}.calendar-tab{font-size:clamp(13px,4vw,16px)!important;padding:10px 16px!important;max-width:65vw!important}.homeWelcome{margin-bottom:20px!important}}
@media(max-width:380px){.home-actions{grid-template-columns:1fr!important}.homeWelcome{gap:12px!important}.calendar-tab{max-width:60vw!important}}
/* Compact bottom dock; preserve tap targets while reducing visual footprint. */
@media(max-width:680px){body{padding-bottom:78px!important}.appnav{bottom:24px!important;padding:3px 8px!important;min-height:0!important;height:52px;align-items:center}.appnav button{min-width:52px!important;min-height:42px!important;padding:3px 7px!important;gap:1px!important;font-size:10px!important}.appnav button span:first-child{font-size:14px!important;line-height:1!important}.notice{font-size:9px!important;padding:5px 8px!important;line-height:1.1!important}}
@media(max-width:680px){#calendarTabs{min-height:44px!important;padding:5px 0 10px!important}.calendar-tabs:empty{display:none}body{padding-bottom:58px!important}.appnav{bottom:24px!important;height:44px!important;padding:1px 8px!important}.appnav button{min-height:38px!important;font-size:9px!important}.appnav button span:first-child{font-size:12px!important}.notice{height:24px!important;box-sizing:border-box}}
.calendar-select-wrap{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--muted)}.calendar-select-wrap select{max-width:200px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--brand);font-weight:700;padding:9px 30px 9px 11px;min-height:42px}.calendar-colors{border:0;padding:4px 26px 12px;margin:0;display:flex;align-items:center;gap:12px}.calendar-colors legend{font-weight:700;font-size:13px;color:var(--ink);margin-bottom:8px}.calendar-colors label{display:grid;place-items:center;position:relative}.calendar-colors input{position:absolute;opacity:0}.calendar-colors i{width:29px;height:29px;border-radius:50%;background:var(--swatch);border:2px solid #fff;box-shadow:0 0 0 1px #c9d3df;cursor:pointer}.calendar-colors input:checked+i{box-shadow:0 0 0 3px #172e50}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.calendar-tab{border-left:5px solid var(--cal-color)!important}.calendar-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--cal-color);margin-right:6px}.event{border-left-color:var(--event-color,var(--brand))!important}
@media(max-width:680px){.calendar-select-wrap{width:100%;justify-content:flex-start}.calendar-select-wrap select{flex:1;max-width:none}.toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;row-gap:10px}.toolbar .calendar-select-wrap{grid-column:1/-1}.toolbar>div{gap:7px}.appnav button{min-width:46px!important}}
@media(max-width:680px){.appnav button{min-width:0!important;flex:1 1 20%;padding-left:2px!important;padding-right:2px!important}.appnav{gap:0!important}.calendar-select-wrap{font-size:13px}.calendar-colors{padding-left:22px;padding-right:22px;justify-content:space-between}}
/* Wide compact color choice and private calendar card. */
.calendar-colors{display:grid!important;grid-template-columns:repeat(7,30px);gap:12px!important;justify-content:start!important}.calendar-colors label{width:30px;height:30px}.calendar-colors i{width:27px;height:27px}.private-option{display:flex;align-items:flex-start;gap:11px;border:1px solid var(--line);border-radius:12px;padding:14px 15px;margin:8px 26px 12px;color:var(--ink)}.private-option input{width:20px;height:20px;flex:0 0 20px;margin:0;accent-color:var(--brand)}.private-option b,.private-option small{display:block}.private-option b{font-size:14px}.private-option small{font-size:12px;line-height:1.4;color:var(--muted);margin-top:5px}.calendar-tab{border-left-color:var(--cal-color)!important}.calendar-dot{background:var(--cal-color)}
@media(max-width:680px){.appnav{height:58px!important;bottom:24px!important}.appnav button{min-height:48px!important;font-size:11px!important;gap:2px!important}.appnav button span:first-child{font-size:16px!important}.calendar-colors{grid-template-columns:repeat(7,27px);gap:10px!important}.private-option{margin-left:18px;margin-right:18px}}
@media(max-width:680px){body{padding-bottom:92px!important}.appnav{height:58px!important;bottom:24px!important}.calendar-colors legend{margin-bottom:9px}.calendar-colors{grid-template-columns:repeat(7,27px);row-gap:10px!important}}
@media(max-width:680px){body{padding-bottom:92px!important}.appnav{height:58px!important;bottom:24px!important}.calendar-colors legend{margin-bottom:9px}.calendar-colors{grid-template-columns:repeat(7,27px);row-gap:10px!important}}
.calendar-select-wrap select{border-left:5px solid var(--selected-calendar-color,var(--brand))!important}
/* Homepage look options: only the calendar home is themed; group management and tools stay unchanged. */
.look-select-wrap{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:var(--muted)}.look-select-wrap select{min-height:42px;padding:8px 25px 8px 10px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--brand);font-weight:700}
@media(max-width:680px){.toolbar{grid-template-columns:minmax(0,1fr) auto!important}.toolbar .calendar-select-wrap{grid-column:1/-1}.look-select-wrap{grid-column:1/-1;justify-content:flex-start}.look-select-wrap select{flex:1}}
body[data-home-theme="classic"] .homeWelcome,body[data-home-theme="classic"] .toolbar,body[data-home-theme="classic"] .calendar{--home-theme:var(--brand)}
body[data-home-theme="garden"]{background:#f5f6ef}body[data-home-theme="garden"] .homeWelcome{background:linear-gradient(125deg,#e6f0e4,#faf4e6);border:1px solid #d4e0d2;border-radius:20px;padding:24px 26px;box-shadow:0 8px 24px #32482c12}body[data-home-theme="garden"] .homeWelcome .eyebrow{color:#64834f}body[data-home-theme="garden"] .homeWelcome h1{color:#294d3b}body[data-home-theme="garden"] .homeWelcome>div:first-child>p:not(.eyebrow){color:#5c715f}body[data-home-theme="garden"] .homeWelcome .primary{background:#3f7655;border-radius:14px}body[data-home-theme="garden"] .toolbar,body[data-home-theme="garden"] .calendar{border-color:#d5e1d2;box-shadow:0 7px 24px #31462a0d}body[data-home-theme="garden"] .calendar{border-radius:20px}body[data-home-theme="garden"] .weekday{background:#eef4ea;color:#526b4d}body[data-home-theme="garden"] .day.today .date{background:#3f7655}
body[data-home-theme="midnight"]{background:#f0f2f8}body[data-home-theme="midnight"] .homeWelcome{background:linear-gradient(125deg,#202d4d,#364b70);border-radius:18px;padding:23px 25px;color:#fff;box-shadow:0 12px 28px #17223d32}body[data-home-theme="midnight"] .homeWelcome .eyebrow{color:#a9c6ff}body[data-home-theme="midnight"] .homeWelcome h1{color:white}body[data-home-theme="midnight"] .homeWelcome>div:first-child>p:not(.eyebrow){color:#d5e0f4}body[data-home-theme="midnight"] .homeWelcome .primary{background:#f08b68;color:#272d3b;border-radius:8px;box-shadow:none}body[data-home-theme="midnight"] .toolbar,body[data-home-theme="midnight"] .calendar{border-color:#d4d9e5;box-shadow:0 8px 28px #28304d12}body[data-home-theme="midnight"] .calendar{border-radius:9px}body[data-home-theme="midnight"] .weekday{background:#e8edf6;color:#40516e}body[data-home-theme="midnight"] .day.today .date{background:#e87558}
@media(max-width:680px){body[data-home-theme="garden"] .homeWelcome,body[data-home-theme="midnight"] .homeWelcome{padding:19px 17px;border-radius:16px}.homeWelcome{transition:background .2s ease}}
/* Weekend tint requested for the single Classic home look. */
.weekday:first-child,.weekday:nth-child(7){background:#fff0e6!important;color:#a95325!important}.day:nth-child(7n+1),.day:nth-child(7n){background:#fff9f5!important}.day.outside:nth-child(7n+1),.day.outside:nth-child(7n){background:#fbf2ed!important;color:#b9a59a!important}.day:nth-child(7n+1) .tiny-hebrew,.day:nth-child(7n) .tiny-hebrew{color:#b56a41!important}.day:nth-child(7n+1) .tiny-parsha,.day:nth-child(7n) .tiny-parsha{color:#a95325!important}.day:nth-child(7n+1).today .date,.day:nth-child(7n).today .date{background:#c76235!important;color:#fff!important}
/* Home dashboard list modeled on the requested original group-calendar screen. */
.dashboard-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 18px}.dashboard-actions button{min-height:54px;font-weight:800;font-size:15px}.dashboard-actions #homeAddEvent{background:#d86f63;box-shadow:0 5px 14px #c96a6026}.dashboard-actions #createCalendarFromHome{color:#0f807b;border:1.5px solid #0f807b;background:#edf8f6;margin:0}.group-summary{width:100%;min-height:82px;display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:center;text-align:left;padding:14px 16px;border:1px solid #e4dcea;border-radius:15px;background:linear-gradient(100deg,#f9f1f8,#f2f5fc);color:var(--ink);box-shadow:0 1px 3px #2230400b}.summary-tile{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#eadcf4;color:#9157b7;font-size:15px}.group-summary b,.group-summary small{display:block}.group-summary b{font-size:16px}.group-summary small{font-size:13px;color:var(--muted);margin-top:4px}.section-label{margin:23px 0 10px;font-weight:850;font-size:11px;letter-spacing:1.5px;color:#63718a}.calendar-card-list{display:grid;gap:12px}.calendar-home-card{border:1.5px solid #dce2e8;border-radius:17px;background:#fff;overflow:hidden;cursor:pointer;box-shadow:0 2px 8px #24324a0a}.calendar-home-card:nth-child(even){background:#f9faff;border-color:#adbfde}.calendar-card-main{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;padding:15px 16px 14px}.calendar-card-dot{width:15px;height:15px;border-radius:50%;background:var(--cal-color);margin-top:4px}.calendar-card-content{min-width:0}.calendar-card-heading{display:flex;align-items:center;justify-content:space-between;gap:6px}.calendar-card-heading>b{font-size:16px;overflow-wrap:anywhere}.calendar-card-tools{display:flex;gap:8px;flex:0 0 auto}.calendar-card-tools button{border:0;background:transparent;padding:2px;color:#9e641a;font-size:17px}.calendar-card-tools .edit{color:#3572cc}.calendar-card-tools .trash{color:#c94444}.calendar-card-stats{display:flex;gap:13px;margin-top:6px;color:#6b7789;font-size:13px}.upcoming{margin:9px 0 0;color:#7c8491;font-size:13px;overflow-wrap:anywhere}.calendar-card-actions{border-top:1px solid #e2e4e9;display:flex;gap:8px;padding:8px 14px}.calendar-card-actions button{min-height:42px;border:0;border-radius:12px;padding:7px 13px;font-size:13px;font-weight:800;color:#6942b6;background:#f1eafa}.calendar-card-actions button:nth-child(2){color:#14796f;background:#e8f5f3}.calendar-card-actions button:nth-child(3){color:#a34b26;background:#fff0e6}.back-cards{margin:0 0 10px;min-height:42px}
@media(max-width:680px){.homeWelcome{display:none!important}.homeOnly{margin-top:14px}.dashboard-actions{gap:8px;margin-bottom:13px}.dashboard-actions button{min-height:52px;padding:9px 6px;font-size:clamp(12px,3.8vw,15px)}.group-summary{min-height:76px;padding:12px 13px}.group-summary b{font-size:15px}.calendar-card-list{gap:10px}.calendar-card-main{padding:13px 12px 12px;grid-template-columns:17px minmax(0,1fr);gap:8px}.calendar-card-dot{width:14px;height:14px}.calendar-card-heading>b{font-size:15px}.calendar-card-tools{gap:4px}.calendar-card-tools button{font-size:16px;padding:1px}.calendar-card-actions{gap:6px;padding:7px 10px}.calendar-card-actions button{flex:0 1 auto;min-height:42px;padding:7px 10px;font-size:12px}.section-label{margin-top:19px}.toolbar{margin-top:12px}}
.group-hidden-controls{display:none!important}
/* Weekend accent is Saturday only. */
.weekday:first-child{background:#f8fafd!important;color:#58657a!important}.day:nth-child(7n+1){background:#fff!important}.day.outside:nth-child(7n+1){background:#f6f8fb!important;color:#9aa5b5!important}
@media(max-width:680px){#groupCalendarsScreen{padding:0}.calendar-home-card{max-width:100%}}
#quickAddEvent{max-width:440px;padding:0}#quickAddEvent .quick-event-fields{padding:0 26px}#quickAddEvent .field{margin-bottom:14px}.event[role=button]{cursor:pointer}.event[role=button]:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.upcoming[data-event-title]{cursor:pointer;text-decoration:underline;text-decoration-color:#d8dee8;text-underline-offset:3px}
.home-grid-actions{display:flex;justify-content:flex-end;margin:0 0 10px}.home-grid-actions .primary{min-height:46px;background:#c74435;box-shadow:0 5px 14px #c7443525}.inline-event-detail{margin:12px 0;padding:16px;border-left:4px solid var(--teal)}.inline-event-detail h2{margin:12px 0 4px;font-size:18px}.inline-event-detail p{font-size:14px;color:var(--muted)}
#groupEventDialog{max-width:440px;padding:0}#groupEventDialog .group-event-body{padding:2px 26px 10px}#groupEventDialog .group-event-body p{font-size:15px;line-height:1.5;color:var(--muted)}
/* Distinct event-day marker follows the calendar's color; Saturday's cell tint remains underneath. */
.day.has-event .date{background:color-mix(in srgb,var(--day-event-color,var(--teal)) 22%,white);color:var(--day-event-color,var(--teal));box-shadow:inset 0 0 0 1.5px var(--day-event-color,var(--teal));font-weight:850}.day.has-event.today .date{background:var(--day-event-color,var(--teal));color:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--day-event-color,var(--teal)) 24%,transparent)}.day.has-event:nth-child(7n) .date{outline:2px solid #c76235;outline-offset:2px}
.home-grid-actions{display:none!important}.home-control-row{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.home-control-row .calendar-select-wrap{min-width:0;flex:1}.home-control-row .calendar-select-wrap select{width:100%;min-width:0;max-width:none}.home-create,.home-control-row #gridAddEvent{height:42px;min-height:42px;flex:1 1 0;min-width:0;white-space:nowrap;padding:6px 5px;font-weight:750;font-size:11px;border-radius:9px}.home-create{border:1px solid #0f807b;background:#edf8f6;color:#0f807b}.home-control-row #gridAddEvent{background:#c74435;color:#fff;box-shadow:none}.toolbar{display:flex;flex-wrap:wrap;gap:10px}.month-controls{display:flex;align-items:center;gap:7px;justify-content:center;flex:1;min-width:0}.month-controls strong{min-width:0!important}.calendar-select-wrap{gap:0!important}.calendar-select-wrap>span{display:none}
@media(max-width:680px){.toolbar{display:flex!important;flex-direction:column;align-items:stretch!important;gap:9px!important}.home-control-row{width:100%;gap:5px}.home-control-row .calendar-select-wrap select{height:42px;padding:6px 14px 6px 5px;font-size:10px}.home-create,.home-control-row #gridAddEvent{height:42px;min-height:42px;padding:5px 4px;font-size:10px;flex:1}.month-controls{justify-content:space-between}.toolbar .today{min-height:38px}.toolbar{margin-bottom:12px!important}}
/* Compact equal-width Home action controls. */
.home-control-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;width:100%;flex:none!important}.home-control-row>*{width:100%!important;min-width:0!important;max-width:none!important;flex:none!important;height:36px!important;min-height:36px!important;border-radius:8px!important;padding:4px 3px!important;font-size:10px!important;line-height:1.1!important;white-space:nowrap!important}.home-control-row .calendar-select-wrap select{background:#f0f2f6!important;color:#39475a!important;border:1px solid #ccd3dd!important;font-size:10px!important;padding:4px 14px 4px 5px!important}.home-control-row .home-create{background:#e7f5f2!important;color:#0e716b!important;border:1px solid #99c9c3!important}.home-control-row #gridAddEvent{background:#c74435!important;color:white!important;border:1px solid #c74435!important}

@media(max-width:680px){.home-control-row .calendar-select-wrap{flex:1 1 0!important;min-width:0!important;width:auto!important}.home-control-row .calendar-select-wrap select{flex:1 1 0!important;width:100%!important}.home-control-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}.home-control-row>*{min-width:0!important;width:auto!important}}
@media(max-width:680px){.home-control-row .calendar-select-wrap{grid-column:1!important;display:block!important;width:100%!important;max-width:100%!important;flex:none!important;justify-self:stretch!important}.home-control-row #gridCreateCalendar{grid-column:2!important}.home-control-row #gridAddEvent{grid-column:3!important}.home-control-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:680px){.home-control-row .calendar-select-wrap{height:36px!important;min-height:36px!important;align-self:stretch!important;margin:0!important;padding:0!important;line-height:1!important}.home-control-row .calendar-select-wrap select{display:block!important;box-sizing:border-box!important;height:36px!important;min-height:36px!important;max-height:36px!important;margin:0!important;align-self:stretch!important;line-height:1!important}.home-control-row #gridCreateCalendar,.home-control-row #gridAddEvent{display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;height:36px!important;min-height:36px!important;max-height:36px!important;margin:0!important;align-self:stretch!important;line-height:1!important}}
/* Sophisticated colored controls, still compact and aligned. */
.home-control-row #gridCreateCalendar{background:linear-gradient(135deg,#148b83,#0c6f69)!important;color:#fff!important;border-color:#0c6f69!important;box-shadow:0 2px 6px #0c6f6933}.home-control-row #gridAddEvent{background:linear-gradient(135deg,#d95b4d,#b9362c)!important;border-color:#b9362c!important;box-shadow:0 2px 6px #b9362c30}.home-control-row .calendar-select-wrap select{background:linear-gradient(135deg,#f6f8fb,#e7edf4)!important;border-color:#bdc9d7!important;box-shadow:inset 0 1px #fff}
.date-range-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px}.date-range-controls label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--muted)}.date-range-controls input,.date-range-controls select{height:34px;min-width:0;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--brand);font-size:12px;padding:4px 7px}.three-month-view{display:block!important;overflow:auto!important;background:transparent!important;border:0!important;box-shadow:none!important}.mini-month{background:white;border:1px solid var(--line);border-radius:12px;margin-bottom:10px;padding:9px;box-shadow:0 2px 8px #2639540b}.mini-month h3{font-size:14px;margin:0 0 6px;color:var(--brand)}.mini-weekdays,.mini-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}.mini-weekdays b{font-size:9px;color:#758196;padding:3px}.mini-weekdays b:first-child,.mini-weekdays b:last-child{color:#a95325}.mini-day{min-width:0;height:28px;border:0;border-radius:50%;background:transparent;font-size:10px;color:var(--ink);padding:0}.mini-day.outside{color:#c2c7cf}.mini-day.saturday{background:#fff1e8;color:#a95325}.mini-day.has-event{box-shadow:inset 0 0 0 1.5px var(--day-event-color);color:var(--day-event-color);font-weight:800}.mini-day.has-event.saturday{outline:1px solid #c76235;outline-offset:1px}
@media(max-width:680px){.date-range-controls{margin-top:1px}.date-range-controls label{font-size:10px}.date-range-controls input,.date-range-controls select{font-size:11px;height:32px}.mini-month{padding:7px;margin-bottom:8px}.mini-day{height:25px}}
#customRangeFields{display:flex;gap:7px;align-items:center}#customRangeFields[hidden]{display:none!important}#customRangeFields label{display:flex;align-items:center;gap:3px;font-size:10px;font-weight:700;color:var(--muted)}#customRangeFields input{width:118px;height:30px;padding:3px 5px;font-size:10px}
@media(max-width:680px){#customRangeFields input{width:102px}#customRangeFields{gap:4px}}
/* Compact custom-range row: stack its label/date pairs so neither input clips at phone width. */
.date-range-controls{flex-wrap:wrap;justify-content:flex-start;gap:6px}.date-range-controls>label{flex:0 1 auto;min-width:0}.date-range-controls>label:first-child{margin-right:auto}#customRangeFields{flex:1 0 100%;display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;min-width:0}#customRangeFields label{display:grid;grid-template-columns:auto minmax(0,1fr);min-width:0;gap:4px}#customRangeFields input{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;font-size:11px!important}
@media(max-width:680px){#customRangeFields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}.date-range-controls{gap:6px}.date-range-controls select{max-width:130px}}
/* Native date controls can render the localized date mask wider than their CSS box on narrow phones. Keep labels and fields on separate short rows. */
@media(max-width:680px){#customRangeFields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important}#customRangeFields label{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:3px!important;font-size:10px!important;min-width:0!important}#customRangeFields input[type=date]{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;padding:2px 2px!important;font-size:10px!important;letter-spacing:-.25px!important}#customRangeFields label:first-child{grid-column:1!important}#customRangeFields label:last-child{grid-column:2!important}}
#dayEventsDialog{padding:0;max-width:calc(100% - 32px);width:min(520px,calc(100% - 32px))}#dayEventsDialog .dialog-head{padding:20px 16px 12px}#dayDialogBody{padding:0 16px 18px}.day-dialog-body .record{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;margin:0 0 14px;background:#fff}.day-dialog-body .record>div:first-child{min-width:0;overflow-wrap:anywhere}.day-dialog-body .record-actions{display:flex;gap:6px;flex-shrink:0}.day-dialog-body #addEventForDay{display:block;width:100%;margin-top:2px;min-height:44px}
@media(max-width:680px){#groupCalendarsScreen{padding:0 10px!important;overflow:visible!important}.calendar-home-card{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}.calendar-card-main,.calendar-card-actions{min-width:0!important}.calendar-card-actions{flex-wrap:wrap}.calendar-card-actions button{min-width:0!important;padding-left:8px!important;padding-right:8px!important}}

/* Keep the selected group calendar visible while its grid is shown from the Groups tab. */
#groupCalendarsScreen:not([hidden]) .homeOnly,#groupCalendarsScreen:not([hidden]) #calendarToolbar,#groupCalendarsScreen:not([hidden]) #calendarGridView{display:block!important;visibility:visible!important;opacity:1!important}#groupCalendarsScreen:not([hidden]) .homeOnly[hidden],#groupCalendarsScreen:not([hidden]) #calendarGridView[hidden]{display:none!important}
/* The group panel is the containing section for the group calendar grid. */
#groupCalendarsScreen:not([hidden]) #calendarGridView{background:#fff!important;box-shadow:0 2px 8px #2639540b!important;border:1px solid var(--line)!important;border-radius:14px!important;min-height:400px!important}
/* Some browsers suppress painted descendants after transitioning out of the card list. Reset transition state on the calendar grid. */
#calendarGridView,#calendarGridView *{transition:none!important;animation:none!important;filter:none!important;opacity:1!important;visibility:visible!important}#calendarGridView{transform:none!important;will-change:auto!important;isolation:isolate!important}
/* Group screen grid needs the same month layout as the home calendar. */
#groupCalendarsScreen:not([hidden]) #calendarGridView.calendar{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;align-content:start!important}.homeOnly .date-range-controls{display:flex!important;align-items:center!important;flex-wrap:wrap!important;justify-content:flex-start!important;gap:6px!important}.homeOnly .date-range-controls>label{display:flex!important;align-items:center!important;flex:0 1 auto!important;min-width:0!important}.homeOnly .date-range-controls>label:first-child{margin-right:auto!important}.homeOnly .date-range-controls>label:nth-child(2){margin-left:auto!important}.homeOnly .date-range-controls input,.homeOnly .date-range-controls select{max-width:140px!important;width:auto!important}.homeOnly .date-range-controls{min-width:0!important}
#backToGroupCards:not([hidden]){display:block!important;margin:0 0 8px!important}

/* Ensure the calendar grid remains a seven-column grid inside a group view. */
#groupCalendarsScreen:not([hidden]) #calendarGridView.calendar{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;grid-auto-rows:auto!important}
@media(max-width:680px){#groupCalendarsScreen:not([hidden]){position:static!important;inset:auto!important;z-index:auto!important;overflow:visible!important;background:transparent!important}}
#buildStamp{display:inline-block;margin-left:8px;padding:2px 6px;border-radius:6px;background:#e8edf3;color:#526176;font:600 9px/1.2 ui-monospace,monospace;letter-spacing:.02em}
#buildStamp{display:block;width:max-content;margin:8px auto 18px;padding:3px 7px;border:1px solid var(--line);border-radius:6px;background:#fff;color:#536176;font:600 9px/1.2 ui-monospace,monospace;letter-spacing:.02em;position:relative;z-index:1}
@media(max-width:680px){#buildStamp{margin:8px auto 16px}}
.day{position:relative}.day-hit{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;padding:0;border:0;border-radius:0;background:transparent!important;box-shadow:none!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.day .date,.day .tiny-hebrew,.day .tiny-parsha{position:relative;z-index:2;pointer-events:none}.day .event{position:relative;z-index:3;touch-action:manipulation;-webkit-tap-highlight-color:transparent}

#tapDebug{font:10px ui-monospace,monospace;color:#525a6b;text-align:center;margin:4px auto 10px;padding:3px 6px;max-width:96%;overflow-wrap:anywhere}

#cardActionDialog{max-width:440px;width:min(440px,calc(100% - 32px));padding:0;margin:auto;border:0;border-radius:18px;box-shadow:0 22px 80px #16132a4a;color:var(--ink)}#cardActionDialog #cardActionBody{padding:2px 18px 20px;max-height:65vh;overflow:auto}#cardActionDialog #cardActionBody .field{margin:14px 0}#cardActionDialog #cardActionBody .field input{width:100%;min-height:42px;border:1px solid var(--line);border-radius:9px;padding:10px;font:inherit}

#cardActionDialog[open]{display:block!important;position:fixed!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;z-index:1001!important;width:min(440px,calc(100% - 32px))!important;margin:0!important;background:#fff!important}#cardActionDialog::backdrop{z-index:1000!important}

/* Group-card detail and event detail use the same compact card language as the prototype. */
#cardActionDialog #cardActionBody .see-all-events{display:flex;align-items:center;justify-content:space-between;padding:14px;border:1px solid var(--line);border-radius:12px;background:#f5f7fb;margin-bottom:8px}.see-all-title b,.see-all-title small{display:block}.see-all-title b{font-size:15px}.see-all-title small{font-size:11px;color:var(--muted);margin-top:3px}.see-all-events>button{border:0;border-radius:9px;background:#315fce;color:white;padding:7px 12px}.card-event-list{display:grid;gap:6px;max-height:28vh;overflow:auto}.card-event-row{display:grid;grid-template-columns:44px 1fr 12px;align-items:center;gap:7px;width:100%;text-align:left;padding:9px 8px;background:#fff;border:1px solid var(--line);border-radius:9px;color:var(--ink);font:inherit}.card-event-row small{color:var(--muted);font-size:10px}.card-event-date{font-size:10px;font-weight:800;color:var(--muted)}.expanded-view{display:block;width:100%;padding:8px;margin:6px 0;border:1px solid var(--line);border-radius:8px;background:#f4f6fb;color:var(--brand);font-weight:700}.calendar-card-actions{flex-wrap:wrap}#cardActionDialog #cardActionBody .primary{margin-top:9px;width:100%;min-height:44px}#cardEventDialog{max-width:440px;width:min(440px,calc(100% - 32px));padding:0;border:0;border-radius:18px;box-shadow:0 22px 80px #16132a4a;color:var(--ink)}#cardEventDialog .day-dialog-body{padding:0 20px 20px;max-height:68vh;overflow:auto}#cardEventDialog .eyebrow{margin-top:12px}#cardEventDialog p{margin:9px 0;color:var(--ink);font-size:14px}#cardEventDialog .creator-note{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}#cardEventDialog[open]{display:block!important;position:fixed!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;z-index:1002!important;margin:0!important;background:#fff!important}#cardEventDialog::backdrop{z-index:1001!important}


/* v12: show mobile touch diagnostics persistently above the bottom tab dock. */
@media(max-width:680px){#tapDebug{position:fixed;left:0;right:0;bottom:58px;z-index:30;max-width:none;margin:0;padding:3px 5px;background:#fff;color:#334155;border-top:1px solid #d5dce8;font-size:9px;line-height:1.25;text-align:center;pointer-events:none}body{padding-bottom:108px!important}.appnav{bottom:0!important}}

/* v12 card dialogs: explicit open/closed stacking state for iOS WebKit. */
#cardActionDialog:not([open]),#cardEventDialog:not([open]){display:none!important}#cardActionDialog[open],#cardEventDialog[open]{display:block!important}
@media(max-width:680px){#cardActionDialog[open],#cardEventDialog[open]{position:fixed!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translate(-50%,-50%)!important;max-height:80vh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important}}

/* Safari/iOS WPE rejects calc-free subtraction inside min(); use explicit calc for dialog width. */
#cardActionDialog,#cardEventDialog{width:min(440px,calc(100% - 32px))!important}

/* v13 card overlays: ordinary fixed elements, no browser top layer/inert behavior. */
.plain-modal{display:none;position:fixed;inset:0;z-index:200;align-items:center;justify-content:center;padding:16px;background:rgba(21,25,39,.52);touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.plain-modal.is-open{display:flex!important;position:fixed!important;inset:0!important;z-index:999999!important}
.plain-modal-panel{position:relative;width:min(440px,100%);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;background:#fff;border-radius:18px;box-shadow:0 22px 80px #16132a4a;color:var(--ink);transform:none!important;-webkit-overflow-scrolling:auto}
.plain-modal-panel #cardActionBody{padding:2px 18px 20px;max-height:none;overflow:visible}
.plain-modal-panel #cardEventBody{padding:0 20px 20px;max-height:none;overflow:visible}
@media(max-width:680px){#groupCalendarsScreen:not([hidden]){position:static!important;inset:auto!important;z-index:auto!important;overflow:visible!important;background:transparent!important}}
@media(max-width:680px){#groupCalendarsScreen:not([hidden]){position:static!important;inset:auto!important;z-index:auto!important;overflow:visible!important;background:transparent!important}}
#groupCalendarsScreen:not([hidden]){position:static!important;overflow:visible!important;transform:none!important;filter:none!important;perspective:none!important;contain:none!important;}
#cardActionDialog:not([open]),#cardEventDialog:not([open]){display:none!important}

/* Only the requested Group Calendars Summary piece */
.group-summary{grid-template-columns:32px 1fr!important;min-height:82px!important;border:1px solid #e4dcea!important;border-radius:15px!important;background:linear-gradient(100deg,#f9f1f8,#f2f5fc)!important;box-shadow:0 1px 3px #2230400b!important;cursor:pointer}.summary-tile{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#eadcf4;color:#9157b7;font-size:15px}

/* Group events overlay ported for the summary card only */
.all-events-overlay{display:none;position:fixed;inset:0;z-index:1000;background:#17223552;align-items:flex-end;justify-content:center}.all-events-overlay.is-open{display:flex}.all-events-sheet{width:min(100%,520px);max-height:91vh;overflow:auto;background:#fff;border-radius:16px 16px 0 0;padding:15px 15px 28px;box-shadow:0 -8px 32px #16223822}.all-events-title{display:flex;align-items:center;justify-content:space-between}.all-events-title h2{font-size:14px;margin:0}.all-events-title button{border:0;background:transparent;font-size:21px;color:#616b7a}.all-events-sheet>p{text-align:center;margin:4px 0 13px;color:#616b7a;font-size:10px}.all-filter-label{display:grid;gap:4px;font-size:9px;color:#687487}.all-filter-label select,.all-search{height:39px;border:1px solid #dce1e8;border-radius:8px;background:white}.all-filter-label select{padding:0 10px;font-size:11px;color:#323d4d}.all-search{display:flex;align-items:center;gap:7px;padding:0 9px;margin-top:8px;color:#687487}.all-search input{border:0;outline:0;flex:1;min-width:0;font-size:11px}.all-search button{border:0;background:transparent;color:#748093}.all-events-controls{display:flex;justify-content:space-between;align-items:center;margin:8px 0}.all-events-controls button{background:white;border:1px solid #e2e6ec;border-radius:6px;padding:6px 8px;font-size:9px;color:#495467}.all-groups-events-list{display:grid;gap:7px}.all-event-card{border:1px solid #e7e9ee;border-radius:9px;padding:9px 9px;display:grid;grid-template-columns:34px 10px minmax(0,1fr) 16px;gap:7px;align-items:center}.all-event-date{background:#f4f6f9;border-radius:6px;text-align:center;padding:4px 2px;font-size:8px;color:#526072}.all-event-dot{width:7px;height:7px;border-radius:50%;background:var(--event-color)}.all-event-card b{display:block;font-size:10px;line-height:1.3}.all-event-card small{display:block;font-size:9px;color:#657184;margin-top:3px}.all-event-card>span:last-child{color:#718096}
/* Overlay filter uses its own option list so every calendar is visible on mobile. */
.all-filter-wrap{position:relative;margin-top:2px}.all-filter-label{display:grid;gap:4px;font-size:9px;color:#687487}.all-filter-button{height:39px;width:100%;border:1px solid #dce1e8;border-radius:8px;background:#fff;color:#323d4d;font-size:11px;text-align:left;padding:0 30px 0 10px;position:relative}.all-filter-button:after{content:'⌄';position:absolute;right:11px;top:50%;transform:translateY(-55%);font-size:16px;color:#465366}.all-filter-options{position:absolute;top:100%;left:0;right:0;z-index:5;max-height:220px;overflow:auto;background:#fff;border:1px solid #dce1e8;border-radius:8px;box-shadow:0 6px 18px #17223520;padding:4px}.all-filter-options[hidden]{display:none}.all-filter-option{display:block;width:100%;border:0;border-radius:5px;background:#fff;text-align:left;padding:9px 10px;color:#323d4d;font-size:12px}.all-filter-option.selected,.all-filter-option:hover{background:#f2edf7;color:#75409b}

/* Standalone events page when opened from Group Calendars Summary. */
body.events-page-mode{padding:0!important;overflow:auto!important}body.events-page-mode>.top,body.events-page-mode>.notice,body.events-page-mode>.appnav,body.events-page-mode>main,body.events-page-mode>#tapDebug{display:none!important}body.events-page-mode>.all-events-overlay{display:flex!important;position:static!important;inset:auto!important;min-height:100vh!important;height:100vh!important;overflow:auto!important;background:#fff!important;align-items:stretch!important;padding:0!important}body.events-page-mode .all-events-sheet{width:100%!important;max-width:none!important;max-height:none!important;min-height:100vh!important;overflow:auto!important;border-radius:0!important;box-shadow:none!important;padding:20px 16px!important}body.events-page-mode .all-events-title h2{font-size:20px!important}body.events-page-mode .all-events-sheet>p{font-size:12px!important}

/* iPhone-friendly standalone controls: avoid clipping the calendar choices inside WebKit scrollers. */
.events-back-link{display:none;color:#526072;font-size:14px;text-decoration:none;margin:8px 0 12px}.events-page-mode .events-back-link{display:inline-block}.all-filter-label{display:block!important;margin-bottom:4px}.all-filter-options{position:relative!important;top:auto!important;left:auto!important;right:auto!important;max-height:none!important;overflow:visible!important;margin-top:4px}.all-filter-option{min-height:44px!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.all-filter-button{min-height:44px!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent}

.event-detail-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.event-detail-head h3{margin:0 0 4px}.event-detail-actions{display:flex;gap:6px;flex-shrink:0}.event-detail-actions button{min-height:44px}@media(max-width:680px){.event-detail-head{align-items:flex-start}.event-detail-actions{flex-direction:column;align-items:stretch}.event-detail-actions button{min-width:88px}}

/* Create-calendar settings follow the live MyEventPlus controls shown in the user's reference. */
:is(#createCalendarDialog,#calendarEditDialog) .calendar-settings-card{margin:2px 26px 4px;padding:4px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}:is(#createCalendarDialog,#calendarEditDialog) .calendar-setting-row{display:grid;grid-template-columns:minmax(108px,1fr) auto;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid #edf0f5}:is(#createCalendarDialog,#calendarEditDialog) .calendar-setting-row:last-child{border-bottom:0}:is(#createCalendarDialog,#calendarEditDialog) .setting-label,:is(#createCalendarDialog,#calendarEditDialog) .invite-setting b{font-weight:700;font-size:13px;color:var(--ink)}:is(#createCalendarDialog,#calendarEditDialog) .setting-description,:is(#createCalendarDialog,#calendarEditDialog) .invite-setting small{grid-column:1/-1;margin:0;color:var(--muted);font-size:12px;line-height:1.35}:is(#createCalendarDialog,#calendarEditDialog) .setting-state{font-size:12px;color:var(--muted)}:is(#createCalendarDialog,#calendarEditDialog) .access-choice{display:flex;gap:5px;padding:3px;background:#f1f4f9;border-radius:9px}:is(#createCalendarDialog,#calendarEditDialog) .access-choice label{position:relative;cursor:pointer}:is(#createCalendarDialog,#calendarEditDialog) .access-choice input{position:absolute;opacity:0;pointer-events:none}:is(#createCalendarDialog,#calendarEditDialog) .access-choice span{display:block;padding:7px 11px;border-radius:7px;font-size:12px;font-weight:700;color:var(--muted)}:is(#createCalendarDialog,#calendarEditDialog) .access-choice input:checked+span{background:var(--brand);color:#fff;box-shadow:0 1px 3px #14243c33}:is(#createCalendarDialog,#calendarEditDialog) .setting-switch{position:relative;grid-column:2;grid-row:1;width:44px;height:26px}:is(#createCalendarDialog,#calendarEditDialog) .setting-switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}:is(#createCalendarDialog,#calendarEditDialog) .switch-ui{position:absolute;inset:0;background:#aab4c3;border-radius:20px;pointer-events:none;transition:.15s}:is(#createCalendarDialog,#calendarEditDialog) .switch-ui:after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:white;box-shadow:0 1px 3px #0003;transition:.15s}:is(#createCalendarDialog,#calendarEditDialog) .setting-switch input:checked+.switch-ui{background:#23a45b}:is(#createCalendarDialog,#calendarEditDialog) .setting-switch input:checked+.switch-ui:after{transform:translateX(18px)}:is(#createCalendarDialog,#calendarEditDialog) .invite-setting{grid-template-columns:1fr auto}:is(#createCalendarDialog,#calendarEditDialog) .invite-setting small{display:block;margin-top:3px}:is(#createCalendarDialog,#calendarEditDialog) .invite-setting .secondary{font-size:12px;padding:8px 10px;min-height:38px;white-space:nowrap}@media(max-width:680px){:is(#createCalendarDialog,#calendarEditDialog) .calendar-settings-card{margin-left:18px;margin-right:18px}:is(#createCalendarDialog,#calendarEditDialog) .create-name-field{padding-left:18px;padding-right:18px}:is(#createCalendarDialog,#calendarEditDialog) .calendar-colors{padding-left:18px;padding-right:18px}:is(#createCalendarDialog,#calendarEditDialog) .demo-note{margin-left:18px;margin-right:18px}:is(#createCalendarDialog,#calendarEditDialog) .calendar-setting-row{grid-template-columns:minmax(88px,1fr) auto}:is(#createCalendarDialog,#calendarEditDialog) .invite-setting{grid-template-columns:1fr auto}}

.calendar-invite-panel{border-top:1px solid var(--line);padding:14px 16px 16px;background:#fff}.calendar-invite-panel h3{font-size:15px;margin:0 0 4px}.calendar-invite-panel .hint{margin:0 0 10px;font-size:12px}.share-link-button{width:100%;min-height:48px;border:1px solid #edc4a8;border-radius:12px;background:#fff0e6;color:#a34b26;font-size:14px;font-weight:800}.invite-share-options{display:flex;gap:8px;margin:9px 0;flex-wrap:wrap}.invite-share-options button{min-height:40px}.inline-invite-form{display:grid;grid-template-columns:minmax(0,1fr) 130px auto;align-items:end;gap:8px;margin-top:10px}.inline-invite-form label{display:grid;gap:5px;font-size:12px;font-weight:700;color:var(--ink)}.inline-invite-form input,.inline-invite-form select{min-width:0;width:100%;height:40px;border:1px solid var(--line);border-radius:8px;padding:8px;font:inherit}.inline-invite-form button{min-height:40px;white-space:nowrap}.inline-invite-status{min-height:16px;font-size:12px;color:var(--muted);margin:7px 0 0}.calendar-invite-panel .invitebox{margin:8px 0 0}@media(max-width:520px){.calendar-invite-panel{padding:13px 12px}.inline-invite-form{grid-template-columns:1fr 1fr}.inline-invite-form label:first-child{grid-column:1/-1}.inline-invite-form button{grid-column:1/-1;width:100%}.invite-share-options button{flex:1}}

.sync-calendar-dialog{min-width:min(92vw,540px);max-width:560px}.sync-intro{text-align:center;color:var(--muted);font-size:16px;line-height:1.45;margin:0 8px 18px}.sync-provider-list{display:grid;gap:10px}.sync-provider{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:16px;padding:13px}.sync-provider-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;font-weight:850;font-size:20px}.sync-provider-icon.google{background:#e8f0fe;color:#4285f4}.sync-provider-icon.outlook{background:#e7f4fd;color:#0078d4}.sync-provider-icon.apple{background:#f1f2f5;color:#dc3545}.sync-provider b,.sync-provider small{display:block}.sync-provider small{color:var(--muted);line-height:1.3;margin-top:3px}.sync-provider button,.sync-feed-row button{border:0;background:transparent;color:#2167cf;font-weight:800;padding:8px;white-space:nowrap}.sync-feed-row{display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap;margin:14px 0 0;color:var(--muted)}.sync-status{font-size:12px;color:var(--muted);text-align:center;min-height:16px;margin:7px 0 0}.event-location-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:8px 0 14px;background:#fff}.event-location-text{padding:13px 14px;display:grid;gap:5px}.event-location-text span{color:var(--muted)}.event-map-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px;border-top:1px solid var(--line)}.event-map-actions a{display:flex;align-items:center;justify-content:center;min-height:46px;text-decoration:none;font-weight:750}

.all-event-card[role="button"]{cursor:pointer}.all-event-card[role="button"]:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
/* Keep the four calendar actions on one compact row on narrow phones. */
@media(max-width:680px){.calendar-card-actions{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:4px!important;padding:7px 8px!important;flex-wrap:nowrap!important}.calendar-card-actions button{min-width:0!important;width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important;padding:6px 2px!important;min-height:38px!important;font-size:clamp(8px,2.55vw,11px)!important;line-height:1.1!important;border-radius:8px!important}}

@media(max-width:680px){.calendar-card-actions{display:flex!important;flex-wrap:nowrap!important;gap:6px!important;padding:7px 10px!important}.calendar-card-actions button{flex:1 1 0!important;min-width:0!important;white-space:nowrap!important;padding:7px 8px!important;font-size:11px!important}}.calendar-detail-actions{justify-content:flex-start;margin:8px 0}.calendar-detail-actions button{padding:9px 16px}

.calendar-card-actions .calendar-member-icon{display:inline-flex;align-items:center;justify-content:center;gap:3px;flex:0 0 auto;min-width:36px;padding:4px 6px;border-radius:8px;font-size:12px;background:transparent;color:#14796f}.calendar-card-actions .calendar-member-icon span{font-size:11px;font-weight:800}
@media(max-width:680px){.calendar-card-actions{display:flex!important;flex-wrap:nowrap!important;gap:8px!important}.calendar-card-actions button{white-space:nowrap!important}.calendar-card-actions .calendar-member-icon{flex:0 0 auto;width:auto;min-width:36px;padding:4px 6px;font-size:13px}}
.calendar-card-stats button.calendar-member-icon{border:0;background:transparent;padding:0;color:inherit;font:inherit;display:inline-flex;align-items:center;gap:3px;cursor:pointer}

/* Compact actions outside; details carry member/invite/sync options. */
.calendar-card-actions:not(.calendar-detail-actions){display:flex!important;align-items:center;justify-content:flex-start!important;flex-wrap:nowrap!important;gap:6px!important;padding:7px 12px!important}.calendar-card-actions:not(.calendar-detail-actions) button{flex:0 0 auto!important;width:auto!important;min-height:34px!important;padding:5px 10px!important;white-space:nowrap!important;font-size:11px!important}.calendar-card-stats .calendar-member-icon{margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important;min-height:0!important;font-size:13px!important;color:#6b7789!important}

/* MEP compact card actions and calendar invite controls. */
.calendar-card-actions:not(.calendar-detail-actions){display:flex!important;justify-content:flex-start!important;flex-wrap:nowrap!important}.calendar-card-actions:not(.calendar-detail-actions)>button[data-card-action="pin"]{display:inline-flex!important;flex:0 0 auto!important;width:auto!important;max-width:max-content!important;min-width:0!important;padding:5px 10px!important}.calendar-detail-invite{border:1px solid var(--line);border-radius:12px;background:#fff;padding:14px;margin:10px 0}.calendar-detail-invite h3{font-size:15px;margin:0 0 5px}.calendar-invite-methods{display:grid;grid-template-columns:1fr 1fr;gap:8px}.calendar-invite-methods button{min-height:42px}.calendar-detail-actions{flex-wrap:nowrap!important}

@media(max-width:680px){.calendar-card-actions:not(.calendar-detail-actions)>button[data-card-action="pin"]{flex:0 0 auto!important;width:auto!important;display:inline-flex!important;padding:5px 10px!important}}.calendar-detail-invite{border:1px solid var(--line);border-radius:12px;background:#fff;padding:14px;margin:10px 0}.calendar-detail-invite h3{font-size:15px;margin:0 0 5px}.calendar-invite-methods{display:grid;grid-template-columns:1fr 1fr;gap:8px}.calendar-invite-methods button{min-height:42px}

/* Dedicated calendar page and inline controls */
.calendar-page{max-width:900px;margin:0 auto;padding:14px 16px 90px}.calendar-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:10px 0 18px}.calendar-page-header h1{font-size:24px;margin:4px 0}.calendar-page-stats{color:var(--muted);font-size:13px}.calendar-page-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0}.calendar-page-actions button{min-height:42px}.calendar-page-panel{padding:14px;margin:10px 0;border:1px solid var(--line);border-radius:12px;background:#fff}.calendar-page-panel h2{font-size:17px;margin:0 0 10px}.calendar-page-events{display:grid;gap:8px}.calendar-page-event{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:12px;text-align:left;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}.calendar-page-event small{display:block;color:var(--muted);margin-top:3px}.calendar-page .calendar-invite-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.calendar-page .field{display:block;margin:10px 0}.calendar-page .field input{width:100%;min-height:42px;border:1px solid var(--line);border-radius:9px;padding:10px;font:inherit}.calendar-page-back{margin:0 0 8px}@media(max-width:600px){.calendar-page{padding:10px 12px 90px}.calendar-page-header h1{font-size:21px}.calendar-page-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Dedicated per-calendar page: keeps actions and month view under the selected calendar. */
.calendar-page{max-width:900px;margin:0 auto;padding:12px 16px 18px}.calendar-page-back{margin:8px 0 12px}.calendar-page-card{margin:8px 0 12px}.calendar-page-card h1{margin:0 0 5px;font-size:22px}.calendar-page-stats{font-size:13px;color:var(--muted)}.calendar-page-events{margin:10px 0;padding:14px}.calendar-page-events h2,.calendar-page-panel h2,.calendar-page-fullcalendar h2{font-size:17px;margin:0 0 10px}.calendar-page-event{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:11px 10px;margin:5px 0;text-align:left;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}.calendar-page-event small{display:block;color:var(--muted);margin-top:4px}.calendar-page-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.calendar-page-actions button{min-height:42px}.calendar-page-panel{margin:10px 0;padding:14px}.calendar-page-panel .field{display:block;margin:10px 0}.calendar-page-panel .field input{width:100%;min-height:42px;border:1px solid var(--line);border-radius:9px;padding:10px;font:inherit}.calendar-page-panel .calendar-invite-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.calendar-page-add{width:100%;min-height:44px;margin:8px 0}.calendar-page-fullcalendar{margin:12px 0 4px;padding:10px 14px}.calendar-page-fullcalendar h2{margin-bottom:0}.calendar-page~.homeOnly{max-width:900px;margin:0 auto}@media(max-width:600px){.calendar-page{padding:10px 12px 14px}.calendar-page-card h1{font-size:20px}.calendar-page-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
.calendar-page-grid-mount{margin-top:10px}.calendar-page-grid-mount #calendarToolbar{margin:10px 0;padding:14px;border-radius:14px;background:#fff;border:1px solid var(--line)}.calendar-page-grid-mount .date-range-controls{margin:8px 0}.calendar-page-grid-mount #calendarGridView{margin:8px 0 16px}
/* Event cards: clear date badge, calendar color, and consistent spacing. */
.calendar-page-event{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr) 18px;align-items:center;gap:12px;width:100%;min-height:78px;padding:10px 12px;margin:8px 0;text-align:left;border:1px solid #e5e9f1;border-left:4px solid var(--cal-color,#7354d1);border-radius:13px;background:linear-gradient(100deg,color-mix(in srgb,var(--cal-color,#7354d1) 6%,#fff),#fff 42%);box-shadow:0 2px 8px #1d2b4110;color:var(--ink);font:inherit}.calendar-page-event:before{content:attr(data-month);display:none}.calendar-page-event .event-date-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:54px;border-radius:10px;background:var(--cal-color,#7354d1);color:white;font-weight:800;line-height:1.1}.calendar-page-event .event-date-badge small{font-size:9px;color:#fff;opacity:.9;margin:0 0 4px;text-transform:uppercase}.calendar-page-event .event-date-badge strong{font-size:20px}.calendar-page-event .event-main{min-width:0}.calendar-page-event .event-main b{display:block;font-size:14px;line-height:1.25}.calendar-page-event .event-main small{display:block;color:#707b8d;font-size:11px;line-height:1.4;margin-top:5px}.calendar-page-event .event-chevron{color:var(--cal-color,#7354d1);font-size:19px}.calendar-page-events h2{display:flex;align-items:center;gap:8px}.calendar-page-events h2:before{content:'▦';display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:color-mix(in srgb,var(--cal-color,#7354d1) 11%,white);color:var(--cal-color,#7354d1)}.calendar-page-fullcalendar{scroll-margin-top:12px}.calendar-page-grid-mount .day.has-event{--day-event-color:var(--cal-color,#7354d1)}

/* Compact the embedded full-calendar box so its controls and month grid fit together. */
.calendar-page-fullcalendar{padding:10px!important;margin:8px 0!important}.calendar-page-fullcalendar h2{margin:0 0 6px!important}.calendar-page-grid-mount{margin-top:0!important}.calendar-page-grid-mount #calendarToolbar{padding:7px!important;margin:0 0 4px!important;gap:4px!important;border-radius:10px!important}.calendar-page-grid-mount .home-control-row button,.calendar-page-grid-mount .home-control-row select{height:34px!important;min-height:34px!important}.calendar-page-grid-mount .month-controls button:not(.today){width:30px!important;height:30px!important}.calendar-page-grid-mount .month-controls strong{font-size:14px!important}.calendar-page-grid-mount .today{min-height:30px!important;padding:5px 8px!important}.calendar-page-grid-mount .date-range-controls{margin:3px 0 5px!important;gap:4px!important}.calendar-page-grid-mount .date-range-controls input,.calendar-page-grid-mount .date-range-controls select{height:28px!important;font-size:10px!important;padding:3px 5px!important}.calendar-page-grid-mount #calendarGridView{margin:0!important;min-height:0!important;height:auto!important;box-shadow:none!important;border:1px solid var(--line)!important;border-radius:10px!important;overflow:hidden!important}.calendar-page-grid-mount #calendarGridView.calendar{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;grid-auto-rows:auto!important}.calendar-page-grid-mount #calendarGridView .weekday{padding:5px 1px!important;font-size:9px!important}.calendar-page-grid-mount #calendarGridView .day{min-height:40px!important;height:auto!important;padding:2px!important}.calendar-page-grid-mount #calendarGridView .date{width:21px!important;height:21px!important;font-size:10px!important}.calendar-page-grid-mount #calendarGridView .tiny-hebrew{font-size:7px!important;line-height:1!important}.calendar-page-grid-mount #calendarGridView .tiny-parsha{font-size:6px!important;line-height:1!important}.calendar-page-grid-mount #calendarGridView .event{font-size:7px!important;padding:2px!important;margin-top:2px!important;line-height:1.1!important}.calendar-page-grid-mount #buildStamp{display:none!important}
.calendar-page-card .calendar-page-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:14px 0 0}.calendar-page-card .calendar-page-actions button{min-height:38px;padding:7px 6px;font-size:12px}@media(max-width:600px){.calendar-page-card .calendar-page-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.calendar-page-card .calendar-page-actions button{min-height:36px}}

/* Multi-month view stays readable on phones: each month uses full width, not a compressed row. */
@media(max-width:680px){.calendar-page-grid-host #calendarGridView.three-month-view{display:block!important;grid-template-columns:minmax(0,1fr)!important;overflow:visible!important}.calendar-page-grid-host .three-month-view>.mini-month{width:100%!important;box-sizing:border-box;margin:0 0 14px;padding:12px}.mini-month h3{font-size:18px;margin-bottom:10px}.mini-weekdays b{font-size:12px;padding:7px 2px}.mini-day{height:42px;font-size:14px}.calendar-page-grid-host .mini-month{display:block!important}}

/* Keep page actions together in the calendar header; the month controls retain only the calendar selector. */
.calendar-page .calendar-page-grid-mount .home-control-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
.calendar-page .calendar-page-grid-mount .home-control-row #gridCreateCalendar,.calendar-page .calendar-page-grid-mount .home-control-row #gridAddEvent{display:none!important}
.calendar-page-card .calendar-page-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:600px){.calendar-page-card .calendar-page-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Vivid action colors and mobile-safe, inline expandable panels. */
.calendar-page-card .calendar-page-actions [data-page-panel="invite"]{background:linear-gradient(135deg,#f59e0b,#e56b16)!important;color:#fff!important;border-color:#d65c12!important;box-shadow:0 2px 7px #df6b1733!important}.calendar-page-card .calendar-page-actions [data-page-panel="members"]{background:linear-gradient(135deg,#536fe0,#344fc0)!important;color:#fff!important;border-color:#344fc0!important;box-shadow:0 2px 7px #344fc033!important}.calendar-page-card .calendar-page-actions [aria-expanded="true"]{outline:2px solid #fff!important;outline-offset:-4px!important}.calendar-page-card .calendar-page-panel{margin:10px 0 0!important;padding:14px!important;scroll-margin:12px}.calendar-page-card .calendar-page-panel[hidden]{display:none!important}.calendar-page-card .calendar-page-panel .calendar-invite-methods button{min-height:42px}

/* Dedicated page must completely replace the card list, even under mobile visibility overrides. */
#calendarPage:not([hidden])~#groupCalendarsScreen,#calendarPage:not([hidden]){isolation:isolate}
#calendarPage:not([hidden])~.homeOnly{visibility:hidden!important;pointer-events:none!important}
.calendar-page-card .calendar-page-actions [data-page-panel="invite"]{background:linear-gradient(135deg,#ffad33,#ef6b18)!important;color:#fff!important;border-color:#d35d12!important}.calendar-page-card .calendar-page-actions [data-page-panel="members"]{background:linear-gradient(135deg,#7656db,#4c3db7)!important;color:#fff!important;border-color:#4c3db7!important}

/* Tight calendar header: title left, event/member counts aligned right, actions below. */
.calendar-page-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;column-gap:12px!important;row-gap:4px!important;padding:14px 16px!important}.calendar-page-card>.eyebrow,.calendar-page-card>.hint,.calendar-page-card>.calendar-page-actions,.calendar-page-card>.calendar-page-panel{grid-column:1/-1!important}.calendar-page-card>.eyebrow{margin:0!important;line-height:1.2!important}.calendar-page-card>h1{grid-column:1!important;align-self:center!important;margin:0!important}.calendar-page-card>.calendar-page-stats{grid-column:2!important;grid-row:2!important;align-self:center!important;white-space:nowrap!important;text-align:right!important}.calendar-page-card>.hint{margin:0!important}.calendar-page-card .calendar-page-actions{margin:8px 0 0!important}@media(max-width:600px){.calendar-page-card{padding:13px 14px!important;column-gap:6px!important}.calendar-page-card>.calendar-page-stats{font-size:11px!important}.calendar-page-card h1{font-size:20px!important}}

/* See All Groups Events: larger type, richer calendar-color event cards. */
.all-events-sheet{padding:20px 18px 32px!important}.all-events-title h2{font-size:20px!important;line-height:1.25!important}.all-events-sheet>p{font-size:14px!important;line-height:1.45!important;margin:8px 0 16px!important}.all-filter-label{font-size:13px!important;gap:6px!important}.all-filter-label select{font-size:15px!important;min-height:44px!important}.all-search{height:46px!important}.all-search input{font-size:15px!important}.all-events-controls button{font-size:13px!important;padding:9px 11px!important}.all-groups-events-list{gap:11px!important}.all-event-card{grid-template-columns:54px 12px minmax(0,1fr) 20px!important;gap:10px!important;padding:12px!important;border:1px solid color-mix(in srgb,var(--event-color) 25%,#e7e9ee)!important;border-left:5px solid var(--event-color)!important;border-radius:14px!important;background:linear-gradient(100deg,color-mix(in srgb,var(--event-color) 9%,white),#fff 58%)!important;box-shadow:0 3px 10px color-mix(in srgb,var(--event-color) 12%,transparent)!important}.all-event-date{background:var(--event-color)!important;color:#fff!important;border-radius:10px!important;padding:8px 4px!important;font-size:11px!important;font-weight:800!important}.all-event-date b{font-size:20px!important;line-height:1.2!important}.all-event-dot{width:10px!important;height:10px!important}.all-event-card b{font-size:16px!important;line-height:1.3!important}.all-event-card small{font-size:13px!important;line-height:1.4!important;margin-top:5px!important}.all-event-card>span:last-child{color:var(--event-color)!important;font-size:22px!important}
@media(max-width:600px){.all-events-sheet{padding:18px 14px 28px!important}.all-event-card{grid-template-columns:50px 10px minmax(0,1fr) 18px!important;gap:8px!important;padding:10px!important}.all-event-card b{font-size:15px!important}.all-event-card small{font-size:12px!important}}

/* Full-color calendar header actions: one distinct tone per action. */
.calendar-page-card{background:linear-gradient(140deg,#fff 35%,#f6f8ff)!important;border-color:#d9dfef!important}.calendar-page-card .calendar-page-actions [data-page-create-calendar]{background:linear-gradient(135deg,#16a38e,#087c78)!important;color:#fff!important;border-color:#087c78!important;box-shadow:0 3px 9px #087c7838!important}.calendar-page-card .calendar-page-actions [data-page-add]{background:linear-gradient(135deg,#3f7cf0,#2452c7)!important;color:#fff!important;border-color:#2452c7!important;box-shadow:0 3px 9px #2452c738!important}.calendar-page-card .calendar-page-actions [data-page-panel="invite"]{background:linear-gradient(135deg,#ffad33,#ef6b18)!important;color:#fff!important;border-color:#d35d12!important;box-shadow:0 3px 9px #e76b1838!important}.calendar-page-card .calendar-page-actions [data-page-panel="sync"]{background:linear-gradient(135deg,#32ad72,#17834e)!important;color:#fff!important;border-color:#17834e!important;box-shadow:0 3px 9px #17834e38!important}.calendar-page-card .calendar-page-actions [data-page-panel="members"]{background:linear-gradient(135deg,#8760e8,#5940bd)!important;color:#fff!important;border-color:#5940bd!important;box-shadow:0 3px 9px #5940bd38!important}

/* Standout outer Group Calendars Summary card, clearly distinct from individual calendars. */
.group-summary{background:linear-gradient(115deg,#9aafe3,#bdc9ef 56%,#b2a4d9)!important;color:#263758!important;border:1px solid #8e9fca!important;box-shadow:0 5px 14px #7488bd33!important;min-height:94px!important}.group-summary b{color:#263758!important;font-size:17px!important}.group-summary small{color:#3f5276!important;font-size:13px!important}.summary-tile{background:#ffffff80!important;color:#536b9e!important;box-shadow:inset 0 0 0 1px #ffffffb0!important}

.event-sort-controls{display:flex;gap:8px;align-items:center}.event-sort-controls button{white-space:nowrap}.all-events-controls .event-sort-controls{margin-left:auto}@media(max-width:420px){.all-events-controls{gap:6px}.event-sort-controls{gap:5px}.event-sort-controls button{padding:8px 6px!important;font-size:12px!important}}

.event-comments{margin:18px 0;padding:14px;border:1px solid #e5e9f1;border-radius:12px;background:#fafbfe}.event-comments h3{margin:0 0 10px;font-size:16px}.event-comment{padding:10px 0;border-bottom:1px solid #e9edf3}.event-comment:last-child{border-bottom:0}.event-comment p{margin:4px 0 0;white-space:pre-wrap}.event-comment-list>.empty{margin:4px 0 10px}.event-comments textarea{width:100%;min-height:72px;resize:vertical}.calendar-page-old-events{min-height:40px;margin:0 0 8px;padding:8px 12px;border:1px solid #d9dfea;border-radius:9px;background:#f7f8fc;color:#48566c;font-weight:700}

.calendar-page-old-events{min-height:40px;margin:0 0 8px;padding:8px 12px;border:1px solid #d9dfea;border-radius:9px;background:#f7f8fc;color:#48566c;font-weight:700}
.event-comments{margin:18px 0;padding:14px;border:1px solid #e5e9f1;border-radius:12px;background:#fafbfe}.event-comments h3{margin:0 0 10px;font-size:16px}.event-comment{padding:10px 0;border-bottom:1px solid #e9edf3}.event-comment:last-child{border-bottom:0}.event-comment p{margin:4px 0 0;white-space:pre-wrap}.event-comment-list>.empty{margin:4px 0 10px}.event-comments textarea{width:100%;min-height:72px;resize:vertical}

/* Clear card boundaries across home, events, and per-calendar views. */
.calendar-home-card{border:1.5px solid #8998ad!important;box-shadow:0 2px 8px #24324a12!important}.all-event-card{border:1px solid #8d9db3!important;box-shadow:0 2px 8px #1d2b4112!important}.calendar-page-panel{border:1px solid #8d9db3!important}.calendar-page-event{border:1px solid #8b9bb2!important;box-shadow:0 2px 7px #1d2b410c!important}.calendar-page-card{border:1px solid #899ab3!important}.calendar{border:1px solid #8b9bb2!important;box-shadow:0 2px 8px #24324a10!important}



.calendar-page-top-actions{display:flex;align-items:center;gap:8px;max-width:900px;margin:8px auto 10px;padding:0 16px}.calendar-page-top-actions button{min-height:40px}.calendar-page-create{color:#087c78!important;background:linear-gradient(135deg,#e6f6f3,#d8f0eb)!important;border:1px solid #0d9186!important;font-weight:750!important}.calendar-page-back{margin:0!important}@media(max-width:600px){.calendar-page-top-actions{padding:0 12px}.calendar-page-top-actions button{flex:0 0 auto}}

/* Distinct top-page navigation action on calendar detail. */
.calendar-page-top-actions .calendar-page-back{color:#334155!important;background:linear-gradient(135deg,#e8edf4,#dce4ef)!important;border:1px solid #75869c!important;font-weight:750!important;box-shadow:0 2px 6px #24324a1f!important}

.calendar-page-card .calendar-page-actions [data-page-settings]{background:linear-gradient(135deg,#57677e,#38465b)!important;color:#fff!important;border-color:#38465b!important;box-shadow:0 3px 9px #38465b38!important}

.calendar-admin-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:7px;padding:3px 7px;border-radius:999px;background:#e9f4ef;color:#22734e;border:1px solid #9ccab0;font-size:10px;font-weight:800;line-height:1.2;vertical-align:middle;letter-spacing:.2px}.calendar-card-heading>.calendar-admin-badge{flex:0 0 auto}

/* Give the Group Calendars Summary a distinct page-header treatment. */
#groupSummary.group-summary{margin-top:50px!important;min-height:106px!important;padding:18px 20px!important;grid-template-columns:44px minmax(0,1fr)!important;gap:14px!important;border:4px double #8b3fbf!important;border-radius:17px!important;background:linear-gradient(115deg,#fff 0%,#f7f0ff 100%)!important;box-shadow:0 6px 18px #63328330!important}
#groupSummary .summary-tile{width:42px!important;height:42px!important;border-radius:12px!important;background:#e6eefc!important;color:#2460d8!important;font-size:21px!important;box-shadow:none!important}
#groupSummary .summary-heading{display:block;min-width:0}
#groupSummary .summary-eyebrow{margin:0 0 4px!important;color:#2460d8!important;font-size:10px!important;font-weight:850!important;letter-spacing:1.15px!important;line-height:1.2}
#groupSummary .summary-heading b{font-size:18px!important;letter-spacing:-.25px;line-height:1.25}
#groupSummary .summary-heading #summaryCounts{margin-top:5px!important;color:#66748a!important;font-size:12px!important;line-height:1.25}
#groupSummary:hover{border-color:#6e2f9b!important;box-shadow:0 8px 20px #63328340!important}
@media(max-width:680px){#groupSummary.group-summary{margin-top:46px!important;min-height:104px!important;padding:16px 15px!important;grid-template-columns:40px minmax(0,1fr)!important;gap:12px!important}#groupSummary .summary-tile{width:38px!important;height:38px!important}#groupSummary .summary-heading b{font-size:17px!important}}

/* Promote All Calendars Summary to the home-page hero without changing its distinct double-purple outline. */
#groupSummary.group-summary{min-height:126px!important;padding:24px 24px!important;grid-template-columns:52px minmax(0,1fr)!important;gap:18px!important;border:4px double #8b3fbf!important;background:linear-gradient(112deg,#eee5f7 0%,#e4d5f1 48%,#f1e9f8 100%)!important;box-shadow:0 12px 30px #54257942,0 3px 10px #8142a52a!important}
#groupSummary .summary-tile{width:50px!important;height:50px!important;border-radius:15px!important;background:linear-gradient(145deg,#e3d5ff,#d8c4ff)!important;color:#5933a0!important;font-size:25px!important;box-shadow:0 3px 10px #6739aa25!important}
#groupSummary .summary-heading b{font-size:20px!important;letter-spacing:-.3px!important;line-height:1.25!important}
#groupSummary .summary-heading #summaryCounts{margin-top:7px!important;color:#594875!important;font-size:13px!important;line-height:1.35!important}
#groupSummary:hover{border-color:#702fa4!important;box-shadow:0 15px 34px #54257952,0 4px 12px #8142a538!important}
@media(max-width:680px){#groupSummary.group-summary{min-height:116px!important;padding:19px 17px!important;grid-template-columns:44px minmax(0,1fr)!important;gap:14px!important}#groupSummary .summary-tile{width:42px!important;height:42px!important}#groupSummary .summary-heading b{font-size:18px!important}}

/* Increase the breathing room between the All Calendars header and calendar list. */
#calendarCardsView>.section-label{margin-top:38px!important}

/* Desktop-only navigation and per-calendar actions. Keep phone layout below the 680px breakpoint unchanged. */
@media(min-width:681px){
  .appnav{position:static!important;inset:auto!important;display:flex!important;justify-content:flex-start!important;gap:10px!important;margin:0 auto 18px!important;padding:0 24px!important;max-width:1168px!important;background:transparent!important;border:0!important;box-shadow:none!important}
  .appnav button{flex:0 0 auto!important;min-width:110px!important;min-height:44px!important;flex-direction:row!important;gap:8px!important;padding:9px 16px!important;border:1px solid #e3e8f0!important;border-radius:10px!important;background:#fff!important;color:#526078!important;font-size:14px!important}
  .appnav button span:first-child{font-size:17px!important}
  .appnav button.active{background:#eeeaff!important;border-color:#d9d0ff!important;color:#6243c6!important}
  .calendar-page-card .calendar-page-actions{display:flex!important;flex-wrap:nowrap!important;gap:8px!important;width:100%!important;align-items:stretch!important}
  .calendar-page-card .calendar-page-actions button{flex:1 1 0!important;min-width:0!important;width:auto!important;white-space:nowrap!important;padding:8px 6px!important;font-size:12px!important}
  .calendar-page-card .calendar-page-actions [data-page-settings]{grid-column:auto!important;justify-self:auto!important;min-width:0!important;padding-left:6px!important;padding-right:6px!important}
}

/* Keep the standalone See All Events view readable on desktop instead of spanning the viewport. */
@media(min-width:900px){body.events-page-mode>.all-events-overlay{justify-content:center!important;align-items:flex-start!important}body.events-page-mode .all-events-sheet{width:min(100%,960px)!important;max-width:960px!important;margin:0 auto!important;min-height:100vh!important;padding:24px 28px!important}}

/* Compact notification-preference chips on home calendar cards. */
.calendar-notification-status{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:7px}
.notification-chip{display:inline-flex;align-items:center;gap:4px;min-height:21px;padding:2px 7px;border:1px solid;border-radius:999px;font-size:10px;font-weight:750;line-height:1.2;white-space:nowrap}
.notification-chip.is-on{color:#236b4c;background:#eaf6ef;border-color:#a9d6b8}
.notification-chip.is-off{color:#657186;background:#f3f5f8;border-color:#d8dee8}
@media(max-width:680px){.calendar-notification-status{gap:6px;margin-top:6px}.notification-chip{font-size:10px;min-height:34px;padding:6px 10px}}
@media(max-width:600px){.calendar-page-card .calendar-page-actions [data-page-settings]{grid-column:1 / -1!important;justify-self:center!important;width:auto!important;min-width:150px!important;padding-left:20px!important;padding-right:20px!important}}


/* Desktop-only spacious calendar detail and full-calendar preview (2026-10-12). Mobile rules remain untouched. */
@media(min-width:681px){
  main{max-width:1320px!important}
  .calendar-page{max-width:1240px!important}
  .calendar-page-top-actions{max-width:1240px!important}
  .calendar-page~.homeOnly{max-width:1240px!important}
  .calendar-page-card,.calendar-page-events,.calendar-page-fullcalendar{padding-left:24px!important;padding-right:24px!important}
  .calendar-page-fullcalendar{padding-top:18px!important;padding-bottom:22px!important}
  .calendar-page-fullcalendar h2{font-size:23px!important;margin:0 0 14px!important}
  .calendar-page-grid-mount{margin-top:10px!important}
  .calendar-page-grid-mount #calendarToolbar{padding:14px!important;margin:0 0 12px!important;gap:10px!important}
  .calendar-page-grid-mount .home-control-row button,.calendar-page-grid-mount .home-control-row select{height:44px!important;min-height:44px!important;font-size:14px!important}
  .calendar-page-grid-mount .month-controls button:not(.today){width:40px!important;height:40px!important}
  .calendar-page-grid-mount .month-controls strong{font-size:20px!important}
  .calendar-page-grid-mount .today{min-height:40px!important;padding:8px 12px!important;font-size:14px!important}
  .calendar-page-grid-mount .date-range-controls{margin:10px 0 12px!important;gap:10px!important}
  .calendar-page-grid-mount .date-range-controls input,.calendar-page-grid-mount .date-range-controls select{height:38px!important;font-size:13px!important;padding:6px 9px!important}
  .calendar-page-grid-mount #calendarGridView .weekday{padding:12px 5px!important;font-size:14px!important}
  .calendar-page-grid-mount #calendarGridView .day{min-height:118px!important;height:auto!important;padding:9px!important}
  .calendar-page-grid-mount #calendarGridView .date{width:34px!important;height:34px!important;font-size:17px!important}
  .calendar-page-grid-mount #calendarGridView .tiny-hebrew{font-size:12px!important;line-height:1.2!important}
  .calendar-page-grid-mount #calendarGridView .tiny-parsha{font-size:10px!important;line-height:1.2!important}
  .calendar-page-grid-mount #calendarGridView .event{font-size:11px!important;padding:5px 7px!important;margin-top:5px!important;line-height:1.25!important}
  .calendar-home-card .calendar-card-main{grid-template-columns:24px minmax(0,1fr)!important;gap:14px!important;padding:22px 24px 20px!important}
  .calendar-home-card .calendar-card-dot{width:18px!important;height:18px!important}
  .calendar-home-card .calendar-card-content{display:grid!important;grid-template-columns:minmax(250px,1.1fr) minmax(160px,.65fr) minmax(220px,1fr) minmax(180px,.8fr)!important;align-items:center!important;column-gap:20px!important;row-gap:6px!important}
  .calendar-home-card .calendar-card-heading{grid-column:1!important;grid-row:1!important;justify-content:flex-start!important;flex-wrap:wrap!important}
  .calendar-home-card .calendar-card-heading>b{font-size:20px!important}
  .calendar-home-card .calendar-card-tools{margin-left:auto!important}
  .calendar-home-card .calendar-card-stats{grid-column:2!important;grid-row:1!important;margin:0!important;font-size:15px!important;white-space:nowrap!important}
  .calendar-home-card .upcoming{grid-column:3!important;grid-row:1!important;margin:0!important;font-size:14px!important;line-height:1.4!important}
  .calendar-home-card .calendar-notification-status{grid-column:4!important;grid-row:1!important;justify-self:end!important;gap:8px!important;margin:0!important}
  .calendar-home-card .notification-chip{font-size:12px!important;min-height:28px!important;padding:4px 10px!important}
  .calendar-home-card .calendar-card-actions{padding:10px 20px!important}
}


/* Local preview: tappable per-calendar notification chips and a fuller desktop summary. */
.notification-chip{font-family:inherit;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}
.notification-chip:hover,.notification-chip:focus-visible{transform:translateY(-1px);box-shadow:0 0 0 2px #6951bf35;outline:none}
@media(min-width:681px){
  #groupSummary.group-summary{grid-template-columns:52px minmax(250px,.8fr) minmax(0,1.4fr)!important;align-items:center!important}
  #groupSummary .summary-metrics{display:grid;grid-template-columns:minmax(95px,.7fr) minmax(95px,.7fr) minmax(240px,1.8fr);gap:12px;align-items:stretch;min-width:0}
  #groupSummary .summary-metric{min-width:0;min-height:58px;display:flex;flex-direction:column;justify-content:center;padding:8px 14px;border-left:1px solid #8b69ae45}
  #groupSummary .summary-metric b{font-size:19px!important;color:#493474!important;line-height:1.18!important;overflow-wrap:anywhere}
  #groupSummary .summary-metric small{font-size:12px!important;color:#66577a!important;line-height:1.3!important;margin-top:4px!important}
  #groupSummary .summary-next b{font-size:16px!important}
}
@media(max-width:680px){#groupSummary .summary-metrics{display:none}dialog#calendarEditDialog[open]{position:fixed!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;max-height:calc(100dvh - 28px)!important;overflow-y:auto!important;overscroll-behavior:contain!important;margin:0!important}}
@media(max-width:680px){#calendarEditDialog[open]{position:fixed!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;max-height:calc(100dvh - 28px)!important;overflow-y:auto!important;overscroll-behavior:contain!important;margin:0!important}}


/* Desktop-only local preview: open event details in a right-side panel. Mobile behavior is unchanged. */
@media(min-width:681px){
  dialog#groupEventDialog[open]{position:fixed!important;inset:0 0 0 auto!important;margin:0!important;width:min(460px,40vw)!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;border-radius:18px 0 0 18px!important;overflow-y:auto!important;transform:none!important;box-shadow:-16px 0 44px #16223826!important;z-index:10050!important}
  dialog#groupEventDialog::backdrop{background:#17152b66!important}
  #cardEventDialog.plain-modal.is-open.desktop-sidepanel{align-items:stretch!important;justify-content:flex-end!important;padding:0!important;background:#17152b66!important;width:100vw!important;max-width:none!important}
  #cardEventDialog.desktop-sidepanel .plain-modal-panel{width:min(520px,44vw)!important;max-width:520px!important;height:100dvh!important;max-height:100dvh!important;margin-left:auto!important;border-radius:18px 0 0 18px!important;box-shadow:-16px 0 44px #16223826!important;animation:event-panel-in .22s ease-out both}
}
@keyframes event-panel-in{from{transform:translateX(28px);opacity:.9}to{transform:translateX(0);opacity:1}}


/* Three desktop-only gold + blue visual samples, shown locally for review. */
.theme-sample-picker{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:-20px 0 22px}
.theme-sample-picker>span{margin-right:auto;font-size:10px;font-weight:850;letter-spacing:1.2px;color:#68778c}
.theme-sample-picker button{min-height:36px;padding:7px 12px;border:1px solid #d7dfec;border-radius:999px;background:#fff;color:#294264;font:700 12px/1.2 inherit;cursor:pointer}
.theme-sample-picker button[aria-pressed=true]{border-color:#315eb0;background:#ecf2ff;color:#173e81;box-shadow:0 0 0 2px #d4e0ff}
@media(max-width:680px){.theme-sample-picker{display:none!important}}
@media(min-width:681px){
 body[data-theme-sample=yu]{--brand:#1554a5;--ink:#153353;--muted:#64768b;--line:#d5e0ed;--canvas:#edf4fb;background:#edf4fb;color:#153353}
 body[data-theme-sample=yu] .top{border-bottom-color:#d9e5f1}
 body[data-theme-sample=yu] .brandmark{background:#1a5cac;color:#ffd65c}
 body[data-theme-sample=yu] .appnav button.active,body[data-theme-sample=yu] .steps span.active,body[data-theme-sample=yu] .badge{background:#e4efff!important;border-color:#c7dcfa!important;color:#144c91!important}
 body[data-theme-sample=yu] .primary{background:#195bb1!important;color:#fff!important;box-shadow:0 4px 12px #1a5cae30!important}
 body[data-theme-sample=yu] .eyebrow,body[data-theme-sample=yu] .section-label{color:#1a5cae!important}
 body[data-theme-sample=yu] .calendar{box-shadow:0 8px 24px #163a6020}
 body[data-theme-sample=yu] .day.today .date{background:#ddb63f!important;color:#193353!important}
 body[data-theme-sample=yu] .event{background:#eaf2fc!important;border-left-color:#1b5eaa!important;color:#214b78!important}
 body[data-theme-sample=yu] .group-summary{background:linear-gradient(105deg,#fff8e6,#eaf3fc)!important;border-color:#e6cf89!important}
 body[data-theme-sample=yu] .calendar-home-card{border-color:#d1dfef!important}
 body[data-theme-sample=yu] .calendar-home-card .calendar-card-dot{box-shadow:0 0 0 4px #f0f5fa}
 body[data-theme-sample=yu] .notification-chip.is-on{background:#fff5d9!important;border-color:#e5cc77!important;color:#674c0d!important}
 body[data-theme-sample=lufthansa]{--brand:#073b78;--ink:#132e4a;--muted:#6e7a88;--line:#dbe3eb;--canvas:#f3f6f9;background:#f3f6f9;color:#132e4a}
 body[data-theme-sample=lufthansa] .top{background:#082b50!important;border-bottom-color:#082b50!important;color:#fff!important}
 body[data-theme-sample=lufthansa] .top .brand,body[data-theme-sample=lufthansa] .top .brand small{color:#fff!important}
 body[data-theme-sample=lufthansa] .brandmark{background:#fff!important;color:#092e55!important}
 body[data-theme-sample=lufthansa] .primary{background:#e5ad36!important;color:#172f4b!important;box-shadow:none!important}
 body[data-theme-sample=lufthansa] .appnav button.active{background:#e7eef6!important;color:#073b78!important;border-color:#ccd9e6!important}
 body[data-theme-sample=lufthansa] .eyebrow,body[data-theme-sample=lufthansa] .section-label{color:#234e79!important}
 body[data-theme-sample=lufthansa] .day.today .date{background:#e3ad3d!important;color:#19314b!important}
 body[data-theme-sample=lufthansa] .event{background:#e9f1f8!important;border-left-color:#174b7a!important;color:#1b466c!important}
 body[data-theme-sample=lufthansa] .group-summary{background:linear-gradient(110deg,#fff9eb,#eef3f8)!important;border-color:#d9bf83!important}
 body[data-theme-sample=lufthansa] .notification-chip.is-on{background:#fff4da!important;border-color:#e4ca88!important;color:#664b12!important}
 body[data-theme-sample=lufthansa] .calendar-home-card{border-color:#d5dee8!important}
 body[data-theme-sample=michigan]{--brand:#00274c;--ink:#00274c;--muted:#67798b;--line:#d1dce6;--canvas:#eff3f6;background:#eff3f6;color:#00274c}
 body[data-theme-sample=michigan] .top{background:#00274c!important;border-bottom-color:#00274c!important;color:#fff!important}
 body[data-theme-sample=michigan] .top .brand,body[data-theme-sample=michigan] .top .brand small{color:#fff!important}
 body[data-theme-sample=michigan] .brandmark{background:#ffcb05!important;color:#00274c!important}
 body[data-theme-sample=michigan] .primary{background:#00274c!important;color:#fff!important;box-shadow:none!important}
 body[data-theme-sample=michigan] .appnav button.active{background:#ffcb05!important;color:#00274c!important;border-color:#e9b700!important}
 body[data-theme-sample=michigan] .eyebrow,body[data-theme-sample=michigan] .section-label{color:#00274c!important}
 body[data-theme-sample=michigan] .day.today .date{background:#ffcb05!important;color:#00274c!important}
 body[data-theme-sample=michigan] .event{background:#e5edf4!important;border-left-color:#00274c!important;color:#00274c!important}
 body[data-theme-sample=michigan] .group-summary{background:linear-gradient(110deg,#ffcb05,#f5d76c)!important;border-color:#00274c!important}
 body[data-theme-sample=michigan] .summary-metric{border-left-color:#00274c55!important}
 body[data-theme-sample=michigan] .calendar-home-card{border-color:#bdcbd7!important}
 body[data-theme-sample=michigan] .notification-chip.is-on{background:#fff4c7!important;border-color:#e8bd19!important;color:#314b66!important}
}
/* Palette cohesion overrides for the sample-specific card styles. */
@media(min-width:681px){
 body[data-theme-sample=yu] #groupSummary.group-summary{border:3px solid #d5b854!important;background:linear-gradient(105deg,#fff7dc,#eaf3fc)!important;box-shadow:0 8px 20px #1b4b801c!important}
 body[data-theme-sample=yu] #groupSummary .summary-tile{background:#e6eefb!important;color:#14529b!important}
 body[data-theme-sample=yu] #groupSummary .summary-heading b{color:#143b64!important}
 body[data-theme-sample=yu] #groupSummary #summaryCounts,body[data-theme-sample=yu] #groupSummary .summary-metric small{color:#5c6d7f!important}
 body[data-theme-sample=yu] #groupSummary .summary-metric b{color:#173f6b!important}
 body[data-theme-sample=yu] #createCalendarFromHome{color:#155b73!important;border-color:#72b8c4!important;background:#e9f5f7!important}
 body[data-theme-sample=lufthansa] #groupSummary.group-summary{border:1px solid #cbb579!important;background:linear-gradient(105deg,#fff8e7,#edf3f8)!important;box-shadow:0 8px 20px #102e4b12!important}
 body[data-theme-sample=lufthansa] #groupSummary .summary-tile{background:#e6edf4!important;color:#173e68!important}
 body[data-theme-sample=lufthansa] #groupSummary .summary-heading b,body[data-theme-sample=lufthansa] #groupSummary .summary-metric b{color:#153b61!important}
 body[data-theme-sample=lufthansa] #groupSummary #summaryCounts,body[data-theme-sample=lufthansa] #groupSummary .summary-metric small{color:#607184!important}
 body[data-theme-sample=lufthansa] #groupSummary .summary-metric{border-left-color:#234c7440!important}
 body[data-theme-sample=lufthansa] #createCalendarFromHome{color:#174b69!important;border-color:#a9bbc8!important;background:#eef4f7!important}
 body[data-theme-sample=michigan] #groupSummary.group-summary{border:3px solid #00274c!important;background:linear-gradient(105deg,#ffcb05,#f8df7d)!important;box-shadow:0 8px 20px #00274c24!important}
 body[data-theme-sample=michigan] #groupSummary .summary-tile{background:#00274c!important;color:#ffcb05!important}
 body[data-theme-sample=michigan] #groupSummary .summary-heading b,body[data-theme-sample=michigan] #groupSummary #summaryCounts,body[data-theme-sample=michigan] #groupSummary .summary-metric b,body[data-theme-sample=michigan] #groupSummary .summary-metric small{color:#00274c!important}
 body[data-theme-sample=michigan] #groupSummary .summary-metric{border-left-color:#00274c70!important}
 body[data-theme-sample=michigan] #createCalendarFromHome{color:#00274c!important;border-color:#00274c!important;background:#fff8dc!important}
}

/* Modern desktop polish for the three gold-and-blue comparison samples. */
@media(min-width:681px){
 body[data-theme-sample]{background:#f2f5f9!important;color:#172f4b!important}
 body[data-theme-sample] main{margin-top:30px!important;max-width:1360px!important}
 body[data-theme-sample] .top{height:68px!important;padding-left:max(calc((100vw - 1320px)/2),32px)!important;padding-right:max(calc((100vw - 1320px)/2),32px)!important}
 body[data-theme-sample] .brandmark{border-radius:12px!important}
 body[data-theme-sample] .welcome{margin-bottom:23px!important;align-items:center!important}
 body[data-theme-sample] .welcome h1{font-size:34px!important;letter-spacing:-1.2px!important}
 body[data-theme-sample] .welcome>div>p:not(.eyebrow){font-size:14px!important;color:#718094!important}
 body[data-theme-sample] .theme-sample-picker{margin:-6px 0 24px!important;padding:7px!important;justify-content:flex-start!important;gap:6px!important;border:1px solid #dfe6ed!important;border-radius:14px!important;background:#fff!important;box-shadow:0 3px 12px #172f4b09!important}
 body[data-theme-sample] .theme-sample-picker>span{padding:0 8px!important;color:#718094!important;font-size:9px!important}
 body[data-theme-sample] .theme-sample-picker button{min-height:34px!important;border:1px solid transparent!important;border-radius:9px!important;background:transparent!important;font-size:11px!important;color:#52677e!important;transition:background .16s,border-color .16s,box-shadow .16s!important}
 body[data-theme-sample] .theme-sample-picker button[aria-pressed=true]{border-color:#c8d7e6!important;background:#edf3f9!important;color:#163f71!important;box-shadow:none!important}
 body[data-theme-sample] .dashboard-actions{gap:12px!important;margin-bottom:15px!important}
 body[data-theme-sample] .dashboard-actions button{min-height:46px!important;border-radius:11px!important;box-shadow:none!important;font-size:14px!important;font-weight:750!important}
 body[data-theme-sample] #groupSummary.group-summary{min-height:116px!important;padding:20px 22px!important;border-radius:17px!important;box-shadow:0 5px 18px #18375412!important}
 body[data-theme-sample] #groupSummary .summary-tile{border-radius:13px!important;box-shadow:none!important}
 body[data-theme-sample] #groupSummary .summary-heading b{font-size:19px!important;letter-spacing:-.35px!important}
 body[data-theme-sample] .section-label{margin-top:28px!important;font-size:10px!important;letter-spacing:1.35px!important}
 body[data-theme-sample] .calendar-home-card{border-radius:15px!important;box-shadow:0 3px 12px #1837540c!important;transition:transform .16s ease,box-shadow .16s ease!important}
 body[data-theme-sample] .calendar-home-card:hover{transform:translateY(-2px)!important;box-shadow:0 8px 22px #18375416!important}
 body[data-theme-sample] .calendar-home-card .calendar-card-main{padding:20px 22px 19px!important}
 body[data-theme-sample] .calendar-home-card .calendar-card-heading>b{font-size:18px!important;letter-spacing:-.25px!important}
 body[data-theme-sample] .calendar-home-card .calendar-card-stats{font-size:14px!important;color:#63758a!important}
 body[data-theme-sample] .calendar-home-card .upcoming{font-size:13px!important;color:#5e7084!important}
 body[data-theme-sample] .calendar-home-card .notification-chip{min-height:30px!important;padding:5px 11px!important;border-radius:9px!important;font-size:11px!important;font-weight:750!important}
 body[data-theme-sample] .primary{border-radius:11px!important;font-weight:750!important}
 body[data-theme-sample] .secondary,body[data-theme-sample] .today{border-radius:10px!important}
 body[data-theme-sample] .calendar-home-card .calendar-card-dot{width:16px!important;height:16px!important;box-shadow:none!important}
 body[data-theme-sample=yu] .theme-sample-picker button[aria-pressed=true]{background:#e9f1fc!important;border-color:#bfd2eb!important;color:#174c8b!important}
 body[data-theme-sample=yu] #groupSummary.group-summary{border-radius:17px!important;background:linear-gradient(105deg,#fff7df 0%,#f6f8fa 45%,#e9f2fc 100%)!important}
 body[data-theme-sample=yu] #createCalendarFromHome{border-radius:11px!important}
 body[data-theme-sample=lufthansa] .theme-sample-picker button[aria-pressed=true]{background:#f1f4f7!important;border-color:#c9d2dc!important;color:#173e68!important}
 body[data-theme-sample=lufthansa] #groupSummary.group-summary{background:linear-gradient(105deg,#fff8e9 0%,#f7f8f8 45%,#eef3f8 100%)!important}
 body[data-theme-sample=michigan] .theme-sample-picker button[aria-pressed=true]{background:#fff4c7!important;border-color:#ebcd68!important;color:#173f64!important}
 body[data-theme-sample=michigan] #groupSummary.group-summary{background:linear-gradient(105deg,#ffcf27 0%,#f9df75 100%)!important}
 body[data-theme-sample=michigan] .calendar-home-card{border-color:#c6d2de!important}
}

/* Desktop-only invite-settings page/window preview in the selected Michigan-modern direction. */
.invite-settings-preview{display:none}
@media(min-width:681px){
 .show-invite-settings-preview .invite-settings-preview{display:flex!important;position:fixed;inset:0;z-index:1000000;align-items:stretch;justify-content:flex-end;padding:0;background:#071c3378}
 .invite-settings-dialog{width:min(620px,48vw);height:100dvh;overflow-y:auto;background:#f3f6f8;color:#00274c;box-shadow:-18px 0 52px #001d3928;border-left:1px solid #d8e1e8;display:flex;flex-direction:column}
 .invite-settings-head{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;gap:16px;padding:30px 32px 22px;background:#fff;border-bottom:1px solid #dde5ec}
 .invite-settings-back,.invite-settings-close{flex:0 0 auto;width:38px;height:38px;border:1px solid #d9e2ea;border-radius:11px;background:#fff;color:#00274c;font-size:21px;cursor:pointer}
 .invite-settings-title{min-width:0;flex:1}.invite-settings-title .eyebrow{color:#526a7e!important;font-size:10px;letter-spacing:1.25px;margin:2px 0 7px}
 .invite-settings-title h2{margin:0;font-size:25px;letter-spacing:-.65px;color:#00274c}
 .invite-settings-subtitle{margin:6px 0 0;color:#66788a;font-size:14px}
 .invite-settings-content{display:grid;gap:18px;padding:24px 30px;flex:1}
 .invite-settings-card,.invite-contact-card{padding:20px;background:#fff;border:1px solid #d8e1e9;border-radius:16px;box-shadow:0 4px 14px #05294a0b}
 .invite-link-title{display:flex;align-items:center;gap:12px;margin-bottom:18px}
 .invite-settings-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#ffcb05;color:#00274c;font-size:20px;font-weight:800}
 .invite-link-title b{display:block;color:#00274c;font-size:15px}.invite-link-title small{display:block;margin-top:4px;color:#6a7b8c;font-size:12px;line-height:1.45}
 .invite-link-field,.invite-input-label{display:grid;gap:7px;color:#173854;font-size:12px;font-weight:750}
 .invite-link-input{display:flex;align-items:center;min-width:0;gap:8px;padding:6px 7px 6px 12px;border:1px solid #d2dce5;border-radius:11px;background:#f9fbfc}
 .invite-link-input>span{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#5c7082;font-size:12px;font-weight:500}
 .invite-copy-button{height:36px;padding:0 13px;border:0;border-radius:9px;background:#00274c;color:#fff;font-size:12px;font-weight:750;white-space:nowrap}.invite-copy-button:disabled{opacity:.55;cursor:not-allowed}
 .invite-contact-card h3{margin:0;font-size:17px;letter-spacing:-.3px;color:#00274c}.invite-contact-card>p{margin:5px 0 16px;color:#6a7b8c;font-size:12px}
 .invite-input-label{margin:0 0 14px}.invite-input-label small{font-weight:500;color:#8392a0}
 .invite-input-label input{width:100%;height:44px;padding:0 12px;border:1px solid #d5dfe8;border-radius:10px;background:#fff;color:#173854;font:14px inherit}
 .invite-input-label input:focus{outline:3px solid #ffcb0545;border-color:#b88d00}
 .invite-share-label{margin:18px 0 8px!important;color:#788a9b!important;font-size:9px!important;font-weight:850;letter-spacing:1.2px}
 .invite-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
 .invite-method-grid button{min-height:52px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #d7e0e8;border-radius:11px;background:#fff;color:#14395c;font-size:12px;cursor:pointer}
 .invite-method-grid button:first-child{border-color:#d6b943;background:#fff9e2}.invite-method-grid button span{font-size:17px;color:#00274c}.invite-method-grid button:first-child span{color:#8a6800}
 .invite-safety-note{display:flex;gap:10px;padding:13px 15px;border:1px solid #ecd980;border-radius:12px;background:#fff9df;color:#694f00}
 .invite-safety-note>span{font-size:18px}.invite-safety-note p{display:grid;gap:3px;margin:0}.invite-safety-note b{font-size:12px}.invite-safety-note small{color:#776a46;font-size:11px;line-height:1.4}
 .invite-settings-footer{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:10px;padding:16px 30px 20px;border-top:1px solid #dde5ec;background:#fff}
 .invite-settings-footer button{min-width:100px;height:42px;border-radius:10px;font-size:13px;font-weight:750}
 .invite-settings-cancel{border:1px solid #d3dde6;background:#fff;color:#35516b}.invite-settings-done{border:1px solid #00274c;background:#00274c;color:#fff}
}
@media(max-width:680px){.show-invite-settings-preview .invite-settings-preview{display:none!important}}


/* Whole-app Michigan modern look. Desktop only; original mobile theme/layout stays untouched. */
@media(min-width:681px){
 body[data-theme-sample=michigan]{--brand:#00274c!important;--brand-dark:#001c36!important;--ink:#082e50!important;--muted:#687d91!important;--line:#d4dee8!important;--canvas:#f1f5f8!important;background:#f1f5f8!important;color:#082e50!important}
 body[data-theme-sample=michigan] .top{background:#00274c!important;border-bottom:1px solid #00274c!important;color:#fff!important}
 body[data-theme-sample=michigan] .top .brand,body[data-theme-sample=michigan] .top .brand small{color:#fff!important}
 body[data-theme-sample=michigan] .brandmark{background:#ffcb05!important;color:#00274c!important;border-radius:11px!important}
 body[data-theme-sample=michigan] .avatar{background:#ffcb05!important;color:#00274c!important}
 body[data-theme-sample=michigan] main{color:#082e50!important}
 body[data-theme-sample=michigan] .appnav button{border-color:#d7e0e8!important;color:#173c5e!important}
 body[data-theme-sample=michigan] .appnav button.active{background:#ffcb05!important;border-color:#e9bd22!important;color:#00274c!important}
 body[data-theme-sample=michigan] .primary,body[data-theme-sample=michigan] .dashboard-actions #homeAddEvent,body[data-theme-sample=michigan] .calendar-page-actions [data-page-add],body[data-theme-sample=michigan] .calendar-page-actions [data-page-create-calendar]{background:#00274c!important;border:1px solid #00274c!important;color:#fff!important;box-shadow:0 3px 9px #00274c1c!important}
 body[data-theme-sample=michigan] .secondary,body[data-theme-sample=michigan] .today{color:#123b5d!important;border-color:#d2dde7!important;background:#fff!important}
 body[data-theme-sample=michigan] .eyebrow,body[data-theme-sample=michigan] .section-label{color:#1b4b70!important}
 body[data-theme-sample=michigan] .panel,body[data-theme-sample=michigan] .calendar,body[data-theme-sample=michigan] .calendar-home-card,body[data-theme-sample=michigan] .calendar-page-card,body[data-theme-sample=michigan] .calendar-page-panel,body[data-theme-sample=michigan] .calendar-page-events,body[data-theme-sample=michigan] .calendar-page-fullcalendar{border-color:#d1dce6!important;box-shadow:0 3px 12px #0a31510d!important}
 body[data-theme-sample=michigan] .calendar-home-card,body[data-theme-sample=michigan] .calendar-page-event,body[data-theme-sample=michigan] .record{border-color:#d2dde7!important;background:#fff!important;color:#123b5d!important}
 body[data-theme-sample=michigan] .calendar-home-card:nth-child(even){background:#f9fbfd!important}
 body[data-theme-sample=michigan] .calendar-page-card{background:linear-gradient(115deg,#fff 35%,#f3f7fa)!important}
 body[data-theme-sample=michigan] .calendar-page-actions button{border-radius:10px!important}
 body[data-theme-sample=michigan] .calendar-page-actions [data-page-panel="invite"],body[data-theme-sample=michigan] .calendar-page-actions [data-page-panel="sync"],body[data-theme-sample=michigan] .calendar-page-actions [data-page-panel="members"],body[data-theme-sample=michigan] .calendar-page-actions [data-page-settings]{background:#fff8dc!important;color:#173d5f!important;border:1px solid #e7cf76!important;box-shadow:none!important}
 body[data-theme-sample=michigan] .calendar-page-event{border-left:4px solid #ffcb05!important;background:linear-gradient(100deg,#fffdf4,#fff 52%)!important;color:#082e50!important}
 body[data-theme-sample=michigan] .event{background:#e6edf3!important;border-left-color:#00274c!important;color:#123b5d!important}
 body[data-theme-sample=michigan] .day{background:#fff!important}
 body[data-theme-sample=michigan] .day.outside{background:#f2f5f7!important;color:#9aa9b5!important}
 body[data-theme-sample=michigan] .weekday{background:#eef3f7!important;color:#355b79!important}
 body[data-theme-sample=michigan] .day.today .date{background:#ffcb05!important;color:#00274c!important}
 body[data-theme-sample=michigan] .day.selected{background:#fff8dc!important}
 body[data-theme-sample=michigan] .tiny-hebrew{color:#577389!important}
 body[data-theme-sample=michigan] .badge,body[data-theme-sample=michigan] .calendar-admin-badge{background:#edf3f7!important;color:#123b5d!important;border-color:#cddae4!important}
 body[data-theme-sample=michigan] .notification-chip.is-on{background:#fff5cc!important;border-color:#e6c849!important;color:#604900!important}
 body[data-theme-sample=michigan] .notification-chip.is-off{background:#f0f4f7!important;border-color:#d7e0e8!important;color:#596d80!important}
 body[data-theme-sample=michigan] .group-summary{background:linear-gradient(108deg,#ffcb05,#f8df78)!important;border-color:#00274c!important;color:#00274c!important}
 body[data-theme-sample=michigan] .settings,body[data-theme-sample=michigan] #preferencesScreen .panel{border-color:#d3dde6!important;background:#fff!important}
 body[data-theme-sample=michigan] .settings summary,body[data-theme-sample=michigan] .settings h3{color:#00274c!important}
 body[data-theme-sample=michigan] .settings summary:after{color:#a27a00!important}
 body[data-theme-sample=michigan] dialog{border:1px solid #d3dde6!important;border-radius:17px!important;color:#082e50!important;box-shadow:0 22px 75px #00274c35!important}
 body[data-theme-sample=michigan] dialog .dialog-head{background:#fff!important;border-bottom:1px solid #e2e8ee!important}
 body[data-theme-sample=michigan] dialog .dialog-head .eyebrow{color:#315a79!important}
 body[data-theme-sample=michigan] dialog .dialog-head h2{color:#00274c!important}
 body[data-theme-sample=michigan] dialog .field input,body[data-theme-sample=michigan] dialog .field textarea,body[data-theme-sample=michigan] dialog .field select{border-color:#d4dee7!important;border-radius:10px!important}
 body[data-theme-sample=michigan] dialog .field input:focus,body[data-theme-sample=michigan] dialog .field textarea:focus{outline:3px solid #ffcb0540!important;border-color:#b88f00!important}
 body[data-theme-sample=michigan] .calendar-settings-card,body[data-theme-sample=michigan] .calendar-settings-card .calendar-setting-row{border-color:#d9e2e9!important;background:#fff!important}
 body[data-theme-sample=michigan] .calendar-settings-card{border-radius:14px!important}
 body[data-theme-sample=michigan] .access-choice{background:#eef3f7!important}
 body[data-theme-sample=michigan] .access-choice input:checked+span{background:#00274c!important;color:#fff!important}
 body[data-theme-sample=michigan] .setting-switch input:checked+.switch-ui{background:#00274c!important}
 body[data-theme-sample=michigan] .demo-note{background:#fff7d7!important;color:#725800!important;border:1px solid #ebd578!important}
 body[data-theme-sample=michigan] .dialog-actions{background:#fff!important;border-top:1px solid #e4eaf0!important}
 body[data-theme-sample=michigan] .calendar-invite-panel,body[data-theme-sample=michigan] .inline-invite-form,body[data-theme-sample=michigan] .calendar-page-panel{border-color:#d4dee7!important;background:#fff!important}
 body[data-theme-sample=michigan] .calendar-page-panel h2:before{background:#fff5cf!important;color:#00274c!important}
 body[data-theme-sample=michigan] .calendar-page-stats{color:#64798d!important}
 body[data-theme-sample=michigan] .calendar-page-old-events{border-color:#d4dee7!important;background:#fff!important;color:#173d5f!important}
 body[data-theme-sample=michigan] .plain-modal-panel{background:#fff!important;color:#082e50!important}
 body[data-theme-sample=michigan] .event-location-card,body[data-theme-sample=michigan] .event-comments{background:#f7fafc!important;border-color:#d4dee7!important}
 body[data-theme-sample=michigan] .event-map-actions a{background:#fff!important;color:#00274c!important;border-color:#d4dee7!important}
 body[data-theme-sample=michigan] .all-events-overlay{background:#071c3378!important}
 body[data-theme-sample=michigan] .all-events-sheet{background:#f3f6f8!important;color:#082e50!important}
 body[data-theme-sample=michigan] .all-events-title{border-bottom:1px solid #d7e0e8!important}
 body[data-theme-sample=michigan] .all-event-date{background:var(--event-color)!important;color:#fff!important}
 body[data-theme-sample=michigan] .all-event-dot{background:var(--event-color)!important}
 body[data-theme-sample=michigan] #allEventsCalendarFilter,body[data-theme-sample=michigan] .all-search{border-color:#d5dfe8!important;background:#fff!important;color:#173d5f!important}
 body[data-theme-sample=michigan] #tapDebug{color:#47657d!important}
 body[data-theme-sample=michigan] .notice{background:#00274c!important;color:#fff!important}
 body[data-theme-sample=michigan] #createCalendarDialog .calendar-colors input:checked+i{outline-color:#ffcb05!important}
 body[data-theme-sample=michigan] #createCalendarDialog .calendar-colors i{border-color:#d4dee7!important}
 body[data-theme-sample=michigan] #createCalendarDialog .setting-description{color:#63788b!important}
}
@media(min-width:681px){body[data-theme-sample=michigan] .theme-sample-picker{display:none!important}}
@media(min-width:681px){
 body[data-theme-sample=michigan] .home-control-row #gridCreateCalendar{background:#fff8dc!important;color:#173d5f!important;border:1px solid #e7cf76!important;box-shadow:none!important}
 body[data-theme-sample=michigan] .home-control-row #gridAddEvent{background:#00274c!important;color:#fff!important;border:1px solid #00274c!important;box-shadow:0 3px 9px #00274c1c!important}
 body[data-theme-sample=michigan] .calendar-card-dot{background:#ffcb05!important;box-shadow:0 0 0 3px #fff4c7!important}
 body[data-theme-sample=michigan] .calendar-page-event .event-date-badge{background:#00274c!important;color:#fff!important}
 body[data-theme-sample=michigan] .calendar-page-event .event-date-badge small{color:#ffcb05!important}
 body[data-theme-sample=michigan] .calendar-page-event .event-chevron{color:#00274c!important}
 body[data-theme-sample=michigan] .calendar-page-events h2:before{background:#fff3c2!important;color:#00274c!important}
 body[data-theme-sample=michigan] .calendar-card-tools .edit,body[data-theme-sample=michigan] .calendar-card-tools .trash{color:#355b79!important}
 body[data-theme-sample=michigan] .calendar-card-tools .trash{color:#9e473d!important}
 body[data-theme-sample=michigan] .calendar-page-fullcalendar .day .date{color:#123b5d!important}
 body[data-theme-sample=michigan] .calendar-page-fullcalendar .day.today .date{background:#ffcb05!important;color:#00274c!important}
 body[data-theme-sample=michigan] .calendar-page-fullcalendar .event{background:#e6edf3!important;border-left-color:#00274c!important;color:#123b5d!important}
 body[data-theme-sample=michigan] .calendar-page-old-events{border:1px solid #d2dde7!important;border-radius:10px!important}
 body[data-theme-sample=michigan] .calendar-page-header h1{color:#00274c!important}
 body[data-theme-sample=michigan] .calendar-page-card .eyebrow{color:#1b4b70!important}
 body[data-theme-sample=michigan] .all-events-sheet{border-radius:16px 16px 0 0!important}
}
@media(min-width:681px){
 body[data-theme-sample=michigan] .day .date{border-color:#d3dee7!important;background:#fff!important;color:#123b5d!important;box-shadow:none!important}
 body[data-theme-sample=michigan] .day.today .date{border-color:#ffcb05!important;background:#ffcb05!important;color:#00274c!important}
 body[data-theme-sample=michigan] #preferencesScreen input[type=checkbox]{width:20px!important;height:20px!important;accent-color:#00274c!important}
 body[data-theme-sample=michigan] #preferencesScreen label{color:#123b5d!important}
}

@media(min-width:681px){body[data-theme-sample=michigan] .calendar-page-grid-mount .home-create,body[data-theme-sample=michigan] .calendar-page-grid-mount #gridAddEvent{background:#00274c!important;color:#fff!important;border:1px solid #00274c!important}}
@media(min-width:681px){body[data-theme-sample=michigan] .day.has-event .date{background:#fff3c2!important;color:#00274c!important;box-shadow:inset 0 0 0 1.5px #e6bc18!important}body[data-theme-sample=michigan] .day.has-event.today .date{background:#ffcb05!important;color:#00274c!important;box-shadow:0 0 0 3px #ffcb0540!important}body[data-theme-sample=michigan] .day.has-event:nth-child(7n) .date{outline-color:#00274c!important}}


/* Local preview only: apply the selected Michigan palette on mobile. */
@media(max-width:680px){
 body[data-theme-sample="michigan"]{--brand:#00274c!important;--brand-dark:#001b36!important;--ink:#00274c!important;--muted:#67798b!important;--line:#d1dce6!important;--canvas:#eff3f6!important;--gold:#ffcb05!important;background:#eff3f6!important;color:#00274c!important}
 body[data-theme-sample="michigan"] .top{background:#00274c!important;border-bottom-color:#00274c!important;color:#fff!important}
 body[data-theme-sample="michigan"] .top .brand,body[data-theme-sample="michigan"] .top .brand small{color:#fff!important}
 body[data-theme-sample="michigan"] .brandmark,body[data-theme-sample="michigan"] .avatar{background:#ffcb05!important;color:#00274c!important}
 body[data-theme-sample="michigan"] .demo{background:#fff4c7!important;color:#314b66!important}
 body[data-theme-sample="michigan"] .primary,body[data-theme-sample="michigan"] #homeAddEvent{background:#00274c!important;color:#fff!important;box-shadow:none!important}
 body[data-theme-sample="michigan"] .secondary,body[data-theme-sample="michigan"] .today{color:#00274c!important;border-color:#d1dce6!important}
 body[data-theme-sample="michigan"] .appnav{background:#fff!important;border-color:#d1dce6!important}
 body[data-theme-sample="michigan"] .appnav button.active{background:#ffcb05!important;color:#00274c!important;border-color:#e9b700!important}
 body[data-theme-sample="michigan"] .eyebrow,body[data-theme-sample="michigan"] .section-label{color:#00274c!important}
 body[data-theme-sample="michigan"] #groupSummary.group-summary{background:linear-gradient(110deg,#ffcb05,#f5d76c)!important;border:3px solid #00274c!important;box-shadow:0 8px 20px #00274c24!important;color:#00274c!important}
 body[data-theme-sample="michigan"] #groupSummary .summary-tile{background:#00274c!important;color:#ffcb05!important}
 body[data-theme-sample="michigan"] #groupSummary .summary-heading b,body[data-theme-sample="michigan"] #groupSummary #summaryCounts{color:#00274c!important}
 body[data-theme-sample="michigan"] #createCalendarFromHome{color:#00274c!important;border-color:#00274c!important;background:#fff8dc!important}
 body[data-theme-sample="michigan"] .calendar-home-card{border-color:#bdcbd7!important}
 body[data-theme-sample="michigan"] .calendar-home-card .calendar-card-tools button{color:#00274c!important}
 body[data-theme-sample="michigan"] .calendar-home-card .calendar-card-tools .trash{color:#00274c!important}
 body[data-theme-sample="michigan"] .calendar-home-card .calendar-card-dot{background:#ffcb05!important}
 body[data-theme-sample="michigan"] .calendar-home-card .calendar-card-heading .calendar-admin-badge{background:#fff4c7!important;border-color:#e8bd19!important;color:#314b66!important}
 body[data-theme-sample="michigan"] .calendar-home-card .calendar-admin-badge{background:#fff4c7!important;border-color:#e8bd19!important;color:#314b66!important}
 body[data-theme-sample="michigan"] .notification-chip.is-on{background:#fff4c7!important;border-color:#e8bd19!important;color:#314b66!important}
 body[data-theme-sample="michigan"] .day.today .date{background:#ffcb05!important;color:#00274c!important}
 body[data-theme-sample="michigan"] .event{background:#e5edf4!important;border-left-color:#00274c!important;color:#00274c!important}
 body[data-theme-sample="michigan"] .notice{background:#00274c!important}
 body[data-theme-sample="michigan"] .top #installHelp{border-color:#d1dce6!important;color:#00274c!important;background:#fff!important}
 body[data-theme-sample="michigan"] dialog .primary,body[data-theme-sample="michigan"] .plain-modal-panel .primary{background:#00274c!important;color:#fff!important}
}
.inline-event-edit{padding:8px 20px 18px}.inline-event-edit .field{margin-bottom:11px}.inline-event-edit .dialog-actions{padding:10px 0 0}
.inline-event-edit{padding:8px 20px 18px}.inline-event-edit .field{margin-bottom:11px}.inline-event-edit .dialog-actions{padding:10px 0 0}

@media(max-width:680px){
 .calendar-card-heading{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;justify-content:initial!important;gap:7px!important;}
 .calendar-card-heading>b{min-width:0!important;overflow-wrap:anywhere!important;word-break:normal!important;}
 .calendar-card-heading>.calendar-admin-badge{grid-column:2;grid-row:1;margin:0!important;white-space:nowrap!important;}
 .calendar-card-heading .calendar-card-tools{grid-column:1/-1;grid-row:2;display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:8px!important;margin:0!important;}
 .calendar-card-heading .calendar-card-tools button{padding:4px 6px!important;min-height:30px!important;font-size:14px!important;white-space:nowrap!important;}
}
.preview-action-dialog{width:min(520px,calc(100vw - 32px));max-width:520px;max-height:calc(100vh - 36px);overflow:auto;border:0;border-radius:18px;padding:0;box-shadow:0 20px 60px #11253c38;color:var(--ink);}
.preview-action-dialog::backdrop{background:#101a2b77}
.preview-action-dialog .dialog-head{padding:22px 24px 12px}
.preview-action-dialog .preview-dialog-body{padding:0 24px 22px}
.preview-action-dialog .hint,.preview-action-dialog .demo-note{font-size:14px;line-height:1.45;color:var(--muted)}
.preview-action-dialog .field{display:block;margin:16px 0 12px}
.preview-action-dialog .invitebox{display:block;overflow-wrap:anywhere;background:#f3f6fa;padding:10px;border-radius:8px;font:12px monospace;margin-top:7px}
.preview-action-dialog .calendar-invite-methods{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.preview-action-dialog .calendar-invite-methods button{flex:1 1 42%;min-height:42px}
.preview-action-dialog .record{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:10px;margin:10px 0}
@media(max-width:680px){.preview-action-dialog{width:min(520px,calc(100vw - 32px));}.preview-action-dialog .dialog-head{padding:20px 18px 12px}.preview-action-dialog .preview-dialog-body{padding:0 18px 20px}}

/* Calendar identity colors must follow each saved calendar color across views. */
body[data-theme-sample="michigan"] .calendar-home-card .calendar-card-dot{background:var(--cal-color)!important;box-shadow:none!important}
body[data-theme-sample="michigan"] .calendar-page-event .event-date-badge{background:var(--cal-color,#00274c)!important}
body[data-theme-sample="michigan"] .calendar-page-event{border-left-color:var(--cal-color,#00274c)!important}
body[data-theme-sample="michigan"] .calendar-page-event .event-chevron{color:var(--cal-color,#00274c)!important}


/* Mobile calendar page must use the same Michigan palette as desktop. */
@media(max-width:680px){
 body[data-theme-sample="michigan"] .calendar-page-card{background:#fff!important;border-color:#d1dce6!important}
 body[data-theme-sample="michigan"] .calendar-page-card .calendar-page-actions [data-page-add],
 body[data-theme-sample="michigan"] .calendar-page-card .calendar-page-actions [data-page-create-calendar]{background:#00274c!important;color:#fff!important;border:1px solid #00274c!important;box-shadow:none!important}
 body[data-theme-sample="michigan"] .calendar-page-card .calendar-page-actions [data-page-panel="invite"],
 body[data-theme-sample="michigan"] .calendar-page-card .calendar-page-actions [data-page-panel="sync"],
 body[data-theme-sample="michigan"] .calendar-page-card .calendar-page-actions [data-page-panel="members"],
 body[data-theme-sample="michigan"] .calendar-page-card .calendar-page-actions [data-page-settings]{background:#fff8dc!important;color:#173d5f!important;border:1px solid #e7cf76!important;box-shadow:none!important}
 body[data-theme-sample="michigan"] .calendar-page-top-actions .calendar-page-back{background:#fff!important;color:#173d5f!important;border:1px solid #d1dce6!important;box-shadow:none!important}
 body[data-theme-sample="michigan"] .calendar-page-top-actions .calendar-page-create{background:#fff8dc!important;color:#173d5f!important;border:1px solid #e7cf76!important;box-shadow:none!important}
 body[data-theme-sample="michigan"] .calendar-page-event .event-date-badge{background:#00274c!important;color:#fff!important}
 body[data-theme-sample="michigan"] .calendar-page-event .event-chevron{color:#00274c!important}
}
@media(max-width:680px){
 body[data-theme-sample="michigan"] .calendar-home-card .calendar-card-tools .trash,
 body[data-theme-sample="michigan"] .calendar-home-card .calendar-card-tools .edit{color:#00274c!important}
 body[data-theme-sample="michigan"] .calendar-home-card .notification-chip.is-on{background:#fff4c7!important;border-color:#e8bd19!important;color:#314b66!important}
 body[data-theme-sample="michigan"] .calendar-home-card .notification-chip.is-off{background:#eff3f6!important;border-color:#d1dce6!important;color:#67798b!important}
 body[data-theme-sample="michigan"] .calendar-home-card .upcoming{color:#67798b!important}
 body[data-theme-sample="michigan"] .calendar-page-card .calendar-page-actions [data-page-add],body[data-theme-sample="michigan"] .calendar-page-card .calendar-page-actions [data-page-create-calendar]{background:#00274c!important;color:#fff!important;border:1px solid #00274c!important;box-shadow:none!important}
}

/* Local-only Add Event refinements */
#quickAddEvent{max-height:calc(100dvh - 32px);overflow-y:auto}#quickAddEvent .time-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}#quickAddEvent .time-row .field{min-width:0}#quickAddEvent .notification-choice{border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin:12px 26px 16px}#quickAddEvent .notification-choice legend{font-size:14px;font-weight:700;color:var(--ink);padding:0 5px}#quickAddEvent .notification-option{display:flex;align-items:flex-start;gap:10px;padding:10px 4px;font-size:13px;color:var(--ink);cursor:pointer}#quickAddEvent .notification-option input{margin-top:3px;accent-color:var(--brand);flex:0 0 auto}#quickAddEvent .notification-option b,#quickAddEvent .notification-option small{display:block}#quickAddEvent .notification-option small{margin-top:3px;color:var(--muted);font-size:12px;font-weight:400;line-height:1.4}#quickAddEvent .has-error input{border-color:#c84242!important;outline:2px solid #c8424240}#quickAddEvent .required-error{display:block;color:#b42336;margin-top:5px;font-size:12px}.calendar-home-card .calendar-card-tools .order-calendar{width:26px;height:26px;padding:0;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--brand);font-size:15px;line-height:1}#quickAddEvent #quickEventTypeCustomWrap[hidden]{display:none}@media(max-width:680px){#quickAddEvent .quick-event-fields{padding:0 18px}#quickAddEvent .notification-choice{margin-left:18px;margin-right:18px}#quickAddEvent .time-row{gap:8px}}
/* YomiCal Option B identity in the local, unpublished review */
.top{height:76px}.top .brand-logo{display:block;width:252px;height:auto;max-height:54px;object-fit:contain;object-position:left center}.dark .brand-logo,.theme-dark .brand-logo,.calendar-page-header.dark .brand-logo{content:url('/assets/yomical-logo-dark.png')}
.event-type-native{position:absolute!important;width:1px!important;height:1px!important;min-height:1px!important;opacity:0!important;pointer-events:none!important}.event-type-picker{position:relative}.event-type-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:6px;min-height:44px;border:1px solid var(--line);border-radius:9px;padding:10px 11px;background:#fff;color:var(--ink);font:inherit;text-align:left}.event-type-options{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:10;max-height:240px;overflow:auto;padding:5px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 10px 26px #16223824}.event-type-options[hidden]{display:none}.event-type-options button{width:100%;min-height:38px;padding:8px 10px;border:0;border-radius:6px;background:#fff;text-align:left;font:inherit;color:var(--ink)}.event-type-options button:hover,.event-type-options button[aria-selected="true"]{background:#eef4fa;color:var(--brand)}.quick-event-fields .check-field{display:flex;align-items:center;gap:8px}.quick-event-fields .check-field input[type="checkbox"]{display:inline-block!important;flex:0 0 18px!important;width:18px!important;height:18px!important;min-height:18px!important;margin:0!important;accent-color:var(--brand)}.top .brand-logo{width:300px;max-height:58px;object-fit:contain;object-position:left center}.dark .brand-logo,.theme-dark .brand-logo,.calendar-page-header.dark .brand-logo{content:url('/assets/yomical-logo-dark.png')}

/* Preview-only accessible calendar card drag reorder. */
.calendar-home-card[draggable="true"]{cursor:grab;position:relative;touch-action:pan-y;user-select:none;-webkit-user-select:none}.calendar-home-card.is-dragging{opacity:.55;cursor:grabbing}.calendar-home-card.drop-before{box-shadow:0 -4px 0 0 #f4c430}.calendar-home-card.drop-after{box-shadow:0 4px 0 0 #f4c430}.calendar-drag-handle{display:inline-grid;place-items:center;width:26px;height:30px;border-radius:6px;color:var(--muted);font-size:22px;line-height:1;cursor:grab;touch-action:none}.brand-lockup{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:0}.top .brand-logo{display:block;width:214px;height:auto;max-height:47px;object-fit:contain;object-position:left center}.brand-tagline{margin-left:42px;margin-top:-1px;color:#20c6b3;font-size:12px;line-height:1.15;font-weight:800;letter-spacing:2.4px;white-space:nowrap}.dark .brand-tagline,.theme-dark .brand-tagline,.calendar-page-header.dark .brand-tagline{color:#20c6b3}@media(max-width:680px){.top{height:70px}.top .brand-logo{width:188px;max-height:40px}.brand-tagline{margin-left:37px;font-size:11px;letter-spacing:2.1px}.calendar-card-heading{gap:4px}.calendar-drag-handle{width:32px;height:36px;font-size:24px}}

/* Avoid rendering a stale-looking shell while current scripts initialize. */
html.app-starting body{visibility:hidden}

.calendar-drag-handle{display:inline-grid;place-items:center;min-width:34px;min-height:34px;padding:0 7px;border-radius:8px;color:#314b64;background:#e6eef5;font-size:20px;line-height:1;cursor:grab;touch-action:none;pointer-events:auto;user-select:none;-webkit-user-select:none}.calendar-home-card.is-dragging{opacity:.5}.calendar-home-card.drop-before{border-top:4px solid #0f807b}.calendar-home-card.drop-after{border-bottom:4px solid #0f807b}.app-starting body{visibility:hidden}
.hebrew-date-picker-control{display:flex;gap:8px}.hebrew-date-picker-control input{flex:1;min-width:0}.hebrew-picker-open{white-space:nowrap;min-height:42px;padding:8px 12px}.hebrew-date-picker{width:min(460px,calc(100vw - 28px));border:0;border-radius:18px;padding:0;box-shadow:0 20px 70px #14243a45}.hebrew-date-picker::backdrop{background:#15243b80}.hebrew-date-picker form{padding:0 0 8px}.hebrew-picker-fields{display:grid;grid-template-columns:1fr 1.5fr .7fr;gap:10px;padding:8px 22px}.hebrew-picker-preview{padding:0 22px;color:#0f807b;font-weight:800}.hebrew-date-picker .dialog-head{padding:20px 22px 10px}.hebrew-date-picker .dialog-actions{padding:12px 22px}.hebrew-date-picker .field select{width:100%;min-height:44px}
.hebrew-date-picker{display:flex;position:fixed;inset:0;z-index:2200;margin:auto;align-items:center;justify-content:center;padding:0;background:#15243b80}.hebrew-date-picker[hidden]{display:none!important}.hebrew-date-picker form{width:min(460px,calc(100vw - 28px));max-height:min(90vh,720px);overflow:auto;background:#fff;border-radius:18px;padding:0 0 8px;box-shadow:0 20px 70px #14243a45}

#editEventDialog .quick-event-fields{padding:0 26px}#editEventDialog .quick-event-fields .field{margin-bottom:14px}#editEventDialog{max-height:calc(100dvh - 32px);overflow-y:auto}#editEventDialog .event-type-picker{position:relative}
@media(max-width:680px){#editEventDialog .quick-event-fields{padding:0 18px}}

/* Native top-layer Hebrew picker stays hidden until showModal(), then covers the parent dialog. */
dialog.hebrew-date-picker:not([open]){display:none!important}
dialog.hebrew-date-picker[open]{display:flex}

/* Header cleanup requested with preview11 fix follow-up. */
.demo{display:none!important}
#installHelp{display:inline-flex!important;align-items:center;justify-content:center;order:2;min-height:28px!important;height:28px;padding:4px 8px!important;font-size:10px!important;line-height:1.05;white-space:nowrap}
.topright .avatar{order:1}
@media(max-width:680px){.topright{gap:5px!important}#installHelp{width:74px;min-width:74px;min-height:30px!important;height:30px;padding:3px 5px!important;font-size:9px!important;line-height:1.05;white-space:normal;text-align:center}.topright .avatar{width:30px;height:30px}}

/* Mobile Home calendar cards: compact, aligned rows for title, controls, stats and alerts. */
@media(max-width:680px){
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .calendar-card-main{grid-template-columns:16px minmax(0,1fr)!important;gap:9px!important;padding:12px 12px 11px!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .calendar-card-dot{width:14px!important;height:14px!important;margin-top:3px!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .calendar-card-content{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"title badge" "chips tools" "upcoming stats"!important;align-items:center!important;column-gap:8px!important;row-gap:4px!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .calendar-card-heading{display:contents!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .calendar-card-heading>b{grid-area:title!important;min-width:0!important;font-size:15px!important;line-height:1.25!important;letter-spacing:-.15px!important;overflow-wrap:anywhere!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .calendar-admin-badge{grid-area:badge!important;margin:0!important;padding:3px 7px!important;font-size:9px!important;line-height:1.1!important;white-space:nowrap!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .calendar-card-tools{grid-area:tools!important;display:flex!important;align-items:center!important;justify-self:end!important;gap:5px!important;margin:0!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .calendar-drag-handle{width:30px!important;min-width:30px!important;height:30px!important;min-height:30px!important;padding:0!important;border-radius:8px!important;font-size:19px!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .calendar-card-tools button{display:inline-grid!important;place-items:center!important;width:30px!important;height:30px!important;min-height:30px!important;padding:0!important;border-radius:8px!important;background:#f2f6fa!important;font-size:16px!important;line-height:1!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .calendar-card-stats{grid-area:stats!important;display:flex!important;align-items:center!important;justify-self:end!important;gap:7px!important;margin:0!important;font-size:11px!important;line-height:1.2!important;white-space:nowrap!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .calendar-card-stats .calendar-member-icon{font-size:12px!important;line-height:1.2!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .calendar-notification-status{grid-area:chips!important;display:flex!important;align-items:center!important;justify-self:start!important;flex-wrap:nowrap!important;gap:5px!important;margin:0!important;min-width:0!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .notification-chip{min-height:29px!important;padding:4px 9px!important;border-radius:999px!important;font-size:10px!important;line-height:1.1!important}
 #groupCalendarsScreen:not([hidden]) #calendarCards .calendar-home-card .upcoming{grid-area:upcoming!important;min-width:0!important;margin:0!important;font-size:11px!important;line-height:1.3!important;overflow-wrap:anywhere!important}
}

/* Remove the install shortcut from the header as requested. */
#installHelp{display:none!important}
@media(min-width:681px){#installHelp{display:none!important}}

/* Settings sections and local-only My account form. */
.settings-section-list{display:grid;gap:10px;margin-bottom:14px}.settings-section-button{width:100%;display:flex;align-items:center;gap:13px;padding:15px 18px;text-align:left;color:var(--ink);cursor:pointer}.settings-section-button>span:nth-child(2){display:flex;flex-direction:column;gap:4px;flex:1}.settings-section-button b{font-size:15px}.settings-section-button small{font-size:12px;color:var(--muted)}.settings-section-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#fff2b4;color:#00274c}.settings-section-chevron{font-size:24px;color:var(--muted)}.my-account-screen{max-width:820px;margin-left:auto;margin-right:auto}.my-account-back{margin-bottom:12px}.my-account-panel{padding:24px}.my-account-heading{margin-bottom:20px}.my-account-heading .eyebrow{margin-bottom:4px}.my-account-heading h1{margin:0;color:var(--ink);font-size:24px}.my-account-heading>p:last-child{color:var(--muted);font-size:14px}.my-account-panel form{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.my-account-panel .field{display:block;margin:0 0 14px;color:var(--ink)}.my-account-panel input{display:block;width:100%;min-height:44px;margin-top:6px;border:1px solid var(--line);border-radius:9px;padding:10px 12px;font:inherit;background:#fff;color:var(--ink)}.my-account-actions{grid-column:1/-1;display:flex;align-items:center;gap:12px}.my-account-actions .primary{min-width:120px;min-height:42px;background:#00274c;color:#fff}.my-account-actions p{margin:0;font-size:13px;color:#0f807b}.my-account-note{margin:16px 0 0;color:var(--muted);font-size:12px}@media(max-width:680px){.my-account-screen{padding:0 13px}.my-account-panel{padding:20px 16px}.my-account-heading h1{font-size:22px}.my-account-panel form{grid-template-columns:1fr}.my-account-actions{grid-column:auto}.settings-section-button{padding:14px 15px}}

/* Make the Home logo visibly clickable without changing the rest of the header. */
.top .brand{cursor:pointer;transition:opacity .15s ease}
.top .brand:hover{opacity:.88}
.top .brand:active{opacity:.76}


/* Restore the saved calendar color on selected-calendar detail pages. */
#calendarPage .calendar-page-card{border-top:4px solid var(--cal-color)!important}
#calendarPage .calendar-page-card h1{color:var(--cal-color)!important}
#calendarPage .calendar-page-events h2:before{background:color-mix(in srgb,var(--cal-color) 12%,white)!important;color:var(--cal-color)!important}
#calendarPage .calendar-page-event{border-left-color:var(--cal-color)!important;background:linear-gradient(100deg,color-mix(in srgb,var(--cal-color) 7%,white),white 52%)!important}
#calendarPage .calendar-page-event .event-date-badge{background:var(--cal-color)!important;color:#fff!important}
#calendarPage .calendar-page-event .event-chevron{color:var(--cal-color)!important}

/* Sign-in gate and sync messages */
#yomiGate{position:fixed;inset:0;background:#f6f7fb;z-index:9998}
#yomiSignin{position:fixed;inset:0;z-index:9999;background:#f6f7fb;display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto}
#yomiSignin .ys-card{width:100%;max-width:380px;background:#fff;border-radius:18px;padding:26px 22px;box-shadow:0 10px 40px rgba(30,40,80,.12);display:grid;gap:12px}
#yomiSignin .ys-logo{height:44px;width:auto;justify-self:start}
#yomiSignin h1{font-size:24px;margin:2px 0 0}
#yomiSignin .ys-sub,#yomiSignin .ys-fine{margin:0;color:#5a6275;font-size:14px;line-height:1.45}
#yomiSignin .ys-fine{font-size:12px}
#yomiSignin form{display:grid;gap:12px}
#yomiSignin label{display:grid;gap:6px;font-size:13px;font-weight:600;color:#394056}
#yomiSignin input{font:inherit;font-size:16px;padding:12px;border:1px solid #cfd5e3;border-radius:10px}
#yomiSignin .ys-btn{font:inherit;font-weight:700;padding:12px;border:0;border-radius:10px;background:#00274c;color:#fff;cursor:pointer}
#yomiSignin .ys-link{background:none;border:0;color:#00274c;font:inherit;font-size:13px;cursor:pointer;padding:4px}
#yomiSignin .ys-msg{min-height:18px;margin:0;font-size:13px;color:#b42318}
#yomiToast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%) translateY(20px);background:#1b1f2a;color:#fff;padding:10px 16px;border-radius:10px;font-size:14px;opacity:0;pointer-events:none;transition:.2s;z-index:10000;max-width:90vw}
#yomiToast.show{opacity:1;transform:translateX(-50%) translateY(0)}
#yomiSignout{margin-top:14px}
#yomiSignin form[hidden]{display:none}
#yomiSignin .ys-brand{background:#00274c;border-radius:12px;padding:12px 14px;margin:-4px 0 4px;display:flex}
#yomiSignin .ys-logo{height:40px}
#yomiSignin .ys-or{display:flex;align-items:center;gap:10px;color:#667;font-size:13px;margin:14px 0 10px}
#yomiSignin .ys-or:before,#yomiSignin .ys-or:after{content:"";flex:1;height:1px;background:#d5dbe3}
#yomiSignin .ys-google{width:100%;background:#fff;color:#1f1f1f;border:1px solid #c4cad3}
/* compact Settings rows (My account, Sign out) */
.screen .settings-section-list .settings-section-button{min-height:0;padding:9px 12px;gap:10px;margin:0}
.settings-section-list{gap:8px}
.settings-section-button>span:nth-child(2){gap:1px;line-height:1.25}
.settings-section-button .settings-section-icon{width:30px;height:30px;flex:0 0 30px;font-size:14px}

.sms-optin-box{margin-top:18px;padding-top:14px;border-top:1px solid rgba(120,120,140,.25)}.sms-optin-box h3{margin:0 0 8px;font-size:17px}.sms-consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.45;margin:10px 0}.sms-consent input{margin-top:3px;flex:0 0 auto;width:auto}.sms-optin-box button{margin-top:6px}
