@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(../media/08f3d05b771d66cc-s.14e8a2c5.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(../media/413670c8b897121b-s.p.0824205a.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(../media/72b93e0389b54497-s.2b795e3d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ab8c2f9dfe50fb3c-s.p.965f1cd0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:500;font-display:swap;src:url(../media/57f2d0e8dd065b18-s.75f780da.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:500;font-display:swap;src:url(../media/966a1ae9b0187c65-s.p.930a8de6.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:500;font-display:swap;src:url(../media/25d906941e607a44-s.03677ff4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:500;font-display:swap;src:url(../media/666deae7c569669f-s.p.666a1a68.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:600;font-display:swap;src:url(../media/cce0da533fe89a78-s.6e59fc4f.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:600;font-display:swap;src:url(../media/411573def610439a-s.p.b7d92953.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0f35197ba25d2b5b-s.d7eb3b20.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e4b5e1d5de235207-s.p.c98ad417.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:700;font-display:swap;src:url(../media/cdf71b3840042aba-s.682c261b.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:700;font-display:swap;src:url(../media/86fee4a10e2832ea-s.p.ad7a5276.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b1ef0ab36ab59f4e-s.34907d07.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9fdf3a539c009271-s.p.08dddbec.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Thai Fallback;src:local(Arial);ascent-override:110.31%;descent-override:52.78%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_thai_14848709-module__6e-3XG__className{font-family:IBM Plex Sans Thai,IBM Plex Sans Thai Fallback;font-style:normal}.ibm_plex_sans_thai_14848709-module__6e-3XG__variable{--font-ibm-plex-sans-thai:"IBM Plex Sans Thai","IBM Plex Sans Thai Fallback"}
.portal{background:var(--colorOne);flex-direction:column;justify-content:center;align-items:center;height:100vh;padding:24px 16px 0;display:flex;position:relative;overflow:hidden}.portal-content{flex-direction:column;align-items:center;width:100%;max-width:400px;height:100%;padding:0 25px;display:flex}.portal-logo{object-fit:contain;width:auto;height:120px;margin-top:20px;margin-bottom:20px}.portal-tagline{color:#ffffffd9;font-size:15px}.portal-actions{flex-direction:column;gap:12px;width:100%;display:flex}.portal-action-card{text-align:center;background:#fff;border:3px solid #000;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:4px;height:120px;padding:20px 16px;transition:border-color .15s,box-shadow .15s;display:flex}.portal-action-card:hover{border-color:#ff3738;box-shadow:0 2px 8px #ff37381a}.portal-action-card__dark{background:#000;border-color:#0000;height:60px}.portal-action-card__dark span{color:#fff}.portal-action-icon{font-size:32px;line-height:1}.portal-action-label{color:#000;font-size:20px;font-weight:700}.portal-action-desc{color:#a0aec0;font-size:13px}.portal-footer-text{color:#fff9;text-align:center;flex-direction:column;align-items:center;gap:4px;padding:16px 0;font-size:11px;display:flex}.portal-bottom{pointer-events:none;width:100%;max-width:400px;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.portal-footer-link{text-decoration:underline}.portal-paws{object-fit:contain;width:80%;height:auto;margin:auto;display:block}.map-page{height:100vh;font-family:var(--font-ibm-plex-sans-thai),sans-serif;flex-direction:column;display:flex}.map-page-mobile-header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.map-page-back-home{color:var(--colorOne);padding:4px 8px;font-size:20px;display:flex}.map-page-filter-button,.map-page-user-button{color:var(--colorOne);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px 8px;display:flex}.map-page-map-panel{flex:1;min-height:0;position:relative}.map-page-sidebar{background:#fff;border-top:1px solid #e2e8f0;flex-direction:column;gap:10px;height:40vh;padding:12px;display:flex;overflow:hidden}.map-page-sidebar-header{display:none}.map-page-logo{object-fit:contain;width:auto;height:60px}.map-page-report-button-desktop{color:#fff;background:#ff3738;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;transition:background .15s}.map-page-card-list{flex-direction:column;flex:1;gap:8px;display:flex;overflow-y:auto}.map-page-empty{text-align:center;color:#a0aec0;padding:40px 0;font-size:14px}@media (min-width:769px){.map-page{flex-direction:row}.map-page-mobile-header{display:none}.map-page-map-panel{flex:1}.map-page-sidebar{border-top:none;border-left:1px solid #e2e8f0;gap:12px;width:380px;height:auto;padding:16px}.map-page-sidebar-header{justify-content:space-between;align-items:center;display:flex}}.create-page{background:#fff;min-height:100vh;overflow-y:auto}.create-top-bar{background:var(--colorTwo);padding:40px 0 0;position:relative}.create-top-bar-inner{max-width:600px;margin:0 auto;padding:0 25px 40px}.create-top-bar-curve{background:#fff;border-radius:40px 40px 0 0;height:40px}.create-container{max-width:600px;margin:0 auto;padding:0 41px 40px}.create-back-link{color:#fffc;margin-bottom:24px;font-size:13px;display:inline-block}.create-back-link:hover{text-decoration:underline}.create-heading{color:#fff;text-align:center;font-size:24px;font-weight:700}.pet-card{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;background:#fff;border:1px solid #e2e8f0;border-radius:8px;gap:12px;padding:12px;transition:border-color .15s,box-shadow .15s;display:flex}.pet-card:hover{border-color:#a0aec0}.pet-card.selected{border-color:#ff3738;box-shadow:0 0 0 2px #3182ce4d}.pet-card-image-wrapper{background:#f7fafc;border-radius:6px;flex-shrink:0;width:90px;height:90px;position:relative;overflow:hidden}.pet-card-image{object-fit:cover}.pet-card-placeholder{color:#a0aec0;justify-content:center;align-items:center;width:100%;height:100%;font-size:12px;display:flex}.pet-card-info{flex-direction:column;gap:4px;min-width:0;display:flex}.pet-card-header{align-items:center;gap:8px;display:flex}.pet-card-title{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;overflow:hidden}.pet-card-badge{text-transform:uppercase;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:11px;font-weight:600}.pet-card-badge-lost{color:#e53e3e;background:#fff5f5}.pet-card-badge-found{color:#38a169;background:#f0fff4}.pet-card-detail{color:#718096;font-size:12px}.pet-card-location{color:#718096;font-size:13px}.pet-card-time{color:#a0aec0;font-size:12px}.pet-card-contact{color:#4a5568;font-size:13px}
.create-form{flex-direction:column;gap:16px;display:flex}.create-row{gap:12px;display:flex}.create-row>*{flex:1}.create-label{color:#4a5568;flex-direction:column;gap:4px;font-size:13px;font-weight:600;display:flex}.create-input,.create-select,.create-textarea{border:var(--borderTwo);color:#1a202c;background:#f0edff;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:14px}.create-input::placeholder,.create-textarea::placeholder{color:#7292bc}.create-input:focus,.create-select:focus,.create-textarea:focus{border-color:#ff3738;outline:none;box-shadow:0 0 0 2px #3182ce33}.create-textarea{resize:vertical}.create-error{color:#e53e3e;font-size:13px}.create-submit{color:#fff;cursor:pointer;background:#ff3738;border:none;border-radius:8px;padding:12px;font-size:15px;font-weight:600;transition:background .15s}.create-submit:hover{background:#2b6cb0}.create-submit:disabled{cursor:not-allowed;background:#a0aec0}.create-locate-button{color:#ff3738;cursor:pointer;background:#edf2f7;border:1px solid #e2e8f0;border-radius:6px;padding:4px 12px;font-size:12px;font-weight:500;transition:background .15s}.create-locate-button:hover{background:#e2e8f0}.create-locate-button:disabled{color:#a0aec0;cursor:not-allowed}
.map-marker{cursor:pointer;filter:drop-shadow(0 1px 3px #0000004d);transition:transform .15s}.map-marker:hover,.map-marker.selected{transform:scale(1.3)}.map-marker-lost{color:#e53e3e}.map-marker-found{color:#38a169}.create-map-header{justify-content:space-between;align-items:center;display:flex}.create-map-wrapper{border:1px solid #e2e8f0;border-radius:8px;height:300px;margin-top:4px;overflow:hidden}.create-map-loading{color:#a0aec0;background:#f7fafc;justify-content:center;align-items:center;width:100%;height:100%;font-size:13px;display:flex}.create-pin{background:#ff3738;border:3px solid #fff;border-radius:50%;width:20px;height:20px;box-shadow:0 1px 4px #0000004d}
.filter-bar{gap:8px;display:flex}.filter-button{cursor:pointer;color:#4a5568;background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:6px 16px;font-size:13px;font-weight:500;transition:all .15s}.filter-button:hover{background:#f7fafc}.filter-button.active{color:#fff;background:#2d3748;border-color:#2d3748}

.loading-screen{background:var(--colorOne);z-index:100;flex-direction:column;justify-content:center;align-items:center;animation:.5s 2.5s forwards loading-fade-out;display:flex;position:fixed;inset:0}.loading-logo{object-fit:contain;width:auto;height:40px;animation:1.5s ease-in-out infinite loading-pulse}.loading-text{color:#ffffffb3;margin-top:16px;font-size:14px}@keyframes loading-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.96)}}@keyframes loading-fade-out{to{opacity:0;pointer-events:none}}.portal-fade-in{opacity:0;animation:.4s 2.8s forwards fade-in}@keyframes fade-in{to{opacity:1}}

:root{--background:#f7fafc;--foreground:#1a202c;--colorOne:#f55f36;--colorTwo:#6148fc;--borderOne:3px solid black;--borderTwo:2px solid var(--colorTwo)}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;height:100%;overflow-x:hidden}body{color:var(--foreground);background:var(--background);font-family:var(--font-ibm-plex-sans-thai),sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}
