:root{font-family:system-ui,-apple-system,sans-serif;color:#172e2a;background:#f1f4f1;font-size:15px}*{box-sizing:border-box}body{margin:0}button,input,.button{font:inherit}button,.button{cursor:pointer;border:0;border-radius:10px;background:#146d59;color:white;padding:12px 17px;font-weight:600;text-decoration:none;display:inline-block}button:hover,.button:hover{filter:brightness(.94)}button:disabled{opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #d79b39;outline-offset:3px}[hidden]{display:none!important}main{max-width:1400px;margin:auto;padding:26px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.eyebrow{letter-spacing:.18em;font-size:10px;font-weight:700;color:#677e76}h1{font-size:29px;font-weight:500;letter-spacing:.04em;margin:7px 0}h1 span{font-weight:300;color:#789188}.quiet{background:transparent;color:#52736a;padding:8px 10px;font-size:13px}.summary{border:1px solid #dce5df;background:white;border-radius:16px;padding:20px 24px;margin-bottom:20px}.status-head{display:flex;align-items:center;gap:9px}.status-head button{margin-left:auto}.dot{width:8px;height:8px;border-radius:50%;background:#97a59e}.dot.fresh{background:#259c73}p{line-height:1.5;margin:8px 0}.muted{color:#6e8178;font-size:12px}.parking{color:#795c21;font-size:13px}.actions{display:flex;gap:10px;margin-top:15px;flex-wrap:wrap}.secondary{background:#edf2ed;color:#254b40}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;overflow:hidden;border:1px solid #d9e2dc;border-radius:16px;background:white}.map-pane{position:relative}#map{height:560px;background:#e1e7df}.map-key{position:absolute;bottom:26px;left:12px;background:#ffffffed;border-radius:8px;z-index:600;font-size:11px;display:flex;gap:15px;padding:9px;color:#3a6154;pointer-events:none}aside{padding:22px;max-height:560px;overflow:auto}.day-picker label{font-size:12px;color:#6e8178;display:block;margin-bottom:8px}input{border:1px solid #cdd9d0;padding:12px;border-radius:8px;width:100%;background:white;color:#172e2a}.stats{font-size:17px;margin-top:22px}.timeline{margin-top:24px}.event{border-left:2px solid #dce7de;padding:0 0 20px 14px;font-size:13px}.event time{font-size:11px;color:#6e8178;display:block;margin-bottom:5px}.event button{background:transparent;color:#146d59;padding:4px 0;font-size:12px}.point-marker,.stop-marker,.car-marker,.park-marker{border:2px solid white;border-radius:50%;box-shadow:0 1px 6px #294b4250;background:#146d59}.stop-marker{background:#bf8a2b}.car-marker,.park-marker{color:white;text-align:center;font-size:15px;line-height:25px;border-radius:9px;background:#123f33}.park-marker{background:#aa751e}.error{background:#fff0e9;color:#923e21;border-radius:10px;padding:12px;margin-bottom:15px}footer{font-size:11px;line-height:1.6;color:#718279;padding:18px 0}.login{min-height:100dvh;display:grid;place-items:center;padding:25px;background:#e9eeea}.login-card{max-width:400px;width:100%;background:white;border-radius:20px;padding:38px}.login-card h1{font-size:36px}.login-card p{color:#6d8076;font-size:13px}.login-card form{margin-top:28px}.login-card label{font-size:12px;display:block;margin-bottom:8px}.login-card button{width:100%;margin-top:12px}#login-error{color:#a6422a;min-height:20px}@media(max-width:800px){main{padding:18px 14px}header{margin-bottom:18px}.summary{padding:16px}.workspace{grid-template-columns:1fr}#map{height:48dvh;min-height:320px}aside{max-height:none;padding:18px}.timeline{max-height:310px;overflow:auto}.map-key{bottom:25px;font-size:10px;gap:10px}.actions>*{flex:1;text-align:center;font-size:13px}.login-card{padding:28px}}
