.wn-page .wn-container{max-width:1120px}
.wn-card{min-width:0;margin:0 0 20px;border:1px solid var(--yy-border);border-radius:var(--yy-radius);background:var(--yy-card);padding:20px;box-shadow:0 3px 14px rgba(166,90,0,.06)}
.wn-copy{padding-inline:8px}.wn-controls h2,.wn-card h2{font-size:21px;color:var(--yy-primary-dark);margin-bottom:12px}
.wn-date-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.wn-date-fields label{display:block;margin-bottom:5px;font-size:14px;font-weight:700}
.wn-date-fields input,.wn-date-fields select{width:100%;min-width:0;height:46px;border:1px solid var(--yy-control-border);border-radius:6px;padding:7px 10px;background:#fff;color:var(--yy-text);font-size:16px}
.wn-control-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.wn-control-actions .btn{min-height:44px;margin:0}.wn-status{min-height:26px;margin:8px 0 0;color:var(--yy-danger-text);font-size:14px}
.wn-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:20px;align-items:start}.wn-calendar{padding:0;overflow:hidden}
.wn-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 12px 6px}.wn-calendar-head h2{margin:0;font-size:20px;text-align:center;white-space:nowrap}.wn-calendar-head .btn{min-height:44px;padding:8px 12px;margin:0;font-size:14px;white-space:nowrap}.wn-calendar-head .btn:disabled{opacity:.45;cursor:default}
.wn-calendar-note{font-size:13px;color:var(--yy-muted);padding:0 12px 10px;margin:0;text-align:center}
.wn-weekdays,.wn-date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.wn-weekdays span{text-align:center;padding:8px 0;background:#FFF6E6;color:#70420E;font-size:14px;font-weight:700}
.wn-date-grid{border-top:1px solid var(--yy-border)}.wn-empty{background:#FFFBF5;min-height:82px}
.wn-day{position:relative;min-width:0;min-height:82px;border:0;border-right:1px solid #F8E9D4;border-bottom:1px solid #F8E9D4;background:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1px;padding:7px 1px;cursor:pointer;color:var(--yy-text);line-height:1.35}
.wn-day:hover{background:#FFF3DC}.wn-day[aria-pressed=true]{background:#FFEAC4;box-shadow:inset 0 0 0 2px var(--yy-primary-dark)}.wn-day:focus-visible{z-index:2;outline:3px solid #205CA5;outline-offset:-3px;box-shadow:none}
.wn-day-number{font-size:20px;font-weight:700}.wn-day-lunar{font-size:12px;white-space:nowrap}.wn-day-gz{font-size:12px;color:var(--yy-muted);white-space:nowrap}.wn-term .wn-day-lunar{color:#8A4B00;font-weight:700}.wn-today .wn-day-number{color:#8A4B00;border-bottom:2px solid #A65A00}
.wn-aside{min-width:0}.wn-detail-week{color:var(--yy-muted);margin:-7px 0 14px}.wn-detail-facts{display:grid;grid-template-columns:6.2em minmax(0,1fr);gap:10px 12px;font-size:15px}.wn-detail-facts dt{color:var(--yy-muted)}.wn-detail-facts dd{margin:0;overflow-wrap:anywhere}.wn-detail-link{margin:16px 0 0;font-size:14px}
.wn-term-list{list-style:none;margin:0;padding:0}.wn-term-list li{display:flex;justify-content:space-between;gap:15px;padding:8px 0;border-bottom:1px solid #F4E5D0}.wn-term-list li:last-child{border:0}.wn-term-list span{color:var(--yy-muted)}
.wn-guide h3{color:var(--yy-primary-dark);font-size:18px;margin:22px 0 8px}.wn-guide p{margin:0 0 12px}.wn-guide ol{margin:0 0 14px;padding-left:22px}.wn-guide li{margin-bottom:7px}
.wn-layout[aria-busy=true]{opacity:.7}
@media(max-width:767px){.wn-layout{grid-template-columns:minmax(0,1fr);gap:0}.wn-card{padding:16px}.wn-calendar{padding:0}.wn-date-fields{gap:8px}.wn-calendar-head{padding:12px 8px 6px}.wn-card h2{font-size:19px}.wn-calendar-head h2{font-size:18px}.wn-control-actions .btn{flex:1}.wn-calendar-head .btn{padding:8px 10px}.wn-detail-facts{font-size:16px}.wn-day,.wn-empty{min-height:80px}}
@media(max-width:360px){.wn-page .wn-container{padding-inline:5px}.wn-copy{padding-inline:10px}.wn-date-fields input,.wn-date-fields select{padding-inline:6px}.wn-calendar-head{gap:4px}.wn-calendar-head .btn{padding-inline:8px}.wn-card{padding:14px}.wn-calendar{padding:0}.wn-calendar-note{font-size:12px}}
@media(prefers-reduced-motion:reduce){.wn-page *{scroll-behavior:auto}}
