:root{--tnb-green: #1a7a3a;--tnb-green-dark: #145f2d;--tnb-red: #e31e24;--tnb-gray: #f5f5f5;--tnb-text: #333;--tnb-border: #e0e0e0;--available: #1a7a3a;--unavailable: #e31e24}html,body{background:#fff}body{font-family:Montserrat,Segoe UI,Arial,sans-serif;color:var(--tnb-text);line-height:1.5}.page{min-height:100dvh;display:flex;flex-direction:column;background:#fff}.page>.site-header,.page>.intro,.page>.main-content,.page>.prices-bar,.page>.site-footer{width:100%}.site-header{background:#fff;border-bottom:3px solid var(--tnb-green);box-shadow:0 2px 8px #0000000f}.header-inner{max-width:1200px;margin:0 auto;padding:15px 24px 17px;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:72px}.header-logo{display:flex;align-items:center;flex-shrink:0;height:48px}.header-logo img{height:48px;width:auto;display:block;transform:translateY(3px)}.header-title{flex:1;text-align:center}.header-title h1{font-size:1.25rem;font-weight:600;color:var(--tnb-green-dark);letter-spacing:.02em;line-height:1.2}.header-phone{font-size:.95rem;font-weight:600;color:var(--tnb-red);white-space:nowrap;line-height:1.2;text-decoration:none;transition:opacity .15s}.header-phone:hover{opacity:.75}.intro{max-width:1200px;margin:0 auto;padding:24px}.intro p{font-size:.95rem;color:#555;max-width:900px}.prices-bar{max-width:1200px;margin:0 auto;padding:0 24px 24px}.prices-bar-inner{background:var(--tnb-gray);border-radius:10px;padding:18px 20px 20px;border:1px solid var(--tnb-border)}.prices-bar-header{margin-bottom:14px}.prices-bar-header h2{font-size:.85rem;font-weight:600;color:var(--tnb-green-dark);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.prices-bar-header p{font-size:.78rem;color:#888}.prices-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.prices-empty{grid-column:1 / -1;text-align:center;color:#999;font-size:.9rem;padding:12px}.price-card{background:#fff;border-radius:8px;padding:14px 12px 12px;text-align:center;position:relative;overflow:hidden;border:1px solid var(--tnb-border);transition:box-shadow .15s}.price-card:hover{box-shadow:0 2px 10px #00000012}.price-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--tnb-green)}.price-card--95:before{background:#2e9b4a}.price-card--premium:before{background:linear-gradient(90deg,#c9a227,#e8c547)}.price-card--dt:before{background:#455a64}.price-card-type{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--tnb-green-dark);margin-bottom:6px}.price-card--dt .price-card-type{color:#455a64}.price-card--premium .price-card-type{color:#9a7b0a}.price-card-value{font-size:1.65rem;font-weight:700;color:var(--tnb-text);line-height:1.1;letter-spacing:-.02em}.price-card-value--empty{font-size:1.4rem;color:#bbb}.price-card-unit{font-size:.68rem;color:#999;margin-top:4px;font-weight:500}@media(max-width:768px){.prices-grid{grid-template-columns:repeat(2,1fr)}.price-card-value{font-size:1.45rem}}@media(max-width:400px){.prices-grid{grid-template-columns:1fr 1fr;gap:8px}.price-card{padding:12px 8px 10px}}.main-content{width:100%;max-width:1200px;margin:0 auto;padding:0 24px 40px;display:grid;grid-template-columns:1fr 380px;gap:20px;min-height:580px}#map{width:100%;min-width:0;height:580px;border-radius:8px;border:1px solid var(--tnb-border);z-index:1}.stations-panel{display:flex;flex-direction:column;height:580px;border:1px solid var(--tnb-border);border-radius:8px;overflow:hidden;background:#fff}.panel-header{padding:14px 16px;background:var(--tnb-green);color:#fff}.panel-header h2{font-size:.95rem;font-weight:600}.panel-controls{padding:12px 16px;border-bottom:1px solid var(--tnb-border);display:flex;flex-direction:column;gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:none;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s;font-family:inherit}.btn-primary{background:var(--tnb-green);color:#fff}.btn-primary:hover{background:var(--tnb-green-dark)}.btn-primary:disabled{background:#aaa;cursor:not-allowed}.search-input{width:100%;padding:8px 12px;border:1px solid var(--tnb-border);border-radius:6px;font-size:.85rem;font-family:inherit}.search-input:focus{outline:none;border-color:var(--tnb-green)}select.search-input{cursor:pointer;background:#fff}.stations-list{flex:1;min-height:0;overflow-y:auto}.station-card{padding:14px 16px;border-bottom:1px solid var(--tnb-border);cursor:pointer;transition:background .12s}.station-card:hover{background:#f7f7f7}.station-card.active{background:#f0faf3;box-shadow:inset 3px 0 0 var(--tnb-green)}.station-card .station-name{font-weight:600;font-size:.9rem;margin-bottom:2px}.station-updated{display:block;font-size:.72rem;font-weight:500;color:#888;margin:4px 0 6px;cursor:help}.station-card.active .station-updated{color:var(--tnb-green-dark)}.station-card .station-address{font-size:.8rem;color:#777;margin-bottom:6px}.station-card .station-distance{font-size:.75rem;color:var(--tnb-green);font-weight:500;margin-bottom:6px}.fuel-tags{display:flex;flex-wrap:wrap;gap:4px}.fuel-tag{font-size:.7rem;padding:2px 7px;border-radius:4px;font-weight:500}.fuel-tag.available{background:#e8f5e9;color:var(--available)}.fuel-tag.unavailable{background:#fdecea;color:var(--unavailable)}.empty-state{display:flex;align-items:center;justify-content:center;min-height:100%;padding:32px 16px;text-align:center;color:#999;font-size:.9rem}.page>.site-footer{margin-top:auto}.site-footer{flex-shrink:0;background:var(--tnb-gray);border-top:1px solid var(--tnb-border);padding:20px 24px;text-align:center;font-size:.8rem;color:#888}.popup-address{color:#666;margin-bottom:8px;font-size:.8rem}.popup-fuels{display:flex;flex-wrap:wrap;gap:4px}.popup-fuels .fuel-tag{font-size:.75rem}@media(max-width:900px){.main-content{grid-template-columns:1fr}#map,.stations-panel{height:400px}.header-inner{flex-direction:column;text-align:center}.header-title{order:2}.header-phone{order:3}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--green: #1a7a3a;--green-dark: #145f2d;--green-light: #e8f5e9;--red: #e31e24;--red-light: #fdecea;--border: #e0e0e0;--bg: #f0f2f0;--text-muted: #777}body{font-family:Montserrat,Segoe UI,Arial,sans-serif;color:#333;line-height:1.5}.admin-page{min-height:100dvh;background:var(--bg)}.admin-header{background:#fff;border-bottom:3px solid var(--green);padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-header-left{display:flex;align-items:center;gap:14px}.admin-logo{height:40px;width:auto}.admin-header h1{font-size:1rem;font-weight:600;color:var(--green-dark)}.admin-header-actions{display:flex;align-items:center;gap:8px}.admin-role-badge{font-size:.78rem;font-weight:600;color:var(--green-dark);background:var(--green-light);padding:6px 10px;border-radius:999px;white-space:nowrap}.users-wrap{overflow-x:auto}.users-table td,.users-table th{vertical-align:middle}.users-table .col-actions{width:210px;min-width:210px}.users-table .row-actions{align-items:center}.users-table .row-actions .btn-sm{padding:5px 14px;font-size:.78rem;line-height:1.2;white-space:nowrap}.users-table .row-actions .reset-user-btn{min-width:132px}.users-table .row-actions .delete-user-btn{min-width:32px;width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.admin-container{max-width:1180px;margin:24px auto 48px;padding:0 20px}.login-box{max-width:380px;margin:80px auto;background:#fff;padding:32px;border-radius:10px;box-shadow:0 2px 16px #00000014}.login-box h2{margin-bottom:20px;font-size:1.1rem}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:.8rem;font-weight:500;margin-bottom:4px}.form-group input,.form-group select{width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:6px;font-size:.9rem;font-family:inherit}.form-group input:focus,.toolbar-input:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 2px #1a7a3a1f}.checkbox-label{display:flex!important;align-items:center;gap:8px;cursor:pointer;font-size:.9rem!important}.checkbox-label input{width:auto}.form-hint{font-size:.8rem;margin:-6px 0 12px}.form-hint a{color:var(--green)}.btn{padding:9px 18px;border:none;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;font-family:inherit;transition:background .15s,opacity .15s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--green);color:#fff}.btn-primary:hover:not(:disabled){background:var(--green-dark)}.btn-auto{width:auto}.btn-sm{padding:6px 12px;font-size:.8rem}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover:not(:disabled){background:#c9191f}.btn-outline{background:#fff;border:1px solid var(--border);color:#333;text-decoration:none;display:inline-flex;align-items:center}.btn-outline:hover{border-color:var(--green);color:var(--green)}.btn-ghost{background:transparent;border:1px dashed var(--border);color:var(--text-muted);padding:4px 8px;font-size:.75rem}.error-msg{color:var(--red);font-size:.85rem;margin-top:8px}.hidden{display:none!important}.stats-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:20px}.stat-card{background:#fff;border-radius:8px;padding:14px 16px;box-shadow:0 1px 4px #0000000f;border-left:3px solid var(--green)}.stat-card.muted{border-left-color:#ccc}.stat-card .stat-value{font-size:1.4rem;font-weight:700;color:var(--green-dark);line-height:1.2}.stat-card .stat-label{font-size:.72rem;color:var(--text-muted);margin-top:2px;text-transform:uppercase;letter-spacing:.03em}.section{background:#fff;border-radius:10px;padding:20px 24px;margin-bottom:20px;box-shadow:0 1px 4px #0000000f}.section-main{padding-top:18px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}.section-head h2,.section-toggle h2{font-size:1rem;font-weight:600;color:var(--green-dark)}.section-hint{font-size:.82rem;color:var(--text-muted);margin-bottom:16px}.section-toggle{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:none;padding:0;cursor:pointer;font-family:inherit;margin-bottom:0}.section-toggle .toggle-icon{color:var(--text-muted);font-size:.75rem;transition:transform .2s}.section-collapsible.collapsed .toggle-icon{transform:rotate(-90deg)}.section-collapsible.collapsed .section-body{display:none}.section-collapsible:not(.collapsed) .section-toggle{margin-bottom:12px}.prices-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-bottom:16px}.price-field label{display:block;font-size:.78rem;font-weight:600;margin-bottom:4px;color:var(--green-dark)}.price-field input{width:100%;padding:9px 10px;border:1px solid var(--border);border-radius:6px;font-size:.95rem;font-weight:500}.toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.toolbar-input{flex:1;min-width:160px;padding:8px 12px;border:1px solid var(--border);border-radius:6px;font-size:.85rem;font-family:inherit;background:#fff}.bulk-bar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;padding:10px 12px;background:var(--bg);border-radius:8px;align-items:center}.bulk-bar-label{font-size:.75rem;font-weight:600;color:var(--text-muted);margin-right:4px}.bulk-btn{padding:4px 10px;font-size:.72rem;border-radius:4px;border:1px solid var(--border);background:#fff;cursor:pointer;font-family:inherit}.bulk-btn:hover{border-color:var(--green);color:var(--green)}.bulk-btn.off:hover{border-color:var(--red);color:var(--red)}.stations-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:8px}.stations-table{width:100%;border-collapse:collapse;font-size:.85rem}.stations-table th,.stations-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.stations-table tr:last-child td{border-bottom:none}.stations-table tbody tr:hover{background:#fafcfa}.stations-table th{font-weight:600;color:#666;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;background:#fafafa}.col-status{width:118px;min-width:118px;white-space:nowrap}.col-actions{width:130px;white-space:nowrap}.station-name-cell .name{font-weight:600;font-size:.9rem}.station-name-cell .address{font-size:.78rem;color:var(--text-muted);margin-top:2px}.fuel-toggles{display:flex;flex-wrap:wrap;gap:6px}.fuel-toggle{padding:5px 10px;border-radius:20px;border:1px solid var(--border);background:var(--red-light);color:var(--red);font-size:.75rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s;min-width:52px}.fuel-toggle.on{background:var(--green-light);color:var(--green);border-color:#a5d6a7}.fuel-toggle:hover{transform:scale(1.04)}.fuel-toggle.saving{opacity:.5;pointer-events:none}.fuel-checks{display:flex;flex-wrap:wrap;gap:8px}.fuel-checks-lg label{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:500}.fuel-checks-lg label:has(input:checked){background:var(--green-light);border-color:#a5d6a7;color:var(--green-dark)}.status-toggle{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border-radius:20px;border:none;font-size:.72rem;font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap;line-height:1.2}.status-toggle.active{background:var(--green-light);color:var(--green)}.status-toggle.inactive{background:var(--red-light);color:var(--red)}.row-actions{display:flex;gap:6px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:100;padding:16px}.modal{background:#fff;border-radius:10px;padding:24px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto}.modal h3{margin-bottom:16px;color:var(--green-dark)}.modal-actions{display:flex;gap:8px;margin-top:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.toast-container{position:fixed;bottom:24px;right:24px;z-index:200;display:flex;flex-direction:column;gap:8px}.toast{background:#333;color:#fff;padding:12px 18px;border-radius:8px;font-size:.85rem;box-shadow:0 4px 16px #0003;animation:toast-in .25s ease;max-width:320px}.toast.success{background:var(--green-dark)}.toast.error{background:var(--red)}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.empty-table{text-align:center;color:var(--text-muted);padding:40px 16px!important}@media(max-width:768px){.admin-header{flex-direction:column;align-items:flex-start}.form-row{grid-template-columns:1fr}.col-actions{width:auto}.stations-table th,.stations-table td{padding:10px 8px}}
