*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #f5f5f0;--bg-surface: #ffffff;--bg-hover: rgba(0,0,0,.04);--text: #1a1a1a;--text-muted: #666;--accent: #2196f3;--border: #e0e0e0;--astro-color: #FFD700;--bulgarian-color: #D4AF37;--indian-color: #FF6600;--chinese-color: #CC0000;--today-ring: #2196f3;--detail-bg: #ffffff;--overlay-bg: rgba(0,0,0,.3)}[data-theme=dark]{--bg: #1a1a2e;--bg-surface: #16213e;--bg-hover: rgba(255,255,255,.05);--text: #e0e0e0;--text-muted: #888;--accent: #4fc3f7;--border: #2a2a4a;--today-ring: #4fc3f7;--detail-bg: #1e2a45;--overlay-bg: rgba(0,0,0,.6)}html,body,#app{height:100%;width:100%;overflow:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}.app{display:flex;flex-direction:column;height:100%}.loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-size:1.1rem}.top-bar{display:flex;align-items:center;gap:.75rem;padding:.4rem .75rem;background:var(--bg-surface);border-bottom:1px solid var(--border);min-height:44px;flex-shrink:0;overflow-x:auto}.app-title{font-size:1rem;font-weight:700;color:var(--accent);white-space:nowrap}.year-nav{display:flex;align-items:center;gap:.4rem}.year-info{display:flex;flex-direction:column;align-items:center;line-height:1.2}.year-display{font-size:1.1rem;font-weight:700;min-width:4ch;text-align:center}.year-extra{font-size:.6rem;color:var(--text-muted);white-space:nowrap}.year-btn{background:none;border:1px solid var(--border);color:var(--text);padding:.2rem .5rem;border-radius:4px;cursor:pointer;font-size:.9rem}.year-btn:hover{background:var(--bg-hover)}.calendar-toggles{display:flex;gap:.35rem;flex-shrink:0}.toggle-chip{display:flex;align-items:center;gap:.25rem;padding:.15rem .5rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--text-muted);font-size:.7rem;cursor:pointer;transition:all .15s;white-space:nowrap}.toggle-chip.active{background:color-mix(in srgb,var(--chip-color, var(--accent)) 12%,transparent)}.toggle-chip.active .chip-label{color:var(--chip-color, var(--text))}.toggle-chip:disabled{opacity:.8;cursor:default}.chip-icon{font-size:.85rem;filter:saturate(.25) opacity(.55);transition:filter .15s}.toggle-chip.active .chip-icon{filter:none}.chip-label{font-size:.65rem}.custom-layers-separator{font-size:.75rem;opacity:.4;align-self:center;padding:0 .1rem;cursor:default;-webkit-user-select:none;user-select:none}.custom-layer-toggles{margin-left:.25rem}.top-left{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.health-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.health-dot.healthy{background:#4caf50}.health-dot.unhealthy{background:#f44336;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.top-actions{display:flex;gap:.3rem;margin-left:auto;flex-shrink:0}.icon-btn,.theme-btn,.logout-btn,.chat-toggle{background:none;border:none;color:var(--text-muted);font-size:1rem;cursor:pointer;padding:.2rem}.icon-btn:hover,.theme-btn:hover,.logout-btn:hover,.chat-toggle:hover{color:var(--text)}.icon-btn.active{color:var(--accent)}.speed-btn{font-size:.7rem;font-weight:600;min-width:28px;text-align:center}.install-btn{display:flex;align-items:center}.content{flex:1;overflow:auto;padding:.5rem;min-height:0}.view-enter{animation:viewFadeIn .18s ease-out}@keyframes viewFadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.calendar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;max-width:1400px;margin:0 auto}.month-grid{background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;padding:.4rem}.month-header{font-size:.8rem;font-weight:600;text-align:center;padding:.25rem 0;color:var(--accent)}.month-days-header{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.day-name{font-size:.55rem;color:var(--text-muted);padding:.1rem 0}.month-days{display:grid;grid-template-columns:repeat(7,1fr)}.day-cell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:.15rem 0;min-height:2.2rem;border:none;background:none;color:var(--text);font-size:.7rem;cursor:pointer;border-radius:4px;transition:background .1s}.day-cell:hover{background:var(--bg-hover)}.day-cell.empty{cursor:default}.day-cell.empty:hover{background:none}.day-cell.today{outline:2px solid var(--today-ring);outline-offset:-2px;border-radius:4px}.day-cell.selected{background:color-mix(in srgb,var(--accent) 20%,transparent)}@keyframes dayCellLocate{0%,to{box-shadow:0 0 0 0 transparent}25%{box-shadow:0 0 0 3px var(--accent),0 0 10px var(--accent)}75%{box-shadow:0 0 0 2px var(--accent),0 0 6px var(--accent)}}.day-cell.highlighted{animation:dayCellLocate 2s ease-in-out 2 forwards;border-radius:4px}.day-number{font-size:.7rem;font-weight:500;line-height:1}.day-markers{display:flex;gap:1px;font-size:.5rem;line-height:1;height:.6rem}.marker{display:inline-block}.marker.solstice{color:var(--astro-color);font-size:.6rem}.marker.eclipse{color:#f44;font-size:.55rem}.marker.moon{color:var(--text-muted);font-size:.5rem}.event-dots{display:flex;gap:2px;margin-top:1px}.dot{width:4px;height:4px;border-radius:50%}.day-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);display:flex;align-items:center;justify-content:flex-end;z-index:100}.day-detail{width:380px;max-width:90vw;height:100%;background:var(--detail-bg);overflow-y:auto;border-left:1px solid var(--border);animation:slideIn .2s ease-out}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.day-detail-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--detail-bg);z-index:1}.day-detail-header h2{font-size:.95rem;font-weight:600}.close-btn{background:none;border:none;color:var(--text-muted);font-size:1.2rem;cursor:pointer;padding:.25rem}.close-btn:hover{color:var(--text)}.day-detail-body{padding:1rem}.day-detail-daylight{font-size:.8rem;color:var(--text-muted);padding:.5rem 0;border-bottom:1px solid var(--border);margin-bottom:.75rem}.day-detail-section{margin-bottom:1rem}.section-header{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.03em}.section-icon{font-size:1rem}.event-card{padding:.4rem 0;border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent)}.event-card:last-child{border-bottom:none}.event-name{font-size:.85rem;font-weight:500}.event-name-alt{font-size:.75rem;color:var(--text-muted);font-style:italic;margin-top:.1rem}.event-desc{font-size:.78rem;color:var(--text-muted);margin-top:.2rem;line-height:1.4}.day-detail-meta{display:flex;flex-direction:column;gap:.2rem;margin-bottom:.5rem}.day-detail-proto-bg{font-size:.78rem;color:var(--bulgarian-color);font-style:italic}.cross-cultural .section-header{color:var(--accent)}.saints-subsection-header{display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem;margin-top:.6rem}.saints-section{background:color-mix(in srgb,var(--bulgarian-color) 8%,transparent);border-radius:8px;padding:.6rem;margin-top:.5rem}.saints-list{display:flex;flex-wrap:wrap;gap:.3rem .8rem}.saint-name{font-size:.82rem;color:var(--text);line-height:1.5}.feast-badge{font-size:.65rem;background:var(--bulgarian-color);color:#000;padding:.1rem .4rem;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.fasting-rule{font-size:.75rem;color:var(--text-muted);margin-top:.4rem;font-style:italic}.nameday-section{background:color-mix(in srgb,#D4AF37 8%,transparent);border-radius:8px;padding:.6rem;margin-top:.5rem}.nameday-list{display:flex;flex-wrap:wrap;gap:.3rem .8rem}.nameday-name{font-size:.82rem;color:var(--text);line-height:1.5}.nameday-holiday-badge{font-size:.65rem;background:#d4af37;color:#1a1a1a;border-radius:4px;padding:.1rem .35rem;margin-left:auto;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.marker.nameday{font-size:.55rem}.today-panel{background:var(--bg-surface);border-bottom:1px solid var(--border);padding:.3rem .5rem}.today-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.today-section-label{font-size:.65rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0}.today-mode-toggle{display:flex;gap:2px}.today-mode-btn{padding:.1rem .35rem;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-muted);font-size:.65rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.today-mode-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.today-content{display:flex;flex-direction:column;gap:.2rem}.today-date-group{display:flex;flex-direction:column;gap:.15rem}.today-date-label{font-size:.6rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding:.15rem .3rem;border-radius:6px;background:var(--bg-hover);white-space:nowrap}.today-event-wrap{display:flex;flex-direction:column;gap:.15rem}.today-event-pill{display:flex;align-items:center;gap:.25rem;padding:.15rem .45rem;border:1px solid;border-radius:10px;background:transparent;color:var(--text);font-size:.7rem;cursor:pointer;white-space:nowrap;transition:background .15s}.today-event-pill:hover,.today-event-pill.expanded{background:color-mix(in srgb,var(--event-color, #888) 12%,transparent)}.today-event-icon{font-size:.8rem;line-height:1}.today-event-name{max-width:160px;overflow:hidden;text-overflow:ellipsis}.today-event-actions{display:flex;gap:.2rem}.today-action-btn{padding:.1rem .4rem;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-muted);font-size:.65rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.today-action-btn:hover,.today-action-btn.active{background:var(--bg-hover);color:var(--text)}.today-nav-btn{border-color:var(--accent);color:var(--accent)}.today-nav-btn:hover{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.today-event-info{width:100%;font-size:.7rem;color:var(--text-muted);padding:.25rem .4rem;border-left:2px solid var(--border);margin-left:.5rem;line-height:1.4}.today-empty{font-size:.7rem;color:var(--text-muted);font-style:italic}.today-date-badge{font-size:.6rem;font-weight:500;color:var(--accent);margin-left:.3rem;letter-spacing:.02em}.today-system-icon{font-size:.75rem;margin-left:auto;flex-shrink:0;opacity:.8}.search-box{position:relative;flex-shrink:0}.search-input-wrap{display:flex;align-items:center;gap:.25rem;border:1px solid var(--border);border-radius:14px;padding:.15rem .4rem;background:var(--bg);transition:border-color .15s}.search-input-wrap:focus-within{border-color:var(--accent)}.search-icon{font-size:.7rem;opacity:.6;pointer-events:none}.search-input{border:none;background:transparent;color:var(--text);font-size:.7rem;outline:none;width:110px;min-width:0}.search-input::placeholder{color:var(--text-muted)}.search-clear{background:none;border:none;color:var(--text-muted);font-size:.65rem;cursor:pointer;padding:0;line-height:1}.search-results{position:absolute;top:calc(100% + 4px);left:0;min-width:220px;max-height:280px;overflow-y:auto;background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 4px 16px #00000040;z-index:200;display:flex;flex-direction:column;padding:.2rem}.search-result-item{display:flex;align-items:center;gap:.4rem;padding:.3rem .4rem;border:none;border-radius:8px;background:transparent;color:var(--text);font-size:.72rem;cursor:pointer;text-align:left;transition:background .12s;border-left:2px solid var(--result-color, #888)}.search-result-item:hover{background:var(--bg-hover)}.search-result-icon{font-size:.8rem;flex-shrink:0}.search-result-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-date{font-size:.65rem;color:var(--text-muted);flex-shrink:0}.search-no-results{font-size:.7rem;color:var(--text-muted);font-style:italic;padding:.4rem .5rem}.no-events{color:var(--text-muted);font-size:.85rem;text-align:center;padding:2rem 0}.chat-toggle{background:none;border:none;color:var(--text-muted);font-size:1.1rem;cursor:pointer;padding:.2rem}.chat-toggle:hover{color:var(--text)}.chat-panel-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);display:flex;align-items:stretch;justify-content:flex-end;z-index:200}.chat-panel{width:420px;max-width:95vw;background:var(--detail-bg);display:flex;flex-direction:column;border-left:1px solid var(--border);animation:slideIn .2s ease-out}.chat-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border);flex-shrink:0}.chat-panel-header h3{font-size:.9rem;font-weight:600;color:var(--accent)}.chat-messages{flex:1;overflow-y:auto;padding:1rem;min-height:0}.chat-empty{text-align:center;color:var(--text-muted);padding:2rem 0}.chat-empty p{font-size:.85rem;margin-bottom:1rem}.chat-suggestions{display:flex;flex-direction:column;gap:.4rem}.chat-suggestions button{background:var(--bg-surface);border:1px solid var(--border);color:var(--text);padding:.5rem .75rem;border-radius:8px;font-size:.75rem;cursor:pointer;text-align:left;transition:background .1s}.chat-suggestions button:hover{background:var(--bg-hover);border-color:var(--accent)}.chat-message{margin-bottom:.75rem}.chat-message.user .message-content{background:color-mix(in srgb,var(--accent) 15%,transparent);border-radius:12px 12px 4px;padding:.5rem .75rem;font-size:.82rem;margin-left:2rem}.chat-message.assistant .message-content{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px 12px 12px 4px;padding:.5rem .75rem;font-size:.82rem;margin-right:2rem;line-height:1.5}.loading-dots{color:var(--text-muted);font-style:italic}.chat-header-actions{display:flex;align-items:center;gap:.3rem}.lang-btn{font-size:.7rem;font-weight:700;padding:.15rem .4rem;border:1px solid var(--border);border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer}.lang-btn:hover{color:var(--accent);border-color:var(--accent)}.assistant-block{position:relative}.speak-btn{position:absolute;bottom:-.1rem;right:2.2rem;background:none;border:none;color:var(--text-muted);font-size:.75rem;cursor:pointer;padding:.1rem;opacity:.6;transition:opacity .15s}.speak-btn:hover{opacity:1;color:var(--accent)}.mic-btn{background:none;border:1px solid var(--border);color:var(--text-muted);padding:.4rem .6rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .15s;flex-shrink:0}.mic-btn:hover{color:var(--accent);border-color:var(--accent)}.mic-btn.listening{color:#f44336;border-color:#f44336;animation:pulse 1s infinite}.mic-btn:disabled{opacity:.4;cursor:not-allowed}.transcript-preview{font-size:.72rem;color:var(--accent);padding:.25rem .6rem;animation:fadeIn .2s}.transcript-preview.transcribing{color:var(--text-muted)}.transcript-preview.sr-error{color:#f44336;cursor:pointer}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.chat-input-area{border-top:1px solid var(--border);flex-shrink:0}.chat-input-bar{display:flex;gap:.4rem;padding:.6rem}.chat-input{flex:1;background:var(--bg-surface);border:1px solid var(--border);color:var(--text);padding:.5rem .75rem;border-radius:8px;font-size:.82rem;outline:none}.chat-input:focus{border-color:var(--accent)}.chat-input::placeholder{color:var(--text-muted)}.chat-send{background:var(--accent);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer}.chat-send:disabled{opacity:.5;cursor:not-allowed}.markdown-body p{margin:.3em 0}.markdown-body p:first-child{margin-top:0}.markdown-body p:last-child{margin-bottom:0}.markdown-body ul,.markdown-body ol{margin:.3em 0;padding-left:1.2em}.markdown-body li{margin:.15em 0}.markdown-body code{background:var(--bg-hover);padding:.1em .3em;border-radius:3px;font-size:.78rem}.markdown-body pre{background:var(--bg-hover);padding:.5rem;border-radius:6px;overflow-x:auto;font-size:.78rem}.markdown-body blockquote{border-left:3px solid var(--accent);padding-left:.5rem;margin:.3em 0;color:var(--text-muted)}.markdown-body strong{color:var(--accent)}.sources-section{margin-top:.4rem;margin-right:2rem}.sources-toggle{background:none;border:none;color:var(--text-muted);font-size:.72rem;cursor:pointer;padding:.2rem 0}.sources-toggle:hover{color:var(--accent)}.sources-list{display:flex;flex-direction:column;gap:.3rem;margin-top:.3rem}.source-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;padding:.4rem .6rem;font-size:.72rem}.source-header{display:flex;align-items:center;gap:.3rem;margin-bottom:.2rem}.source-system-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.source-number{color:var(--text-muted);font-weight:600}.source-name{font-weight:500;color:var(--text);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-similarity{color:var(--accent);font-weight:600;cursor:help}.source-summary{color:var(--text-muted);line-height:1.35}.view-toggle{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:6px;overflow:hidden;flex-shrink:0}.view-toggle-btn{background:none;border:none;color:var(--text-muted);font-size:.95rem;padding:.2rem .5rem;cursor:pointer;transition:all .15s;line-height:1}.view-toggle-btn:hover{color:var(--text)}.view-toggle-btn.active{background:var(--accent);color:#fff}.year-wheel-container{display:flex;align-items:center;justify-content:center;height:100%;width:100%;padding:.5rem;position:relative;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none}.wheel-zoom-wrapper{transition:none}.year-wheel-svg{max-width:100%;max-height:100%;width:auto;height:auto}.day-arc{transition:fill-opacity .1s,stroke-width .1s}.day-arc:hover{fill-opacity:1!important;stroke-width:2;stroke:var(--accent)}.day-arc.selected{filter:brightness(1.3)}.day-arc.today{filter:brightness(1.1)}.culture-ring-arc{transition:fill-opacity .1s,stroke-width .1s}.culture-ring-arc:hover{fill-opacity:1!important;stroke-width:2;stroke:var(--accent)}.culture-ring-arc.selected{filter:brightness(1.3)}.culture-ring-arc.today{filter:brightness(1.1)}.culture-ring-ghost circle{transition:opacity .3s}.event-name-label{pointer-events:none;-webkit-user-select:none;user-select:none}.event-description-label{pointer-events:none;-webkit-user-select:none;user-select:none;transition:opacity .4s ease-in}@keyframes eventPulseGlow{0%{filter:drop-shadow(0 0 0px transparent);opacity:1}20%{filter:drop-shadow(0 0 8px var(--accent));opacity:1}50%{filter:drop-shadow(0 0 14px var(--accent));opacity:.85}75%{filter:drop-shadow(0 0 8px var(--accent));opacity:1}to{filter:drop-shadow(0 0 0px transparent);opacity:1}}.event-highlight-pulse{animation:eventPulseGlow 2.5s ease-in-out forwards}.navigate-needle{animation:needleFade 2.5s ease-in-out forwards}@keyframes needleFade{0%{opacity:1}70%{opacity:1}to{opacity:0}}.day-number-ring{transition:opacity .3s}.day-number-label{-webkit-user-select:none;user-select:none}.month-label{pointer-events:none;-webkit-user-select:none;user-select:none}.month-label-clickable{pointer-events:auto!important;cursor:pointer;transition:fill .15s,font-size .15s}.month-label-clickable:hover{fill:var(--accent)!important}.wheel-center-year,.wheel-center-label{pointer-events:none;-webkit-user-select:none;user-select:none}.day-number-label{-webkit-user-select:none;user-select:none;transition:opacity .2s}.wheel-controls{position:absolute;bottom:1rem;right:1rem;display:flex;flex-direction:column;gap:.35rem;z-index:10}.wheel-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--bg-surface);color:var(--text);font-size:1.1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;box-shadow:0 2px 8px #00000026;-webkit-tap-highlight-color:transparent}.wheel-btn:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--accent)}.wheel-btn:active{transform:scale(.92)}.wheel-btn:disabled{opacity:.3;cursor:default}.wheel-btn:disabled:hover{background:var(--bg-surface);border-color:var(--border);color:var(--text)}.wheel-btn-today{background:var(--accent);color:#fff;border-color:var(--accent)}.wheel-btn-today:hover{background:color-mix(in srgb,var(--accent) 85%,#000);color:#fff}.wheel-btn-reset{background:color-mix(in srgb,var(--accent) 15%,var(--bg-surface))}.wheel-zoom-badge{position:absolute;top:.75rem;right:.75rem;background:var(--bg-surface);border:1px solid var(--border);color:var(--text-muted);font-size:.65rem;font-weight:600;padding:.15rem .4rem;border-radius:4px;opacity:.7;pointer-events:none;animation:fadeIn .2s;box-shadow:0 1px 4px #0000001a}.wheel-settings-wrapper{position:relative;display:inline-flex}.wheel-settings-btn{display:flex;align-items:center;justify-content:center}.wheel-settings-btn.active{color:var(--accent)}.wheel-settings-panel{position:absolute;top:calc(100% + 6px);right:0;background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;padding:.6rem .8rem;min-width:180px;box-shadow:0 4px 16px #0003;z-index:100;animation:fadeIn .15s ease-out}.wheel-settings-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.5rem}.wheel-settings-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.wheel-settings-label{font-size:.8rem;color:var(--text)}.wheel-settings-toggle{display:flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}.toggle-option{background:none;border:none;padding:.25rem .5rem;font-size:.75rem;cursor:pointer;color:var(--text-muted);transition:all .15s}.toggle-option.active{background:var(--accent);color:#fff}.toggle-option:not(.active):hover{background:var(--bg-hover)}@media(max-width:1024px){.calendar-grid{grid-template-columns:repeat(3,1fr)}.chip-label{display:none}}@media(max-width:768px){.calendar-grid{grid-template-columns:repeat(2,1fr)}.day-detail,.chat-panel{width:100%;max-width:100vw;border-left:none}}@media(max-width:500px){.calendar-grid{grid-template-columns:1fr}.top-bar{flex-wrap:wrap;gap:.4rem}.calendar-toggles{order:10;width:100%;justify-content:center}.day-detail-overlay{align-items:flex-end}.day-detail{height:60vh;border-left:none;border-top:1px solid var(--border);border-radius:12px 12px 0 0;animation:slideUp .2s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.wheel-controls{bottom:.75rem;right:.75rem;gap:.4rem}.wheel-btn{width:42px;height:42px;font-size:1.2rem}.wheel-zoom-badge{font-size:.6rem}}
