@charset "UTF-8";.page-calendar{padding:.24rem;background:#f8f8f8;min-height:100vh;display:flex;flex-direction:column;gap:.24rem;box-sizing:border-box}.cal-header{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:.32rem;border-radius:.24rem;box-shadow:0 1px 2px 0 rgba(0,0,0,.03),0 1px 3px 0 rgba(0,0,0,.05)}.cal-header__info{display:flex;flex-direction:column;gap:6px}.cal-header__info .current-month{font-size:.4rem;font-weight:700;color:#333;line-height:1.2}.cal-header__info .current-time{display:flex;align-items:center;gap:6px}.cal-header__info .current-time .label{font-size:.2rem;color:#b8b8b8}.cal-header__info .current-time .value{font-size:.24rem;font-weight:500;color:#999;font-family:"JetBrains Mono","Fira Code","SF Mono","Cascadia Code",Consolas,"Courier New",monospace}.cal-header__actions{display:flex;gap:.24rem}.cal-header__actions .action-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgba(124,77,255,.1);border-radius:9999px;transition:all .2s}.cal-header__actions .action-btn:active{transform:scale(.92);background:rgba(124,77,255,.2)}.cal-header__actions .action-btn em{font-size:20px;color:#7c4dff}.cal-month-card{background:#fff;border-radius:.24rem;padding:.24rem .16rem;box-shadow:0 2px 4px -1px rgba(0,0,0,.06),0 4px 8px -1px rgba(0,0,0,.08)}.cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:.16rem}.cal-weekdays__item{text-align:center;font-size:.24rem;color:#999;font-weight:500;padding:.16rem 0}.cal-weekdays__item.is-weekend{color:#7c4dff}.cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-days__item{position:relative;width:100%;padding-bottom:100%;border-radius:.16rem;transition:all .2s ease}.cal-days__item a{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:#333;gap:2px;border-radius:inherit}.cal-days__item .day-num{font-size:.28rem;font-weight:700;line-height:1}.cal-days__item .day-desc{font-size:10px;color:#b8b8b8;line-height:1;transform:scale(.9);max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-days__item:nth-child(7n) a,.cal-days__item:nth-child(7n+1) a{color:#7c4dff}.cal-days__item:nth-child(7n) .day-desc,.cal-days__item:nth-child(7n+1) .day-desc{color:#a280ff}.cal-days__item.is-other{background:0 0!important}.cal-days__item.is-other a{color:#e0e0e0!important}.cal-days__item.is-other .day-desc{color:#e0e0e0!important}.cal-days__item.is-holiday:not(.is-other){background:rgba(124,77,255,.1)}.cal-days__item:has(.badge-work){background:0 0}.cal-days__item:has(.badge-work) a{color:#333}.cal-days__item:has(.badge-work) .day-desc{color:#b8b8b8}.cal-days__item.is-today{background:#7c4dff;box-shadow:0 4px 12px -2px rgba(124,77,255,.5)}.cal-days__item.is-today a{color:#fff!important}.cal-days__item.is-today .day-desc{color:rgba(255,255,255,.85)!important}.cal-days__item.is-today.is-holiday{background:#40f;box-shadow:0 4px 12px -2px rgba(124,77,255,.7)}.cal-days__item.is-today:has(.badge-work){background:#7c4dff;box-shadow:0 4px 12px -2px rgba(124,77,255,.5)}.cal-days__item.is-today .day-badge{background:#fff!important}.cal-days__item.is-today .day-badge.badge-rest{color:#4ade80}.cal-days__item.is-today .day-badge.badge-work{color:#ef4444}.cal-days__item:active:not(.is-other) a{transform:scale(.92)}.cal-days__item:active:not(.is-other):not(.is-today).is-holiday{background:rgba(124,77,255,.2)}.cal-days__item:active:not(.is-other):not(.is-today):not(.is-holiday){background:rgba(124,77,255,.1)}.cal-days__item:active:not(.is-other).is-today{opacity:.85}.cal-days__item:active:not(.is-other).is-today.is-holiday:not(:has(.badge-work)){background:#3d00e6}.cal-days__item .day-badge{position:absolute;top:4px;right:4px;font-size:9px;padding:2px 4px;border-radius:4px;color:#fff;line-height:1;font-weight:700;z-index:2}.cal-days__item .day-badge.badge-rest{background:#4ade80}.cal-days__item .day-badge.badge-work{background:#ef4444}.cal-detail-card{background:#fff;border-radius:.24rem;padding:.4rem;box-shadow:0 2px 4px -1px rgba(0,0,0,.06),0 4px 8px -1px rgba(0,0,0,.08);display:flex;flex-direction:column;gap:.4rem}.cal-detail__main{display:flex;align-items:center;gap:.4rem}.cal-detail__main .main-date{font-size:2.4rem;font-weight:700;color:#7c4dff;line-height:1;min-width:80px;text-align:center}.cal-detail__main .main-info{display:flex;flex-direction:column;gap:8px;border-left:2px solid rgba(124,77,255,.2);padding-left:.32rem}.cal-detail__main .main-info .info-solar{font-size:.28rem;font-weight:700;color:#333}.cal-detail__main .main-info .info-ganzhi,.cal-detail__main .main-info .info-lunar{font-size:.24rem;color:#999}.cal-detail__countdown{background:linear-gradient(135deg,rgba(124,77,255,.1),rgba(96,165,250,.1));color:#40f;padding:.24rem .32rem;border-radius:.16rem;font-size:.24rem;font-weight:500;text-align:center;border:1px dashed rgba(124,77,255,.3)}.cal-detail__yiji{display:flex;flex-direction:column;gap:.32rem;border-top:solid 1px #ebebeb;padding-top:.32rem}.cal-detail__yiji .yiji-row{display:flex;align-items:flex-start;gap:.24rem}.cal-detail__yiji .yiji-row .yiji-title{flex-shrink:0;width:32px;height:32px;border-radius:.08rem;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.24rem;font-weight:700}.cal-detail__yiji .yiji-row .yiji-tags{flex:1;display:flex;flex-wrap:wrap;gap:.16rem}.cal-detail__yiji .yiji-row .yiji-tags .tag{font-size:.24rem;padding:4px 12px;border-radius:.08rem;background:#ebebeb;color:#999;line-height:1.4}.cal-detail__yiji .yiji-row.yiji-yi .yiji-title{background:#4ade80}.cal-detail__yiji .yiji-row.yiji-yi .tag{background:rgba(74,222,128,.12);color:#22ba59}.cal-detail__yiji .yiji-row.yiji-ji .yiji-title{background:#fbbf24}.cal-detail__yiji .yiji-row.yiji-ji .tag{background:rgba(251,191,36,.15);color:#cf9604}