@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@300;400;500;600;700&family=Assistant:wght@400;600;700;800&display=swap&family=Rubik:ital,wght@0,300..900;1,300..900&display=swap";.toggle-settings-row{display:flex;align-items:center;justify-content:space-around}.toggle-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;transition:all .3s ease}.toggle-label.active{color:var(--accent-amber);opacity:1}.toggle-label.inactive{opacity:.4;cursor:pointer}.toggle-label.inactive:hover{opacity:.7}.toggle-switch-track{width:44px;height:22px;background:var(--bg-accent);border:1px solid var(--btn-border);border-radius:20px;position:relative;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);flex-shrink:0;display:flex;align-items:center;box-shadow:inset 0 2px 4px #0003}.toggle-switch-track.active{background:var(--accent-amber);border-color:var(--accent-amber);box-shadow:inset 0 2px 4px #0000001a,0 0 10px var(--glow-1)}.toggle-thumb{width:16px;height:16px;background:#fff;border-radius:50%;position:absolute;left:3px;transition:transform .3s cubic-bezier(.4,0,.2,1),background .3s ease;box-shadow:0 2px 4px #0000004d}.toggle-switch-track.active .toggle-thumb{transform:translate(20px);background:var(--bg-primary)}[dir=rtl] .toggle-switch-track.active .toggle-thumb{transform:translate(-20px)}[dir=rtl] .toggle-thumb{left:auto;right:3px}:root{font-family:Outfit,Inter,Assistant,system-ui,-apple-system,sans-serif}:root,[data-theme=warm]{--bg-primary: #1a0f0a;--bg-secondary: #2d1810;--bg-accent: #3d2418;--text-primary: #ead5bd;--text-secondary: #d4a574;--accent-amber: #fbbf24;--accent-coral: #fb923c;--accent-gold: #fde047;--accent-rose: #fca5a5;--glass-bg: rgba(45, 24, 16, .7);--glass-border: rgba(251, 191, 36, .08);--glass-shadow: 0 10px 30px rgba(0, 0, 0, .3);--body-bg: #0f0604;--glow-1: rgba(251, 191, 36, .12);--glow-2: rgba(251, 146, 60, .12);--holiday-bg: rgba(61, 36, 24, .3);--selected-bg: rgba(251, 191, 36, .15);--btn-bg: rgba(61, 36, 24, .4);--btn-bg-hover: rgba(61, 36, 24, .6);--btn-border: rgba(251, 191, 36, .15);--btn-border-hover: rgba(251, 191, 36, .25);--btn-accent-text: #1a0f0a;--input-bg: rgba(255, 255, 255, .05);--input-bg-focus: rgba(255, 255, 255, .08)}[data-theme=dark]{--bg-primary: #0a0a0a;--bg-secondary: #1a1a1a;--bg-accent: #2a2a2a;--text-primary: #e5e5e5;--text-secondary: #a3a3a3;--accent-amber: #fbbf24;--accent-coral: #fb923c;--accent-gold: #fde047;--accent-rose: #fca5a5;--glass-bg: rgba(26, 26, 26, .7);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 10px 30px rgba(0, 0, 0, .5);--body-bg: #000000;--glow-1: rgba(251, 191, 36, .08);--glow-2: rgba(139, 92, 246, .08);--holiday-bg: rgba(255, 255, 255, .05);--selected-bg: rgba(251, 191, 36, .1);--btn-bg: rgba(42, 42, 42, .4);--btn-bg-hover: rgba(42, 42, 42, .6);--btn-border: rgba(255, 255, 255, .1);--btn-border-hover: rgba(255, 255, 255, .2);--btn-accent-text: #0a0a0a;--input-bg: rgba(255, 255, 255, .05);--input-bg-focus: rgba(255, 255, 255, .08)}[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--bg-accent: #e5e5e5;--text-primary: #1a1a1a;--text-secondary: #525252;--accent-amber: #f59e0b;--accent-coral: #f97316;--accent-gold: #eab308;--accent-rose: #f87171;--glass-bg: rgba(255, 255, 255, .8);--glass-border: rgba(0, 0, 0, .08);--glass-shadow: 0 10px 30px rgba(0, 0, 0, .1);--body-bg: #fafafa;--glow-1: rgba(251, 191, 36, .15);--glow-2: rgba(139, 92, 246, .15);--holiday-bg: rgba(0, 0, 0, .05);--selected-bg: rgba(0, 0, 0, .12);--btn-bg: rgba(245, 245, 245, .6);--btn-bg-hover: rgba(229, 229, 229, .8);--btn-border: rgba(0, 0, 0, .1);--btn-border-hover: rgba(0, 0, 0, .2);--btn-accent-text: #1a1a1a;--input-bg: rgba(0, 0, 0, .03);--input-bg-focus: rgba(0, 0, 0, .05)}[data-theme=tcheles]{--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-accent: #f1f5f9;--text-primary: #1e3a8a;--text-secondary: #2563eb;--accent-amber: #1d4ed8;--accent-coral: #3b82f6;--accent-gold: #2563eb;--accent-rose: #1e40af;--glass-bg: rgba(255, 255, 255, .85);--glass-border: rgba(30, 64, 175, .15);--glass-shadow: 0 10px 30px rgba(30, 64, 175, .1);--body-bg: #f8fafc;--glow-1: rgba(37, 99, 235, .1);--glow-2: rgba(30, 64, 175, .08);--holiday-bg: rgba(37, 99, 235, .08);--selected-bg: rgba(37, 99, 235, .18);--btn-bg: rgba(239, 246, 255, .8);--btn-bg-hover: rgba(219, 234, 254, .9);--btn-border: rgba(37, 99, 235, .2);--btn-border-hover: rgba(37, 99, 235, .4);--btn-accent-text: #ffffff;--input-bg: rgba(30, 64, 175, .02);--input-bg-focus: rgba(30, 64, 175, .05)}[dir=rtl]{font-family:Rubik,system-ui,Helvetica,Arial,sans-serif}*{margin:0;padding:0;box-sizing:border-box;transition:background-color .3s ease,color .3s ease,border-color .3s ease}body{font-family:var(--font-family);background:var(--body-bg);color:var(--text-primary);min-height:100vh;overflow:hidden;position:relative;transition:background-color .5s ease}body:before{content:"";position:absolute;top:-10%;right:-10%;width:50%;height:50%;background:radial-gradient(circle,var(--glow-1) 0%,transparent 70%);z-index:-1;filter:blur(100px);transition:background .5s ease}body:after{content:"";position:absolute;bottom:-10%;left:-10%;width:50%;height:50%;background:radial-gradient(circle,var(--glow-2) 0%,transparent 70%);z-index:-1;filter:blur(100px);transition:background .5s ease}html,body,#root{height:100%;margin:0;padding:0;overscroll-behavior:none}.app-container{display:flex;flex-direction:column;height:100vh;height:100dvh;gap:12px;padding:12px;overflow:hidden;background-color:var(--bg-primary)}.main-layout{display:flex;flex:1;gap:12px;min-height:0}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:24px}.no-border{border:none!important}.no-background{background-color:transparent!important}.cursor-pointer{cursor:pointer!important}.calendar-month-year{color:var(--accent-coral)!important;font-size:25pt}.calendar-month-year .secondary-month-year{font-size:20pt}.sidebar{width:360px;height:100%;flex-shrink:0;display:flex;flex-direction:column;min-height:0;z-index:100;position:relative}.sidebar.desktop-hidden{position:fixed;top:20px;bottom:20px;left:-420px;width:380px;max-width:calc(100vw - 40px);z-index:1800;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:25px 0 50px -12px #00000080;border-radius:30px!important}[dir=rtl] .sidebar.desktop-hidden{left:auto;right:-420px}.sidebar.desktop-hidden.sidebar-mobile-open{left:20px}[dir=rtl] .sidebar.desktop-hidden.sidebar-mobile-open{left:auto;right:20px}.sidebar.desktop-hidden .sidebar-close-btn{display:flex!important}.settings-sidebar{position:fixed;top:20px;bottom:20px;left:-420px;width:380px;max-width:calc(100vw - 40px);z-index:2000;display:flex;flex-direction:column;padding:30px;box-shadow:25px 0 50px -12px #00000080;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--accent-amber) transparent;overscroll-behavior:contain;transition:left .4s cubic-bezier(.4,0,.2,1),right .4s cubic-bezier(.4,0,.2,1),border-radius .3s ease,box-shadow .3s ease}.scroll-affordance{transition:border-radius .3s ease,box-shadow .3s ease}.scroll-affordance.has-more{border-bottom-left-radius:4px!important;border-bottom-right-radius:4px!important;box-shadow:var(--glass-shadow),inset 0 -40px 40px -20px #fbbf2426!important}.scroll-affordance.at-bottom{box-shadow:var(--glass-shadow),inset 0 0 0 0 transparent!important}.settings-sidebar.scroll-affordance.at-bottom{border-bottom-left-radius:30px!important;border-bottom-right-radius:30px!important}.daily-info-sidebar.scroll-affordance.at-bottom{border-bottom-left-radius:20px!important;border-bottom-right-radius:20px!important}.solar-zman-highlight .font-mono{color:var(--text-primary)!important;font-weight:800!important}.solar-zman-highlight span:first-child{color:var(--text-primary)!important;font-weight:800!important;opacity:.9}.scroll-affordance::-webkit-scrollbar,.scroll-affordance *::-webkit-scrollbar{width:4px}.scroll-affordance::-webkit-scrollbar-track,.scroll-affordance *::-webkit-scrollbar-track{background:transparent}.scroll-affordance::-webkit-scrollbar-thumb,.scroll-affordance *::-webkit-scrollbar-thumb{background:#fbbf244d;border-radius:10px}.modal-content.scroll-affordance.at-bottom{border-bottom-left-radius:28px!important;border-bottom-right-radius:28px!important}.settings-sidebar::-webkit-scrollbar{width:4px}.settings-sidebar::-webkit-scrollbar-track{background:transparent}.settings-sidebar::-webkit-scrollbar-thumb{background:#fbbf244d;border-radius:10px}@media(max-height:800px){.settings-sidebar{top:10px;bottom:10px;padding:20px}}[dir=rtl] .settings-sidebar{left:auto;right:-420px;transition:right .4s cubic-bezier(.4,0,.2,1)}.settings-sidebar.open{left:20px}[dir=rtl] .settings-sidebar.open{left:auto;right:20px}.sidebar-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1500}.calendar-main{flex:1;display:flex;flex-direction:column;gap:12px;min-width:0;min-height:0;touch-action:pan-y;user-select:none;-webkit-user-select:none}.calendar-wrapper{flex:1;display:flex;flex-direction:column;min-height:0;width:100%}.calendar-header-days{display:grid;grid-template-columns:repeat(7,1fr);padding:0 0 12px;text-align:center;font-size:.75rem;font-weight:700;letter-spacing:.1em;color:var(--text-secondary);text-transform:uppercase;flex-shrink:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);flex-grow:1;gap:12px;width:100%;min-height:0}.day-cell{background:#ffffff08;border:1px solid var(--glass-border);border-radius:16px;padding:12px;display:flex;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;overflow:visible;min-height:0}.day-cell:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-4px) scale(1.02);box-shadow:0 10px 20px #0003;z-index:10}.day-cell.today{box-shadow:0 0 0 2px var(--text-primary),0 10px 20px #00000080;z-index:20;transform:scale(1.02);background-color:#ffffff05;border-color:transparent}.astroid-overlay{position:absolute;inset:0;pointer-events:none;z-index:0;display:flex;align-items:center;justify-content:center;padding:4px}.day-cell.selected{background:var(--selected-bg);border-color:var(--selected-border, var(--accent-amber));box-shadow:inset 0 0 15px #fbbf240d;transform:none;z-index:5}.day-cell.other-month{opacity:.2}.day-number-container{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:4px}.hebrew-day{font-family:Assistant,sans-serif;font-size:1.4rem;font-weight:800;color:var(--text-primary)}.secular-day{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.secular-day-primary{font-size:1.4rem;font-weight:800;color:var(--text-primary)}.hebrew-day-secondary{font-family:Assistant,sans-serif;font-size:.85rem;font-weight:500;color:var(--text-secondary)}.holiday-indicator{font-size:.65rem;font-weight:700;color:var(--accent-rose);width:fit-content;max-width:100%;white-space:normal;line-height:1.1;text-align:center;flex-shrink:0;margin-top:1px}.candle-lighting-text{font-size:.65rem;font-weight:800;color:var(--accent-amber);margin-top:1px;text-align:center}.shabbos-indicator{font-size:.65rem;font-weight:700;color:var(--text-primary);text-transform:uppercase;margin-top:4px;text-shadow:0 1px 2px rgba(0,0,0,.1)}.day-add-btn{position:absolute;bottom:10px;right:10px;width:24px;height:24px;background:var(--accent-amber);color:var(--bg-primary);border:none;border-radius:8px;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(5px);transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer;box-shadow:0 4px 12px #fbbf244d;z-index:10}[dir=rtl] .day-add-btn{right:auto;left:10px}.day-cell:hover .day-add-btn,.day-cell.selected .day-add-btn{opacity:1;transform:translateY(0)}.day-add-btn:hover{background:var(--text-primary);color:var(--cell-bg, var(--bg-primary));transform:scale(1.1)!important}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}.modal-content{width:100%;max-width:450px;animation:slideUp .4s cubic-bezier(.16,1,.3,1)}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:.75rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.form-input{background:var(--input-bg);border:1px solid var(--glass-border);border-radius:12px;padding:12px 16px;color:var(--text-primary);font-family:inherit;font-size:.9rem;transition:all .2s;outline:none}.form-input:focus{border-color:var(--accent-amber);background:var(--input-bg-focus);box-shadow:0 0 0 4px #fbbf241a}select.form-input option{background:var(--bg-primary);color:var(--text-primary)}.bg-bg-primary{background-color:var(--bg-primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:slideUp .6s cubic-bezier(.16,1,.3,1) forwards}.divider{height:1px;background:var(--glass-border);width:100%}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='white'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}.btn-warm{background:var(--btn-bg);border-color:var(--btn-border);color:var(--text-primary);transition:all .3s ease}.btn-warm:hover{background:var(--btn-bg-hover);border-color:var(--btn-border-hover)}.sidebar-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;animation:fadeIn .3s ease-out}.sidebar{transition:transform .3s cubic-bezier(.4,0,.2,1)}.close-btn{background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:12px;padding:8px;color:var(--text-primary);cursor:pointer;transition:all .3s ease}.close-btn:hover{background:var(--btn-bg-hover);border-color:var(--btn-border-hover)}.sidebar-close-btn{display:none}.settings-close-btn{position:absolute;top:16px;right:16px;z-index:1001;background:transparent;color:var(--text-primary);border:0;cursor:pointer;opacity:.5;transition:opacity .3s ease}.settings-close-btn:hover{opacity:1}[dir=rtl] .sidebar-close-btn,[dir=rtl] .settings-close-btn{right:auto;left:16px}.main-header h1{white-space:nowrap}@media(max-width:600px){.main-header h1,.main-header .p-1.bg-accent-amber\/10{display:none}}.mobile-footer{display:flex;height:60px;flex-shrink:0;z-index:1000;border-radius:20px 20px 0 0!important;margin-top:auto}.sidebar-close-btn{display:flex!important;opacity:.5}.sidebar-close-btn:hover{opacity:1}@media(min-width:1201px){.mobile-footer{display:none!important}}.settings-sidebar .close-btn{background:var(--glass-bg);border:1px solid var(--glass-border)}.settings-sidebar label{color:var(--text-secondary)}@media(max-width:1200px){html,body,#root{max-width:100vw;height:100dvh!important;overflow:hidden!important;overscroll-behavior:none}.app-container{padding:8px!important;height:100dvh!important;gap:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.main-header{border-radius:20px 20px 0 0!important;padding:8px 12px!important;border-bottom:none!important}.main-layout{gap:0;flex:1!important;min-height:0!important;overflow:hidden!important}.calendar-main{overflow-y:auto!important;height:100%!important;background:var(--glass-bg)!important;border-left:1px solid var(--glass-border)!important;border-right:1px solid var(--glass-border)!important}.mobile-footer{width:100%!important;height:65px!important;flex-shrink:0!important;border-radius:0 0 20px 20px!important;border-top:1px solid var(--glass-border)!important;border-bottom:1px solid var(--glass-border)!important;margin:0!important}.main-header .nav-controls{display:none!important}.mobile-footer .nav-controls{display:flex!important;gap:2px!important;padding:2px!important;transform:scale(.9);transform-origin:center}.mobile-footer .nav-controls button{padding:4px 6px!important;min-width:auto!important}.mobile-footer .nav-controls .btn-warm{border:none!important;background:transparent!important}.mobile-footer .nav-controls button:nth-child(4){min-width:60px!important;background:var(--btn-bg)!important;border-radius:8px!important}.mobile-footer .flex.items-center.gap-6{gap:0!important}.main-header>div:last-child{display:none!important}.sidebar-close-btn{display:flex!important}.calendar-month-year{font-size:1.1rem!important;align-items:center!important;justify-content:center!important;flex:1}.sidebar{position:fixed;top:0;left:-100%;height:100dvh;width:90%;max-width:400px;z-index:1800;transition:left .4s ease}[dir=rtl] .sidebar{left:auto;right:-100%;transition:right .4s ease}.sidebar.sidebar-mobile-open{left:0}[dir=rtl] .sidebar.sidebar-mobile-open{right:0;left:auto}.calendar-grid{gap:4px!important;padding:0 4px!important}.day-cell{padding:4px!important;border-radius:8px!important}.calendar-header-days{font-size:.6rem!important;padding-bottom:4px!important}.secular-day{font-size:10px!important}.main-content{width:100%;max-width:100%;gap:0;padding:0}.glass-panel{padding:6px!important}.calendar-header{padding:8px 12px!important}.main-content>header{flex-direction:row!important;gap:4px;align-items:center!important;position:relative;padding:6px!important;min-height:auto!important}.calendar-month-year{display:flex;align-items:center;justify-content:center;flex:1;font-size:1.5rem!important}.calendar-month-year .secondary-month-year{font-size:1rem!important}.main-content>header>div:first-child h1{font-size:1rem!important;display:flex;flex-direction:row!important;align-items:center!important;gap:4px!important}.main-content>header>div:first-child h1 span{font-size:.75rem!important}.main-content>header>div:last-child{display:flex;flex-direction:row!important;gap:4px!important;align-items:center!important}.main-content>header button{padding:6px 8px!important;font-size:.75rem!important;min-width:auto!important}.main-content>header button svg{width:14px!important;height:14px!important}.main-content>header>div:last-child>div:first-child{padding:4px!important}.main-content>header>div:last-child>div:first-child button{padding:4px!important}.calendar-header-days{font-size:.6rem;padding:0 0 4px;letter-spacing:.05em}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:2px;width:100%;max-width:100%;flex-grow:1;height:100%;max-height:calc(2 * (100vw / 7) * var(--weeks, 6));margin:0 auto}.calendar-wrapper{height:100%;justify-content:flex-start;padding-top:0;gap:0}.day-cell{min-height:55px;min-width:0;padding:3px;gap:1px;border-radius:8px}.day-number-container{flex-direction:row;gap:4px;align-items:center;justify-content:center}.hebrew-day{font-size:.7rem}.secular-day{font-size:.65rem}.day-add-btn{display:none!important}}@media(max-width:480px){.glass-panel{padding:4px!important}.hebrew-day{font-size:.65rem}.secular-day{font-size:.6rem}.calendar-header-days{font-size:.55rem}.day-cell{min-height:48px;padding:2px}.shabbos-indicator{font-size:.45rem;padding:1px 3px}.holiday-indicator,.candle-lighting-text{font-size:.4rem}}.rounded-md{border-radius:6px}.rounded-lg{border-radius:8px}.rounded-xl{border-radius:12px}.rounded-2xl{border-radius:16px}.rounded-full{border-radius:9999px}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-grow{flex-grow:1}.flex-shrink-0{flex-shrink:0}.flex-1{flex:1 1 0%}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.p-6{padding:24px}.p-8{padding:32px}.px-1{padding-left:4px;padding-right:4px}.px-4{padding-left:16px;padding-right:16px}.px-6{padding-left:24px;padding-right:24px}.px-8{padding-left:32px;padding-right:32px}.py-2{padding-top:8px;padding-bottom:8px}.py-3{padding-top:12px;padding-bottom:12px}.py-4{padding-top:16px;padding-bottom:16px}.pb-4{padding-bottom:16px}.pb-8{padding-bottom:32px}.pb-10{padding-bottom:40px}.mt-4{margin-top:16px}.mt-2{margin-top:8px}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.w-full{width:100%}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
