.nrr-rating-label{display:block;margin-bottom:7px;font-size:14px;font-weight:600}
.nrr-rating-parts{display:flex;align-items:center;gap:9px}
.nrr-rating-parts select{width:auto;min-width:66px;margin:0;flex:1}
.nrr-rating-parts select:first-child{flex:2;min-width:108px}
.nrr-rating-parts select:disabled{opacity:.65}
.nrr-rating-dot{font-size:24px;font-weight:700;align-self:center}
.nrr-half-rating{min-width:0}
.nrr-daily-header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.nrr-daily-header h2{margin:0}
.nrr-daily-header select{min-width:150px}
.nrr-daily-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}
.nrr-daily-summary .kpi{font-size:clamp(25px,4vw,36px)}
.nrr-daily-weekdays,.nrr-daily-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.nrr-daily-weekdays{margin-bottom:8px;text-align:center;font-size:14px;color:var(--muted)}
.nrr-daily-day{display:flex;flex-direction:column;gap:4px;min-height:88px;padding:10px;border:1px solid var(--line,#ded9d4);border-radius:10px;background:var(--surface,#fff);color:var(--muted)}
.nrr-daily-day.has-pages{background:var(--rose-soft,#f8eef0);color:var(--text,#493640);border-color:var(--accent,#a78b92)}
.nrr-daily-day.is-today{outline:2px solid var(--accent,#96717e);outline-offset:1px}
.nrr-daily-day.is-future{opacity:.5}
.nrr-daily-date{font-size:14px}
.nrr-daily-day strong{font-size:22px;line-height:1.2}
.nrr-daily-unit{font-size:12px}
body.dark-mode .nrr-daily-day{background:#242024;border-color:#4b4249}
body.dark-mode .nrr-daily-day.has-pages{background:#3b2935;color:#f3e9ef;border-color:#947889}
@media(max-width:560px){.nrr-daily-summary{gap:10px}.nrr-daily-summary .small{font-size:12px}.nrr-daily-weekdays,.nrr-daily-calendar{gap:4px}.nrr-daily-day{padding:7px 4px;min-height:76px;border-radius:7px}.nrr-daily-day strong{font-size:18px}.nrr-daily-date{font-size:13px}.nrr-daily-unit{font-size:11px}}

.nrr-daily-controls{display:flex;gap:12px;flex-wrap:wrap}.nrr-daily-controls label{margin:0}
/* Comfortable touch controls; 16px inputs also avoid focus zoom on iPhones. */
.nrr-rating-parts select,.nrr-daily-controls select{font-size:16px;min-height:46px}
.nrr-daily-controls{width:100%}
.nrr-daily-controls label{flex:1;min-width:0}
.nrr-daily-controls select{width:100%;min-width:0}
.nrr-daily-summary .small{font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.nrr-daily-summary>div{min-width:0}
.nrr-daily-unit{font-size:12px}
.nrr-daily-day strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
@media(min-width:700px){.nrr-daily-controls{width:auto}.nrr-daily-controls label{min-width:170px}}
@media(max-width:560px){
 .nrr-rating-parts{gap:8px}
 .nrr-rating-parts select{min-width:64px}
 .nrr-rating-parts select:first-child{min-width:104px}
 .nrr-daily-controls{gap:10px}
 .nrr-daily-summary{grid-template-columns:1fr;gap:14px}
 .nrr-daily-summary>div{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;align-items:center}
 .nrr-daily-summary .kpi{grid-column:2;grid-row:1 / 3;font-size:28px;white-space:nowrap}
 .nrr-daily-summary>div>.small:last-child{grid-column:1}
 .nrr-daily-day{padding:7px 2px}
 .nrr-daily-weekdays{font-size:12px}
 #statsPeriod{font-size:16px;min-height:46px;max-width:100%}
}

@media(max-width:360px){.nrr-daily-controls label{flex-basis:100%}}
