.poi-fab{right:74px;width:auto;min-width:126px;padding:0 14px;font-size:.84rem;font-weight:800}.poi-card{display:flex;flex-direction:column;max-height:88dvh;overflow:hidden;padding:0}.poi-card-body{position:relative;display:flex;flex-direction:column;gap:8px;flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:25px}.poi-card h2{margin:8px 0 0}.poi-card p{margin:0}.poi-card label{display:block;margin-top:3px}.poi-card input,.poi-card select{width:100%;min-height:46px;margin-top:4px;padding:0 11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink-strong);font:inherit;font-size:.9rem}.poi-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.poi-link-row .button{min-height:46px;padding:0 12px;white-space:nowrap}.poi-help{margin:0!important}.poi-error{min-height:0;color:#b91c1c;font-size:.84rem;line-height:1.4}.poi-error:empty{display:none}.poi-preview{display:flex;flex-direction:column;gap:5px;padding:12px;background:#f4fafc;border:1px solid #d8eaf1;border-radius:13px}.poi-preview[hidden]{display:none}.poi-preview h3{margin:0 0 4px;font-size:1rem}.poi-coordinate-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.poi-coordinate-row label{margin:0}.poi-coordinate-row input{display:block}.poi-unverified{padding:9px;background:#fff7ed;border-radius:9px;color:#9a3412!important;font-size:.78rem;line-height:1.45}.poi-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px}.poi-actions button{min-height:48px;padding:0 8px;font-size:.86rem}.poi-card .dialog-actions{justify-content:flex-end;margin-top:0}.poi-card .dialog-actions button{min-height:44px}@media (max-width: 760px), (max-width: 1000px) and (max-height: 600px){.poi-fab{right:11px;bottom:114px;min-height:48px}.poi-link-row{grid-template-columns:minmax(0,1fr) auto}.poi-link-row .button{padding:0 9px;font-size:.84rem}.poi-card-body{padding:19px}.poi-actions button{min-height:50px;font-size:.82rem}}
.poi-error{padding:5px 2px;font-size:.9rem;font-weight:700}.poi-coordinate-row input[aria-invalid="true"]{border:2px solid #b91c1c;background:#fffafa}.poi-coordinate-status{margin:0!important;padding:7px 9px;border-radius:8px;background:#eef6f9;color:#29434f;font-size:.84rem;line-height:1.45}.poi-coordinate-status[data-state="error"]{background:#fef2f2;color:#991b1b;font-weight:700}.poi-coordinate-status[data-state="success"]{background:#ecfdf5;color:#166534;font-weight:700}.poi-pick-map{min-height:48px;touch-action:manipulation}.coordinate-pick-banner{position:fixed;z-index:2500;top:calc(12px + env(safe-area-inset-top,0px));left:50%;display:flex;align-items:center;gap:12px;max-width:calc(100vw - 24px);padding:10px 12px;transform:translateX(-50%);border:1px solid #c7dce5;border-radius:14px;background:#fff;color:#123047;box-shadow:0 8px 28px rgba(15,23,42,.22);font-size:.95rem;font-weight:700}.coordinate-pick-banner[hidden]{display:none}.coordinate-pick-banner button{min-height:44px;flex:none}
.poi-card .poi-pick-map{width:100%;justify-content:center;font-weight:700}.poi-coordinate-picking{cursor:crosshair!important}.poi-coordinate-picking .leaflet-interactive{cursor:crosshair!important}
.poi-coordinate-candidates{display:flex;flex-direction:column;gap:8px;max-height:220px;overflow:auto;padding:8px;border:1px solid #bfd6df;border-radius:10px;background:#fff}.poi-coordinate-candidates[hidden]{display:none}.poi-candidate-heading{font-size:.84rem;line-height:1.45}.poi-candidate{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;min-height:56px;padding:9px 10px;border:1px solid #cfdae0;border-radius:9px;background:#fff;text-align:left;color:var(--ink-strong);font:inherit;touch-action:manipulation}.poi-candidate:active,.poi-candidate.selected{border-color:#087e9b;background:#effaff}.poi-candidate span{font-size:.78rem;line-height:1.35}.poi-candidate small{color:#51636b;font-size:.72rem}
.poi-google-import{margin:2px 0;padding:0 10px 10px;border:1px solid #cfdae0;border-radius:10px}.poi-google-import summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-size:.88rem;font-weight:700;touch-action:manipulation}.poi-search-status{margin:0!important;color:#29434f;font-size:.86rem;line-height:1.45}.poi-search-status:empty{display:none}.poi-osm-attribution{padding:2px 4px;color:#405761;font-size:.76rem;text-decoration:underline}.poi-candidate{min-height:60px}.poi-coordinate-candidates{gap:8px}