/* Cores das marcações da guia OUTUBRO 2026. */
.T{background:#33cc33;color:#123512}
.F{background:#ffc000;color:#393500}
.P{background:#66ccff;color:#10354a}
.A{background:#ff3300;color:#290800}
.V{background:#f1cbde;color:#54243b}
.U{background:#171717;color:#fff}
.legend span{font-weight:700;padding:7px 10px}
td select{font-weight:700;box-shadow:inset 0 0 0 1px #00000012}
td select:not([class]),td select[class=""]{background:#f4f4f5;color:#71717a}
.metrics .featured{background:#dcfce7;border-color:#bbf7d0;color:#123512}
.metrics .featured span,.metrics .featured small{color:#174517}
.metrics article:nth-child(2){background:#e0f2fe;border-color:#bae6fd;color:#10354a}
.metrics article:nth-child(2) span,.metrics article:nth-child(2) small{color:#174b67}
.metrics article:nth-child(1){background:#e0f2fe;border-color:#bae6fd;color:#10354a}
.metrics article:nth-child(1) span,.metrics article:nth-child(1) small{color:#174b67}
.metrics article:nth-child(4){background:#fce7f3;border-color:#fbcfe8;color:#54243b}
.metrics article:nth-child(4) span,.metrics article:nth-child(4) small{color:#70394f}
.tabs .active{background:#33cc33;color:#123512}
tfoot td{background:#fef3c7!important;color:#393500!important}
.month.selected{background:#33cc33;border-color:#24aa24;color:#123512}
td select{width:145px;padding:9px 6px;text-align:left}
td select option{background:#fff;color:#18181b;font-weight:500}
td select[class=""]{background:#fff}
th .day-number{font-size:14px;font-weight:800;color:#18181b}
.intro-actions{display:flex;gap:8px;flex-wrap:wrap}
.status-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:18px 0}
.status-form label{display:grid;gap:6px;font-size:12px}
.status-form input{padding:9px;border:1px solid #d4d4d8;border-radius:6px;min-height:40px}
.status-list{display:grid;gap:8px}
.status-row{display:flex;gap:10px;align-items:center;padding:10px;border:1px solid #e4e4e7;border-radius:8px}
.status-row .status-name{flex:1;font-size:13px}
.status-row button{padding:7px 11px;font-size:12px}
.status-row .danger{color:#b91c1c;background:#fff;border-color:#fecaca}
#statusMessage{min-height:20px;color:#0f766e}
.day-status{position:relative;display:inline-block;width:38px;height:32px;border-radius:5px;overflow:hidden}
.day-status select{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;opacity:0;cursor:pointer}
.day-status-letter{display:grid;place-items:center;width:100%;height:100%;font-size:12px;font-weight:700;pointer-events:none}
.day-status:focus-within{outline:3px solid #5eead4;outline-offset:2px}
tbody td:first-child{font-size:13px;font-weight:700}
tbody td:first-child small{font-size:10px;font-weight:400}
thead th:first-child,thead th:nth-child(2){font-weight:800;color:#18181b}
.metrics span{font-size:15px}
.metrics strong{font-size:34px}
.metrics small{font-size:13px}
.filters label{font-size:14px}
.filters input,.filters select{font-size:15px}
@media(max-width:600px){.metrics strong{font-size:28px}}
.rate .free-sunday{display:flex;align-items:center;gap:8px;width:100%;font-size:12px;margin-top:14px}
.rate .free-sunday input{width:17px;height:17px;min-height:0;margin:0;accent-color:#0f766e}
.rate .daily-fare{width:100%}
.store-view th:last-child,.store-view td:last-child{text-align:center;padding-right:5px;color:inherit;font-weight:inherit}
.tariff-save-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding-top:16px;border-top:1px solid #e4e4e7}
.tariff-save-actions button{flex-shrink:0}
@media(max-width:600px){.tariff-save-actions{align-items:stretch;flex-direction:column}}
.page-message{padding:12px 16px;border:1px solid #99f6e4;border-radius:8px;background:#f0fdfa;color:#115e59;margin-bottom:18px;font-size:13px}
.page-message.error{border-color:#fecaca;background:#fef2f2;color:#991b1b}
.payment-actions .payment-error{padding:12px 16px;border:1px solid #fecaca;border-radius:8px;background:#fef2f2;color:#991b1b;font-weight:600;white-space:normal}
.payment-actions{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:18px;padding-top:14px;border-top:1px solid #e4e4e7}
.day-status.locked{box-shadow:inset 0 0 0 1px #0002}
.day-status.locked select{cursor:not-allowed}
button:disabled{opacity:.55;cursor:wait}
@media(max-width:600px){.payment-actions{flex-direction:column;align-items:stretch}}
.filters.store-filters{justify-content:flex-start;flex-wrap:wrap}
.filters.store-filters label{flex:0 1 180px;min-width:0}
.filters.store-filters #checkPaymentButton{margin-left:auto}
#checkPaymentButton{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;white-space:nowrap}
#checkPaymentButton svg{width:18px;height:18px;flex:none}
.payment-check-dialog{width:min(500px,calc(100% - 28px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #e4e4e7;border-radius:16px;padding:24px;background:#fff;color:#18181b;box-shadow:0 24px 64px #18181b26}
.payment-check-dialog::backdrop{background:#18181b66;backdrop-filter:blur(3px)}
.payment-check-dialog .section-head{align-items:flex-start}
.payment-check-dialog h3{font-size:20px}
.payment-check-dialog .section-head p{font-size:12px}
.payment-check-dialog .section-head button{padding:8px 12px}
.payment-check-fields{display:grid;gap:18px;margin:24px 0 18px}
.payment-check-fields label{display:grid;gap:8px;color:#52525b;font-size:14px;font-weight:600}
.payment-check-fields input,.payment-check-fields select{width:100%;min-height:44px;padding:10px 12px;border:1px solid #e4e4e7;border-radius:8px;background:#fff;color:#18181b;font-size:15px}
.payment-check-fields small{color:#dc2626;font-size:15px;font-weight:600}
.payment-check-result{display:grid;gap:10px;margin-top:16px;padding:20px;border:1px solid #bae6fd;border-radius:12px;background:#e0f2fe;color:#0c4a6e}
.payment-check-result span,.payment-check-result small{font-size:13px}
.payment-check-result strong{font-size:32px;letter-spacing:-.6px}
@media(max-width:600px){.payment-check-dialog{padding:20px}.payment-check-dialog .section-head{flex-direction:row;gap:12px}.filters.store-filters label{flex:1 1 130px}}
