@import "https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@500;600;700;900&family=ZCOOL+XiaoWei&display=swap";:root{color:#201f1b;font-synthesis:none;--paper:#f4f0e6;--ink:#201f1b;--muted:#746f64;--line:#c6bfae;--signal:#e95735;--green:#476f5a;background:#dcd8cc;font-family:Noto Serif SC,Songti SC,serif}*{box-sizing:border-box}html{background:#dcd8cc}body{min-width:320px;min-height:100vh;margin:0}button{color:inherit;font:inherit}button:focus-visible{outline-offset:3px;outline:3px solid #efb532}.page-shell{background:linear-gradient(90deg, transparent 31px, #6353371a 32px, transparent 33px), radial-gradient(circle at 12% 8%, #ffffffb8, transparent 30%), var(--paper);width:min(100%,760px);min-height:100vh;margin:0 auto;padding:20px 16px 36px;overflow:hidden;box-shadow:0 0 70px #2c271b33}.masthead{border-top:7px solid var(--ink);padding-top:7px}.edition{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);color:var(--muted);letter-spacing:.14em;text-align:center;padding:7px 0;font:700 10px/1.2 ui-monospace,monospace}.title-row{justify-content:space-between;align-items:center;margin-top:16px;display:flex}.title-row p{margin:0;font-size:14px;font-weight:700}.title-row span{color:var(--muted);letter-spacing:.1em;font:600 9px ui-monospace,monospace}.masthead h1{letter-spacing:-.04em;margin:20px 0 25px;font:900 clamp(38px,12vw,72px)/1.02 ZCOOL XiaoWei,Songti SC,serif}.masthead h1 em{color:var(--signal);font-style:normal}.eyebrow{color:var(--signal);letter-spacing:.15em;margin:0 0 7px;font:700 10px ui-monospace,monospace}.status-card{color:#fffaf0;background:var(--ink);border-radius:2px 18px 2px 2px;grid-template-columns:54px 1fr;gap:15px;margin:0 -4px 15px;padding:20px 18px;animation:.55s both rise;display:grid;position:relative;box-shadow:8px 8px #c8bda5}.status-card:after{content:"";background:#ef6b45;border-radius:50%;width:7px;height:7px;position:absolute;top:18px;right:18px;box-shadow:0 0 0 5px #ef6b4529}.status-orbit{border:1px solid #777166;border-radius:50%;place-items:center;width:52px;height:52px;display:grid}.status-card h2{margin:0;font-size:clamp(23px,6vw,30px)}.status-time{color:#bfb9ae;align-items:center;gap:5px;margin:7px 0 0;font-size:12px;display:flex}.location-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:7px;margin:24px 0 27px;padding:11px 0;font-size:13px;animation:.55s 80ms both rise;display:flex}.location-strip svg{color:var(--signal)}.location-label{color:var(--muted)}.location-strip strong{font-size:16px}.location-dates{color:var(--muted);margin-left:auto;font:600 11px ui-monospace,monospace}footer{border-top:4px double var(--ink);color:var(--muted);justify-content:space-between;margin-top:34px;padding-top:12px;font-size:10px;display:flex}footer b{font:600 9px ui-monospace,monospace}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important}}@media (width>=700px){.page-shell{padding:34px 48px 45px}}@media (prefers-color-scheme:dark){:root{color:#eee9dc;--paper:#24231e;--ink:#eee9dc;--muted:#aaa396;--line:#575247;--signal:#f75;background:#191915}.page-shell{background:radial-gradient(circle at 12% 8%, #ffffff0d, transparent 30%), var(--paper)}.status-card{color:#201f1b;background:#eee9dc;box-shadow:8px 8px #4e493f}.status-time{color:#625e55}}.calendar-sheet{animation:.55s .14s both rise}.calendar-motion{will-change:transform, opacity;overflow:hidden}.calendar-motion.slide-next{animation:.32s cubic-bezier(.2,.75,.25,1) both month-in-next}.calendar-motion.slide-previous{animation:.32s cubic-bezier(.2,.75,.25,1) both month-in-previous}.calendar-toolbar{justify-content:space-between;align-items:flex-end;gap:10px;margin-bottom:16px;display:flex}.calendar-toolbar h2{margin:0;font-size:clamp(22px,7vw,31px)}.toolbar-actions{gap:5px;display:flex}.toolbar-actions button{border:1px solid var(--ink);cursor:pointer;background:0 0;border-radius:0;justify-content:center;align-items:center;gap:5px;min-width:38px;height:38px;padding:0 9px;display:inline-flex}.toolbar-actions svg{width:16px}.toolbar-actions .mode-button{background:var(--ink);color:var(--paper);font-size:12px}.agenda{border-top:1px solid var(--ink)}.agenda-day{border-bottom:1px solid var(--line);grid-template-columns:62px 1fr;min-height:94px;display:grid}.date-stamp{border-right:1px solid var(--line);text-align:center;padding:14px 8px 12px 0}.date-stamp span{color:var(--signal);letter-spacing:.1em;font:700 8px ui-monospace,monospace;display:block}.date-stamp strong{margin:1px 0 -2px;font:700 32px/1 ZCOOL XiaoWei,serif;display:block}.date-stamp small{color:var(--muted);font-size:10px}.day-track{flex-direction:column;gap:8px;padding:11px 0 11px 14px;display:flex}.open-day{color:var(--muted);margin:auto 0;font-size:11px;font-style:italic}.event-row{background:color-mix(in srgb, var(--green) 9%, transparent);border-left:3px solid var(--green);padding:10px 12px;position:relative}.event-row:nth-child(2n){background:color-mix(in srgb, var(--signal) 7%, transparent);border-left-color:var(--signal)}.event-time{color:var(--muted);align-items:center;gap:5px;margin-bottom:5px;font:700 10px ui-monospace,monospace;display:flex}.event-row h3{margin:0;font-size:16px;line-height:1.45}.event-row p{color:var(--muted);align-items:center;gap:4px;margin:5px 0 0;font-size:11px;display:flex}.month-grid{border-top:1px solid var(--ink);border-left:1px solid var(--line)}.weekdays,.week-days,.week-bands{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.weekday{border-right:1px solid var(--line);border-bottom:1px solid var(--ink);color:var(--muted);text-align:center;padding:8px 0;font-size:9px}.calendar-week{--band-lanes:1;position:relative}.week-days{min-height:calc(39px + var(--band-lanes) * 22px)}.month-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0;padding:7px 5px;position:relative;overflow:hidden}.month-day>span{place-items:center;width:23px;height:23px;font:700 12px ui-monospace,monospace;display:grid}.month-day.today>span{color:var(--paper);background:var(--signal);border-radius:50%}.month-day.muted{opacity:.3}.week-bands{pointer-events:none;grid-auto-rows:19px;gap:3px 0;position:absolute;top:33px;left:0;right:0}.calendar-band{color:#fffaf0;letter-spacing:.015em;white-space:nowrap;border:1px solid;border-radius:3px;align-items:center;min-width:0;margin:0 2px;padding:0 6px;font:700 9px/1 ui-monospace,monospace;display:flex;overflow:hidden}.calendar-band.continues-before{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0;margin-left:0}.calendar-band.continues-after{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}.calendar-band .band-label{opacity:.73;letter-spacing:.08em;flex:none;margin-right:4px;font-size:7px}.calendar-band .band-title{text-overflow:ellipsis;overflow:hidden}.location-band{color:#183d48;background:#abd1d8}.location-band.tone-1{color:#22423d;background:#a6c9ad}.location-band.tone-2{color:#543b21;background:#e3c68d}.location-band.tone-3{color:#473d59;background:#c6b6d5}.event-band{color:#fffaf0;background:#476f5a}.event-band.tone-1{background:#b24e36}.event-band.tone-2{background:#5a5683}.event-band.tone-3{background:#a06c2f}.agenda-sheet{margin-top:38px;animation:.55s .2s both rise}.agenda-heading{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.agenda-heading h2{margin:0;font-size:clamp(22px,7vw,31px)}.agenda-heading>p{color:var(--muted);margin:0 0 3px;font-size:11px}.empty-state,.error-state{border-top:1px solid var(--ink);text-align:center;place-content:center;justify-items:center;min-height:245px;display:grid}.empty-state span{color:var(--line);font-size:48px}.empty-state h3{margin:8px 0 5px}.empty-state p,.error-state p{color:var(--muted);margin:0;font-size:12px}.error-state button{border:1px solid var(--ink);cursor:pointer;background:0 0;align-items:center;gap:6px;margin-top:16px;padding:8px 12px;display:flex}.skeleton{border-top:1px solid var(--ink);gap:10px;padding-top:10px;display:grid}.skeleton i{background:linear-gradient(90deg,#786e5a14,#786e5a2b,#786e5a14) 0 0/200% 100%;height:74px;animation:1.4s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}@keyframes month-in-next{0%{opacity:.25;transform:translate(42px)}to{opacity:1;transform:translate(0)}}@keyframes month-in-previous{0%{opacity:.25;transform:translate(-42px)}to{opacity:1;transform:translate(0)}}@media (width<=370px){.location-dates{width:100%;margin:3px 0 0 24px}.mode-button span{display:none}.calendar-band{padding:0 4px;font-size:8px}.calendar-band .band-label{display:none}}
