.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.xz-week-page{background:#f3f6fa}.xz-week-page .xz-navigation-hero{height:390px}.xz-week-page .xz-navigation-hero:after{background:linear-gradient(90deg,#172a46aa,#3c567a66)}
.xz-week-hero-copy{position:relative;z-index:1;text-align:center;color:#fff}.xz-week-hero-copy>span{font-size:13px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;opacity:.82}.xz-week-hero-copy h1{margin:8px 0 5px;font-size:42px}.xz-week-hero-copy p{margin:0;font-size:17px;opacity:.9}
.xz-week-panel{max-width:1240px;margin-top:-48px;padding:0;background:transparent;box-shadow:none}.xz-week-app{display:grid;min-width:0;gap:24px;color:#354254}.xz-week-today,.xz-week-card,.xz-week-guide{box-sizing:border-box;min-width:0;background:#fff;border:1px solid #e4e9f0;border-radius:16px;box-shadow:0 12px 35px #26344b0d}.xz-week-today{padding:42px 46px;background:linear-gradient(135deg,#fff 0%,#f4f8fd 100%)}
.xz-week-kicker{margin:0 0 7px;color:#7690ad;font-size:12px;font-weight:800;letter-spacing:.2em}.xz-week-today h2{margin:0;font-size:clamp(25px,3vw,38px);line-height:1.45;color:#2f3f54}.xz-week-sub{margin:9px 0 0;color:#718096;font-size:16px}
.xz-week-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:30px}.xz-week-stats article{padding:20px;border:1px solid #e5ebf2;border-radius:12px;background:#fff}.xz-week-stats span,.xz-week-stats small{display:block;color:#718096}.xz-week-stats strong{display:block;margin:7px 0 5px;color:#3c567a;font-size:27px;line-height:1.2}.xz-week-stats small{font-size:12px;line-height:1.5}
.xz-week-card{padding:34px 38px}.xz-week-cardhead{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.xz-week-card h2,.xz-week-guide h2{margin:0 0 20px;color:#2f3f54;font-size:24px}.xz-calendar-card{padding:42px 46px 38px;background:linear-gradient(145deg,#fff 0%,#fbfcfe 100%);border-color:#dfe7f0;box-shadow:0 22px 55px #24374f14}.xz-calendar-intro{text-align:center}.xz-calendar-intro .xz-week-kicker{margin-bottom:6px}.xz-calendar-intro h2{margin:0;color:#27384e;font-size:clamp(25px,3vw,34px);letter-spacing:.02em}.xz-week-tabs{display:grid;grid-template-columns:1fr 1fr;width:min(100%,520px);margin:27px auto 18px;padding:4px;border:1px solid #dbe4ee;border-radius:14px;background:#edf2f7;box-shadow:inset 0 1px 2px #2b40530a}.xz-week-card .xz-week-tab{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:11px 20px;border:0;border-radius:10px;background:transparent;color:#67768a;box-shadow:none;transition:background .2s,color .2s,box-shadow .2s,transform .2s}.xz-week-card .xz-week-tab strong{font-size:16px}.xz-week-card .xz-week-tab span{font-size:11px;font-weight:500;opacity:.72}.xz-week-card .xz-week-tab.is-active{background:linear-gradient(135deg,#425f82,#344e6f);color:#fff;box-shadow:0 7px 18px #344e6f35}.xz-week-card .xz-week-tab:hover{background:#fff;color:#314966}.xz-week-card .xz-week-tab.is-active:hover{background:linear-gradient(135deg,#425f82,#344e6f);color:#fff;transform:translateY(-1px)}
.xz-mode-summary{margin:0 auto 28px;padding:15px 20px;border:1px solid #dce7f1;border-radius:10px;background:#f4f8fc;color:#53667c;font-size:15px;line-height:1.9;text-align:center}.xz-mode-summary strong{color:#9b574b;font-weight:800}.xz-calendar-nav{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:14px;max-width:410px;margin:0 auto 9px}.xz-calendar-nav strong{text-align:center;color:#263a52;font-family:Georgia,"Times New Roman","Noto Serif SC",serif;font-size:24px;letter-spacing:.04em}.xz-calendar-nav button,.xz-week-card button{border:0;border-radius:7px;background:#3c567a;color:#fff;padding:10px 16px;cursor:pointer;font-size:15px}.xz-calendar-nav button:hover,.xz-week-card button:hover{background:#304865}.xz-calendar-nav button:first-child,.xz-calendar-nav button:last-child{width:42px;height:42px;padding:0;border:1px solid #d9e3ed;border-radius:50%;background:#fff;color:#3b5575;font-size:27px;line-height:1;box-shadow:0 5px 15px #31496412}.xz-calendar-nav button:first-child:hover,.xz-calendar-nav button:last-child:hover{border-color:#8097b2;background:#edf3f8}.xz-calendar-today-row{display:flex;justify-content:center;margin:0 0 15px}.xz-week-card #xz-month-today{padding:6px 14px;border:1px solid #dbe4ed;border-radius:999px;background:#f5f8fb;color:#536d8c;font-size:12px;font-weight:700;box-shadow:none}.xz-week-card #xz-month-today:hover{background:#e9f0f6}
.xz-calendar-wrap{overflow-x:auto;border:1px solid #dce5ee;border-radius:14px;background:#fff;box-shadow:0 12px 30px #2d41560c}.xz-calendar{width:100%;min-width:650px;border-collapse:separate;border-spacing:0;table-layout:fixed}.xz-calendar th{padding:14px 8px;border-bottom:1px solid #d9e3ed;background:#edf4f9;color:#4d6178;font-size:14px;font-weight:800}.xz-calendar th:first-child{width:64px;color:#375371}.xz-calendar th:nth-last-child(-n+2){color:#a65454}.xz-calendar td{height:84px;padding:0;border-bottom:1px solid #edf1f5;border-right:1px solid #edf1f5;background:#fff;text-align:center;vertical-align:middle}.xz-calendar tbody tr:last-child td,.xz-calendar tbody tr:last-child th{border-bottom:0}.xz-calendar td:last-child{border-right:0}.xz-calendar .xz-week-no{border-bottom:1px solid #e5ebf2;background:linear-gradient(180deg,#f3f7fb,#edf3f8);color:#496580;font-weight:800;font-size:14px}.xz-calendar .xz-week-no span{display:block;margin-top:2px;font-size:9px;font-weight:600;opacity:.58}.xz-week-card .xz-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:60px;height:60px;margin:auto;padding:0;border:1px solid transparent;border-radius:13px;background:transparent;color:#26384c;box-shadow:none;cursor:pointer;font:inherit;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}.xz-week-card .xz-day:hover{border-color:#d4e0eb;background:#eef4f9;color:#26384c;box-shadow:none;transform:translateY(-1px)}.xz-week-card .xz-day.is-outside{color:#aeb8c5;opacity:.52}.xz-week-card .xz-day.is-weekend:not(.is-selected) .xz-solar{color:#b55c62}.xz-week-card .xz-day.is-today{border-color:#b78b67;background:#fffaf4;box-shadow:inset 0 0 0 1px #d9b99e;font-weight:800}.xz-week-card .xz-day.is-selected{border-color:#587696;background:linear-gradient(145deg,#e8f0f7,#dce8f2);color:#253c56;box-shadow:0 7px 18px #3c567a22}.xz-week-card .xz-day.is-selected .xz-solar{color:#263f5c}.xz-solar{font-size:18px;line-height:1.05}.xz-lunar{max-width:55px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#7f8c9c;font-weight:500}.xz-week-card .xz-day.is-selected .xz-lunar{color:#667d95}.xz-calendar-note{margin:14px 0 0;color:#7b8897;font-size:13px;text-align:center}
.xz-week-queries{display:grid;grid-template-columns:1fr 1fr;gap:24px}.xz-week-card form label{display:block;color:#536274;font-size:14px;font-weight:600}.xz-query-row{display:flex;gap:10px}.xz-week-card input,.xz-week-card select{box-sizing:border-box;width:100%;margin-top:7px;padding:10px 12px;border:1px solid #ccd6e2;border-radius:7px;background:#fff;color:#354254;font-size:15px}.xz-query-row input{margin:0}.xz-week-fields{display:grid;grid-template-columns:.8fr .6fr 1.4fr;gap:10px;margin-bottom:12px}.xz-date-shortcuts{display:flex;gap:8px;margin-top:10px}.xz-week-card .xz-date-shortcuts button{padding:7px 13px;background:#eaf0f7;color:#3c567a;font-size:13px}.xz-week-card .xz-date-shortcuts button:hover{background:#dce7f2}.xz-query-result{margin-top:18px;padding:16px 18px;border-left:4px solid #7592b4;border-radius:6px;background:#f5f8fb;color:#455569;line-height:1.75}.xz-query-result strong{color:#2f455f}
.xz-week-guide{padding:42px 46px;line-height:1.9}.xz-week-guide>h2{margin-top:30px}.xz-week-guide p{color:#536274}.xz-week-guide .xz-page-content{margin-bottom:22px}.xz-week-faq{margin-top:34px}.xz-week-faq details{border-top:1px solid #e4e9f0;padding:16px 0}.xz-week-faq summary{cursor:pointer;font-weight:700;color:#354254}.xz-week-faq details p{margin:10px 0 0}
@media(max-width:850px){.xz-week-stats{grid-template-columns:1fr 1fr}.xz-week-queries{grid-template-columns:1fr}.xz-week-cardhead{display:block}.xz-week-panel{width:calc(100% - 28px)}}
@media(max-width:560px){.xz-week-page .xz-navigation-hero{height:310px}.xz-week-hero-copy h1{font-size:31px}.xz-week-hero-copy p{font-size:14px}.xz-week-today,.xz-week-card,.xz-week-guide{padding:24px 18px;border-radius:12px}.xz-week-stats{grid-template-columns:1fr;gap:10px}.xz-week-stats article{padding:16px}.xz-week-card .xz-week-tab{display:grid;gap:1px;min-height:50px;padding:9px 8px}.xz-week-card .xz-week-tab strong{font-size:15px}.xz-week-card .xz-week-tab span{font-size:10px}.xz-mode-summary{padding:13px 12px;font-size:14px;text-align:left}.xz-calendar-nav{grid-template-columns:40px 1fr 40px;gap:8px}.xz-calendar-nav strong{font-size:21px}.xz-calendar{min-width:610px}.xz-calendar td{height:76px}.xz-week-fields{grid-template-columns:1fr 1fr}.xz-week-fields label:last-child{grid-column:1/-1}.xz-query-row{display:grid}.xz-week-panel{margin-top:-25px}}

/* Calendar readability and responsive containment */
.xz-week-tabs{box-sizing:border-box}
.xz-week-card .xz-week-tab{min-width:0}
.xz-mode-summary strong{color:#e1494f}
.xz-calendar-wrap{box-sizing:border-box;width:100%;max-width:100%}
.xz-week-card .xz-day.is-today{border-color:#e1494f;background:#fff7f7;box-shadow:inset 0 0 0 1px #f2a6aa}
.xz-week-card .xz-day.is-selected{border-color:#e1494f;background:linear-gradient(145deg,#fff7f7,#fdebed);color:#293c51;box-shadow:0 7px 18px #c94f5722}
.xz-week-card .xz-day.is-selected .xz-solar{color:#c9363f}
@media(max-width:560px){.xz-calendar-card{overflow:hidden}.xz-week-tabs{width:100%}.xz-calendar-wrap{overflow-x:auto}.xz-calendar{min-width:610px}}

/* Compact above-the-fold calendar layout */
.xz-week-page .xz-navigation-hero{height:210px}
.xz-week-hero-copy>span{font-size:11px}
.xz-week-hero-copy h1{margin:5px 0 3px;font-size:34px}
.xz-week-hero-copy p{font-size:15px}
.xz-week-panel{margin-top:-24px}
.xz-week-app{gap:18px}
.xz-calendar-card{padding:22px 30px 18px}
.xz-calendar-intro .xz-week-kicker{margin-bottom:2px;font-size:10px}
.xz-calendar-intro h2{font-size:30px}
.xz-week-tabs{margin:14px auto 10px;padding:3px;border-radius:12px}
.xz-week-card .xz-week-tab{min-height:44px;padding:8px 16px;border-radius:9px}
.xz-week-card .xz-week-tab strong{font-size:16px}
.xz-mode-summary{margin:0 auto 14px;padding:10px 16px;font-size:18px;line-height:1.65}
.xz-calendar-nav{grid-template-columns:38px 1fr 38px;max-width:360px;margin:0 auto 3px}
.xz-calendar-nav strong{font-size:23px}
.xz-calendar-nav button:first-child,.xz-calendar-nav button:last-child{width:36px;height:36px;font-size:23px}
.xz-calendar-today-row{margin:0 0 8px}
.xz-week-card #xz-month-today{padding:4px 12px;font-size:11px}
.xz-calendar-wrap{border-radius:12px;box-shadow:0 7px 20px #2d415609}
.xz-calendar th{padding:8px 6px;font-size:13px}
.xz-calendar td{height:58px}
.xz-calendar .xz-week-no{font-size:13px}
.xz-calendar .xz-week-no span{font-size:8px}
.xz-week-card .xz-day{width:46px;height:46px;gap:2px;border-radius:10px}
.xz-solar{font-size:17px}
.xz-lunar{font-size:10px}
.xz-calendar-note{margin:8px 0 0;font-size:12px}
@media(max-width:560px){.xz-week-page .xz-navigation-hero{height:175px}.xz-week-hero-copy h1{font-size:27px}.xz-week-hero-copy p{font-size:12px}.xz-week-panel{margin-top:-16px}.xz-calendar-card{padding:18px 14px 14px}.xz-calendar-intro h2{font-size:26px}.xz-week-tabs{margin-top:11px}.xz-mode-summary{padding:10px 11px;font-size:16px;line-height:1.7}.xz-calendar td{height:56px}.xz-week-card .xz-day{width:44px;height:44px}}

/* One-screen desktop view */
@media(min-width:851px){
  .xz-week-page .xz-navigation-hero{height:130px}
  .xz-week-hero-copy>span,.xz-week-hero-copy p{display:none}
  .xz-week-hero-copy h1{margin:0;font-size:27px}
  .xz-week-panel{margin-top:-20px}
  .xz-calendar-card{padding:14px 30px 10px}
  .xz-calendar-intro .xz-week-kicker{display:none}
  .xz-calendar-intro h2{margin:0;font-size:27px}
  .xz-week-tabs{margin:8px auto 7px}
  .xz-week-card .xz-week-tab{min-height:42px;padding:7px 14px}
  .xz-mode-summary{margin-bottom:8px;padding:7px 12px;font-size:18px;line-height:1.55}
  .xz-calendar-nav{margin-bottom:0}
  .xz-calendar-nav strong{font-size:22px}
  .xz-calendar-nav button:first-child,.xz-calendar-nav button:last-child{width:34px;height:34px}
  .xz-calendar-today-row{margin-bottom:5px}
  .xz-calendar th{padding:7px 6px}
  .xz-calendar td{height:50px}
  .xz-week-card .xz-day{width:42px;height:42px}
  .xz-solar{font-size:16px}
  .xz-lunar{font-size:9px}
  .xz-calendar-note{display:none}
}

/* Clear answer-first visual hierarchy */
.xz-calendar-card{border-color:#e6ebf1;background:#fff;box-shadow:0 10px 28px #26384c12}
.xz-mode-summary{margin:0 auto 5px;padding:4px 12px 8px;border:0;background:transparent;text-align:center}
.xz-answer-rule,.xz-answer-primary,.xz-answer-detail{display:block}
.xz-answer-rule{margin-bottom:1px;color:#6b7b8e;font-size:13px;font-weight:700}
.xz-answer-primary{display:flex;align-items:baseline;justify-content:center;gap:13px;line-height:1.15}
.xz-answer-primary strong{color:#e1494f;font-size:34px;font-weight:900;letter-spacing:.01em}
.xz-answer-primary i{color:#bdc6d0;font-size:22px;font-style:normal}
.xz-answer-detail{margin-top:5px;color:#66778a;font-size:15px;line-height:1.55}
.xz-answer-detail strong{color:#e1494f;font-weight:800}
.xz-week-tabs{margin-top:5px;border-color:#e4e9ef;background:#f1f4f7;box-shadow:none}
.xz-week-card .xz-week-tab.is-active{box-shadow:0 4px 12px #344e6f26}
.xz-calendar-wrap{border-color:#e6edf3;box-shadow:none}
.xz-calendar td{border-right:0;background:#fbfdff}
.xz-calendar .xz-week-no{background:#f0f6fa}
@media(max-width:560px){.xz-answer-primary{gap:8px}.xz-answer-primary strong{font-size:25px}.xz-answer-primary i{font-size:18px}.xz-answer-detail{font-size:13px}.xz-mode-summary{padding-left:4px;padding-right:4px}}

/* Left-aligned desktop page title */
@media(min-width:701px){.xz-week-hero-copy{box-sizing:border-box;width:calc(100% - 48px);max-width:1240px;margin:0 auto;text-align:left}.xz-week-page .xz-navigation-hero .xz-week-hero-copy h1{text-align:left}}
@media(max-width:700px){.xz-week-hero-copy{width:100%;text-align:center}.xz-week-page .xz-navigation-hero .xz-week-hero-copy h1{text-align:center}}

/* Full-year week count calculator */
.xz-year-total-card{grid-column:1/-1;display:grid;grid-template-columns:1.05fr .8fr 1.35fr;align-items:center;gap:28px}
.xz-year-total-copy h2{margin-bottom:8px}.xz-year-total-copy>p:last-child{margin:0;color:#718096;line-height:1.7}
.xz-year-shortcuts{display:flex;gap:7px;margin-top:9px}.xz-week-card .xz-year-shortcuts button{padding:6px 11px;background:#eaf0f7;color:#3c567a;font-size:12px}.xz-week-card .xz-year-shortcuts button:hover{background:#dce7f2}
.xz-year-result{margin-top:0}.xz-year-counts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.xz-year-counts span{padding:10px 12px;border:1px solid #dfe7ef;border-radius:8px;background:#fff;color:#5a6b7e}.xz-year-counts b{display:block;margin-top:3px;color:#e1494f;font-size:24px}.xz-year-result small{display:block;color:#718096;line-height:1.65}
.xz-date-distance{color:#e1494f;font-weight:800}
@media(max-width:900px){.xz-year-total-card{grid-template-columns:1fr}.xz-year-result{margin-top:0}}
@media(max-width:560px){.xz-year-counts{grid-template-columns:1fr 1fr}.xz-year-shortcuts{flex-wrap:wrap}}

/* True full-width mobile calendar: no horizontal dragging */
@media(max-width:700px){
  .xz-week-panel{width:calc(100% - 12px);margin-left:auto;margin-right:auto}
  .xz-calendar-card{padding:15px 7px 12px;border-radius:10px;overflow:hidden}
  .xz-mode-summary{padding-left:2px;padding-right:2px}
  .xz-answer-primary strong{font-size:clamp(23px,7vw,28px)}
  .xz-answer-detail{padding:0 4px}
  .xz-week-tabs{width:100%;max-width:540px}
  .xz-week-card .xz-week-tab{padding-left:5px;padding-right:5px}
  .xz-calendar-wrap{width:100%;max-width:100%;overflow-x:hidden;border-radius:9px}
  .xz-calendar{width:100%;min-width:0;table-layout:fixed}
  .xz-calendar th{padding:8px 1px;font-size:clamp(11px,3.2vw,14px)}
  .xz-calendar th:first-child{width:40px}
  .xz-calendar td{height:58px;padding:0}
  .xz-calendar .xz-week-no{width:40px;font-size:clamp(12px,3.4vw,15px)}
  .xz-calendar .xz-week-no span{font-size:7px}
  .xz-week-card .xz-day{box-sizing:border-box;width:100%;max-width:44px;height:48px;padding:0;border-radius:8px}
  .xz-solar{font-size:clamp(15px,4.5vw,19px)}
  .xz-lunar{max-width:100%;font-size:clamp(8px,2.7vw,11px)}
  .xz-day-badge{font-size:clamp(7px,2.2vw,9px)}
  .xz-calendar-note{padding:0 5px;font-size:11px}
}
@media(max-width:380px){
  .xz-calendar th:first-child,.xz-calendar .xz-week-no{width:34px}
  .xz-calendar th{font-size:10px}
  .xz-calendar td{height:55px}
  .xz-week-card .xz-day{height:45px}
}

/* Chinese holidays, traditional festivals and solar terms */
.xz-dayline{display:flex;align-items:flex-start;justify-content:center;gap:2px;line-height:1}
.xz-day-badge{font-size:9px;font-style:normal;font-weight:800;line-height:1;color:#e1494f;transform:translateY(-2px)}
.xz-week-card .xz-day.is-work .xz-day-badge{color:#496580}
.xz-week-card .xz-day.has-festival .xz-lunar{color:#e1494f;font-weight:800}
.xz-week-card .xz-day.has-term .xz-lunar{color:#23824f;font-weight:800}
.xz-week-card .xz-day.is-selected.has-festival .xz-lunar{color:#c9363f}
.xz-week-card .xz-day.is-selected.has-term .xz-lunar{color:#1f7147}

/* Larger desktop calendar typography */
@media(min-width:851px){
  .xz-calendar-nav strong{font-size:26px}
  .xz-calendar th{font-size:17px}
  .xz-calendar .xz-week-no{font-size:17px}
  .xz-calendar .xz-week-no span{font-size:9px}
  .xz-week-card .xz-day{width:50px;height:48px}
  .xz-solar{font-size:22px}
  .xz-lunar{font-size:13px}
  .xz-day-badge{font-size:12px}
}

/* Balanced desktop width and compact calendar hierarchy */
.xz-calendar-toolbar{position:relative}
@media(min-width:851px){
  .xz-week-page .xz-navigation-hero{height:116px}
  .xz-week-hero-copy{max-width:960px}
  .xz-week-page .xz-navigation-hero .xz-week-hero-copy h1{font-size:25px}
  .xz-week-panel{width:calc(100% - 48px);max-width:960px;margin-top:-14px}
  .xz-week-app{gap:16px}
  .xz-calendar-card{padding:14px 22px 18px;border-radius:14px;box-shadow:0 10px 30px #26384c10}
  .xz-mode-summary{padding:6px 12px 12px}
  .xz-answer-primary{gap:10px;line-height:1.28}
  .xz-answer-primary strong{font-size:30px}
  .xz-answer-primary i{font-size:19px}
  .xz-answer-detail{margin-top:8px;font-size:14px;line-height:1.8}
  .xz-week-tabs{width:450px;margin:8px auto 15px}
  .xz-week-card .xz-week-tab{min-height:38px;padding:6px 12px}
  .xz-week-card .xz-week-tab strong{font-size:14px}
  .xz-calendar-toolbar{min-height:38px;margin:0 auto 11px}
  .xz-calendar-nav{max-width:300px;margin:0 auto}
  .xz-calendar-nav strong{font-size:23px}
  .xz-calendar-nav button:first-child,.xz-calendar-nav button:last-child{width:34px;height:34px}
  .xz-calendar-today-row{position:absolute;top:1px;right:0;margin:0}
  .xz-calendar th{padding:8px 5px;font-size:15px}
  .xz-calendar th:first-child{width:54px}
  .xz-calendar td{height:54px}
  .xz-calendar .xz-week-no{font-size:15px}
  .xz-week-card .xz-day{width:48px;height:46px}
  .xz-solar{font-size:20px}
  .xz-lunar{font-size:11px}
  .xz-day-badge{font-size:10px}
  .xz-week-queries{gap:16px}
  .xz-week-card{padding:28px 30px}
  .xz-calendar-card{padding:14px 22px 18px}
  .xz-year-total-card{gap:20px}
}
