.lunar-cal-overlay{position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.lunar-cal-overlay.visible{opacity:1}.lunar-cal-overlay.hidden{display:none}.lunar-cal-modal{width:95vw;max-width:450px;height:85vh;max-height:85vh;display:flex;flex-direction:column;background:rgba(17,17,17,.95);border:1px solid rgba(255,255,255,.1);border-radius:20px;overflow-y:auto;padding:20px;box-shadow:0 20px 60px rgba(0,0,0,.6);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px)}@media (max-width:640px){.lunar-cal-modal{width:100vw;height:100vh;max-height:100vh;border-radius:0;border:none;padding-top:calc(20px + env(safe-area-inset-top));padding-bottom:calc(20px + env(safe-area-inset-bottom))}}.lunar-cal-header{display:flex;align-items:center;gap:8px;margin-bottom:16px}.lunar-cal-month{flex:1;text-align:center;font-size:18px;font-weight:700;color:#f0f0f0;letter-spacing:.5px}.lunar-cal-nav{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);color:#f0f0f0;width:36px;height:36px;border-radius:10px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.lunar-cal-nav:hover{background:rgba(255,255,255,.15)}.lunar-cal-close{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.8);padding:6px 16px;border-radius:20px;font-size:.85em;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-left:8px;transition:background .2s;white-space:nowrap}.lunar-cal-close:hover{background:rgba(255,80,80,.2);color:#ff6b6b}.lunar-cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:6px}.lunar-cal-weekdays span{text-align:center;font-size:11px;font-weight:600;color:rgba(255,255,255,.4);text-transform:uppercase;padding:4px 0}.lunar-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-bottom:16px}.lunar-cal-cell{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:10px;cursor:pointer;position:relative;transition:all .2s;background:rgba(255,255,255,.03);gap:1px}.lunar-cal-cell:hover{background:rgba(255,255,255,.08)}.lunar-cal-empty{cursor:default;background:0 0}.lunar-cal-empty:hover{background:0 0}.lunar-cal-cell.lunar-cal-today{background:rgba(100,160,255,.1);border:1px solid rgba(100,160,255,.3)}.lunar-cal-cell.lunar-cal-selected{background:rgba(232,168,72,.15);border:2px solid rgba(232,168,72,.6);box-shadow:0 0 12px rgba(232,168,72,.15)}.lunar-cal-cell.lunar-cal-eclipse{box-shadow:inset 0 0 0 1px rgba(200,80,80,.4)}.lunar-cal-day-num{font-size:11px;font-weight:600;color:rgba(255,255,255,.7);line-height:1}.lunar-cal-day-moon{font-size:16px;line-height:1}.lunar-cal-eclipse-dot{position:absolute;bottom:2px;right:4px;font-size:6px;color:#e85050}.lunar-cal-detail{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px;margin-bottom:14px}.lunar-detail-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.lunar-detail-emoji{font-size:36px;line-height:1}.lunar-detail-info{display:flex;flex-direction:column;gap:2px}.lunar-detail-phase{font-size:16px;font-weight:700;color:#f0f0f0}.lunar-detail-date{font-size:12px;color:rgba(255,255,255,.5)}.lunar-detail-times{display:flex;gap:12px}.lunar-detail-time{flex:1;background:rgba(255,255,255,.04);border-radius:10px;padding:8px 12px;display:flex;flex-direction:column;gap:2px}.lunar-detail-time-label{font-size:11px;color:rgba(255,255,255,.4)}.lunar-detail-time-value{font-size:18px;font-weight:700;color:#f0f0f0;font-variant-numeric:tabular-nums}.lunar-detail-eclipse{margin-top:10px;background:rgba(200,80,80,.12);border:1px solid rgba(200,80,80,.25);border-radius:10px;padding:10px 12px;font-size:14px;font-weight:600;color:#f0a0a0}.lunar-detail-eclipse-vis{display:block;font-size:11px;font-weight:400;color:rgba(255,255,255,.5);margin-top:4px}.lunar-eclipses-title{font-size:14px;font-weight:700;color:rgba(255,255,255,.7);margin-bottom:10px}.lunar-eclipses-list{display:flex;flex-direction:column;gap:8px}.lunar-eclipse-item{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:rgba(255,255,255,.04);border-radius:10px;padding:10px 12px}.lunar-eclipse-date{font-size:13px;font-weight:600;color:#f0f0f0;min-width:120px}.lunar-eclipse-badge{font-size:10px;font-weight:700;text-transform:uppercase;padding:3px 8px;border-radius:6px;letter-spacing:.5px}.eclipse-total{background:rgba(200,60,60,.25);color:#ff8a8a;border:1px solid rgba(200,60,60,.3)}.eclipse-partial{background:rgba(200,160,60,.2);color:#ffc870;border:1px solid rgba(200,160,60,.3)}.eclipse-penumbral{background:rgba(100,130,200,.2);color:#90b0e0;border:1px solid rgba(100,130,200,.3)}.lunar-eclipse-vis{font-size:11px;color:rgba(255,255,255,.4);flex-basis:100%}.env-lunar-cal-btn{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:4px 10px;font-size:16px;cursor:pointer;transition:all .2s;vertical-align:middle;margin-left:10px;line-height:1;pointer-events:auto;position:relative;z-index:5}.env-lunar-cal-btn:hover{background:rgba(255,255,255,.15);border-color:rgba(232,168,72,.4);transform:scale(1.05)}.sky-info-card-moon{cursor:pointer!important;transition:all .2s;pointer-events:auto!important;position:relative;z-index:10}.sky-info-card-moon:hover{border-color:rgba(232,168,72,.4);box-shadow:0 0 12px rgba(232,168,72,.1);transform:translateY(-1px)}.sky-info-card-hint{font-size:11px!important;color:rgba(232,168,72,.7)!important;margin-top:4px;letter-spacing:.3px;animation:lunar-hint-pulse 2s ease-in-out infinite}@keyframes lunar-hint-pulse{0%,100%{opacity:.7}50%{opacity:1}}
