:root{color-scheme:dark;font-family:Inter,Arial,system-ui,sans-serif;background:#020915;color:#f2f8ff}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% -10%,#0a3861 0%,#030d1c 48%,#01050e 100%);min-height:100vh}.app{max-width:1200px;margin:auto;padding:20px 16px 100px}header{display:flex;align-items:center;gap:14px;margin-bottom:14px}.logo{width:56px;height:56px;display:grid;place-items:center;font-size:22px;font-weight:900;color:#d8faff;border:2px solid #05d8ff;border-radius:14px;box-shadow:0 0 13px #04baff,inset 0 0 18px #007dc5;background:linear-gradient(145deg,#066fb0,#00102b)}.brand{flex:1;min-width:0}.brand h1{margin:0;font-size:clamp(22px,3vw,35px);letter-spacing:-.8px;text-shadow:0 2px 10px #1875bc}.brand h1 span{font-size:.65em;color:#8edaff}.brand p{margin:4px 0 0;font-size:clamp(10px,1.5vw,15px);color:#c4d6eb}.circle{width:44px;height:44px;border:1px solid #36c9ff;border-radius:50%;background:linear-gradient(#14527e,#03162d);color:#eaffff;font-size:26px;box-shadow:inset 0 2px 7px #5ccfff,0 0 12px #0966b7;cursor:pointer}.status{display:flex;justify-content:space-between;gap:10px;margin-bottom:17px;font-size:12px}.status span{padding:8px 12px;border-radius:30px;background:linear-gradient(#092b42,#031322);border:1px solid #1f8fbd;box-shadow:0 0 8px #0b4e7d}.status span:first-child{border-color:#0ce68b;color:#8cffc7}#alert{padding:12px;margin-bottom:14px;border:1px solid #ffae40;border-radius:12px;background:#302110;color:#ffe2a2;font-size:13px}.staff{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}.person{--glow:#04c8ff;min-width:0;min-height:290px;padding:10px 9px 12px;border:2px solid var(--glow);border-radius:22px;background:linear-gradient(145deg,color-mix(in srgb,var(--glow) 13%,#051121),#030b1a 60%,color-mix(in srgb,var(--glow) 7%,#020611));box-shadow:inset 0 1px 12px color-mix(in srgb,var(--glow) 24%,transparent),0 0 12px color-mix(in srgb,var(--glow) 43%,transparent),0 10px 22px #0008}.person:nth-child(2){--glow:#b65aff}.person:nth-child(3){--glow:#ffdf16}.person:nth-child(4){--glow:#12e0bb}.person h2{display:flex;align-items:center;justify-content:space-between;gap:4px;font-size:clamp(13px,2.5vw,24px);margin:2px 2px 13px;white-space:nowrap;letter-spacing:-.5px}.online-dot{width:10px;height:10px;border-radius:50%;background:#627a8a;flex:none}.online-dot.on{background:#39ef58;box-shadow:0 0 9px #30ff59}.items{display:grid;gap:5px}.item{display:flex;align-items:center;gap:5px;min-height:31px;border:1px solid color-mix(in srgb,var(--glow) 66%,#15293b);border-radius:10px;background:linear-gradient(#0d2338,#030c19);padding:3px 4px;box-shadow:inset 0 1px 5px #3682b52b}.item-name{flex:1;min-width:0;font-size:clamp(9px,1.45vw,14px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qty{min-width:24px;padding:2px 4px;text-align:center;border:1px solid #32b9ef;border-radius:7px;background:linear-gradient(#11547d,#051326);font-weight:800;font-size:clamp(11px,1.8vw,17px);box-shadow:0 0 5px #148bd4}.qty.zero{color:#ff6b78;border-color:#e64c61;box-shadow:0 0 5px #b72245}.empty{font-size:12px;color:#a5bed0;margin:8px 2px}.more{width:100%;margin-top:10px;border:1px solid var(--glow);border-radius:12px;background:#08203b;color:white;padding:5px;cursor:pointer}.map-section{border:2px solid #07baff;border-radius:21px;overflow:hidden;box-shadow:0 0 17px #087dcb,inset 0 0 15px #087dcb;background:#06152a}.map-title{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 16px;background:linear-gradient(#0c3458,#06152a)}.map-title strong{font-size:16px}.map-title small{font-size:11px;color:#c3d8ea;text-align:right}#map{height:clamp(250px,35vw,410px);background:#061a2a}.leaflet-container{background:#061a2a}.detail{margin:16px 0;padding:16px;border:1px solid #249fe0;border-radius:16px;background:#07172b;box-shadow:0 0 10px #0877bd}.detail h2{margin:0 0 12px;font-size:19px}.detail p{font-size:14px;color:#c1d7e7}.detail button{border:1px solid #2cc9ff;background:#092d4e;color:white;border-radius:10px;padding:9px 12px;cursor:pointer}.detail input{width:100%;padding:10px;background:#031021;border:1px solid #327aa8;color:white;border-radius:9px}.detail label{display:block;margin:12px 0 6px;font-size:13px}nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:18px}nav button{min-width:0;padding:11px 2px;border:1px solid #208ad0;border-radius:15px;background:linear-gradient(150deg,#0b3154,#031024 70%);box-shadow:inset 0 1px 6px #18649d,0 3px 8px #0007;color:#eaf5ff;font-size:clamp(9px,1.4vw,13px);cursor:pointer}nav button span{display:block;font-size:25px;margin-bottom:4px}nav button.active{background:linear-gradient(#00bfff,#0065dc);border-color:#36eaff;box-shadow:0 0 16px #009fff,inset 0 0 9px #70e9ff}@media(max-width:560px){.app{padding:13px 8px 95px}.logo{width:39px;height:39px;font-size:15px}.circle{width:35px;height:35px;font-size:20px}.staff{gap:5px}.person{border-radius:13px;border-width:1px;padding:7px 4px;min-height:270px}.person h2{margin:2px 1px 10px}.online-dot{width:6px;height:6px}.item{min-height:27px;gap:2px;padding:2px;border-radius:6px}.qty{min-width:17px;border-radius:5px;padding:1px 2px}.map-title{padding:10px}.map-title strong{font-size:13px}nav{gap:4px}nav button{border-radius:9px;padding:8px 1px}nav button span{font-size:20px}.status{font-size:10px}}
/* Functional panels; original card/map/navigation layout retained */
.detail select{width:100%;padding:10px;background:#031021;border:1px solid #327aa8;color:white;border-radius:9px}
.detail form{margin-top:15px;padding:13px;border:1px solid #195c8c;border-radius:12px;background:#041226}
.detail form h3{font-size:15px;margin:0 0 10px}
.detail form button{margin-top:13px;width:100%;font-weight:700}
.detail button:disabled{opacity:.5;cursor:wait}
.detail .muted{font-size:12px;color:#9bb6ca}
.login-panel{margin-bottom:18px}.login-panel form{margin-top:0}
.stock-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.stock-row{display:flex;justify-content:space-between;gap:8px;padding:9px;border:1px solid #16537b;border-radius:9px;font-size:12px;background:#061d33}.stock-row b{color:#8be8ff}.stock-row b.red{color:#ff697a}
.history-row{padding:10px 2px;border-bottom:1px solid #1d5478;font-size:13px;line-height:1.6}.history-row small{color:#92b5cc}
@media(max-width:560px){.stock-list{grid-template-columns:1fr}.staff{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Map controls — preserve approved layout */
.geo-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 10px 10px}.geo-controls button{width:auto;min-height:32px;padding:5px 12px;font-size:12px}.geo-controls small{font-size:10px;opacity:.7}
