.cal-page-head{max-width:1440px;margin:0 auto;padding:24px 32px 18px}.cal-counts{display:flex;gap:36px;flex-wrap:wrap}.cal-count .n{font-family:var(--font-mono);font-size:26px;font-weight:700;letter-spacing:-.02em;color:var(--fg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-count .n .u{font-size:13px;color:var(--fg-faint);font-weight:500;margin-left:3px}.cal-count .k{font-family:var(--font-sans);font-size:12px;color:var(--fg-faint);margin-top:2px}.cal-count.ok .n{color:var(--success-dark)}.cal-count.warn .n{color:var(--warn-dark)}.cal-count.danger .n{color:var(--danger-dark)}.cal-cbar-wrap{background:var(--bg);border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:64px;z-index:40}.cal-cbar{max-width:1440px;margin:0 auto;padding:12px 32px;gap:14px;flex-wrap:wrap}.cal-cbar,.cal-month-nav{display:flex;align-items:center}.cal-month-nav{gap:6px;background:var(--bg-elev);border:1px solid var(--line);border-radius:8px;padding:3px}.cal-month-nav a{background:transparent;border:none;width:32px;height:32px;border-radius:5px;cursor:pointer;color:var(--fg);font-size:16px;display:inline-flex;align-items:center;justify-content:center}.cal-month-nav a:hover{background:var(--accent-tint-12)}.cal-month-nav .label{padding:0 14px;font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:-.01em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-month-nav .label .yr{color:var(--fg-faint);font-weight:500;font-family:var(--font-mono);font-size:13px;margin-left:4px}.cal-today-btn{padding:7px 13px;border:1px solid var(--line);border-radius:8px;background:var(--bg-elev);font-family:var(--font-mono);font-size:12px;color:var(--fg);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;font-weight:600}.cal-today-btn:hover{border-color:var(--accent);color:var(--accent)}.cal-view-tabs{display:flex;gap:2px;background:var(--bg-elev);border:1px solid var(--line);border-radius:8px;padding:3px}.cal-view-tabs>*{background:transparent;border:none;padding:7px 14px;border-radius:5px;font-family:inherit;font-size:14px;color:var(--fg-muted);cursor:pointer;font-weight:500;display:inline-flex;align-items:center;gap:6px;text-decoration:none;line-height:1}.cal-view-tabs>a:hover,.cal-view-tabs>button:hover{background:var(--accent-tint-12)}.cal-view-tabs>.on{background:var(--accent-soft-bg);color:var(--accent);cursor:default}.cal-view-tabs>button[disabled]{color:var(--fg-dim);cursor:not-allowed}.cal-view-tabs svg{width:13px;height:13px}.cal-cbar-filters{max-width:1440px;margin:0 auto;padding:0 32px 12px}.cal-cbar-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.cal-chip-sep{width:1px;height:18px;background:var(--line);margin:0 2px}.cal-filter-hint{font-family:var(--font-mono);font-size:11px;color:var(--fg-faint);letter-spacing:.04em;margin-left:6px}.cal-filter-hint b{color:var(--accent);font-weight:700}.cal-cbar-filters .chip{padding:6px 12px;border:1px solid var(--line);border-radius:6px;font-size:13.5px;color:var(--fg-muted);background:var(--bg-elev);display:inline-flex;gap:6px;align-items:center;white-space:nowrap;font-family:inherit;text-decoration:none;cursor:pointer;transition:border-color .12s,background .12s,color .12s}.cal-cbar-filters .chip:hover{border-color:var(--accent);color:var(--accent)}.cal-cbar-filters .chip.on,.cal-cbar-filters .chip.on:hover{background:var(--accent-soft-bg);color:var(--accent);border-color:var(--accent)}.cal-cbar-filters .chip .dot-c{width:7px;height:7px;border-radius:50%;flex-shrink:0}.cal-cbar-filters .chip .ct{font-family:var(--font-mono);font-size:10px;opacity:.6;margin-left:2px}.cal-density-wrap{max-width:1440px;margin:0 auto;padding:18px 32px 0;display:grid;grid-template-columns:1fr 320px;grid-gap:28px;gap:28px}.cal-density{display:flex;align-items:center;gap:14px;min-width:0}.cal-density .lab{font-family:var(--font-mono);font-size:10px;color:var(--fg-faint);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;font-weight:600}.cal-density-body{flex:1 1;min-width:0}.cal-density .bars{display:grid;grid-gap:2px;gap:2px;height:28px;align-items:end;min-width:0}.cal-density .bar{background:var(--line);border-radius:2px 2px 0 0;position:relative;cursor:default}.cal-density .bar:hover:after{content:attr(data-info);position:absolute;bottom:32px;left:50%;transform:translateX(-50%);background:var(--fg);color:var(--bg);font-family:var(--font-mono);font-size:10px;padding:4px 8px;border-radius:4px;white-space:nowrap;letter-spacing:.05em;z-index:60;pointer-events:none}.cal-density .bar.has{background:#ffd0b0}.cal-density .bar.med{background:#ff9050}.cal-density .bar.hot{background:var(--accent)}.cal-density .bar.now{outline:2px solid var(--fg);outline-offset:1px;background:var(--fg)}.cal-density .axis{font-family:var(--font-mono);font-size:10px;color:var(--fg-faint);display:grid;grid-gap:2px;gap:2px;margin-top:6px;letter-spacing:.04em}.cal-density .axis span{text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-density .axis span:not(:nth-child(5n+1)){color:transparent}.cal-main{max-width:1440px;margin:0 auto;padding:18px 32px 64px;display:grid;grid-template-columns:1fr 320px;grid-gap:28px;gap:28px}.cal-card{background:var(--bg-elev);border:1px solid var(--line);border-radius:14px}.cal-weekhead{display:grid;grid-template-columns:repeat(7,1fr);background:var(--bg-inset);border-bottom:1px solid var(--line)}.cal-weekhead .wh{padding:11px 14px;font-family:var(--font-mono);font-size:11.5px;color:var(--fg-muted);letter-spacing:.1em;text-transform:uppercase;font-weight:700;border-right:1px solid var(--line)}.cal-weekhead .wh:last-child{border-right:none}.cal-weekhead .wh.weekend{color:var(--fg-faint)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(176px,1fr)}.cal-cell{border-right:1px solid var(--line-faint);border-bottom:1px solid var(--line-faint);padding:8px 10px 10px;display:flex;flex-direction:column;gap:5px;min-height:176px;position:relative;transition:background .12s}.cal-cell:hover{background:var(--bg)}.cal-cell:nth-child(7n){border-right:none}.cal-cell.out{background:var(--bg)}.cal-cell.out,.cal-cell.out .dn{color:var(--fg-dim)}.cal-cell.weekend{background:var(--bg)}.cal-cell.today{background:var(--accent-soft-bg)}.cal-cell.today .dn{color:var(--accent)}.cal-cell.today:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent)}.cal-cell .dh{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:2px}.cal-cell .dn{font-family:var(--font-mono);font-size:14px;font-weight:700;color:var(--fg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-cell .dn .dw{font-size:10.5px;color:var(--fg-faint);font-weight:500;letter-spacing:.06em;margin-left:4px;text-transform:uppercase}.cal-cell .cnt{font-family:var(--font-mono);font-size:11px;color:var(--fg-faint);letter-spacing:.05em}.cal-cell.today .cnt{color:var(--accent);font-weight:700}.cal-cell .anc{position:absolute;top:5px;right:8px;font-family:var(--font-mono);font-size:9px;color:var(--fg-faint);letter-spacing:.04em;background:var(--bg-inset);padding:1px 5px;border-radius:3px;text-transform:uppercase;font-weight:600}.cal-cell.today .anc{background:var(--accent);color:var(--accent-fg)}.cal-ev{display:grid;grid-template-columns:auto 6px 1fr;grid-gap:6px;gap:6px;align-items:center;padding:3px 6px 3px 0;border-radius:5px;cursor:pointer;font-size:12.5px;line-height:1.25;transition:background .12s;position:relative;color:inherit}.cal-ev:hover{z-index:60}.cal-tip{position:absolute;bottom:calc(100% + 6px);left:0;z-index:80;background:var(--fg);color:var(--bg);padding:10px 12px;border-radius:8px;font-family:var(--font-sans);font-size:12px;line-height:1.5;min-width:240px;max-width:320px;box-shadow:0 8px 24px rgba(0,0,0,.3);opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .12s ease .25s,transform .12s ease .25s}.cal-ev:hover .cal-tip{opacity:1;transform:translateY(0)}.cal-tip-h{font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--bg);margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--line-strong);letter-spacing:-.005em}.cal-tip-row{display:flex;gap:12px;margin:3px 0;align-items:baseline}.cal-tip-row .k{font-family:var(--font-mono);font-size:10px;color:var(--fg-dim);letter-spacing:.08em;text-transform:uppercase;flex-shrink:0;width:32px}.cal-tip-row>span:not(.k){color:var(--bg);flex:1 1;min-width:0}.cal-ev:hover{background:var(--bg-elev)}.cal-cell.out .cal-ev:hover{background:transparent}.cal-ev .tm{font-family:var(--font-mono);font-size:11.5px;font-weight:700;color:var(--fg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.01em;line-height:1.1}.cal-cell.out .cal-ev .tm{color:var(--fg-dim)}.cal-ev .bar{width:3px;height:14px;border-radius:1.5px;background:var(--fg)}.cal-ev .nm{font-weight:600;color:var(--fg);letter-spacing:-.005em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.cal-cell.out .cal-ev .nm{color:var(--fg-dim);font-weight:500}.cal-ev[data-org=spx] .bar{background:var(--fg)}.cal-ev[data-org=cnsa] .bar{background:var(--accent-soft-fg)}.cal-ev[data-org=nasa] .bar{background:#0b3d91}.cal-ev[data-org=esa] .bar{background:var(--info)}.cal-ev[data-org=rl] .bar{background:var(--success)}.cal-ev[data-org=ula] .bar{background:#162a4a}.cal-ev[data-org=isro] .bar{background:var(--warn-dark)}.cal-ev[data-org=jaxa] .bar{background:var(--danger-dark)}.cal-ev[data-org=other] .bar{background:var(--fg-faint)}.cal-ev.live{background:rgba(225,29,72,.06)}.cal-ev.live .tm{color:var(--danger)}.cal-ev.live .nm{color:var(--danger-dark)}.cal-ev.live:after{content:"●";color:var(--danger);font-size:8px;animation:calPulse 1.4s infinite;position:absolute;right:4px;top:5px}@keyframes calPulse{50%{opacity:.3}}.cal-ev.scrub .nm,.cal-ev.scrub .tm{color:var(--fg-faint);text-decoration:line-through}.cal-ev.scrub .bar{background:var(--line-strong)}.cal-ev.tbd .tm{color:var(--warn-dark)}.cal-ev.success .bar{background:var(--success)!important}.cal-ev.success .tm:after{content:" ✓";color:var(--success)}.cal-ev.fail .bar{background:var(--danger)!important}.cal-ev.fail .tm:after{content:" ✕";color:var(--danger)}.cal-cell .more-ev{display:inline-flex;align-items:center;width:max-content;font-family:var(--font-mono);font-size:11px;color:var(--fg-faint);padding:2px 6px;letter-spacing:.04em;cursor:pointer;font-weight:600;margin-top:auto;text-decoration:none}.cal-cell .more-ev:hover{color:var(--accent)}.cal-legend{padding:12px 18px;display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--line);background:var(--bg);font-family:var(--font-mono);font-size:11px;color:var(--fg-muted);letter-spacing:.04em}.cal-legend-row{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center}.cal-legend .lk{font-size:10px;color:var(--fg-faint);letter-spacing:.1em;text-transform:uppercase;font-weight:700;min-width:36px}.cal-lg-item{display:inline-flex;align-items:center;gap:6px}.cal-lg-item .sw{width:10px;height:10px;border-radius:2px}.cal-lg-status{display:inline-flex;align-items:center;gap:5px}.cal-lg-status .dot-s{width:7px;height:7px;border-radius:50%}.cal-list-day{scroll-margin-top:132px}.cal-list{background:var(--bg-elev);border:1px solid var(--line);border-radius:14px;padding:6px 18px 24px}.cal-list-empty{padding:48px 0;text-align:center;color:var(--fg-faint);font-size:15px}.cal-list-anchor{display:flex;align-items:baseline;gap:14px;padding:22px 0 10px;border-bottom:1px solid var(--line);margin-bottom:6px}.cal-list-anchor .dd{font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--fg)}.cal-list-anchor .dw{font-size:13px;letter-spacing:.06em}.cal-list-anchor .dc,.cal-list-anchor .dw{font-family:var(--font-mono);color:var(--fg-faint)}.cal-list-anchor .dc{margin-left:auto;font-size:12px;letter-spacing:.04em}.cal-list-row{display:grid;grid-template-columns:80px 56px 1fr auto auto;grid-gap:18px;gap:18px;align-items:center;padding:14px 6px;border-bottom:1px solid var(--line-faint);text-decoration:none;color:inherit;transition:background .12s;border-radius:6px}.cal-list-row:hover{background:var(--bg)}.cal-list-thumb{width:56px;height:56px;border-radius:8px;background-size:cover;background-position:50%;background-color:var(--bg-inset);flex-shrink:0;position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.06)}.cal-list-thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(11,12,14,.3))}.cal-list-time{font-family:var(--font-mono);font-size:18px;font-weight:600;color:var(--fg);line-height:1.1}.cal-list-time .tz{display:block;font-size:11px;font-weight:400;color:var(--fg-faint);margin-top:3px;letter-spacing:.06em}.cal-list-body{min-width:0}.cal-list-titleline{margin-bottom:5px;white-space:nowrap;overflow:hidden}.cal-list-name,.cal-list-titleline{display:flex;align-items:center;gap:8px;min-width:0}.cal-list-name{font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--fg);flex:0 1 auto}.cal-list-name-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-list-flag{font-size:15px;line-height:1}.cal-list-titleline .title-sep{flex:0 0 auto;color:var(--fg-muted)}.cal-list-sub{display:flex;align-items:center;gap:5px;min-width:0;flex:1 1 auto;font-size:13.5px;line-height:1.35;color:var(--fg);font-weight:500}.cal-list-sub-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-list-sub .cal-meta-icon{color:var(--accent)}.cal-list-meta{font-size:13px;color:var(--fg-muted);display:flex;flex-wrap:wrap;gap:6px;align-items:center}.cal-list-meta-item{display:inline-flex;align-items:center;gap:4px;min-width:0}.cal-list-meta .org{font-weight:500;color:var(--fg)}.cal-meta-icon{width:14px;height:14px;flex:0 0 14px;color:var(--fg-dim)}.cal-list-meta .org .cal-meta-icon{color:var(--fg-faint)}.cal-list-meta .logo-box{width:20px;height:20px;border-radius:4px;object-fit:contain;flex-shrink:0;background:transparent}.cal-list-meta .sep{color:var(--fg-muted)}.cal-list-arrow{color:var(--fg-dim);font-size:18px}.cal-main aside{display:flex;flex-direction:column;gap:18px;align-self:start}.cal-side-card{background:var(--bg-elev);border:1px solid var(--line);border-radius:12px;padding:18px}.cal-side-card h4{font-family:var(--font-display);font-size:15px;font-weight:700;margin:0 0 14px;letter-spacing:-.005em;display:flex;justify-content:space-between;align-items:center}.cal-side-card h4 .more-mini{font-family:var(--font-sans);font-size:12px;color:var(--fg-faint);font-weight:400}.cal-side-card h4 .more-mini:hover{color:var(--accent)}.cal-focus-card{background:var(--bg);color:var(--fg);border-radius:12px;overflow:hidden;border:1px solid var(--line-strong);display:block}.cal-focus-card .fc-img{aspect-ratio:16/9;background:radial-gradient(ellipse 60% 30% at 52% 72%,#ffd79a 0,var(--accent) 35%,transparent 70%),radial-gradient(ellipse 80% 80% at 50% 100%,#4c1a00 0,#0b0c0e 50%),linear-gradient(180deg,#1a1d22 0,#0b0c0e 70%);position:relative}.cal-focus-card .fc-img.has-img{background:var(--bg);display:block}.cal-focus-card .fc-img.has-img img{width:100%;height:100%;object-fit:cover;display:block;opacity:.7}.cal-focus-card .fc-img:before{content:"";position:absolute;left:48%;top:10%;width:4%;height:65%;background:linear-gradient(180deg,#fafaf7,#a8a49a);border-radius:2px 2px 0 0;pointer-events:none;opacity:.85}.cal-focus-card .fc-img.has-img:before{display:none}.cal-focus-card .fc-tag{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:6px;background:var(--danger);color:var(--accent-fg);padding:4px 9px;border-radius:4px;font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.1em;z-index:1}.cal-focus-card .fc-tag:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--bg-elev);animation:calPulse 1.2s infinite}.cal-focus-card .fc-tag.next{background:var(--accent)}.cal-focus-card .fc-body{padding:16px 18px}.cal-focus-card .fc-meta{font-family:var(--font-mono);font-size:10px;color:var(--fg-faint);letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.cal-focus-card h5{font-family:var(--font-display);font-size:18px;font-weight:600;margin:0 0 10px;letter-spacing:-.005em;color:var(--fg)}.cal-focus-card .fc-cd{display:flex;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);margin-bottom:12px}.cal-focus-card .fc-cd .b{display:flex;flex-direction:column;flex:1 1}.cal-focus-card .fc-cd .n{font-family:var(--font-mono);font-size:22px;font-weight:700;color:var(--fg);line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-focus-card .fc-cd .u{font-family:var(--font-mono);font-size:9px;color:var(--fg-faint);letter-spacing:.12em;text-transform:uppercase;margin-top:4px}.cal-focus-card .fc-cd .fc-cd-sign{font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--fg-faint);letter-spacing:.04em}.cal-focus-card .fc-cd.is-past .fc-cd-sign{color:var(--accent)}.cal-focus-card .fc-go{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:11px}.cal-focus-card .fc-go .gp{color:var(--success);font-weight:700}.cal-focus-card .fc-go .gp.warn{color:var(--warn-dark)}.cal-focus-card .fc-go .gp.muted{color:var(--fg-faint)}.cal-focus-card .fc-go .det{color:var(--accent);font-weight:600}.cal-upc{display:flex;flex-direction:column;gap:1px}.cal-upc-row{display:grid;grid-template-columns:60px 1fr auto;grid-gap:10px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px dashed var(--line-faint);color:inherit}.cal-upc-row:last-child{border-bottom:none}.cal-upc-row:hover .upc-n{color:var(--accent)}.cal-upc .upc-t{font-family:var(--font-mono);font-size:12.5px;color:var(--fg);font-weight:700;line-height:1.2;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-upc .upc-t .d{color:var(--fg-faint);font-weight:400;font-size:11px;display:block;margin-top:1px}.cal-upc .upc-n{font-size:13.5px;font-weight:600;color:var(--fg);line-height:1.35}.cal-upc .upc-n .m{display:block;font-family:var(--font-mono);font-size:11px;color:var(--fg-faint);font-weight:400;margin-top:1px}.cal-upc .upc-go{font-family:var(--font-mono);font-size:10px;font-weight:700;padding:2px 6px;border-radius:3px;letter-spacing:.04em}.cal-upc .upc-go.go{background:var(--success-soft-bg);color:var(--success-dark)}.cal-upc .upc-go.warn{background:var(--warn-soft-bg);color:var(--warn-dark)}.cal-upc .upc-go.hold{background:var(--danger-soft-bg);color:var(--danger-dark)}.cal-upc .upc-go.muted{background:var(--bg-inset);color:var(--fg-faint)}.cal-org-meta{font-family:var(--font-mono);font-size:11px;color:var(--fg-faint);font-weight:400}.cal-org-list{display:flex;flex-direction:column;gap:10px}.cal-org-row{display:grid;grid-template-columns:14px 1fr 28px 60px;grid-gap:10px;gap:10px;align-items:center;font-size:13.5px;color:inherit;text-decoration:none}a.cal-org-row{padding:2px 4px;margin:-2px -4px;border-radius:6px;transition:background .12s}a.cal-org-row:hover{background:var(--accent-tint-12)}a.cal-org-row:hover .nm{color:var(--accent)}.cal-org-row .sw{width:10px;height:10px;border-radius:2px}.cal-org-row .nm{font-weight:600;color:var(--fg)}.cal-org-row .vc{font-family:var(--font-mono);font-size:14px;font-weight:700;color:var(--fg);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-org-row .b{background:var(--bg-inset);height:5px;border-radius:3px;overflow:hidden}.cal-org-row .b>div{height:100%;border-radius:3px}.cal-org-more{font-family:var(--font-mono);font-size:11.5px;color:var(--fg-faint);text-align:center;padding-top:4px;border-top:1px dashed var(--line-faint);margin-top:2px;letter-spacing:.04em}@media (max-width:1100px){.cal-main{grid-template-columns:1fr}.cal-main aside{position:static;max-height:none}.cal-density-wrap{grid-template-columns:1fr}.cal-grid{grid-auto-rows:minmax(150px,1fr)}.cal-cell{min-height:150px}}@media (max-width:760px){.cal-cell .cal-ev .nm{display:none}.cal-grid{grid-auto-rows:minmax(126px,1fr)}.cal-cell{min-height:126px;padding:6px}.cal-density .axis{display:none}}