html,body{margin:0;height:100%;font:15px -apple-system,system-ui,sans-serif}#map{position:absolute;inset:0}
#top{position:absolute;top:calc(env(safe-area-inset-top) + 10px);left:10px;right:10px;display:flex;gap:6px;z-index:5}
#q{flex:1;padding:10px 12px;border-radius:10px;border:0;font-size:16px;box-shadow:0 1px 4px #0006}
#top button,#loc{border:0;border-radius:10px;background:#fff;font-size:20px;width:44px;box-shadow:0 1px 4px #0006}
#results{position:absolute;top:46px;left:0;right:50px;background:#fff;border-radius:10px;max-height:50vh;overflow:auto;box-shadow:0 2px 8px #0006}
#results div{padding:10px 12px;border-bottom:1px solid #eee}#results small{color:#777}
#hint{position:absolute;top:calc(env(safe-area-inset-top) + 64px);left:50%;transform:translateX(-50%);background:#000a;color:#fff;padding:6px 12px;border-radius:14px;z-index:4;font-size:13px}
#loc{position:absolute;right:10px;bottom:calc(env(safe-area-inset-bottom) + 30px);height:44px;z-index:4}
#lbl{position:absolute;left:10px;bottom:calc(env(safe-area-inset-bottom) + 30px);background:#fffd;padding:6px 10px;border-radius:10px;z-index:4;font-size:13px}
#sheet{position:absolute;left:0;right:0;bottom:0;max-height:65vh;overflow:auto;background:#fff;border-radius:16px 16px 0 0;box-shadow:0 -2px 12px #0006;z-index:10;padding:8px 16px calc(env(safe-area-inset-bottom) + 16px)}
.grab{width:40px;height:5px;background:#ccc;border-radius:3px;margin:0 auto 8px}#close{position:sticky;top:0;z-index:11;display:flex;align-items:center;justify-content:center;margin:-4px -6px -44px auto;width:44px;height:44px;border:0;border-radius:22px;background:#eee;color:#000;font-size:22px;line-height:1;box-shadow:0 1px 4px #0004;cursor:pointer;-webkit-tap-highlight-color:transparent}#sheetBody h3{padding-right:48px}
#sheet h3{margin:4px 0 10px}#sheet dl{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0}#sheet dt{color:#666}#sheet dd{margin:0;white-space:pre-wrap}
#sheet table{border-collapse:collapse;width:100%;font-size:13px;margin-top:8px}#sheet td,#sheet th{border:1px solid #ddd;padding:4px;text-align:left;vertical-align:top;word-break:break-word}
.btn{margin-top:12px;padding:10px 14px;border:0;border-radius:10px;background:#d35400;color:#fff;font-size:15px}
.hidden{display:none!important}#login{position:fixed;inset:0;background:#0009;z-index:20;display:flex;align-items:center;justify-content:center}
#lf{background:#fff;padding:20px;border-radius:14px;width:min(90vw,360px);display:flex;flex-direction:column;gap:10px}#lf label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#555}
#lf input{padding:10px;font-size:16px;border:1px solid #ccc;border-radius:8px}#lf button{padding:10px;border:0;border-radius:8px;background:#d35400;color:#fff;font-size:16px}#lf #logout{background:#888}#lerr{color:#c00;font-size:13px}
#err{position:absolute;top:calc(env(safe-area-inset-top) + 100px);left:10px;right:10px;background:#c0392b;color:#fff;padding:8px 12px;border-radius:10px;z-index:6;font-size:14px;text-align:center}
.notice{margin:6px 0 10px;padding:8px 10px;border-radius:8px;background:rgba(76,201,240,.15);color:#9be3f7;font-size:13px;line-height:1.35}
#legend{position:absolute;left:10px;bottom:calc(env(safe-area-inset-bottom) + 72px);background:#fffe;padding:6px 10px;border-radius:10px;z-index:4;font-size:12px;line-height:1.5}#legend i{display:inline-block;width:14px;height:0;border-top:3px solid;border-color:inherit;vertical-align:middle;margin-right:6px}#legend i{height:3px;border:0}
.notice.err{background:rgba(255,80,80,.18);color:#ffb3b3}.notice.ok{background:rgba(80,200,120,.16);color:#9fe3b4}
.dim{opacity:.6;font-style:italic}
#results .hd{padding:6px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#888;background:#f5f5f5}#results .pl{cursor:pointer}#results .dim{padding:10px 12px;opacity:.6;font-style:italic}
#own.on{background:#9b30ff;color:#fff}#ownchip{position:absolute;top:58px;left:10px;right:10px;z-index:3;display:flex;gap:8px;align-items:center;justify-content:space-between;background:#4a148c;color:#fff;border-radius:10px;padding:8px 10px;font-size:13px;box-shadow:0 1px 4px #0006}#ownchip button{background:#fff;color:#4a148c;border:0;border-radius:8px;padding:5px 9px;font-weight:600}
#ownchip .cb{display:flex;gap:6px;flex:none}#ownchip .cb button{padding:4px 8px;font-size:12px;width:auto}
#results .ownbar{display:flex;gap:6px;flex-wrap:wrap;padding:8px 10px;background:#f5f5f5;position:sticky;top:0;z-index:2}#results .ownbar button{border:1px solid #9b30ff;background:#fff;color:#4a148c;border-radius:8px;padding:5px 9px;font-size:13px;width:auto;box-shadow:none}#results .ownbar button.pri{background:#9b30ff;color:#fff;font-weight:600}
#results .og{display:flex;align-items:center;gap:8px;background:#faf5ff;cursor:pointer;font-weight:600;padding:8px 10px}#results .og .gn{flex:1;min-width:0;word-break:break-word}#results .og .car{color:#7a00cc}
#results .pr{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 10px 8px 26px}#results input[type=checkbox]{width:18px;height:18px;flex:none;accent-color:#9b30ff}#results .hidden{display:none}

#kno{font-weight:700}#kno.on{background:#00b8d4;color:#fff}#knochip{position:absolute;top:58px;left:10px;right:10px;z-index:3;display:flex;gap:8px;align-items:center;justify-content:space-between;background:#006064;color:#fff;border-radius:10px;padding:8px 10px;font-size:13px;box-shadow:0 1px 4px #0006}#knochip small{opacity:.8}#knochip button{background:#fff;color:#006064;border:0;border-radius:8px;padding:5px 9px;font-weight:600;flex:none}
#results .otot{position:sticky;top:44px;z-index:2;background:#4a148c;color:#fff;padding:7px 12px;font-size:14px}#ownchip b{white-space:nowrap}
#ownpill{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(env(safe-area-inset-bottom) + 84px);z-index:6;border:0;border-radius:22px;background:#9b30ff;color:#fff;font-size:15px;font-weight:600;padding:11px 18px;min-height:44px;box-shadow:0 2px 8px #0008;white-space:nowrap;max-width:80vw;overflow:hidden;text-overflow:ellipsis}#results #ohide{border-color:#666;color:#333}
.btn.rmsel{display:block;margin:0 0 10px;width:calc(100% - 52px);min-height:44px;background:#b0003a;font-weight:600}#undo{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(env(safe-area-inset-bottom) + 136px);z-index:12;background:#222;color:#fff;border-radius:10px;padding:10px 14px;font-size:14px;box-shadow:0 2px 8px #0008;white-space:nowrap}#undo button{margin-left:10px;border:0;border-radius:8px;padding:6px 12px;background:#c77dff;color:#000;font-weight:700;min-height:36px}
#pills{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(env(safe-area-inset-bottom) + 84px);z-index:6;display:flex;gap:8px;max-width:94vw}#pills #ownpill{position:static;transform:none;max-width:46vw}#svpill{border:0;border-radius:22px;background:#ff1fa9;color:#fff;font-size:15px;font-weight:600;padding:11px 16px;min-height:44px;box-shadow:0 2px 8px #0008;white-space:nowrap;max-width:46vw;overflow:hidden;text-overflow:ellipsis}#results .ownbar button.sv{border-color:#ff1fa9;color:#b0006f}#results .ownbar button.pri.sv{background:#ff1fa9;color:#fff}#results .ownbar button.danger{border-color:#b0003a;color:#b0003a}#results .svtot{position:sticky;top:0;z-index:3;background:#b0006f;color:#fff;padding:8px 12px;font-size:14px}#results .svg{background:#fff0f8}#results .svi{padding-left:14px}#results .pt,#results .gn{flex:1;min-width:0;cursor:pointer}#results .rx{border:0;background:#f3d6e6;color:#b0003a;border-radius:8px;min-width:40px;min-height:36px;font-size:16px;flex:none}
.lhd{display:flex;align-items:center;justify-content:space-between}.lhd h2{margin:0}#lclose{background:#eee!important;color:#000!important;width:40px;height:40px;border-radius:20px!important;padding:0!important}#me{background:#eef7ee;color:#225522;padding:8px 10px;border-radius:8px;font-size:14px}.phrow{display:flex;align-items:stretch;gap:0}.phrow .cc{padding:10px;border:1px solid #ccc;border-right:0;border-radius:8px 0 0 8px;background:#f3f3f3;color:#333;font-size:16px}.phrow input{flex:1;border-radius:0 8px 8px 0!important;min-width:0}#lf button:disabled{opacity:.6}#lf .lnk{background:none!important;color:#d35400!important;padding:4px!important;font-size:14px!important}#tokbox{font-size:14px;color:#555}#tokbox summary{cursor:pointer;padding:6px 0}#tokbox label{margin-top:8px}#tokbox button{width:100%;margin-top:8px}#otpbox{display:flex;flex-direction:column;gap:8px}#otpbox input{letter-spacing:.3em;font-size:20px;text-align:center}#admusers{background:#4a148c!important}#lf{max-height:90vh;overflow:auto}.ut td small{color:#777}.st{font-weight:700}.st.active{color:#1b7f3a}.st.blocked{color:#b0003a}.ub{margin-top:4px;border:1px solid #888;background:#fff;border-radius:8px;padding:6px 10px;min-height:36px}
#plbtn{filter:grayscale(1)}#plbtn.on{filter:none}.plrow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 52px 10px 0}.plrow .dim{flex:1;font-size:13px}.plb{border:1px solid #c9a400;background:#fff8d6;color:#5c4a00;border-radius:10px;padding:8px 12px;min-height:44px;font-size:15px;font-weight:600}.plb.on{background:#ffd60a;color:#000}#results .hd .rx{float:right;min-height:24px;min-width:30px;margin-top:-3px}
.ctbox{margin:0 52px 10px 0;padding:10px;border-radius:10px;background:#e8f5e9;color:#1b5e20;font-size:14px}.ctbox .cth{font-weight:700;margin-bottom:6px}.ctbox label{display:flex;flex-direction:column;gap:4px;margin:6px 0;font-size:13px}.ctbox input,.ctbox textarea{padding:8px;font-size:16px;border:1px solid #aaa;border-radius:8px;font-family:inherit}.ctb{margin-top:6px;border:0;border-radius:10px;background:#2e7d32;color:#fff;padding:10px 14px;min-height:44px;font-size:15px;font-weight:600}.ctb:disabled{opacity:.6}.cterr{color:#b00020;margin-top:6px}.wb{margin-top:6px;border:0;border-radius:8px;background:#2e7d32;color:#fff;padding:8px 12px;min-height:40px;font-size:14px}.wbal{font-size:20px;margin:6px 0 10px}td.neg{color:#b00020;white-space:nowrap}td.pos{color:#1b7f3a;white-space:nowrap}.rqs.queued{color:#a66b00}.rqs.sent{color:#1b7f3a}.rqs.refunded,.rqs.failed{color:#b00020}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 52px 10px 0}.tabs button{border:1px solid #888;background:#fff;border-radius:18px;padding:7px 12px;min-height:38px;font-size:14px}.tabs button.on{background:#4a148c;color:#fff;border-color:#4a148c}.tabs.sm button{min-height:32px;padding:4px 10px;font-size:13px}.rq{border:1px solid #ddd;border-radius:10px;padding:10px;margin:8px 0;font-size:14px;line-height:1.5}.rqb{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.ivf{display:flex;gap:6px;flex-wrap:wrap}.ivf input{flex:1;min-width:130px;padding:9px;font-size:16px;border:1px solid #aaa;border-radius:8px}.oi{display:block;padding:6px 0}
.otherK{font-size:12px;margin:0 0 8px;padding:6px 8px;background:#fff7e0;border:1px solid #f0c040;border-radius:6px;line-height:1.9}
.otherK button{font-size:12px;margin:0 2px;padding:2px 7px;border:1px solid #c90;border-radius:10px;background:#fff;cursor:pointer}
.otherK .cur{font-weight:700;padding:2px 7px;background:#ffcc00;border-radius:10px}
.st.pending{color:#b26a00}.err{color:#c62828;font-size:13px;margin:4px 0}
.lsbar{display:flex;gap:6px;padding:6px 8px;flex-wrap:wrap}
.lsr{display:flex;align-items:center;justify-content:space-between;padding:8px;border-top:1px solid #eee;gap:6px}
.lsr.off .lsn{opacity:.5}.lsn{flex:1;cursor:pointer;min-width:0}.lsn small{color:#777;margin-left:4px}.lsa{display:flex;gap:2px;flex-shrink:0}
.lsi{padding-left:18px;background:#fafafa}.lsi .pr{border-top:1px solid #f0f0f0}
.plpick{width:100%;margin-top:6px;padding:8px;border:1px solid #f0c040;border-radius:8px;background:#fffbe8;color:#222}
.plpick .hd2{font-weight:700;font-size:13px;margin-bottom:4px}.pko{display:flex;align-items:center;gap:6px;padding:5px 0;font-size:14px;cursor:pointer}.pko small{color:#777}
.pkn{display:flex;gap:6px;margin-top:6px}.pkn input{flex:1;min-width:0;padding:6px;border:1px solid #ccc;border-radius:6px}
.plrow{flex-wrap:wrap}
.lsbar .plb{width:auto;flex:0 0 auto;white-space:nowrap;padding:6px 12px;font-size:14px}.lsa .rx{min-width:34px;min-height:34px}
