:root{--ink:#13243a;--muted:#68798e;--blue:#1469d2;--blue2:#e9f3ff;--line:#dce6f1;--surface:#fff;--bg:#f4f8fc;--yellow:#ffb000;--red:#c83442;--green:#168356;--shadow:0 12px 38px rgba(32,68,105,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.45}.wrap{width:min(1120px,calc(100% - 32px));margin:auto}.hero{background:linear-gradient(135deg,#fff 0%,#e9f4ff 100%);border-bottom:1px solid var(--line)}.hero-inner{min-height:220px;display:flex;align-items:center;gap:28px}.brand-mark{width:74px;height:74px;display:grid;place-items:center;background:var(--blue);color:#fff;border-radius:20px;font-weight:900;letter-spacing:-1px;box-shadow:0 12px 24px rgba(20,105,210,.25)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.3rem,7vw,4.7rem);line-height:.95;letter-spacing:-.055em;margin-bottom:12px}.hero p:last-child{color:var(--muted);margin:0;font-weight:600}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:800;color:var(--blue);margin-bottom:8px}.tabs{display:flex;gap:8px;padding:24px 0 16px;position:sticky;top:0;z-index:10;background:rgba(244,248,252,.94);backdrop-filter:blur(12px)}button,.tab,input,select{font:inherit}.tab{border:1px solid var(--line);background:#fff;border-radius:999px;padding:11px 18px;color:var(--muted);font-weight:750;cursor:pointer}.tab.active{background:var(--ink);border-color:var(--ink);color:#fff}.tab span{font-size:.72rem;background:var(--blue2);color:var(--blue);padding:2px 7px;border-radius:99px}.panel{display:none}.panel.active{display:block}.run-picker,.section-head,.schedule-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:18px 0}.run-picker label{font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}select,input{border:1px solid #cbd8e6;border-radius:10px;background:#fff;color:var(--ink);padding:10px 12px}.run-picker select{display:block;margin-top:6px;min-width:280px}.schedule,.entry-list{margin-bottom:28px}.schedule-head{background:var(--ink);color:#fff;border-radius:18px 18px 0 0;padding:22px 24px;margin-bottom:0}.schedule-head h2{margin:0}.schedule-head .eyebrow{color:#9dcbff}.legend{display:flex;gap:28px;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.schedule-list{background:#fff;border:1px solid var(--line);border-top:0;border-radius:0 0 18px 18px;overflow:hidden}.schedule-row{display:grid;grid-template-columns:64px minmax(150px,1fr) 100px 100px;align-items:center;gap:14px;padding:13px 20px;border-top:1px solid var(--line)}.schedule-row:first-child{border-top:0}.number{font-size:1rem;font-weight:900;color:var(--blue)}.driver strong,.driver small{display:block}.driver small,.order-row small{color:var(--muted)}.time{text-align:right;font-variant-numeric:tabular-nums}.time small{display:block;font-size:.59rem;letter-spacing:.08em;color:var(--muted)}.time span,.time b{font-size:1.02rem}.start b{font-size:1.16rem;color:var(--blue)}.is-delayed{background:#fffaf0}.section-head h2{font-size:2rem;margin:0}.section-head input{width:min(370px,100%)}.entry-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.entry-card{display:flex;gap:18px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.entry-card h3{margin:0 0 3px;font-size:1.05rem}.entry-card p{color:var(--muted);font-size:.9rem;margin-bottom:10px}.tags{display:flex;gap:6px;flex-wrap:wrap}.tags span{background:var(--blue2);color:#285b94;border-radius:6px;padding:3px 7px;font-size:.72rem;font-weight:700}.updated{text-align:center;color:var(--muted);font-size:.76rem;margin:32px}footer{background:#eaf1f8;color:var(--muted);padding:26px 0;font-size:.85rem}.empty,.loading{background:#fff;border:1px solid var(--line);border-radius:18px;padding:48px;text-align:center;color:var(--muted)}.empty h2{color:var(--ink)}
.admin-body{background:#edf3f9}.login-card{width:min(430px,calc(100% - 32px));margin:10vh auto;background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px;box-shadow:var(--shadow)}.login-card .brand-mark{margin-bottom:30px}.login-card h1{font-size:2.5rem}.login-card label,.login-card input,.login-card button{display:block;width:100%}.login-card input{margin:6px 0 14px}.primary,.warning,.danger,.link-button,.order-controls button,.delay-event button{border:0;border-radius:9px;padding:10px 14px;font-weight:750;cursor:pointer}.primary{background:var(--blue);color:#fff}.warning{background:#ffb000;color:#332400}.danger{background:#fee9eb;color:var(--red)}.admin-header{display:flex;justify-content:space-between;align-items:center;padding:20px max(20px,calc((100vw - 1180px)/2));background:#fff;border-bottom:1px solid var(--line)}.admin-header h1{font-size:1.8rem;margin:0}.admin-actions{display:flex;align-items:center;gap:18px}.admin-actions form{margin:0}.admin-actions a,.link-button{color:var(--blue);background:none;text-decoration:none}.admin-wrap{width:min(1180px,calc(100% - 32px));margin:24px auto 70px}.admin-nav{display:flex;gap:8px;position:sticky;top:10px;z-index:20;margin-bottom:20px}.admin-nav a{background:var(--ink);color:#fff;text-decoration:none;padding:9px 15px;border-radius:99px;font-size:.85rem}.admin-section{scroll-margin-top:70px;margin:32px 0 60px}.admin-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;margin-bottom:12px;box-shadow:0 4px 16px rgba(32,68,105,.035)}.run-admin-grid{display:grid;grid-template-columns:220px 1fr;gap:18px}.run-list{display:flex;flex-direction:column;gap:6px}.run-list a{display:block;background:#fff;border:1px solid var(--line);border-radius:11px;padding:12px;text-decoration:none;color:var(--ink)}.run-list a.active{border-color:var(--blue);box-shadow:inset 3px 0 var(--blue)}.run-list span,.run-list strong{display:block}.run-list span{font-size:.68rem;color:var(--muted);text-transform:uppercase}.inline-form,.driver-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.inline-form label,.driver-form label{font-size:.72rem;font-weight:750;color:var(--muted)}.inline-form input,.inline-form select,.driver-form input{display:block;margin-top:5px}.checkbox{display:flex!important;align-items:center;gap:6px;padding:10px 0}.checkbox input{display:inline;margin:0}.delay-box{border-left:4px solid var(--yellow)}.delay-event{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding:9px 12px;background:#fff7dd;border-radius:8px;font-size:.84rem}.card-head{display:flex;justify-content:space-between;align-items:center}.card-head span{color:var(--muted);font-size:.75rem}.order-row{display:grid;grid-template-columns:74px 55px 1fr 145px;gap:12px;align-items:center;border-top:1px solid var(--line);padding:10px 0}.order-controls form{display:flex;gap:4px}.order-controls button{padding:7px 10px;background:var(--blue2);color:var(--blue)}button:disabled{opacity:.3;cursor:not-allowed}.order-row strong,.order-row small{display:block}.times{text-align:right;font-variant-numeric:tabular-nums}.driver-form{display:grid;grid-template-columns:100px repeat(2,1fr) repeat(2,1fr) 1fr auto}.driver-edit summary{cursor:pointer;display:grid;grid-template-columns:70px 1fr 1fr}.driver-edit[open] summary{margin-bottom:18px}.driver-edit summary span{color:var(--muted)}.driver-edit>.danger{margin-top:10px}.alert{padding:13px 16px;border-radius:10px;margin:12px 0}.alert.success{background:#e5f7ef;color:var(--green)}.alert.error{background:#fee9eb;color:var(--red)}
@media(max-width:760px){.wrap{width:min(100% - 22px,1120px)}.hero-inner{min-height:170px;gap:16px}.hero .brand-mark{width:56px;height:56px;border-radius:15px}.hero h1{font-size:2.6rem}.tabs{padding-top:12px}.run-picker,.section-head{display:block}.run-picker select,.section-head input{width:100%;min-width:0;margin-top:8px}.schedule-row{grid-template-columns:48px 1fr 78px;padding:13px 11px;gap:8px}.pregrid{display:none}.driver small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:44vw}.entry-list{grid-template-columns:1fr}.schedule-head{padding:18px 14px}.legend{display:none}.admin-header{align-items:flex-start}.admin-actions{display:block;text-align:right}.run-admin-grid{grid-template-columns:1fr}.run-list{display:grid;grid-template-columns:repeat(2,1fr)}.driver-form{grid-template-columns:1fr 1fr}.driver-form button{grid-column:1/-1}.order-row{grid-template-columns:68px 48px 1fr 74px}.order-row .times small{display:none}.inline-form>*{width:100%}.inline-form input,.inline-form select,.inline-form button{width:100%}.admin-nav{overflow:auto}.card-head{display:block}.driver-edit summary{grid-template-columns:60px 1fr}.driver-edit summary span{display:none}}
