.date-range-control{position:relative;max-width:100%}.date-range-buttons{display:flex;align-items:stretch;gap:0}.date-range-buttons>button{min-height:46px;width:44px;display:flex;align-items:center;justify-content:center;border:1px solid var(--control-border);border-left:0;background:white;color:var(--muted)}.date-range-buttons>button:last-child{border-radius:0 8px 8px 0}.date-range-buttons .range-trigger{border-left:1px solid var(--control-border);width:auto;max-width:310px;gap:9px;border-radius:8px 0 0 8px;padding:8px 12px;font-size:14px;color:var(--ink)}.range-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-range-popover{position:absolute;right:0;top:calc(100% + 10px);z-index:80;width:min(730px,calc(100vw - 40px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #c7d2e2;border-radius:12px;background:white;box-shadow:0 16px 48px rgb(24 34 53 / 18%);color:var(--ink)}.date-range-popover>header{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;border-bottom:1px solid var(--line);font-size:15px}.date-range-popover>header button,.range-month-controls button{width:40px;height:40px;display:grid;place-items:center;border:0;background:transparent;color:var(--muted);border-radius:6px}.range-picker-body{display:grid;grid-template-columns:150px minmax(0,1fr)}.range-presets{display:flex;flex-direction:column;gap:2px;padding:12px 8px;border-right:1px solid var(--line)}.range-presets button{display:flex;justify-content:space-between;align-items:center;min-height:38px;padding:8px 10px;border:0;border-radius:6px;text-align:left;background:white;color:var(--muted);font-size:13px}.range-presets button.selected,.range-presets button:hover{background:var(--primary-soft);color:var(--primary-dark)}.range-calendars{padding:6px 14px 16px;min-width:0}.range-month-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:var(--muted)}.range-months{display:grid;grid-template-columns:1fr 1fr;gap:16px}.range-month{min-width:0}.range-month h3{text-align:center;font-size:13px;margin:6px 0 16px}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays span{font-size:11px;text-align:center;color:var(--muted);padding:0 0 8px}.calendar-days button{height:33px;min-width:0;display:grid;place-items:center;border:1px solid transparent;border-radius:0;background:white;color:var(--ink);font-size:12px;padding:0}.calendar-days button:disabled{opacity:1;color:#9ca6b5;cursor:default}.calendar-days button.in-range{background:var(--primary-soft);color:var(--primary-dark)}.calendar-days button.range-edge{border-radius:5px;background:var(--primary);color:white;font-weight:650}.calendar-days button.is-today:not(.range-edge){border-color:var(--primary);border-radius:5px}.calendar-days button:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--primary)}.date-range-popover>footer{padding:16px 18px;border-top:1px solid var(--line)}.range-date-fields{display:flex;gap:12px}.range-date-fields label{display:grid;gap:6px;font-size:12px;color:var(--muted);flex:1;min-width:0}.range-date-fields input{height:44px;width:100%;min-width:0;padding:0 10px;border:1px solid var(--control-border);border-radius:6px;color:var(--ink);background:white;font-size:14px}.date-range-popover footer>p{font-size:12px;color:var(--muted);margin:12px 0}.range-footer-actions{display:flex;gap:10px;justify-content:flex-end}.range-footer-actions button{min-height:44px;padding:8px 16px;border-radius:7px;font-size:14px}

@media(max-width:760px){
 .date-range-control{width:100%}.date-range-buttons{width:100%}.date-range-buttons .range-trigger{flex:1;max-width:none;justify-content:flex-start}.range-trigger>svg:last-child{margin-left:auto}
 .date-range-popover,.dashboard-toolbar .date-range-popover{position:fixed;left:12px;right:12px;top:12px;width:auto;max-height:calc(100dvh - 24px);display:flex;flex-direction:column;overflow:hidden}
 .date-range-popover>header,.date-range-popover>footer{flex-shrink:0;background:white}
 .range-picker-body{flex:1;min-height:0;overflow:auto;grid-template-columns:1fr}
 .range-presets{border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
 .range-presets button{font-size:12px;min-height:44px}.range-calendars{padding:8px 12px 16px}.range-months{grid-template-columns:1fr}.range-month:nth-child(2){display:none}.calendar-days button{height:44px;font-size:14px}.range-month h3{font-size:15px}.range-date-fields input{font-size:16px;padding-inline:6px}.range-footer-actions{position:static;padding:0}
}
