:root{--navy:#00305e;--ink:#0b2340;--muted:#5b6b80;--line:#b9c4d2;--panel:#f6f8fb;--gold:#b8912f}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;font-family:Inter,system-ui,sans-serif;color:var(--ink)}body{background:#e9edf3}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid var(--navy);outline-offset:2px}.geoportal{height:100dvh;position:relative;overflow:hidden}.map{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(140deg,#dce6ef,#f6f8fb)}.bar,.under,.panel{position:absolute;z-index:2;left:14px;width:520px;max-width:calc(100vw - 28px)}.bar{top:14px;height:56px;display:flex;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 4px 14px #0b234024}.bar input{flex:1;min-width:0;border:0;background:transparent;padding:0 14px;font-size:16px;color:var(--ink)}.bar button{width:54px;border:0;border-left:1px solid var(--line);background:transparent;color:var(--navy)}.under{top:80px;display:flex;flex-direction:column;gap:8px}.kick{align-self:flex-start;padding:8px 10px;border:1px solid var(--line);border-radius:4px;background:var(--panel);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.chips,.filters{display:flex;flex-wrap:wrap;gap:7px}.chip,.filter,.button{min-height:40px;padding:0 13px;border:1px solid var(--line);border-radius:22px;background:var(--panel);color:var(--ink)}.chip:hover,.filter.active,.button.primary{background:var(--navy);border-color:var(--navy);color:#fff}.panel{top:80px;bottom:24px;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 22px #0b234024;overflow:hidden}.panel-head{padding:12px 16px;border-bottom:1px solid var(--line);display:flex;gap:8px;align-items:center}.panel-head button{margin-left:auto}.filters{padding:10px 16px;border-bottom:1px solid var(--line)}.results{overflow:auto;padding:14px 16px;display:grid;gap:12px}.card{display:flex;gap:13px;padding:13px;border:1px solid #cbd4e0;border-radius:5px;background:#fff}.thumb{width:84px;height:84px;background:repeating-linear-gradient(135deg,#dfe7f1 0,#dfe7f1 4px,#f2f5f9 4px,#f2f5f9 10px);border:1px solid #cbd4e0;border-radius:4px}.card h2{font-size:16px;margin:0}.card p{font-size:13px;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:7px}.actions button{min-height:38px;padding:0 10px;border:1px solid var(--navy);border-radius:5px;background:transparent;color:var(--navy)}.side{position:absolute;z-index:3;right:14px;top:14px;display:flex;flex-direction:column;gap:8px;align-items:flex-end}.tray{width:300px;max-width:calc(100vw - 28px);background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 6px 18px #0b234024}.tray header,.layer{padding:10px 12px;border-bottom:1px solid var(--line)}.layer{display:grid;grid-template-columns:1fr auto;gap:8px;font-size:13px}.layer small{color:var(--muted)}.layer button{border:1px solid var(--line);background:transparent;border-radius:4px}.advanced{max-height:55dvh;overflow:auto}.advanced summary{padding:12px;cursor:pointer}.advanced button{display:block;width:100%;padding:11px;border:0;border-top:1px solid var(--line);background:transparent;text-align:left}.empty{padding:28px;color:var(--muted)}@media(max-width:700px){.panel{top:auto;left:0;right:0;width:auto;bottom:0;height:58dvh;border-radius:14px 14px 0 0;border-bottom:0}.side{top:auto;bottom:14px;left:14px;right:14px;align-items:stretch}.tray{width:auto}.advanced{display:none}.bar,.under{right:14px;width:auto}.card{flex-direction:column}.thumb{width:100%;height:110px}}
