.week-ahead__controls{display:flex;align-items:center;gap:var(--space-3)}.week-ahead__btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:44px;min-height:44px;border:1px solid var(--color-rule);border-radius:var(--radius-sm);color:var(--color-ink-muted);font-size:var(--type-sm);transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.week-ahead__btn:hover{background-color:var(--color-surface);color:var(--color-ink)}.week-ahead__week-label{font-size:var(--type-xs);color:var(--color-ink-faint);font-variant-numeric:tabular-nums}.week-ahead__list{display:flex;flex-direction:column;gap:0}.week-ahead__event{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-rule);border-left:3px solid transparent;font-size:var(--type-sm);transition:border-left-color var(--duration-fast) var(--ease-out)}.week-ahead__event:hover{border-left-color:var(--color-accent)}.week-ahead__event--upcoming{border-left-color:var(--color-bull);background:color-mix(in srgb,var(--color-bull) 6%,transparent);border-bottom-color:color-mix(in srgb,var(--color-bull) 30%,transparent)}.week-ahead__event:last-child{border-bottom:0}.week-ahead__event-date{flex-shrink:0;width:80px;color:var(--color-ink-faint);font-family:var(--font-mono);font-size:var(--type-xs);font-variant-numeric:tabular-nums}.week-ahead__event-dot{flex-shrink:0;width:8px;height:8px;border-radius:50%;background-color:var(--color-accent);margin-top:6px;box-shadow:0 0 0 1px color-mix(in srgb,currentColor 20%,transparent);transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.week-ahead__event-dot:hover{transform:scale(1.25)}.week-ahead__event-dot--holiday{background-color:var(--color-ink-faint)}.week-ahead__event-dot--high{background-color:var(--color-bear)}.week-ahead__event-dot--medium{background-color:#f59e0b}.week-ahead__event-dot--low{background-color:var(--color-bull)}.week-ahead__event-name--high,.week-ahead__event-name--medium,.week-ahead__event-name--low{font-weight:var(--weight-medium)}.week-ahead__event-name{color:var(--color-ink)}.week-ahead__event-name--holiday{color:var(--color-ink-muted);font-style:italic}.week-ahead__empty{padding:var(--space-5) 0;text-align:center;color:var(--color-ink-muted);font-size:var(--type-sm)}.week-ahead__empty a{display:inline-block;margin-top:var(--space-3);font-weight:var(--weight-medium)}.week-ahead__upcoming{font-size:var(--type-xs);font-weight:var(--weight-medium);color:var(--color-bull);background:color-mix(in srgb,var(--color-bull) 12%,transparent);padding:2px var(--space-2);border-radius:var(--radius-sm);white-space:nowrap}.week-ahead__event-badge{font-size:var(--type-xs);font-weight:var(--weight-medium);color:var(--color-bull);background:color-mix(in srgb,var(--color-bull) 16%,transparent);padding:1px var(--space-2);border-radius:var(--radius-sm);white-space:nowrap;margin-left:auto}.economic-events__title{margin:16px 0 0;font-size:var(--type-lg);font-weight:600;color:var(--color-ink);padding:0}.economic-calendar__controls{display:flex;align-items:center;gap:var(--space-3);margin-bottom:12px;justify-content:center}.economic-calendar__btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--color-rule);border-radius:var(--radius-sm);color:var(--color-ink-muted);font-size:var(--type-base);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.economic-calendar__btn:hover{background-color:var(--color-surface);color:var(--color-ink)}.economic-calendar__btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.economic-calendar__cell{display:flex;flex-direction:column;width:100%;height:100%;gap:4px;box-sizing:border-box;padding:6px 8px;min-height:100%;transition:background-color var(--duration-fast) var(--ease-out)}.economic-calendar__cell:hover{background-color:color-mix(in srgb,var(--color-accent) 10%,transparent)}.economic-calendar__cell:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px;border-radius:2px}.economic-calendar__cell--has-events{cursor:pointer;border-left:3px solid var(--color-accent);background:color-mix(in srgb,var(--color-accent) 6%,transparent)}.economic-calendar__cell--has-events:hover{background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.cell-event-pill{display:flex;align-items:center;gap:6px;padding:3px 6px;border-radius:4px;background:color-mix(in srgb,var(--color-ink) 6%,transparent);min-height:26px;max-height:28px;overflow:hidden}.cell-event-pill--single{background:color-mix(in srgb,var(--color-ink) 8%,transparent)}.cell-event-dot{flex-shrink:0;width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 1px color-mix(in srgb,currentColor 20%,transparent)}.cell-event-dot--error{background-color:var(--color-bear);color:var(--color-bear)}.cell-event-dot--warning{background-color:#f59e0b;color:#f59e0b}.cell-event-dot--default{background-color:var(--color-ink-faint);color:var(--color-ink-faint)}.cell-event-dot--processing{background-color:#3b82f6;color:#3b82f6}.cell-event-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-ink);font-size:11px;line-height:1.2;font-weight:500}.cell-event-count{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:10px;background:color-mix(in srgb,var(--color-ink) 10%,transparent);font-size:11px;font-weight:600;color:var(--color-ink);white-space:nowrap}.cell-event-dots{display:flex;align-items:center;gap:3px}.cell-event-dots .cell-event-dot{width:6px;height:6px}.cell-event-main-pill{display:flex;align-items:center;gap:6px;padding:3px 6px;border-radius:4px;background:color-mix(in srgb,var(--color-ink) 8%,transparent);min-height:26px;max-height:28px;overflow:hidden}.cell-event-truncate{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.economic-events__detail{margin-top:20px;padding:16px;border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm)}.economic-events__detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.economic-events__detail-kicker{margin:0 0 4px;color:var(--color-ink-muted);font-size:var(--type-sm);letter-spacing:.08em;text-transform:uppercase}.economic-events__detail-title{margin:0;font-size:var(--type-lg)}.economic-events__detail-count{flex-shrink:0;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--color-accent) 12%,transparent);color:var(--color-ink);font-size:var(--type-sm);font-weight:600}.economic-events__detail-count--dominant-error{background:color-mix(in srgb,var(--color-bear) 15%,transparent);color:var(--color-bear)}.economic-events__detail-count--dominant-warning{background:color-mix(in srgb,#f59e0b 15%,transparent);color:#f59e0b}.economic-events__detail-count--dominant-default{background:color-mix(in srgb,var(--color-ink-muted) 15%,transparent);color:var(--color-ink-muted)}.economic-events__detail-list{display:grid;gap:12px}.economic-events__detail-row{padding:14px;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-bg)}.economic-events__detail-row-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}.economic-events__detail-event-name{font-weight:600}.economic-events__detail-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}.economic-events__detail-field dt{margin-bottom:4px;color:var(--color-ink-muted);font-size:var(--type-sm);text-transform:uppercase;letter-spacing:.08em}.economic-events__detail-field dd{margin:0;color:var(--color-ink);line-height:1.4}.economic-events__detail-empty{margin:0;color:var(--color-ink-muted)}@media(min-width:1600px){.economic-events__detail{padding:20px 24px 24px}.economic-events__detail-list{grid-template-columns:repeat(auto-fit,minmax(460px,1fr));align-items:start;gap:16px}.economic-events__detail-row{display:flex;flex-direction:column;gap:14px;height:100%}.economic-events__detail-row-head{margin-bottom:0;align-items:flex-start}.economic-events__detail-fields{grid-template-columns:minmax(96px,.7fr) minmax(0,1.9fr) minmax(88px,.55fr);gap:16px 20px}.economic-events__detail-field dd{overflow-wrap:anywhere}}@media(max-width:720px){.economic-events__detail-header,.economic-events__detail-row-head{flex-direction:column;align-items:flex-start}.economic-events__detail-fields{grid-template-columns:1fr}}
