.calendar-page{flex-direction:column;gap:16px;display:flex}.calendar-title{align-items:baseline;gap:12px;display:flex}.calendar-preview-note{color:var(--text-tertiary);font-size:var(--text-11);white-space:nowrap}.calendar-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.calendar-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.calendar-view-switch{background:var(--surface-primary)}.calendar-filters{flex-direction:column;gap:10px;min-width:0;display:flex}.calendar-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.calendar-search{min-width:160px;height:36px;color:var(--text-tertiary);border:1px solid var(--border-default);border-radius:var(--terminal-radius-sm);flex:0 240px;align-items:center;gap:8px;padding:0 10px;display:flex}.calendar-search input{width:100%;min-width:0;font-size:var(--text-13);color:var(--text-primary);background:0 0;padding:6px 0}.calendar-search input::-webkit-search-cancel-button{display:none}.calendar-search button{border-radius:var(--terminal-radius-sm);cursor:pointer;flex:none;place-items:center;width:28px;height:28px;display:grid}.calendar-search button:hover{background:var(--hover-bg)}.calendar-categories{flex-wrap:wrap;gap:4px;display:flex}.calendar-category{min-height:32px;font-size:var(--text-13);color:var(--text-secondary);border:1px solid var(--border-default);border-radius:var(--terminal-radius-sm);cursor:pointer;align-items:center;gap:7px;padding:5px 8px;display:inline-flex}.calendar-category:hover{color:var(--text-primary);background:var(--hover-bg)}.calendar-category[aria-pressed=true]{color:var(--accent-text);background:var(--accent-bg);border-color:var(--accent-text);font-weight:500}.calendar-filter-tools{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.calendar-select{min-width:0;position:relative}.calendar-select select{width:100%;max-width:220px;min-height:36px;font-size:var(--text-13);color:var(--text-secondary);background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--terminal-radius-sm);cursor:pointer;padding:0 10px}.calendar-reset{min-height:36px;font-size:var(--text-12);color:var(--accent-text);cursor:pointer;border-radius:var(--terminal-radius-sm);padding:6px 8px;font-weight:500}.calendar-reset:hover{background:var(--accent-bg)}.calendar-filters[data-inline] .calendar-toolbar{overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;margin:-3px;padding:3px;overflow-x:auto}.calendar-filters[data-inline] .calendar-toolbar::-webkit-scrollbar{display:none}.calendar-filters[data-inline] .calendar-search{flex:0 0 160px;min-width:160px}.calendar-filters[data-inline] .calendar-search>svg{flex:none}.calendar-filters[data-inline] .calendar-categories{flex-wrap:nowrap;flex:none}.calendar-filters[data-inline] .calendar-category{white-space:nowrap;flex:none;min-height:36px}.calendar-filters[data-inline] .calendar-filter-tools{flex-wrap:nowrap;flex:none;order:initial;width:auto}.calendar-filters[data-inline] .calendar-select,.calendar-filters[data-inline] .calendar-following,.calendar-filters[data-inline] .calendar-reset{white-space:nowrap;flex:none}.calendar-content{min-width:0}.calendar-dot{border-radius:999px;flex:none;width:6px;height:6px;display:inline-block}.calendar-agenda{border:1px solid var(--border-default);border-radius:var(--terminal-radius-md)}.calendar-agenda>section:first-child .calendar-section-heading{border-radius:var(--terminal-radius-md) var(--terminal-radius-md) 0 0}.calendar-section-heading{z-index:1;background:var(--surface-secondary);border-bottom:1px solid var(--border-default);align-items:center;gap:8px;min-height:40px;padding:8px 16px;display:flex;position:sticky;top:56px}.calendar-section-title{font-size:var(--text-13);color:var(--text-primary);font-weight:600}.calendar-section-count{font-size:var(--text-11);font-variant-numeric:tabular-nums;color:var(--text-tertiary)}.calendar-rows{flex-direction:column;display:flex}.calendar-row+.calendar-row{border-top:1px solid var(--border-default)}.calendar-row-button{text-align:left;cursor:pointer;grid-template-columns:108px 156px minmax(0,1fr) 190px 14px;align-items:center;gap:16px;width:100%;min-height:76px;padding:14px 16px;transition:background-color .12s;display:grid}.calendar-row-button:hover{background:var(--hover-bg)}.calendar-page .calendar-row-button:focus-visible{outline-offset:-3px}.calendar-row-when{font-variant-numeric:tabular-nums;flex-direction:column;gap:2px;min-width:0;display:flex}.calendar-row-date{color:var(--text-primary);font-size:var(--text-12);font-weight:500}.calendar-row-time{color:var(--text-secondary);font-size:var(--text-12)}.calendar-row-local{color:var(--text-tertiary);font-size:var(--text-11)}.calendar-row-main{flex-direction:column;gap:4px;min-width:0;display:flex}.calendar-row-title{color:var(--text-primary);font-size:var(--text-15);overflow-wrap:anywhere;font-weight:500}.calendar-row[data-key=true] .calendar-row-title{font-weight:600}.calendar-row-meta{color:var(--text-tertiary);font-size:var(--text-12);flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.calendar-row-subjects{align-items:center;gap:6px;min-width:0;display:inline-flex}.calendar-row-location{min-width:0;font-size:var(--text-12);color:var(--text-secondary);grid-template-columns:68px minmax(0,1fr);align-items:center;gap:12px;display:grid}.calendar-row-country{font-family:var(--font-mono);white-space:nowrap;align-items:center;gap:6px;display:flex}.calendar-row-country>span[aria-hidden]{width:18px;font-family:var(--font-sans);flex:none;display:inline-block}.calendar-row-city{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.calendar-row-type{align-self:start;padding-top:1px;display:flex}.calendar-event-type{border-radius:var(--terminal-radius-sm);max-width:100%;font-size:var(--text-11);color:var(--event-color);background:color-mix(in srgb, var(--event-bg) 65%, transparent);padding:1px 6px;font-weight:600;line-height:18px;display:inline-block}.calendar-row-badges{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:4px;display:flex}.calendar-badge{border-radius:var(--terminal-radius-sm);font-size:var(--text-11);color:var(--text-secondary);background:var(--surface-tertiary);align-items:center;padding:2px 7px;font-weight:500;line-height:1.5;display:inline-flex}.calendar-badge--key,.calendar-badge--following{color:var(--accent-text);background:var(--accent-bg)}.calendar-row-chevron{color:var(--text-tertiary)}.calendar-data{flex-direction:column;gap:16px;min-width:0;display:flex}.calendar-page[data-view=compact] .calendar-data{border:1px solid var(--border-default);border-radius:var(--terminal-radius-sm);background:var(--card-bg);gap:0}.calendar-agenda[data-density=compact]{--calendar-columns:82px 54px 156px minmax(0, 1fr) 62px 112px 86px 108px 44px;border:0;border-radius:0;position:relative}.calendar-compact-columns,.calendar-compact-row{grid-template-columns:var(--calendar-columns);text-align:left;align-items:center;column-gap:12px;width:100%;padding-inline:12px;display:grid}.calendar-section-heading--compact{border-top:1px solid var(--border-default);background:var(--surface-secondary);min-height:32px;padding:6px 12px;position:static}.calendar-section-heading--compact .calendar-section-title{font-size:var(--text-12);font-weight:600}.calendar-section-heading--compact .calendar-section-count{font-family:var(--font-mono);color:var(--text-tertiary)}.calendar-compact-columns{border-radius:var(--terminal-radius-sm) var(--terminal-radius-sm) 0 0;z-index:1;height:28px;font-family:var(--font-mono);font-size:var(--text-11);text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);border-bottom:1px solid var(--border-default);background:var(--surface-secondary);font-weight:500;position:sticky;top:56px}.calendar-compact-row{height:32px;min-height:32px;font-size:var(--text-13);color:var(--text-secondary);cursor:pointer;border-bottom:1px solid color-mix(in srgb, var(--border-default) 40%, transparent);padding-block:0;line-height:20px;transition:background-color .12s;position:relative}.calendar-event-type[data-category=regulatory],.calendar-compact-row[data-category=regulatory]{--event-color:var(--hue-amber-text);--event-bg:var(--hue-amber-bg)}.calendar-event-type[data-category=macro],.calendar-compact-row[data-category=macro]{--event-color:var(--hue-blue-text);--event-bg:var(--hue-blue-bg)}.calendar-event-type[data-category=listed_company],.calendar-compact-row[data-category=listed_company]{--event-color:var(--hue-purple-text);--event-bg:var(--hue-purple-bg)}.calendar-event-type[data-category=network],.calendar-compact-row[data-category=network]{--event-color:var(--hue-teal-text);--event-bg:var(--hue-teal-bg)}.calendar-event-type[data-category=industry],.calendar-compact-row[data-category=industry]{--event-color:var(--hue-indigo-text);--event-bg:var(--hue-indigo-bg)}.calendar-compact-item:nth-child(2n) .calendar-compact-row{background:color-mix(in srgb, var(--surface-secondary) 35%, transparent)}.calendar-compact-row[data-new-date=true]{border-top:1px solid var(--border-default)}.calendar-agenda>section:first-of-type .calendar-compact-item:first-child .calendar-compact-row{border-top:0}.calendar-compact-item .calendar-compact-row[data-today=true]{background:color-mix(in srgb, var(--accent-bg) 60%, var(--card-bg));box-shadow:inset 2px 0 var(--accent-primary)}.calendar-compact-row[data-today=true] .calendar-compact-date,.calendar-compact-row[data-today=true] .calendar-compact-time{color:var(--accent-text)}.calendar-compact-row>span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.calendar-compact-row:hover,.calendar-compact-row:focus-visible{background:var(--accent-bg)}.calendar-compact-row:hover .calendar-compact-name{color:var(--accent-text)}.calendar-page .calendar-compact-row:focus-visible{outline-offset:-2px}.calendar-compact-date,.calendar-compact-time,.calendar-compact-market{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.calendar-compact-row .calendar-compact-date{font-size:var(--text-11);text-transform:uppercase}.calendar-compact-row .calendar-compact-time{font-size:var(--text-11);color:var(--text-tertiary)}.calendar-compact-row .calendar-compact-name{color:var(--text-primary);align-items:center;gap:6px;font-weight:400;display:flex}.calendar-compact-headline{text-overflow:ellipsis;overflow:hidden}.calendar-compact-row[data-importance="3"] .calendar-compact-name{font-weight:600}.calendar-compact-row .calendar-compact-type{display:flex}.calendar-compact-type .calendar-event-type{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.calendar-compact-row .calendar-compact-market{font-size:var(--text-11);color:var(--text-secondary);grid-template-columns:18px minmax(0,1fr);align-items:center;gap:6px;display:grid}.calendar-country-flag{font-family:var(--font-sans);font-size:var(--text-13)}.calendar-compact-row .calendar-compact-city{font-size:var(--text-12);color:var(--text-secondary)}.calendar-compact-scroll{max-width:100%;position:relative}.calendar-compact-hint{display:none}.calendar-compact-following{color:var(--accent-text);flex:none}.calendar-compact-row .calendar-compact-importance{font-size:var(--text-11);color:var(--text-tertiary);align-items:center;gap:6px;display:flex}.calendar-importance-bars{flex:none;align-items:flex-end;gap:2px;height:12px;display:flex}.calendar-importance-bars i{background:var(--border-default);width:3px;height:5px;display:block}.calendar-importance-bars i:nth-child(2){height:8px}.calendar-importance-bars i:nth-child(3){height:11px}.calendar-importance-bars i[data-filled=true]{background:var(--text-tertiary)}.calendar-compact-row[data-importance="3"] .calendar-importance-bars i{background:var(--hue-amber-icon)}.calendar-compact-row[data-importance="3"] .calendar-importance-label{color:var(--hue-amber-text)}.calendar-compact-row .calendar-compact-status{font-size:var(--text-11);color:var(--text-tertiary);align-items:center;gap:5px;display:flex}.calendar-status-dot{background:currentColor;border-radius:50%;flex:none;width:4px;height:4px}.calendar-status-empty{opacity:.45}.calendar-compact-row:is([data-status=expected],[data-status=estimated]) .calendar-compact-status{color:var(--hue-amber-text)}.calendar-compact-row[data-changed=true] .calendar-compact-status{color:var(--hue-purple-text)}.calendar-compact-row[data-status=cancelled] .calendar-compact-status{color:var(--status-error-text)}.calendar-compact-row[data-status=happened] .calendar-compact-status{color:var(--status-success-text)}.calendar-compact-row[data-status=cancelled] .calendar-compact-headline{text-decoration:line-through}.calendar-compact-mobile-status{display:none}@media (max-width:1200px){.calendar-agenda[data-density=compact]{--calendar-columns:76px 54px 144px minmax(0, 1fr) 60px 100px 24px 100px 44px}.calendar-compact-row,.calendar-compact-columns{column-gap:10px}.calendar-importance-label{display:none}}@media (max-width:900px){.calendar-agenda[data-density=compact]{--calendar-columns:76px 54px 144px minmax(0, 1fr) 60px 90px 44px}.calendar-compact-row .calendar-compact-importance,.calendar-compact-columns .calendar-compact-importance,.calendar-compact-row .calendar-compact-status,.calendar-compact-columns .calendar-compact-status{display:none}.calendar-compact-mobile-status{color:var(--hue-amber-text);font-size:var(--text-11);font-weight:400;display:inline}}.calendar-month-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.calendar-month-actions{align-items:center;gap:6px;display:flex}.calendar-month-actions .reader-button:disabled{cursor:not-allowed}.calendar-month-scroll{border:1px solid var(--border-default);border-radius:var(--terminal-radius-md);position:relative;overflow-x:auto}.calendar-month{table-layout:fixed;border-collapse:collapse;width:100%;min-width:700px}.calendar-month th{text-align:left;background:var(--surface-secondary);padding:10px}.calendar-cell{vertical-align:top;border-top:1px solid var(--border-default);border-right:1px solid var(--border-default);height:130px;padding:8px}.calendar-cell:last-child{border-right:0}.calendar-cell[data-out=true]{background:var(--surface-secondary)}.calendar-cell[data-out=true] .calendar-cell-day,.calendar-cell[data-past=true] .calendar-cell-day{color:var(--text-tertiary)}.calendar-cell[data-today=true]{background:var(--accent-bg)}.calendar-cell-day{width:26px;height:26px;color:var(--text-secondary);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;margin-bottom:5px;display:inline-flex}.calendar-cell[data-today=true] .calendar-cell-day{background:var(--accent-primary);color:var(--text-inverted);border-radius:999px;font-weight:600}.calendar-chip{width:100%;min-width:0;min-height:28px;font-size:var(--text-12);text-align:left;color:var(--text-primary);border-radius:var(--terminal-radius-sm);cursor:pointer;align-items:center;gap:6px;padding:4px;display:flex}.calendar-chip:hover{background:var(--surface-tertiary)}.calendar-more{cursor:pointer;min-height:28px;padding:4px}.calendar-month-hint{font-size:var(--text-12);color:var(--text-tertiary);display:none}@media (max-width:1200px){.calendar-row-button{grid-template-columns:92px 144px minmax(0,1fr) 174px 14px;gap:12px}}@media (max-width:900px){.calendar-row-button{grid-template-columns:80px 144px minmax(0,1fr) 14px;gap:6px 12px}.calendar-row-when{grid-area:1/1/span 2;align-self:start}.calendar-row-type{grid-area:1/2}.calendar-row-main{grid-area:1/3}.calendar-row-location{grid-area:2/2/auto/4}.calendar-row-chevron{grid-area:1/4/span 2}}@media (max-width:640px){.calendar-page{gap:14px}.calendar-header{align-items:stretch;gap:12px}.calendar-header-actions,.calendar-view-switch{width:100%}.calendar-view-switch button{flex:1;justify-content:center;min-height:40px}.calendar-search{flex:0 240px;max-width:100%}.calendar-search,.calendar-reset{min-height:44px}.calendar-filter-tools{order:1;width:100%}.calendar-search button{height:40px}.calendar-filters[data-inline] .calendar-category{min-height:44px}.calendar-category{min-height:44px;font-size:var(--text-12);padding-inline:8px}.calendar-select{flex:125px}.calendar-select select{max-width:none;min-height:44px;font-size:var(--ios-min-input-text);padding-inline:6px}.calendar-following{min-height:44px}.calendar-row-button{grid-template-columns:76px minmax(0,1fr) 12px;gap:5px 8px;padding:12px 10px}.calendar-row-when{grid-row:1/span 3}.calendar-row-type{grid-area:1/2;padding:0}.calendar-row-main{grid-area:2/2}.calendar-row-location{grid-area:3/2;grid-template-columns:54px minmax(0,1fr);gap:8px}.calendar-row-chevron{grid-area:1/3/span 3}.calendar-section-heading{padding-inline:10px}.calendar-compact-scroll{overscroll-behavior-x:contain;overflow-x:auto}.calendar-agenda[data-density=compact]{min-width:700px}.calendar-compact-columns{top:0}.calendar-compact-row{height:44px;min-height:44px}.calendar-compact-hint{color:var(--text-tertiary);font-size:var(--text-11);border-top:1px solid var(--border-default);padding:8px 12px;display:block}.calendar-month-hint{display:block}.calendar-month-actions .reader-button{min-width:44px;min-height:44px}.calendar-chip,.calendar-more{min-height:44px}}.calendar-row,.calendar-compact-item{position:relative}.calendar-row[data-addable=true] .calendar-row-button{padding-right:76px}.calendar-add{align-items:center;width:44px;display:flex;position:absolute;top:0;bottom:0;right:12px}.calendar-row>.calendar-add{top:14px;bottom:auto}.calendar-add-button{border-radius:var(--terminal-radius-sm);width:28px;height:32px;color:var(--accent-text);cursor:pointer;flex:none;place-items:center;padding:0;display:grid}.calendar-add-options-button{width:16px;color:var(--text-tertiary)}.calendar-add-button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.calendar-add-button:hover,.calendar-add-button[aria-expanded=true]{background:var(--accent-bg);color:var(--accent-text)}.calendar-add-list{z-index:100;background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--terminal-radius-md);box-shadow:var(--shadow-floating);padding:4px}.calendar-add-list[hidden]{display:none}@media (max-width:640px){.calendar-add-button{width:32px;height:44px}.calendar-add-options-button{width:24px}.calendar-add{width:56px}.calendar-agenda[data-density=compact]{--calendar-columns:76px 54px 144px minmax(0, 1fr) 60px 90px 56px;min-width:824px}.calendar-row[data-addable=true] .calendar-row-button{padding-right:88px}}
