*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#0d1011;color:#f4f5f5;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}button,input,select,textarea{font:inherit}button{border:0;border-radius:12px;padding:11px 13px;background:#252a2d;color:#fff;font-weight:800}button:active{transform:scale(.98)}.hidden{display:none!important}
#lock{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at 50% 15%,#29332b,#0d1011 62%)}.lock-card{width:min(390px,100%);background:#191d1f;border:1px solid #353b3e;border-radius:25px;padding:32px;box-shadow:0 25px 80px #000b;text-align:center}.metal-logo,.brand{font-weight:950;letter-spacing:4px;font-size:28px}.metal-logo span,.brand span{color:#a9dd73}.sub{color:#8f999d;margin:8px 0 20px}.lock-card input{width:100%;padding:14px;border-radius:12px;border:1px solid #394043;background:#0d1011;color:#fff;margin-bottom:9px}.lock-card #unlock{width:100%;background:#a9dd73;color:#10130e}.lock-card #lock-error{height:20px;color:#ff7b7b;font-size:13px;margin-top:8px}
#app{height:100%;position:relative}.map{position:absolute;inset:0 0 67px}.leaflet-control-attribution{font-size:9px}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#181c1e;color:#fff}.leaflet-popup-content{font-size:13px}.leaflet-popup-content button{margin-top:7px}
header{position:absolute;z-index:1000;top:0;left:0;right:0;padding:max(12px,env(safe-area-inset-top)) 13px 12px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(#0d1011ed,transparent)}.head-actions{display:flex;gap:7px}.head-actions button{width:44px;height:44px;border-radius:50%;padding:0;font-size:21px}.brand{font-size:23px}
#gpsBadge{position:absolute;z-index:800;top:72px;left:12px;background:#111d;color:#fff;border:1px solid #33393b;padding:7px 10px;border-radius:20px;font-size:12px}#gpsBadge b{color:#a9dd73}
#trackStats{position:absolute;z-index:800;top:108px;left:12px;background:#111d;border:1px solid #33393b;border-radius:12px;padding:7px 10px;font-size:11px;line-height:1.4}
#mapActions{position:absolute;z-index:900;left:9px;right:9px;bottom:77px;display:flex;gap:7px;overflow:auto;padding:2px}#mapActions button{white-space:nowrap;box-shadow:0 5px 20px #0007}#mapActions .track{background:#a9dd73;color:#10130e}.track.recording{background:#e46e55;color:#fff}
nav{position:absolute;z-index:1000;left:0;right:0;bottom:0;height:67px;background:#171a1cf7;border-top:1px solid #343a3c;display:flex;padding:4px 4px max(4px,env(safe-area-inset-bottom))}nav button{flex:1;background:transparent;color:#969fa3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px;font-size:20px}nav button span{font-size:10px}nav button.active{color:#b9e98b}
.popup-panel{position:absolute;z-index:1500;top:65px;right:11px;width:min(370px,calc(100% - 22px));background:#191d1f;border:1px solid #373d40;border-radius:18px;padding:15px;box-shadow:0 18px 55px #000b}.panel-title{font-weight:900;letter-spacing:1px;margin-bottom:13px}.popup-panel label{display:block;color:#a2abad;font-size:12px;margin:11px 0 5px}.popup-panel input{width:100%;background:#0d1011;border:1px solid #373d40;border-radius:10px;padding:10px;color:#fff}.seg{display:flex}.seg button{flex:1;border-radius:0}.seg button:first-child{border-radius:10px 0 0 10px}.seg button:last-child{border-radius:0 10px 10px 0}.seg .active{background:#a9dd73;color:#111}.panel-note{color:#7f898d;font-size:11px;line-height:1.45;margin-top:9px}.popup-panel hr{border:0;border-top:1px solid #343a3c;margin:14px 0}.row{display:flex;gap:7px;margin-top:7px}.row>*{flex:1}.ghost{background:#303538}.wide{width:100%;margin-top:8px}
#sheet{position:absolute;z-index:3000;inset:0;background:#0009;display:flex;align-items:flex-end}#sheetInner{position:relative;width:100%;max-height:91%;overflow:auto;background:#191d1f;border-radius:23px 23px 0 0;padding:22px 17px max(22px,env(safe-area-inset-bottom))}#sheetClose{position:absolute;right:12px;top:9px;z-index:3;width:38px;height:38px;border-radius:50%;padding:0;font-size:24px}.sheet-title{font-size:22px;margin:0 45px 17px 0}.grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.full{grid-column:1/-1}.f{display:flex;flex-direction:column;gap:5px}.f label{font-size:11px;color:#9ea7aa}.f input,.f select,.f textarea{background:#0d1011;border:1px solid #383e40;color:#fff;border-radius:10px;padding:11px}.f textarea{min-height:80px;resize:vertical}.primary{background:#a9dd73;color:#111}.widebtn{width:100%;margin-top:10px}.card{background:#24292c;border:1px solid #363c3f;border-radius:14px;padding:12px;margin:8px 0}.card b{display:block}.muted{color:#929b9f;font-size:12px}.chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.chip{font-size:10px;background:#343a3d;border-radius:20px;padding:5px 8px}.chip.good{background:#31512a}.chip.bad{background:#5a2e2e}.actions{display:flex;gap:7px;margin-top:9px}.actions>*{flex:1}.empty{text-align:center;color:#8e989b;padding:28px}.photo{max-width:100%;max-height:180px;object-fit:cover;border-radius:10px;margin-top:8px}
#toast{position:absolute;z-index:4000;left:50%;bottom:81px;transform:translateX(-50%);background:#f4f5f5;color:#111;padding:9px 14px;border-radius:20px;font-size:12px;font-weight:900;opacity:0;transition:.2s;pointer-events:none;white-space:nowrap}#toast.show{opacity:1}
.field-drawing{cursor:crosshair}
@media(min-width:800px){#sheet{align-items:center;justify-content:center}#sheetInner{width:min(700px,90%);max-height:82%;border-radius:23px}#mapActions{left:22px;right:auto;bottom:88px}.map{inset:0 0 67px}}
