/* Compact, softly tinted agenda. Shared header remains unchanged. */
.schedule{max-width:1120px;padding-top:26px}
.schedule h1{font-size:25px}.schedule-kicker{font-size:10px;margin-bottom:7px}.schedule-top p{font-size:13px}
.sample-note{margin:17px 0;padding:9px 13px;background:#ffffff03;border-color:#ffffff12;color:#98a9b0;font-size:11px}.sample-note b{color:#b8bdad}
.schedule-controls{padding:13px 16px;border-radius:11px;background:#101b24;border-color:#ffffff14}
.market-filter{padding-bottom:11px;border-color:#ffffff0e}.market-filter button{padding:8px 20px;font-size:13px}
.market-filter button[aria-pressed=true]{background:#72cdb514;border-color:#72cdb535;color:#b2e2d3}
.filter-bottom{padding-top:11px;gap:13px}.schedule-search{height:35px}.period-filter{padding:3px}.period-filter button{padding:6px 13px}
.event-types{display:flex;gap:6px;align-items:center;margin-top:18px}.event-types button{background:transparent;border:1px solid #ffffff12;border-radius:18px;color:#94aaba;padding:6px 13px;font-size:11px}.event-types button[aria-pressed=true]{background:#a3bfd516;color:#d0e2ed;border-color:#a3bfd545}.event-types span{margin-left:auto;font-size:10px;color:#7e929f}
.agenda-heading{margin:22px 0 14px}.agenda-heading h2{font-size:16px}.agenda-heading span{font-size:11px}
.day-group{grid-template-columns:80px 1fr;gap:18px;margin-bottom:15px}.day-label{padding-top:13px}.day-label strong{font-size:20px}.day-events{gap:7px}
.event-card{position:relative;padding:12px 15px;grid-template-columns:76px minmax(0,1fr) 190px 10px;gap:13px;border-radius:9px;border-color:#ffffff12;border-left:2px solid #849fba70;min-height:76px;background:#192a3a}
.event-card.market-kr{background:#192e29;border-left-color:#7eaf9b70}.event-card.market-crypto{background:#282438;border-left-color:#a098bb70}.event-card:hover{background:#203449;border-color:#8caeb05c}.event-card.market-kr:hover{background:#213b33}.event-card.market-crypto:hover{background:#332e46}
.event-time{font-size:12px;font-weight:500;color:#bacbd5;align-self:center;white-space:nowrap}.event-meta{margin-bottom:5px;gap:8px;font-size:10px}.market-tag,.market-tag.kr,.market-tag.crypto{padding:1px 0;border-radius:0;background:none;color:#9cb8d2}.market-tag.kr{color:#a0c5b8}.market-tag.crypto{color:#b8adce}
.importance{color:#a4adb9}.event-title{font-size:13px;font-weight:600;line-height:1.5;margin:0}.event-subtitle{font-size:10px;display:block;margin-top:3px;color:#91a5b2}
.event-result{font-size:10px}.event-status{padding:2px 6px;background:#a3bfd50a;color:#9bb0bf;border:1px solid #a3bfd51c}.event-status.done{background:#85c0a70a;color:#a0cbb8}.event-status.changed{background:#c4b7880a;color:#c7bb96}.event-numbers{font-size:10px;margin-top:5px;color:#a7bac7}.event-arrow{font-size:15px;opacity:.5}
.impact{display:inline-flex;align-items:center;gap:6px;color:#b9b8a7;font-size:10px}.impact-bars{display:inline-flex;height:11px;align-items:flex-end;gap:2px}.impact-bars i{width:3px;height:4px;border-radius:1px;background:#ffffff18}.impact-bars i:nth-child(2){height:7px}.impact-bars i:nth-child(3){height:10px}.impact-bars i.lit{background:#c6b887}
.schedule-foot{margin-top:20px;font-size:10px}.detail-facts div{background:#ffffff03}.schedule dialog{background:#131f28}
@media(max-width:720px){.schedule{padding:20px 14px 32px}.schedule h1{font-size:22px}.schedule-top p{font-size:11px}.sample-note{margin:14px 0;font-size:10px;padding:8px 10px}.sample-note b{display:inline;margin-right:6px}.schedule-controls{padding:10px}.market-filter{gap:2px;padding-bottom:10px}.market-filter button{padding:7px 2px;font-size:11px}.filter-bottom{gap:10px;padding-top:10px}.period-filter button{padding:6px 7px}.schedule-search{height:34px;font-size:12px}.event-types{flex-wrap:wrap;gap:5px;margin-top:14px}.event-types button{font-size:10px;padding:5px 10px}.event-types span{width:100%;margin:3px 0 0;font-size:9px}.agenda-heading{margin:18px 0 12px}.agenda-heading h2{font-size:14px}.agenda-heading span{font-size:10px}.day-group{margin-bottom:16px}.day-label{padding:0 0 8px;gap:6px}.day-label strong{font-size:14px}.day-label span{font-size:10px}.event-card{grid-template-columns:52px minmax(0,1fr);padding:10px 11px;gap:5px 9px;min-height:0;border-radius:8px}.schedule .event-time{font-size:10px;align-self:start;padding-top:2px}.event-meta{font-size:9px;gap:7px;margin-bottom:4px}.impact{font-size:9px;gap:5px}.event-title{font-size:12px;line-height:1.5}.event-subtitle{font-size:9px;line-height:1.6}.event-result{grid-column:2;display:flex;flex-wrap:wrap;align-items:center;gap:5px 7px;text-align:left;margin-top:2px}.event-numbers{margin:0;font-size:9px}.event-status{font-size:9px;padding:1px 5px}.event-arrow{display:none}}
.display-toggle{display:flex;justify-content:flex-end;gap:3px;margin:0 0 12px}.display-toggle button{font-size:12px;padding:7px 15px;background:transparent;border:1px solid #ffffff18;color:#9bb0bf;border-radius:7px}.display-toggle button[aria-pressed=true]{background:#8bbdab15;border-color:#8bbdab50;color:#c5e6da}.month-view{margin-top:22px}.month-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:10px}.month-toolbar>div{display:flex;align-items:center;gap:10px}.month-toolbar h2{font-size:18px;margin:0;min-width:120px;text-align:center}.month-toolbar button{padding:5px 11px;font-size:13px;background:#ffffff04;border-color:#ffffff18}.month-toolbar>span{font-size:11px;color:#8da6b6}.month-grid,.month-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.month-weekdays{text-align:center;font-size:11px;color:#92a5b4;padding:12px 0}.month-weekdays span:first-child{color:#c18d98}.month-weekdays span:last-child{color:#8baecb}.month-grid{border-top:1px solid #ffffff12;border-left:1px solid #ffffff12;border-radius:10px;overflow:hidden;background:#101b24}.month-cell{min-height:112px;min-width:0;padding:7px;border-right:1px solid #ffffff12;border-bottom:1px solid #ffffff12}.month-cell.outside{background:#090f1640}.month-cell.is-today .pick-date>span:first-child{background:#74c3a530;color:#b5ecd9;border-radius:50%;width:24px;height:24px;display:grid;place-items:center}.month-cell.is-selected{background:#80bfa10b;box-shadow:inset 0 0 0 1px #80bfa175}.pick-date{border:0;background:transparent;padding:2px 3px;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:28px;color:#c8d6df;font-size:12px}.pick-date small{font-size:9px;color:#819aaa}.month-event{display:block;width:100%;font-size:10px;text-align:left;padding:4px 5px;margin-top:3px;border:0;border-radius:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#91b6d310;color:#a9c2d6;border-left:2px solid #91b6d360}.month-event.tone-kr{background:#92c2a510;color:#afcbb9;border-left-color:#92c2a560}.month-event.tone-crypto{background:#b7a3cc10;color:#c4b6d4;border-left-color:#b7a3cc60}.month-more{font-size:10px;padding:3px;border:0;background:transparent}.date-dots{display:none}.month-legend{display:flex;gap:14px;font-size:10px;color:#96aab7;align-items:center;margin-top:12px;flex-wrap:wrap}.month-legend>span{display:flex;align-items:center;gap:5px}.month-legend small{margin-left:auto;font-size:10px}.month-legend i,.date-dots i{display:inline-block;width:5px;height:5px;border-radius:50%}.dot-us{background:#90b3d0}.dot-kr{background:#90b9a3}.dot-crypto{background:#b29dc9}
@media(max-width:720px){.display-toggle{margin-bottom:10px}.display-toggle button{font-size:11px;padding:6px 12px}.month-toolbar{flex-wrap:wrap;margin-bottom:7px}.month-toolbar>div{gap:7px}.month-toolbar h2{font-size:16px;min-width:110px}.month-toolbar>span{font-size:10px}.month-cell{min-height:66px;padding:3px}.month-cell .month-event,.month-cell .month-more{display:none}.pick-date{position:relative;min-height:58px;display:block;text-align:left;padding:2px 4px;font-size:11px}.pick-date>span:first-child{display:grid;place-items:center;width:24px;height:24px}.pick-date small{display:block;font-size:8px;padding:1px 3px}.date-dots{display:flex;gap:3px;padding:2px 3px}.month-legend{gap:10px;font-size:9px}.month-legend small{width:100%;margin:0;font-size:9px}.month-weekdays{padding:9px 0;font-size:10px}}
.month-cell:not(.outside){cursor:pointer}.month-cell:not(.outside):hover{background-color:#8bbdab0c}
.schedule .pick-date:focus-visible{outline:none}.month-cell:has(>.pick-date:focus-visible){outline:2px solid #7be0bf;outline-offset:-2px}
.list-dates{margin-top:14px}.list-month-nav{display:flex;align-items:center;gap:7px}.list-month-nav button{background:#ffffff04;padding:5px 11px;font-size:13px}.list-month-nav input{color-scheme:dark;background:#101e28;color:#d5e3eb;border:1px solid #304551;border-radius:7px;padding:6px 10px;font-size:12px;min-width:150px}.list-month-nav span{font-size:10px;color:#899fac;margin-left:6px}#rangeForm{display:flex;align-items:end;gap:10px;flex-wrap:wrap;background:#ffffff03;border:1px solid #ffffff12;border-radius:9px;padding:13px;margin-top:12px}#rangeForm label{display:grid;gap:5px;color:#94adbc;font-size:11px}#rangeForm input{background:#0c1821;color:#d6e3ec;border:1px solid #304551;border-radius:7px;padding:7px 10px;font:inherit;color-scheme:dark}#rangeForm button{font-size:12px;padding:6px 20px;background:#79b89f16;border-color:#79b89f40}#rangeError{width:100%;font-size:11px;color:#efb1aa}#rangeError:empty{display:none}
@media(max-width:720px){.filter-bottom .period-filter{flex-basis:100%}.filter-bottom .period-filter button{padding:6px 4px}.list-month-nav{flex-wrap:wrap}.list-month-nav span{width:100%;margin:2px 0}.list-month-nav input{flex:1;min-width:0;text-align:center}#rangeForm{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:10px;gap:8px}#rangeForm input{min-width:0;width:100%;font-size:11px;padding:7px}#rangeForm button,#rangeError{grid-column:1/-1}#rangeForm label{min-width:0}.agenda-heading h2{font-size:13px}}
.event-body{position:relative;padding-left:40px}.event-type-icon{position:absolute;left:0;top:7px;width:29px;height:29px;display:grid;place-items:center;color:#afc7dd;background:#b0cfed08;border:1px solid #b0cfed18;border-radius:8px}.event-type-icon svg{width:19px;height:19px}.market-kr .event-type-icon{color:#b4d4c1;border-color:#b4d4c125;background:#b4d4c108}.market-crypto .event-type-icon{color:#c5b6dc;border-color:#c5b6dc25;background:#c5b6dc08}.month-event{display:flex;align-items:center;gap:4px}.month-event svg{width:13px;height:13px;flex:none}.month-event>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#eventTitle{display:flex;align-items:center;gap:10px}#eventTitle svg{width:25px;height:25px;flex:none;color:#adcebf}.type-legend{margin:12px 0;color:#93aaba;font-size:11px}.type-legend summary{cursor:pointer;width:fit-content;padding:4px 0}.type-legend[open]{padding-bottom:10px;border-bottom:1px solid #ffffff10}.type-legend-group{display:flex;gap:20px;align-items:start;margin-top:12px}.type-legend-group strong{font-size:11px;min-width:58px;color:#c5d3db}.type-legend-group>div{display:flex;flex-wrap:wrap;gap:10px 18px}.type-legend-group span{display:flex;align-items:center;gap:6px;font-size:11px}.type-legend-group svg{width:17px;height:17px;color:#b4c4cc}
@media(max-width:720px){.event-body{padding-left:31px}.event-type-icon{width:24px;height:24px;top:8px;border-radius:6px}.event-type-icon svg{width:16px;height:16px}.type-legend-group{display:block}.type-legend-group strong{display:block;margin-bottom:8px}.type-legend-group>div{gap:9px 13px}.type-legend-group span{font-size:10px}.type-legend-group svg{width:15px;height:15px}.month-cell .month-event{display:none}}
.live-data-note{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
.coverage-note{font-size:12px;color:#9eb8c5;line-height:1.65;margin:8px 0}
.source-status{font-size:12px;line-height:1.7;color:#9eb8c5;margin:0 0 16px}
.source-status summary{cursor:pointer;color:#b5cbd6}
.source-status ul{padding-left:18px}
.source-status li{margin:6px 0}
.event-title,.event-numbers{overflow-wrap:anywhere}
@media(max-width:600px){.live-data-note{font-size:11px}.source-status{font-size:11px}.coverage-note{font-size:11px}}
.importance-select{display:flex;align-items:center;gap:8px;font-size:12px;white-space:nowrap;color:#b1c6d2}
.importance-select select{min-height:36px;padding:5px 26px 5px 10px;border:1px solid #304c5b;border-radius:7px;background:#10212b;color:#d4e7ed}
.importance-guide{font-size:12px;color:#a9becb;line-height:1.7;margin:12px 0}
.importance-guide summary{cursor:pointer;color:#bdd4df}
.importance-guide p{margin:5px 0}
.scope-filter{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}
@media(max-width:600px){.scope-filter{display:grid;grid-template-columns:repeat(4,1fr)}.scope-filter button{padding:8px 3px;min-width:0;font-size:11px}.importance-guide{font-size:11px}}
/* Long issuer names and collection timestamps must wrap in the mobile disclosure. */
#usUniverseList, #usUniverseList p, #usUniverseList small {min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal;}
@media(max-width:600px){.event-body,.event-title{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}.event-title{word-break:normal}}
#krUniverseList,#krUniverseList p{min-width:0;max-width:100%;overflow-wrap:anywhere;white-space:normal;}

/* Match the treemap workspace, title divider and shared responsive ad placement. */
.calendar-layout .schedule{max-width:none;width:100%;margin:0;padding:24px 28px}
.calendar-layout .map-page-title{font-size:22px;line-height:26px;margin:0 0 18px;padding:0 0 18px}
@media(max-width:720px){
 .calendar-layout .schedule{padding:0}
 .calendar-layout .map-page-title{font-size:18px;line-height:24px;margin:0 0 16px;padding:16px 0}
 .calendar-layout .schedule-zone{font-size:10px}
}

.category-filter{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:16px 0;padding:13px 14px;border:1px solid #293e49;border-radius:10px;background:#10202a55;min-width:0}
.category-filter legend{padding:0 6px;color:#c2d6df;font-size:12px}.category-filter legend small{margin-left:8px;color:#819aa8;font-weight:400}
.category-option{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #304550;border-radius:7px;color:#9fb5c2;font-size:12px;cursor:pointer;background:#0c1820}
.category-option:has(:checked){background:#21483c66;border-color:#4b7968;color:#c7eddd}.category-option:focus-within{outline:2px solid #69ddbc;outline-offset:2px}
.category-option input{margin:0;width:14px;height:14px;accent-color:#68c9a9}
.category-filter .importance-select{margin-left:auto;font-size:11px}.category-filter select:disabled{opacity:.45}
.type-legend{padding:12px 14px;border:1px solid #ffffff10;border-radius:9px;background:#ffffff02}.type-legend[open]{padding-bottom:12px}.type-legend-group{gap:14px}.type-legend-group>div{gap:8px 14px}
.calendar-load-status:not([hidden]){padding:12px;border:1px solid #826c3a;border-radius:8px;margin:12px 0;color:#dec58f}
@media(max-width:720px){.category-filter{gap:7px;padding:10px}.category-option{padding:7px 8px;font-size:11px}.category-filter .importance-select{width:100%;margin-left:0;margin-top:3px;justify-content:space-between}.category-filter legend small{font-size:10px}}

@media(max-width:720px){.calendar-layout .schedule .schedule-zone{position:static;font-size:9px}.calendar-layout .heading{gap:8px;flex-wrap:wrap}}

.economic-filter-group{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-right:12px;margin-right:4px;border-right:1px solid #304550}
.category-filter .economic-filter-group .importance-select{margin:0;width:auto;gap:6px;font-size:11px;justify-content:flex-start}
.economic-filter-group select{min-height:33px;font-size:11px}
.type-legend #typeLegendTitle{font-size:12px;font-weight:600;color:#c4d6df;margin:0;padding:0 0 10px;border-bottom:1px solid #ffffff10;line-height:1.6}
.type-legend{border-color:#2b414e;background:#10202a44;padding:14px 16px}
@media(max-width:720px){.economic-filter-group{border-right:0;padding:0;margin:0;gap:7px}.category-filter .economic-filter-group .importance-select{font-size:10px}.economic-filter-group select{max-width:108px;padding-left:7px}.type-legend{padding:12px}}

.category-group{display:flex;align-items:center;gap:14px;width:100%;border-top:1px solid #ffffff0c;padding-top:10px;margin-top:2px}
.category-group-title{min-width:34px;color:#a4bbc8;font-size:11px;font-weight:600}
.category-group-options{display:flex;flex-wrap:wrap;gap:7px}
.category-group .category-option{background:#10202a;border-color:#2b404b}
.category-group .category-option:has(:checked){background:#21483c55;border-color:#426b5e}
@media(max-width:720px){.category-group{gap:9px;align-items:flex-start}.category-group-title{padding-top:8px;min-width:27px}.category-group-options{gap:6px}.category-group .category-option{font-size:10px;padding:7px}}

.category-group-title{min-width:52px;white-space:nowrap}


.category-detail-row{width:100%;min-width:0}
@media(min-width:721px){
 .category-detail-row{display:flex;align-items:stretch;gap:16px;border-top:1px solid #ffffff0c;padding-top:10px;margin-top:2px}
 .category-detail-row .category-group{width:auto;min-width:0;border-top:0;padding-top:0;margin-top:0;align-items:center}
 .category-detail-row .category-group+.category-group{border-left:1px solid #304550;padding-left:16px}
}

@media(min-width:721px){
 .category-filter>.category-option:has([data-category="all"]){width:67px;justify-content:center}
 .category-detail-row .category-group:first-child{gap:8px}
 .category-detail-row .category-group:first-child>.category-group-title{width:67px;min-width:67px;text-align:right}
}

/* Keep the month controls anchored when switching list/calendar views. */
.schedule .month-view,.schedule .list-dates{margin-top:14px}
.schedule .month-toolbar{align-items:flex-start}

/* Center month navigation independently of the calendar result count. */
.schedule .month-toolbar{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:8px}
.schedule .month-toolbar>div{grid-column:1;grid-row:1;justify-content:center}
.schedule .month-toolbar>span{grid-column:1;grid-row:2;justify-self:end}
@media(min-width:721px){.schedule .month-toolbar>span{grid-row:1;align-self:center;max-width:calc((100% - 340px)/2);text-align:right}}

/* Equal breathing room around both month navigation bars. */
.schedule .list-month-toolbar,.schedule #monthView>.month-toolbar{padding-top:12px;padding-bottom:12px}

/* Separate dates without adding borders between events on the same day. */
#agenda .day-group{margin-bottom:0}
#agenda .day-group+.day-group{margin-top:20px}
@media(max-width:720px){#agenda .day-group+.day-group{margin-top:16px}}

/* Connect the space below one date to the next date. */
#agenda .day-group{position:relative;padding-left:0}
#agenda .event-numbers:empty{display:none}
@media(min-width:721px){
 #agenda .day-label{display:flex;flex-direction:column;align-items:flex-start}
}

/* Status-only cards have no reserved result-text space. */
.event-result:has(>.event-numbers:empty){align-self:center;display:flex;align-items:center;justify-content:flex-end;margin-top:0}
@media(max-width:720px){.event-result:has(>.event-numbers:empty){justify-content:flex-start}}

/* Compact filled/outline importance stars and bounded multiline results. */
.impact-stars{gap:2px;flex-shrink:0;color:#cbbb88;line-height:1}
.impact-stars svg{display:block;width:13px;height:13px;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
.impact-stars .filled{fill:currentColor}.impact-stars .empty{fill:none;opacity:.7}
#agenda .event-card{white-space:normal}
#agenda .event-body,#agenda .event-result{min-width:0;max-width:100%}
#agenda .event-numbers{white-space:normal;overflow-wrap:anywhere;word-break:normal;line-height:1.6;max-width:100%}
#agenda .event-meta{flex-wrap:wrap}
@media(max-width:720px){.impact-stars svg{width:12px;height:12px}#agenda .event-numbers:not(:empty){flex-basis:100%}}

/* Readable event detail with a clear result area and quiet source actions. */
.schedule #eventDetail{width:580px;padding:24px;border:1px solid #354f5e;border-radius:16px;background:#101d26;box-shadow:0 24px 80px #0007}
#eventDetail .event-detail-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
#eventMarket{font-size:11px;color:#93b2c0;line-height:1.6}
#eventDetail #detailClose{float:none;flex:none;padding:6px 11px;font-size:12px;border-radius:7px;background:#192b37;border-color:#314956}
.schedule #eventTitle{font-size:22px;line-height:1.45;align-items:flex-start;gap:10px;margin:0 0 14px;letter-spacing:-.4px}
#eventTitle svg{margin-top:3px}
.schedule #eventDescription{font-size:13px;line-height:1.8;color:#9eb4c0;overflow-wrap:anywhere}
#eventDetail .detail-facts{margin:20px 0;gap:10px}
#eventDetail .detail-facts>div{min-width:0;border:1px solid #2a404c;border-radius:9px;background:#14232d;padding:13px 14px}
#eventDetail .detail-facts dt{font-size:11px;color:#86a4b4;margin-bottom:7px}
#eventDetail .detail-facts dd{margin:0;font-size:13px;line-height:1.7;color:#d5e4eb;overflow-wrap:anywhere}
#eventDetail .detail-facts .detail-result{grid-column:1/-1;background:#17302966;border-color:#34574b;padding:15px}
#eventDetail .detail-result dd{font-weight:500;color:#c3e7d8}
.detail-source-actions{display:flex;gap:9px;flex-wrap:wrap;padding-top:17px;border-top:1px solid #2a3f4b}
#eventDetail .source-reference{display:inline-flex;align-items:center;justify-content:center;margin:0;padding:9px 13px;border:1px solid #3b5b60;border-radius:8px;background:#1b353733;color:#b5dbd4;font-size:12px;line-height:1.5;text-decoration:none}
#eventDetail .source-reference[hidden]{display:none}
#eventDetail .source-reference:hover{background:#294b4555;border-color:#658f81}
#eventDetail #eventChecked{font-size:10px;color:#7f99a8;margin:13px 0 0;line-height:1.6}
@media(max-width:720px){.schedule #eventDetail{padding:19px 17px;max-width:calc(100% - 24px)}.schedule #eventTitle{font-size:19px}.schedule #eventDescription{font-size:12px}#eventDetail .detail-facts{gap:8px}#eventDetail .detail-facts>div{padding:11px}#eventDetail .detail-facts dd{font-size:12px}.detail-source-actions .source-reference{flex:1;padding:9px 10px}}

/* Match the range heading to the day labels below it. */
.schedule .agenda-heading h2{font-size:20px;line-height:1.5;font-weight:700}
@media(max-width:720px){.schedule .agenda-heading h2{font-size:14px}}

/* Align the period heading with the desktop event-card column. */
@media(min-width:721px){.schedule .agenda-heading{padding-left:98px}}

.schedule .category-coverage{font-size:11px;line-height:1.6;color:#b8ad87;margin:8px 0 12px}

/* Mobile calendar: consistent alignment, readable labels and touch targets. */
@media(max-width:720px){
 .schedule .display-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0 12px}
 .schedule .display-toggle button{min-height:40px;font-size:12px}
 .schedule .market-filter button,.schedule .period-filter button{min-height:40px;font-size:12px}
 .schedule .schedule-search{height:40px;font-size:13px}
 .schedule .category-filter{gap:8px;padding:12px 10px;align-items:center}
 .schedule .category-filter legend{font-size:12px}
 .schedule .category-option{min-height:38px;padding:7px 9px;font-size:12px;box-sizing:border-box}
 .schedule .economic-filter-group{flex-wrap:wrap;flex:1;gap:7px}
 .schedule .economic-filter-group .importance-select{font-size:11px;gap:6px}
 .schedule .economic-filter-group select{min-height:38px;font-size:12px;max-width:120px}
 .schedule .category-group{display:grid;grid-template-columns:1fr;gap:8px;padding-top:12px;margin-top:10px}
 .schedule .category-group-title{padding:0;font-size:12px;line-height:1.5}
 .schedule .category-group-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 .schedule .category-group .category-option{font-size:12px;padding:8px 10px;gap:8px;min-width:0}
 .schedule .type-legend-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px}
 .schedule .type-legend-group strong{font-size:12px;margin-bottom:10px}
 .schedule .type-legend-group span{font-size:11px;line-height:1.5;align-items:flex-start;min-width:0;word-break:keep-all}
 .schedule .type-legend-group svg{width:17px;height:17px;flex:none}
 .schedule .month-toolbar>div{width:100%;gap:8px}
 .schedule .month-toolbar button{min-height:40px;min-width:36px;padding:6px 10px}
 .schedule .month-toolbar h2{font-size:17px;min-width:0;flex:1;max-width:150px}
 .schedule .month-toolbar>span{font-size:11px}
 .schedule .agenda-heading{align-items:flex-start;gap:10px}
 .schedule .agenda-heading h2{font-size:15px;min-width:0;overflow-wrap:anywhere}
 .schedule .agenda-heading>span{font-size:11px;flex:none;padding-top:3px}
 #agenda .day-label{align-items:center;padding-bottom:10px;gap:8px}
 #agenda .day-label strong{font-size:17px}#agenda .day-label span{font-size:12px}
 #agenda .event-card{grid-template-columns:48px minmax(0,1fr);padding:12px 10px;gap:7px 8px}
 #agenda .event-time{font-size:11px;padding-top:2px}
 #agenda .event-body{padding-left:29px}
 #agenda .event-type-icon{top:0;width:23px;height:23px}
 #agenda .event-meta{font-size:11px;line-height:1.5;gap:6px;margin-bottom:5px}
 #agenda .event-title{font-size:14px;line-height:1.6;word-break:keep-all;overflow-wrap:anywhere}
 #agenda .event-subtitle{font-size:11px;margin-top:5px}
 #agenda .event-result{grid-column:2;padding-left:29px;gap:7px;margin-top:2px}
 #agenda .event-status{font-size:11px;padding:3px 7px;line-height:1.5}
 #agenda .event-numbers{font-size:12px;line-height:1.65}
 .schedule .pick-date{font-size:12px;min-height:62px;padding:2px}
 .schedule .pick-date small{font-size:10px}.schedule .month-cell{min-height:70px}
 .schedule .month-legend{font-size:11px;gap:10px}.schedule .month-legend small{font-size:11px}
 .schedule #eventDetail{box-sizing:border-box;width:calc(100% - 24px);max-width:calc(100% - 24px);max-height:calc(100dvh - 32px);padding:18px 16px;overflow-y:auto}
 #eventDetail .event-detail-top{gap:10px;margin-bottom:16px}
 #eventDetail #eventMarket{font-size:12px}#eventDetail #detailClose{min-height:40px;min-width:48px}
 .schedule #eventTitle{font-size:19px;line-height:1.5;overflow-wrap:anywhere}
 .schedule #eventDescription{font-size:13px;line-height:1.75}
 #eventDetail .detail-facts{grid-template-columns:1fr}
 #eventDetail .detail-facts dt{font-size:12px}#eventDetail .detail-facts dd{font-size:13px}
 #eventDetail .source-reference{min-height:44px;font-size:13px;box-sizing:border-box}
 .schedule #rangeForm input{font-size:13px;min-height:40px;box-sizing:border-box}
 .schedule #rangeForm button{min-height:40px}
}
@media(max-width:359px){
 .schedule .economic-filter-group{flex-basis:100%}
 #agenda .event-card{grid-template-columns:42px minmax(0,1fr);gap:7px 6px}
 #agenda .event-body,#agenda .event-result{padding-left:0}
 #agenda .event-type-icon{position:static;float:left;margin:0 6px 3px 0}
 .schedule .month-toolbar>div{gap:5px}.schedule .month-toolbar h2{font-size:15px}
}

@media(max-width:720px){
 .schedule .category-filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 8px}
 .schedule .category-filter>.category-option{grid-row:1;justify-content:center}
 .schedule .category-filter>.category-option:has([data-category="all"]){grid-column:1}
 .schedule .category-filter>.category-option:has([data-category="listing"]){grid-column:2}
 .schedule .category-filter>.category-option:has([data-category="delisting"]){grid-column:3}
 .schedule .economic-filter-group{grid-column:1/-1;grid-row:2;display:flex;justify-content:space-between;align-items:center;gap:8px;min-width:0}
 .schedule .category-detail-row{grid-column:1/-1;grid-row:3}
 .schedule .category-group:first-child{margin-top:0}
}

/* Reserve the same rows even when a date has no events. */
@media(max-width:720px){
 .schedule .month-cell>.pick-date{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:24px 16px 8px;align-content:start;justify-items:start;align-items:start;min-height:62px;height:62px;padding:3px 2px;box-sizing:border-box}
 .schedule .pick-date>span:first-child{grid-row:1;align-self:start;margin:0}
 .schedule .pick-date>small{grid-row:2;margin:0;line-height:16px;padding:0 3px}
 .schedule .pick-date>.date-dots{grid-row:3;align-self:start;margin:0;padding:2px 3px}
}

.mobile-card-category{display:none}
@media(max-width:720px){
 #agenda .event-meta{display:flex;align-items:center;gap:5px 7px;width:100%}
 #agenda .event-meta>.importance{display:none}
 #agenda .mobile-card-category{display:block;margin-left:auto;color:#abc0cc;font-size:10px;line-height:1.5;text-align:right;max-width:48%;word-break:keep-all;overflow-wrap:anywhere}
 #agenda .event-subtitle{display:none}
 #agenda .event-title{display:block;margin-top:7px}
 #agenda .event-result,#agenda .event-result:has(>.event-numbers:empty){display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:nowrap;gap:10px;padding-top:8px;margin-top:2px}
 #agenda .event-result>.event-status{order:2;flex:none;margin-left:auto;white-space:nowrap;font-size:10px}
 #agenda .event-result>.event-numbers:not(:empty){order:1;flex:1 1 0;min-width:0;font-size:11px;line-height:1.65;margin:0}
}

/* Collapsed filters keep the agenda within reach; selections stay visible. */
.calendar-filter-disclosure,.schedule .calendar-legend-disclosure{border:1px solid #2b424f;border-radius:11px;background:#10202a44;margin:12px 0;padding:0;overflow:hidden}
.calendar-filter-disclosure>summary,.schedule .calendar-legend-disclosure>summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;min-height:48px;padding:12px 15px;box-sizing:border-box;width:100%;color:#d2e2e9;font-size:13px;font-weight:600}
.calendar-filter-disclosure>summary::-webkit-details-marker,.calendar-legend-disclosure>summary::-webkit-details-marker{display:none}
.calendar-filter-disclosure>summary small,.calendar-legend-disclosure>summary small{margin-left:auto;font-size:11px;font-weight:400;color:#95b3bc}
.calendar-filter-disclosure>summary::after,.calendar-legend-disclosure>summary::after{content:'';width:7px;height:7px;border-right:1.5px solid #88a8b5;border-bottom:1.5px solid #88a8b5;transform:rotate(45deg);margin:-4px 2px 0 4px;flex:none}
.calendar-filter-disclosure[open]>summary::after,.calendar-legend-disclosure[open]>summary::after{transform:rotate(225deg);margin-top:4px}
.calendar-filter-disclosure[open]>summary,.schedule .calendar-legend-disclosure[open]>summary{border-bottom:1px solid #ffffff0d}
.calendar-filter-disclosure>summary:focus-visible,.calendar-legend-disclosure>summary:focus-visible{outline:2px solid #76d6b6;outline-offset:-3px;border-radius:10px}
.schedule .calendar-filter-disclosure .category-filter{margin:0;border:0;border-radius:0;padding:14px;background:transparent;min-width:0}
.filter-accessible-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.schedule .calendar-legend-disclosure{background:transparent;border-color:#263b47}
.schedule .calendar-legend-disclosure #typeLegendTitle{padding:12px 15px;margin:0;font-size:12px;line-height:1.5;border-bottom:0}
.schedule .calendar-legend-disclosure[open] #typeLegendTitle{border-bottom:1px solid #ffffff0d}
.calendar-legend-disclosure #typeLegendContent{padding:0 15px 15px}
@media(max-width:720px){
 .calendar-filter-disclosure{margin-top:14px}
 .schedule .calendar-filter-disclosure .category-filter{padding:12px}
 .schedule .calendar-filter-disclosure .category-group{padding-top:12px}
 .schedule .calendar-filter-disclosure .category-option{border-radius:8px;background:#12252b}
 .schedule .calendar-filter-disclosure .category-option:has(:checked){background:#1c3b32;border-color:#426c5d}
 .schedule .calendar-legend-disclosure{margin-top:8px;margin-bottom:8px}
}

/* Quiet, left-aligned choices inside the filter disclosure. */
.schedule .calendar-filter-disclosure .category-option{justify-content:flex-start;text-align:left;border-color:transparent;background:transparent;box-shadow:none;padding:5px 8px;min-height:32px;gap:8px}
.schedule .calendar-filter-disclosure .category-option:has(:checked){border-color:transparent;background:#78c9aa0d;box-shadow:none}
.schedule .calendar-filter-disclosure .economic-filter-group{justify-content:flex-start;gap:10px}
.schedule .calendar-filter-disclosure .category-group-title{text-align:left}
@media(max-width:720px){
 .schedule .calendar-filter-disclosure .category-filter{gap:8px;padding:10px 12px}
 .schedule .calendar-filter-disclosure .category-filter>.category-option{justify-content:flex-start}
 .schedule .calendar-filter-disclosure .category-group .category-option{padding:5px 8px;min-height:32px;font-size:12px}
 .schedule .calendar-filter-disclosure .category-group-options{gap:4px 8px}
 .schedule .calendar-filter-disclosure .category-group{gap:6px;padding-top:10px;margin-top:8px}
 .schedule .calendar-filter-disclosure .category-group-title{padding-left:8px}
 .schedule .calendar-filter-disclosure .economic-filter-group{gap:8px;justify-content:flex-start}
 .schedule .calendar-filter-disclosure .importance-select{gap:6px}
 .schedule .calendar-filter-disclosure .importance-select select{min-height:32px;padding-top:3px;padding-bottom:3px}
}

/* Match the existing journal's brief, non-blocking login notice. */
#calendarLoginNotice{position:fixed;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);box-sizing:border-box;width:max-content;max-width:calc(100vw - 32px);background:#245344;color:#ccffed;border-radius:9px;font-size:13px;line-height:1.7;text-align:center;z-index:1000;pointer-events:none;overflow-wrap:anywhere;box-shadow:0 8px 28px #0005}
#calendarLoginNotice:not(:empty){padding:12px 18px;border:1px solid #4b806b}

#calendarLoginNotice{white-space:pre-line}

@media(min-width:721px){#calendarLoginNotice{white-space:normal}}

/* Desktop filter controls retain their sizing inside collapsible panels. */
@media(min-width:721px){
 .schedule .calendar-filter-disclosure .category-option{padding:7px 10px;gap:7px;min-height:0;border:1px solid #304550;background:#0c1820}
 .schedule .calendar-filter-disclosure .category-option:has(:checked){background:#21483c66;border-color:#4b7968}
 .schedule .calendar-filter-disclosure .category-group .category-option{background:#10202a;border-color:#2b404b}
 .schedule .calendar-filter-disclosure .category-group .category-option:has(:checked){background:#21483c55;border-color:#426b5e}
 .schedule .calendar-filter-disclosure .economic-filter-group{gap:8px}
 .schedule .calendar-filter-disclosure .category-group:first-child>.category-group-title{text-align:right}
 .schedule .calendar-filter-disclosure .category-filter>.category-option:has([data-category="all"]){justify-content:center}
}

@media(max-width:720px){.schedule-controls.calendar-view .period-filter{display:none}.schedule-controls.calendar-view .filter-bottom{min-height:0;gap:0}}

@media(min-width:721px){
 .schedule-controls.calendar-view{display:flex;align-items:center;justify-content:space-between;gap:20px}
 .schedule-controls.calendar-view .market-filter{border-bottom:0;padding-bottom:0;flex:0 0 auto}
 .schedule-controls.calendar-view .filter-bottom{padding-top:0;min-height:0;margin:0;flex:0 1 350px;min-width:180px}
 .schedule-controls.calendar-view .period-filter{display:none}
 .schedule-controls.calendar-view .schedule-search{width:100%;max-width:none;min-width:0;margin:0;flex:1}
}

.list-month-toolbar .period-filter{display:flex;gap:4px;flex-wrap:nowrap;margin-left:auto}.list-month-toolbar .period-filter button{white-space:nowrap}.list-month-toolbar #listToday[hidden]{display:none!important}
@media(min-width:721px){
 .schedule-controls{display:flex;align-items:center;justify-content:space-between;gap:20px}
 .schedule-controls .market-filter{border-bottom:0;padding-bottom:0;flex:0 0 auto}
 .schedule-controls .filter-bottom{padding-top:0;min-height:0;margin:0;flex:0 1 350px;min-width:180px}
 .schedule-controls .schedule-search{width:100%;max-width:none;min-width:0;margin:0;flex:1}
 .list-month-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.list-month-toolbar>div:first-child{flex:0 0 auto}
}
@media(max-width:720px){.list-month-toolbar{flex-wrap:wrap;gap:10px}.list-month-toolbar .period-filter{width:100%;margin:0;justify-content:space-between}.list-month-toolbar .period-filter button{flex:1;min-width:0;padding:7px 5px}}
