/* Opti247 report date-range controls (T247-55). SCRUM-35 v3: restored .rr-dates grid + focus. */
.report-range{box-sizing:border-box;background:var(--surface,#fff);border:1px solid var(--line-subtle,#d5dde8);border-radius:var(--radius-lg,18px);padding:var(--sp-6,24px);max-width:680px;overflow-wrap:anywhere;margin:var(--sp-3,12px) 0;box-shadow:var(--shadow-sm,0 1px 2px rgba(15,27,45,.05))}
.report-range *{box-sizing:border-box}
.report-range h2{font-size:var(--fs-lg,20px);margin:0 0 var(--sp-4,16px);font-weight:700}
.report-range h3,.report-range .rr-title{font-size:var(--fs-md,16px);margin:0 0 var(--sp-2,8px);font-weight:700}
.report-range .meta{color:var(--ink-soft,#5a6a82);font-size:var(--fs-sm,14px);margin:var(--sp-2,8px) 0;line-height:1.6}
.report-range label{display:block;margin:var(--sp-4,16px) 0 var(--sp-2,8px);font-weight:600}
.report-range .rr-zone{margin-bottom:var(--sp-2,8px)}
.report-range .rr-field label{margin:var(--sp-2,8px) 0 var(--sp-1,4px)}
.report-range input{width:100%;min-height:40px;padding:var(--sp-3,12px);border:1px solid var(--line,#8b98ab);border-radius:var(--radius,6px);font:inherit;font-variant-numeric:tabular-nums;background:var(--surface,#fff)}
.report-range input[aria-invalid="true"]{border:2px solid var(--danger,#b3261e)}
.report-range .rr-dates{display:grid;grid-template-columns:1fr;gap:0 var(--sp-4,16px)}
@media(min-width:600px){.report-range .rr-dates{grid-template-columns:1fr 1fr}}
.report-range .rr-actions{display:flex;flex-wrap:wrap;gap:var(--sp-3,12px);margin-top:var(--sp-4,16px)}
.report-range button{margin:0;min-height:40px;background:var(--accent,#2256db);color:var(--accent-ink,#fff);border:0;border-radius:var(--radius,6px);padding:var(--sp-3,12px) var(--sp-5,20px);font:inherit;font-weight:600;cursor:pointer}
.report-range button.rr-secondary{background:var(--surface,#fff);color:var(--accent,#2256db);border:1px solid var(--accent,#2256db)}
.report-range button[aria-busy="true"]{opacity:.7}
.report-range .rr-error{color:var(--danger,#b3261e);font-weight:600;margin:var(--sp-3,12px) 0 0}
.report-range .rr-error:empty,.report-range [role="status"]:empty{margin:0}
.report-range [role="status"]{margin:var(--sp-3,12px) 0 0}
.report-range .rr-applied{margin-top:var(--sp-5,20px);padding-top:var(--sp-4,16px);border-top:1px solid var(--line-subtle,#d5dde8)}
.report-range .rr-applied p{margin:var(--sp-1,4px) 0}
.report-range input:focus,.report-range button:focus,.report-range [tabindex]:focus{outline:3px solid #2256db;outline-offset:2px}
.report-range input:focus-visible,.report-range button:focus-visible{outline:3px solid #2256db;outline-offset:2px}
@media(max-width:480px){.report-range{padding:var(--sp-4,16px);border-radius:var(--radius,6px)}.report-range .rr-actions button{flex:1 1 auto}}
