/* Paleta azul: base clara predominante e azul médio nos destaques. */
:root{--sky:#8bcdf6;--sky-accent:#6ab5e2;--navy:#173e58;--teal:#215e85;--blue:#215e85;--muted:#496477;--line:#c6dce9;background:#edf7fd;color:#173e58}
body{background:#edf7fd;color:var(--navy)}
body .app-header{background:#dceffc;border-bottom:1px solid #b4d5e9;box-shadow:0 2px 12px #173e580a}
body .brand-symbol,body .modal-icon{background:var(--sky);color:var(--navy)}
body .brand small,body .account-copy span,body .brand-region{color:#496477}
body .nav-button{color:#34566d}
body .nav-button.active,body .nav-button:hover{background:var(--sky);color:var(--navy)}
body .button.primary{background:var(--sky-accent);color:#12344c;border-color:#5199c5}
body .button.primary:hover:not(:disabled){background:#8bcdf6;box-shadow:0 4px 12px #215e8520}
body .button.secondary,body .view-switch{background:#f5fbff;border-color:#c6dce9;color:var(--navy)}
body .button.secondary:hover,body .view-switch button.active,body .admin-tabs .active{background:#cbe8fa;color:var(--navy)}
body .calendar-panel,body .admin-panel,body .modal,body .onboarding-card{border-color:#c6dce9;box-shadow:0 4px 20px #173e5809}
body .calendar-toolbar{background:var(--sky);border-bottom-color:var(--sky-accent)}
body .month-navigation h2,body .calendar-hint{color:var(--navy)}
body .weekdays{background:#e1f2fc;border-bottom-color:#6ab5e2}
body .weekdays span{color:#284b63}
body .calendar-grid .day{border-right-color:#c1d8e6;border-bottom-color:#6ab5e2;color:#173e58}
body .calendar-grid .sheet-columns{background:var(--sky-accent);color:#12344c}
body .calendar-grid .sheet-row{border-bottom-color:#cfdfeb}
body .calendar-grid .sheet-columns>span:last-child,body .calendar-grid .sheet-row>:last-child{border-left-color:#bdd4e3}
body .calendar-grid .day:hover:not(:disabled){background:#edf8ff;box-shadow:inset 0 0 0 2px #6ab5e2}
body .calendar-grid .day.outside,body .calendar-grid .day.weekend{background:#edf2f6}
body .calendar-grid .today .day-number{background:#215e85;color:#fff}
body .calendar-grid .today-label{color:#215e85}
body .calendar-grid .day-count{color:#284b63}
body .calendar-month-arrow{background:#dceffc;color:#215e85}
body .calendar-month-arrow.previous,body .calendar-month-arrow.next{border-color:#b4d5e9}
body .calendar-month-arrow:hover:not(:disabled){background:#8bcdf6;color:#173e58}
body .calendar-month-arrow:active:not(:disabled){background:#6ab5e2}
body .calendar-grid .own-dot,body .tiny-dot{background:#215e85}
body .sync-status .offline{background:#b78019}
body .modal-city,body .admin-day-form{background:#edf7fd;border-color:#c6dce9}
body input,body select,body textarea{border-color:#b8d1e1;color:var(--navy)}
body .day-deliveries-table thead{background:var(--sky)}
body .day-deliveries-table tfoot{background:#e1f2fc}
body .app-footer{color:#496477;border-color:#c6dce9}
body #login-screen{background:linear-gradient(135deg,#e8f6ff 0%,#8bcdf6 70%,#6ab5e2 100%)}
body #login-screen .login-card{background:#ffffffed;border:1px solid #c6dce9;border-radius:18px;padding:28px}
body .calendar-grid .delivery-closed{background:#fff0ee}
body .calendar-grid .sheet-closure{background:#b63f39;color:#fff}

.monthly-details{margin-bottom:12px;border:1px solid #b4d5e9;border-radius:8px;background:#f5fbff;padding:8px 14px;color:var(--navy)}
.monthly-title{font-size:14px;font-weight:700;cursor:pointer}
.monthly-scroll{overflow:auto;max-height:260px;margin-top:8px}
.monthly-table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}
.monthly-table th,.monthly-table td{padding:6px 10px;border-bottom:1px solid #c6dce9}
.monthly-table thead{background:#dceffc}
.monthly-table :is(th,td):not(:first-child){text-align:left;font-variant-numeric:tabular-nums}
.monthly-remaining{color:#215e85;font-weight:750}
.monthly-exceeded{color:#a33832;font-weight:750}
.monthly-details .help{font-size:12px;margin-top:6px}
@media(max-width:700px){.monthly-table{min-width:450px}.monthly-details{padding:8px}}

.monthly-table thead th{position:sticky;top:0;background:#dceffc;z-index:1}

/* Datas encerradas ficam suaves, preservando a leitura das reservas e da grade. */
body .calendar-grid .day.past{background:#f3f5f7;color:#6c7c87}
body .calendar-grid .day.past.weekend{background:#eceff2}
body .calendar-grid .day.past .day-number,body .calendar-grid .day.past .day-count{color:#75828c}
body .calendar-grid .day.past .sheet-columns{background:#d4e4ee;color:#62798a}
body .calendar-grid .day.past .sheet-city,body .calendar-grid .day.past .sheet-quantity{color:#6c7c87}
body .calendar-grid .day.past.delivery-closed{background:#f6eeee}
body .calendar-grid .day.past .sheet-closure{background:#e8c9c7;color:#815552}
body .calendar-grid .day.past .empty-row{background:transparent}
body .calendar-grid .day.past .day-holiday{color:#926965}
body .calendar-grid .day.past .own-dot{background:#8babbf}

/* Informações agrupadas à esquerda e acesso direto aos meses à direita. */
.monthly-navigation{display:flex;align-items:stretch;gap:12px;margin-bottom:12px}
#monthly-control{display:flex;flex:1;min-width:0}
.monthly-navigation .monthly-details{flex:1;min-width:0;margin:0;padding:8px 10px}
.monthly-table{width:max-content;max-width:100%;table-layout:fixed}
.monthly-table th,.monthly-table td{padding:6px 9px;text-align:left;vertical-align:top}
.monthly-table th:first-child{width:200px}
.monthly-table th:nth-child(2){width:120px}
.monthly-table th:nth-child(3){width:100px}
.monthly-table th{white-space:normal;line-height:1.4}
body .month-picker-trigger{flex:none;display:flex;gap:8px;min-height:42px;padding:9px 12px;font-size:14px;background:#dceffc;border-color:#9ac7e2}
.month-picker-trigger svg{flex-shrink:0}
body .month-picker-modal{width:min(480px,calc(100% - 24px))}
body .month-picker-modal .modal-heading{margin-bottom:12px}
body .month-picker-modal h2{margin:0;font-size:24px}
.month-picker-year-navigation{display:flex;gap:16px;align-items:center;justify-content:center;margin-bottom:20px}
.month-picker-year-navigation label{margin:0;font-size:13px}
.month-picker-year-navigation input{width:130px;text-align:center}
.month-picker-months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.month-picker-option{min-height:48px;padding:10px 4px;border:1px solid #bdd6e6;background:#f5fbff;border-radius:8px;color:#173e58;font-size:14px}
.month-picker-option:hover{background:#dceffc}
.month-picker-option[aria-pressed="true"]{background:#6ab5e2;border-color:#215e85;font-weight:750}
@media(max-width:700px){
 .monthly-navigation{gap:6px}
 body .month-picker-trigger{padding:9px;min-height:42px}
 .month-picker-trigger span{display:none}
 .monthly-table{min-width:550px}
}

.monthly-unconfigured{margin-top:6px;font-size:13px;color:var(--muted)}

body .app-header .brand{white-space:normal;font-size:24px;letter-spacing:-.5px}
.institution-name{display:block}
.institution-subtitle{display:block;font-family:'DM Sans',system-ui,sans-serif;font-size:13px;font-weight:500;letter-spacing:0;line-height:1.4;margin-top:5px}
body .login-brand .institution-name{font-size:30px;line-height:1.25;letter-spacing:-.5px}
body .login-brand .institution-subtitle{font-size:17px;margin-top:8px}
@media(max-width:700px){body .app-header .brand{font-size:20px;min-width:0}body .app-header .institution-subtitle{font-size:11px;max-width:230px}}
