/* Tarifa és foglalás oldal. Ugyanaz a világos, kék-szürke paletta, mint a riasztásoknál. */
.tariff-toolbar,.reservation-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:16px}
.tariff-toolbar #tariff-summary,.reservation-toolbar #reservation-count{font:700 12px Inter,system-ui,sans-serif;color:#5a6478}
#tariffs-page .section-title,#reservations-page .section-title{margin:26px 0 10px;font-size:14px;color:#1d2440}
#tariffs-page .section-help,#reservations-page .section-help{margin:-6px 0 12px;font-size:12px;color:#748097}

.tariff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:14px}
.tariff-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border:1px solid #e6e9f4;border-left:4px solid #1a3b4d;border-radius:12px;background:#fff}
.tariff-card.is-inactive{border-left-color:#c2c8d6;background:#fbfcfe;opacity:.85}
.tariff-card header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px}
.tariff-card header b{font-size:13.5px;color:#14243e}
.tariff-badges{display:flex;flex-wrap:wrap;gap:5px}
.tariff-badge{padding:2px 9px;border-radius:999px;font:800 10.5px Inter,system-ui,sans-serif;font-style:normal;background:#eef0f5;color:#67718a}
.tariff-badge.is-default{background:#e3f7ea;color:#137a3d}
.tariff-badge.is-off{background:#fdeaea;color:#b3282d}
.tariff-meta{margin:0;font-size:11.5px;color:#8a93a6}
.tariff-note{margin:0;font-size:12px;color:#5a6478;line-height:1.5}
.tariff-card footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}
.tariff-card footer small{font-size:11px;color:#8a93a6}
.tariff-card footer button{padding:5px 12px;font-size:11px}

.tariff-period-table,.tariff-quote-table,.session-price-table{width:100%;border-collapse:collapse;font-size:12px}
.tariff-period-table th,.tariff-quote-table th,.session-price-table th{text-align:left;padding:7px 9px;font:700 10.5px Inter,system-ui,sans-serif;color:#8a93a6;background:#f7f8fc;border-bottom:1px solid #e6e9f4;text-transform:uppercase;letter-spacing:.4px}
.tariff-period-table td,.tariff-quote-table td,.session-price-table td{padding:7px 9px;border-bottom:1px solid #f0f2f8;color:#3a4560}
.tariff-period-table tr:last-child td,.tariff-quote-table tr:last-child td,.session-price-table tr:last-child td{border-bottom:none}
.tariff-period-table b{color:#14243e}
.tariff-period-table small{color:#8a93a6}
.tariff-na{color:#c2c8d6}
.session-price-table{margin-top:8px;border:1px solid #e6e9f4;border-radius:10px;overflow:hidden}
.session-unpriced{color:#9a5b12;font-weight:700}

/* Hozzárendelés: egy sor egy hatókör, mentés azonnal a választásra. */
.tariff-assign{background:#fff;border:1px solid #e6e9f4;border-radius:12px;padding:6px 16px 14px}
.tariff-assign h3{margin:16px 0 6px;font:700 11px Inter,system-ui,sans-serif;color:#8a93a6;text-transform:uppercase;letter-spacing:.4px}
.tariff-assign-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid #f0f2f8;transition:background .2s}
.tariff-assign-row:last-child{border-bottom:none}
.tariff-assign-row.is-saved{background:#f2fbf6}
.tariff-assign-row b{display:block;font-size:12.5px;color:#14243e}
.tariff-assign-row small{display:block;margin-top:2px;font-size:11px;color:#8a93a6}
.tariff-assign-row select{min-width:230px;padding:5px 7px;border:1px solid #d7ddee;border-radius:7px;font:600 12px Inter,system-ui,sans-serif;color:#14243e;background:#fff}

.tariff-quote{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:14px 16px;background:#fff;border:1px solid #e6e9f4;border-radius:12px}
.tariff-quote label{display:flex;flex-direction:column;gap:4px;font:700 11px Inter,system-ui,sans-serif;color:#8a93a6}
.tariff-quote input,.tariff-quote select{padding:6px 8px;border:1px solid #d7ddee;border-radius:7px;font:600 12px Inter,system-ui,sans-serif;color:#14243e;background:#fff}
.tariff-quote-result{flex:1 1 100%;font-size:12px;color:#3a4560}
.tariff-quote-result b{font-size:15px;color:#14243e}
.tariff-quote-result small,.session-price-table+small{display:block;margin-top:4px;font-size:11px;color:#8a93a6}
.tariff-warning{color:#9a5b12}

/* Idősáv-szerkesztő a tarifa párbeszédben. */
.tariff-period-title{margin:18px 0 2px;font-size:13px;color:#1d2440}
.tariff-period-head,.tariff-period-row{display:grid;grid-template-columns:1.6fr 1fr .8fr .8fr 1fr 1fr 32px;gap:8px;align-items:center}
.tariff-period-head{padding:0 0 4px;font:700 10.5px Inter,system-ui,sans-serif;color:#8a93a6;text-transform:uppercase;letter-spacing:.4px}
.tariff-period-row{margin-bottom:7px}
.tariff-period-row input,.tariff-period-row select{width:100%;padding:6px 8px;border:1px solid #d7ddee;border-radius:7px;font:600 12px Inter,system-ui,sans-serif;color:#14243e;background:#fff}
.tariff-period-row button{padding:5px 0;font-size:13px;line-height:1}
#tariff-add-period{margin-top:4px;padding:5px 12px;font-size:11px}
#tariff-dialog{max-width:900px}

/* Foglalás. */
.reservation-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
.reservation-card{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border:1px solid #e6e9f4;border-left:4px solid #0b9663;border-radius:12px;background:#fff}
.reservation-card.is-pending{border-left-color:#d08a1a}
.reservation-card header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px}
.reservation-card header b{font-size:13px;color:#14243e}
.reservation-card p{margin:0;font-size:12px;color:#3a4560}
.reservation-card small{font-size:11px;color:#8a93a6}
.reservation-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:6px}
.reservation-card footer button{padding:5px 12px;font-size:11px}
.reservation-badge{padding:2px 9px;border-radius:999px;font:800 10.5px Inter,system-ui,sans-serif;font-style:normal;background:#e3f7ea;color:#137a3d}
.reservation-card.is-pending .reservation-badge{background:#fdf1df;color:#9a5b12}

.reservation-table table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e6e9f4;border-radius:12px;overflow:hidden}
.reservation-table th{text-align:left;padding:10px 12px;font:700 11px Inter,system-ui,sans-serif;color:#8a93a6;background:#f7f8fc;border-bottom:1px solid #e6e9f4;text-transform:uppercase;letter-spacing:.4px}
.reservation-table td{padding:10px 12px;border-bottom:1px solid #f0f2f8;font-size:12px;color:#3a4560}
.reservation-table tr:last-child td{border-bottom:none}
.reservation-state{padding:2px 9px;border-radius:999px;font:700 11px Inter,system-ui,sans-serif;background:#eef0f5;color:#67718a}
.reservation-state.is-used{background:#e3f7ea;color:#137a3d}
.reservation-state.is-expired,.reservation-state.is-cancelled{background:#f2f3f7;color:#8a93a6}
.reservation-state.is-rejected,.reservation-state.is-faulted,.reservation-state.is-occupied,.reservation-state.is-unavailable{background:#fdeaea;color:#b3282d}

/* Az ár két sorban olvasható: bruttó nagyban, nettó alatta halványan. */
#sessions-list td small,#session-detail dd small{display:block;margin-top:2px;font-size:11px;color:#8a93a6;font-weight:400}
#session-detail dd b{font-size:13.5px;color:#14243e}

/* Pénzügy oldal. */
.provider-grid-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}
.provider-card{display:flex;flex-direction:column;gap:9px;padding:14px 16px;border:1px solid #e6e9f4;border-left:4px solid #0b9663;border-radius:12px;background:#fff}
.provider-card.is-off{border-left-color:#c2c8d6;background:#fbfcfe}
.provider-card header{display:flex;align-items:center;justify-content:space-between;gap:8px}
.provider-card header b{font-size:13.5px;color:#14243e}
.provider-card header span{display:flex;align-items:center;gap:8px}
.provider-note,.provider-warn{margin:0;font-size:11.5px}
.provider-note{color:#8a93a6}
.provider-warn{color:#9a5b12}
.provider-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.provider-grid label{display:flex;flex-direction:column;gap:4px;font:700 11px Inter,system-ui,sans-serif;color:#8a93a6}
.provider-grid input{padding:6px 8px;border:1px solid #d7ddee;border-radius:7px;font:600 12px Inter,system-ui,sans-serif;color:#14243e;background:#fff}
.wallet-row{display:flex;gap:14px;font-size:11.5px;color:#5a6478}
.wallet-row label{display:flex;align-items:center;gap:5px}
.provider-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:4px}
.provider-default{display:flex;align-items:center;gap:6px;font-size:11.5px;color:#5a6478}
.provider-card footer button{padding:5px 12px;font-size:11px}
.qr-url{font-size:11px;color:#5a6478;word-break:break-all;max-width:280px}
#qr-list code,#payment-list code{background:#f2f4fa;padding:2px 6px;border-radius:5px;font-size:11.5px;letter-spacing:.08em}
#qr-list small,#payment-list small{display:block;margin-top:2px;font-size:11px;color:#8a93a6}
#qr-list button,#payment-list button{padding:4px 10px;font-size:11px;margin-right:4px}
.payment-state{padding:2px 9px;border-radius:999px;font:700 11px Inter,system-ui,sans-serif;background:#eef0f5;color:#67718a}
.payment-state.is-captured{background:#e3f7ea;color:#137a3d}
.payment-state.is-authorized{background:#fdf1df;color:#9a5b12}
.payment-state.is-failed{background:#fdeaea;color:#b3282d}
.payment-error{color:#b3282d}
.qr-off{color:#9a5b12;font-weight:700}
.qr-charger-row td{background:#f7f8fc;border-top:1px solid #e6e9f4}
.qr-charger-row b{font-size:12.5px;color:#14243e}
.qr-mode{padding:5px 7px;border:1px solid #d7ddee;border-radius:7px;font:600 11.5px Inter,system-ui,sans-serif;background:#fff;color:#14243e}
/* Üzemeltetői adatok: az üzemmód a legfontosabb döntés, ezért kártyaként választható. */
.operator-mode{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-bottom:14px}
.mode-card{text-align:left;padding:16px;border:1px solid #e6e9f4;border-radius:12px;background:#fff;cursor:pointer;display:grid;gap:5px}
.mode-card b{font-size:14px;color:#14243e}
.mode-card small{font-size:12px;color:#748097;line-height:1.5}
.mode-card.active{border-color:#0ba8a4;background:#e7f8f6;box-shadow:0 0 0 1px #0ba8a4 inset}
#operator-form .form-grid{padding:0;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:8px}
#operator-form .form-grid small{font-weight:400;color:#8a93a6}
#operator-form .form-grid code{background:#f2f4fa;padding:1px 5px;border-radius:4px}
#operator-form .modal-actions{padding:8px 0 0;justify-content:flex-start}
.evse-input{width:100%;padding:6px 8px;border:1px solid #d7ddee;border-radius:7px;font:600 12px ui-monospace,Menlo,Consolas,monospace;color:#14243e}
#afir-list tr.is-saved td{background:#f2fbf6}
#afir-list code{background:#f2f4fa;padding:2px 6px;border-radius:5px;font-size:11.5px}
#afir-list small{display:block;margin-top:2px;font-size:11px;color:#8a93a6}
.qr-public{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:11.5px;color:#5a6478}

/* Energiamix a töltés részleteinél. */
.energy-mix{display:flex;align-items:center;gap:10px;margin-top:4px}
.energy-mix-bar{flex:1;height:9px;border-radius:999px;background:#e6e9f4;overflow:hidden}
.energy-mix-bar i{display:block;height:100%;background:linear-gradient(90deg,#f5b700,#0ba8a4)}
.energy-mix b{font-size:13px;color:#14243e;white-space:nowrap}
#session-detail dd .energy-mix-note{display:block;margin-top:5px;font-size:10.5px;color:#8a93a6;line-height:1.45;font-weight:400}
