diff --git a/html/map.ejs b/html/map.ejs index 4e3396bf..800c455b 100644 --- a/html/map.ejs +++ b/html/map.ejs @@ -10,7 +10,7 @@ :root{ --vh:100vh;--pad:12px;--radius:14px;--fg:#fff;--bg:rgba(0,0,0,.6);--glass:blur(12px); --marker-size:20px;--marker-color:#e53935;--marker-ring:rgba(229,57,53,.35);--ring-width:3px; - --panel:rgba(0,0,0,.85) + --panel:rgba(0,0,0,.85);--accent:#0ea5e9;--chip:#111;--chipb:#222;--tip:#888 } *{box-sizing:border-box} html,body{height:100%;margin:0} @@ -19,16 +19,23 @@ .bar{position:relative;z-index:5;display:flex;gap:8px;align-items:center;padding:8px var(--pad); backdrop-filter:var(--glass);-webkit-backdrop-filter:var(--glass);background:var(--bg)} .search{position:relative;flex:1;min-width:0} - .search input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid #333;background:#111;color:#fff;outline:none} - .suggest{position:absolute;top: calc(100% + 6px);left:0;right:0;max-height:42vh;overflow:auto;margin:0;padding:6px 0;list-style:none;border:1px solid #333;border-radius:10px;background:#0b0b0b;display:none} - .suggest li{padding:10px 12px;cursor:pointer;border-top:1px solid #111} + .search input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid #333;background:#0b0b0b;color:#fff;outline:none} + .search input:focus{border-color:#444;box-shadow:0 0 0 3px rgba(14,165,233,.15)} + .chips{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap} + .chip{border:1px solid var(--chipb);background:var(--chip);color:#ddd;padding:6px 10px;border-radius:999px;cursor:pointer} + .chip:active{transform:scale(.98)} + .tips{position:absolute;right:8px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--tip);font-size:12px} + .suggest{position:absolute;top: calc(100% + 6px);left:0;right:0;max-height:42vh;overflow:auto;margin:0;padding:6px 0;list-style:none;border:1px solid #333;border-radius:12px;background:#0b0b0b;display:none} + .suggest li{padding:10px 12px;cursor:pointer;border-top:1px solid #111;display:flex;gap:8px;align-items:center} .suggest li:first-child{border-top:none} + .suggest li.active{background:#141414} + .suggest .pill{font-size:11px;border:1px solid #333;border-radius:999px;padding:2px 6px;opacity:.85} + .suggest mark{background:transparent;color:var(--accent);font-weight:600} .iconbtn{border:0;border-radius:10px;background:#222;color:#fff;padding:10px 12px;min-width:44px} .mapwrap{position:relative;height:calc(var(--vh) - 56px);overflow:hidden} iframe#map{position:absolute;inset:0;border:0;width:100%;height:100%} - /* Marker (dot by default) */ .marker{ position:absolute;left:50%;top:50%; width:var(--marker-size);height:var(--marker-size); @@ -38,36 +45,25 @@ z-index:3;pointer-events:none } .marker.hidden{display:none} - - /* Crosshair variant */ - .marker.crosshair{ - background:transparent;border-radius:0;box-shadow:0 0 0 var(--ring-width) var(--marker-ring); - } + .marker.crosshair{background:transparent;border-radius:0;box-shadow:0 0 0 var(--ring-width) var(--marker-ring)} .marker.crosshair::before, - .marker.crosshair::after{ - content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%); - background:var(--marker-color) - } + .marker.crosshair::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--marker-color)} .marker.crosshair::before{width:calc(var(--marker-size) * 1.6);height:2px} .marker.crosshair::after{width:2px;height:calc(var(--marker-size) * 1.6)} .marker.crosshair .dot{display:none} - .marker .dot{ - position:absolute;left:50%;top:50%;transform:translate(-50%,-50%); - width:calc(var(--marker-size) * .35);height:calc(var(--marker-size) * .35); - background:var(--marker-color);border-radius:50%; - } + .marker .dot{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:calc(var(--marker-size) * .35);height:calc(var(--marker-size) * .35);background:var(--marker-color);border-radius:50%} .brand{position:absolute;bottom:10px;left:10px;padding:6px 10px;font-size:18px;font-weight:600; background:var(--bg);backdrop-filter:var(--glass);-webkit-backdrop-filter:var(--glass); border-radius:10px;z-index:4;pointer-events:none} - /* Bottom-left dock above PokeMaps */ .dock{position:absolute;left:10px;bottom:52px;z-index:7;display:flex;flex-direction:column;gap:8px} .dock button{border:0;border-radius:10px;background:#111;color:#fff;padding:8px 10px} .coords{position:absolute;bottom:10px;right:10px;z-index:5;padding:6px 10px;border-radius:10px; background:var(--bg);backdrop-filter:var(--glass);-webkit-backdrop-filter:var(--glass); - border:1px solid #333;display:none;min-width:240px;text-align:right} + border:1px solid #333;display:none;min-width:260px;text-align:right; + font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","DejaVu Sans Mono",monospace} .menu{position:fixed;top:56px;right:10px;z-index:8;min-width:260px;max-width:92vw; background:var(--panel);backdrop-filter:var(--glass);-webkit-backdrop-filter:var(--glass); @@ -86,17 +82,18 @@ .pins .row{display:flex;gap:8px;flex-wrap:wrap} .tag{display:inline-block;font-size:12px;opacity:.8} - .settings{position:fixed;left:10px;bottom:110px;z-index:8;min-width:300px;max-width:92vw; - background:var(--panel);backdrop-filter:var(--glass);-webkit-backdrop-filter:var(--glass); - border:1px solid #333;border-radius:12px;display:none} + .settings{position:fixed;left:10px;bottom:110px;z-index:8;min-width:320px;max-width:92vw;background:var(--panel);backdrop-filter:var(--glass);-webkit-backdrop-filter:var(--glass);border:1px solid #333;border-radius:12px;display:none} .settings header{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-bottom:1px solid #222} - .settings .row{display:flex;gap:10px;align-items:center;padding:10px;border-top:1px solid #111} - .settings .row:first-of-type{border-top:0} + .settings .group{border-top:1px solid #111} + .settings .group:first-of-type{border-top:0} + .settings .ghead{display:flex;justify-content:space-between;align-items:center;padding:10px 12px} + .settings .ghead button{background:#111;border:1px solid #333;border-radius:8px;padding:6px 10px} + .settings .section{display:none;padding:10px 12px;border-top:1px solid #111} + .settings .row{display:flex;gap:10px;align-items:center;padding:8px 0} .settings label{flex:1} .settings input[type="range"]{flex:1} .settings input[type="color"]{width:42px;height:32px;border:0;background:none} - /* Desktop variant */ .desktop .bar{grid-column:2} .desktop .app{grid-template-columns:320px 1fr;grid-template-rows:auto 1fr} .desktop .sidebar{position:fixed;left:0;top:0;bottom:0;width:320px;background:var(--panel);border-right:1px solid #333;display:flex;flex-direction:column;gap:10px;padding:12px;z-index:9} @@ -116,8 +113,14 @@
-