:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--p-bg:#f3f6f1;--p-paper:#fff;--p-forest:#0f2f22;--p-deep:#09261b;--p-green:#1b6848;--p-lime:#b8d762;--p-orange:#ed7b16;--p-blue:#2f6fe0;--p-red:#c84a43;--p-muted:#65736c;--p-line:#dfe6df;--p-soft:#eaf1e8;--p-shadow:0 18px 55px #0f2f2217}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--p-bg);color:var(--p-forest);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}img,svg{display:block}:focus-visible{outline:3px solid var(--p-orange);outline-offset:3px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.portal-shell{min-height:100vh}.portal-sidebar{z-index:20;background:var(--p-deep);color:#fff;flex-direction:column;width:270px;padding:34px 22px 24px;display:flex;position:fixed;inset:0 auto 0 0}.portal-logo{width:168px;height:auto;margin:0 12px 42px}.portal-sidebar-label{color:#a5c2b4;letter-spacing:.15em;text-transform:uppercase;margin:0 14px 12px;font-size:12px;font-weight:800}.portal-sidebar nav{gap:8px;display:grid}.portal-sidebar nav a{color:#c9d8d0;border-radius:16px;align-items:center;gap:15px;min-height:58px;padding:0 16px;font-weight:720;text-decoration:none;display:flex}.portal-sidebar nav a svg{width:22px}.portal-sidebar nav a:hover{color:#fff;background:#ffffff12}.portal-sidebar nav a[aria-current=page]{box-shadow:inset 4px 0 var(--p-lime);color:#fff;background:#244c39}.portal-sidebar footer{border-top:1px solid #ffffff21;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;margin-top:auto;padding:18px 4px 0;display:grid}.portal-sidebar footer strong,.portal-sidebar footer small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.portal-sidebar footer small{color:#a5c2b4;margin-top:4px;font-size:12px}.portal-sidebar footer button,.portal-mobile-header button{color:#fff;cursor:pointer;background:#ffffff14;border:0;border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.portal-sidebar footer button svg{width:20px}.portal-avatar{background:var(--p-lime);width:44px;height:44px;color:var(--p-deep);border-radius:50%;place-items:center;font-weight:850;display:grid}.portal-avatar.large{width:76px;height:76px;font-size:30px}.portal-content{width:min(1240px,100% - 330px);margin-left:300px;padding:64px 30px 100px}.portal-mobile-header{display:none}.portal-page-head{max-width:780px;margin-bottom:34px}.portal-page-head.detail{margin-bottom:26px}.portal-kicker{color:var(--p-green);letter-spacing:.15em;text-transform:uppercase;margin-bottom:10px;font-size:12px;font-weight:850;display:block}.portal-kicker.light{color:#b8d5c7}.portal-page-head h1,.portal-login h1,.portal-dog-detail-head h1{letter-spacing:-.055em;margin:0;font-size:clamp(42px,5vw,68px);line-height:1.02}.portal-page-head p{color:var(--p-muted);margin:14px 0 0;font-size:19px;line-height:1.55}.portal-back{border:1px solid var(--p-line);cursor:pointer;background:#fff;border-radius:14px;align-items:center;gap:9px;min-height:50px;margin:0 0 28px;padding:0 17px;font-weight:750;display:inline-flex}.portal-back:hover{border-color:#a8b9ae}.portal-back svg{width:19px}.portal-boot{place-items:center;min-height:100vh;display:grid}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.portal-notice{background:#edf5e9;border:1px solid #c7d9c5;border-radius:20px;grid-template-columns:54px 1fr auto;align-items:center;gap:18px;margin:0 0 34px;padding:22px;display:grid}.portal-notice.compact{padding:17px 20px}.portal-notice-icon{width:54px;height:54px;color:var(--p-green);background:#fff;border-radius:16px;place-items:center;display:grid}.portal-notice strong{font-size:17px}.portal-notice p{color:#52665a;margin:4px 0 0;line-height:1.5}.portal-notice-app{white-space:nowrap;background:#dfead9;border-radius:12px;align-items:center;gap:8px;padding:10px 13px;font-size:13px;font-weight:750;display:flex}.portal-metrics{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:52px;display:grid}.portal-metric{border:1px solid var(--p-line);text-align:left;background:#fff;border-radius:22px;min-height:155px;padding:22px;display:grid;position:relative;box-shadow:0 9px 30px #0f2f220d}button.portal-metric{cursor:pointer}button.portal-metric:hover{border-color:#adc3b4;transform:translateY(-2px)}.portal-metric>span{background:var(--p-soft);width:44px;height:44px;color:var(--p-green);border-radius:14px;place-items:center;display:grid;position:absolute;top:20px;right:20px}.portal-metric>span svg{width:21px}.portal-metric strong{align-self:end;font-size:35px;line-height:1}.portal-metric small{color:var(--p-muted);margin-top:6px;font-size:14px}.portal-section-head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px;display:flex}.portal-section-head h2{letter-spacing:-.04em;margin:0;font-size:30px}.portal-section-head button{border:1px solid var(--p-line);cursor:pointer;background:#fff;border-radius:13px;min-height:48px;padding:0 17px;font-weight:750}.portal-track-list{gap:12px;display:grid}.portal-track-list.roomy{gap:16px}.portal-track-card{border:1px solid var(--p-line);text-align:left;cursor:pointer;background:#fff;border-radius:20px;grid-template-columns:52px 1fr auto 24px;align-items:center;gap:16px;width:100%;min-height:112px;padding:18px;display:grid;box-shadow:0 8px 26px #0f2f220a}.portal-track-card:hover{border-color:#a9bdaf;box-shadow:0 12px 34px #0f2f2214}.portal-card-icon{background:var(--p-soft);width:52px;height:52px;color:var(--p-green);border-radius:15px;place-items:center;display:grid}.portal-track-main{gap:5px;min-width:0;display:grid}.portal-track-main>small{color:var(--p-muted)}.portal-track-main>strong{text-overflow:ellipsis;white-space:nowrap;font-size:19px;overflow:hidden}.portal-track-main>span{color:var(--p-muted);align-items:center;gap:6px;font-size:14px;display:flex}.portal-track-facts{text-align:right;gap:5px;min-width:105px;display:grid}.portal-track-facts b{font-size:18px}.portal-track-facts small{color:var(--p-muted)}.portal-state{min-height:360px;color:var(--p-muted);text-align:center;align-content:center;place-items:center;gap:10px;padding:30px;display:grid}.portal-state.compact{border:1px dashed #bdc9c0;border-radius:20px;min-height:180px}.portal-state>svg{width:35px;height:35px;color:var(--p-green)}.portal-state strong{color:var(--p-forest);font-size:20px}.portal-state button{background:var(--p-forest);color:#fff;cursor:pointer;border:0;border-radius:14px;align-items:center;gap:8px;min-height:50px;margin-top:8px;padding:0 18px;font-weight:750;display:flex}.portal-spinner{animation:1s linear infinite portal-spin}@keyframes portal-spin{to{transform:rotate(360deg)}}.portal-empty-inline{color:var(--p-muted);text-align:center;border:1px dashed #bdc9c0;border-radius:18px;padding:30px}.portal-search{border:1px solid var(--p-line);background:#fff;border-radius:17px;align-items:center;gap:12px;max-width:680px;min-height:58px;margin:28px 0;padding:0 18px;display:flex}.portal-search svg{width:21px;color:var(--p-muted)}.portal-search input{width:100%;height:54px;color:var(--p-forest);border:0;outline:0;font-size:16px}.portal-login{background:#fff;grid-template-columns:minmax(480px,.9fr) 1.1fr;min-height:100vh;display:grid}.portal-login-card{flex-direction:column;justify-content:center;align-items:flex-start;max-width:610px;padding:70px clamp(36px,7vw,110px);display:flex}.portal-login-card>a img{width:180px;margin-bottom:70px}.portal-login h1{font-size:clamp(48px,5vw,72px)}.portal-login-lead{max-width:520px;color:var(--p-muted);margin:22px 0 30px;font-size:19px;line-height:1.55}.portal-google-login{width:100%;min-height:60px}.portal-google-login>div{min-height:48px}.portal-google-login p{color:var(--p-red);font-weight:650}.portal-login-privacy{color:var(--p-muted);align-items:center;gap:8px;font-size:13px;display:flex}.portal-back-link{color:var(--p-green);margin-top:32px;font-weight:750}.portal-login-benefits{color:#fff;background:linear-gradient(145deg,#123b2a,#09251a);flex-direction:column;justify-content:center;padding:80px clamp(50px,8vw,130px);display:flex}.portal-login-benefits h2{letter-spacing:-.055em;max-width:630px;margin:0;font-size:clamp(42px,5vw,70px);line-height:1.04}.portal-login-benefits ul{gap:28px;max-width:600px;margin:52px 0 0;padding:0;list-style:none;display:grid}.portal-login-benefits li{grid-template-columns:54px 1fr;align-items:center;gap:18px;display:grid}.portal-login-benefits li>svg{width:54px;height:54px;color:var(--p-lime);background:#ffffff1a;border-radius:16px;padding:15px}.portal-login-benefits li strong,.portal-login-benefits li span{display:block}.portal-login-benefits li strong{margin-bottom:5px;font-size:18px}.portal-login-benefits li span{color:#bfd1c7;line-height:1.5}.portal-dog-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.portal-dog-card{border:1px solid var(--p-line);box-shadow:var(--p-shadow);text-align:left;cursor:pointer;background:#fff;border-radius:24px;padding:0;overflow:hidden}.portal-dog-card:hover{border-color:#a3b8aa;transform:translateY(-2px)}.portal-dog-card>header{grid-template-columns:66px 1fr 24px;align-items:center;gap:16px;padding:26px;display:grid}.portal-dog-avatar{background:var(--p-soft);width:66px;height:66px;color:var(--p-green);border-radius:20px;place-items:center;display:grid}.portal-dog-avatar.large{border-radius:26px;width:94px;height:94px}.portal-dog-avatar.large svg{width:42px;height:42px}.portal-dog-card h2{letter-spacing:-.04em;margin:3px 0 5px;font-size:27px}.portal-dog-card p,.portal-dog-card small{color:var(--p-muted);margin:0}.portal-dog-stats{border-block:1px solid var(--p-line);background:#f9fbf8;grid-template-columns:repeat(3,1fr);display:grid}.portal-dog-stats span{min-height:85px;color:var(--p-muted);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:12px;font-size:13px;display:flex}.portal-dog-stats span+span{border-left:1px solid var(--p-line)}.portal-dog-stats svg{width:17px;color:var(--p-green)}.portal-dog-stats b{color:var(--p-forest);font-size:18px}.portal-dog-card>footer{min-height:58px;color:var(--p-muted);padding:18px 26px;font-size:13px}.portal-dog-detail-head{align-items:center;gap:24px;margin-bottom:30px;display:flex}.portal-dog-detail-head p{color:var(--p-muted);margin:8px 0;font-size:18px}.portal-levels{color:var(--p-green);font-size:14px;font-weight:750}.portal-detail-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.portal-detail-card{border:1px solid var(--p-line);background:#fff;border-radius:22px;padding:24px}.portal-detail-card>header{grid-template-columns:42px 1fr auto;align-items:center;gap:12px;display:grid}.portal-detail-card>header span{background:var(--p-soft);width:42px;height:42px;color:var(--p-green);border-radius:13px;place-items:center;display:grid}.portal-detail-card h2{margin:0;font-size:21px}.portal-detail-card>header b{background:var(--p-soft);border-radius:999px;place-items:center;min-width:30px;height:30px;font-size:13px;display:grid}.portal-detail-card ul{margin:20px 0 0;padding:0;list-style:none}.portal-detail-card li{border-top:1px solid var(--p-line);justify-content:space-between;gap:18px;padding:14px 0;display:flex}.portal-detail-card li strong,.portal-detail-card li span{display:block}.portal-detail-card li span,.portal-detail-card time,.portal-detail-empty{color:var(--p-muted);font-size:13px}.portal-detail-empty{margin:22px 0 2px}.portal-map-card{border:1px solid var(--p-line);box-shadow:var(--p-shadow);background:#fff;border-radius:24px;padding:24px}.portal-map-card>header{justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px;display:flex}.portal-map-card h2{margin:0;font-size:29px}.portal-map-card label{color:var(--p-muted);gap:5px;font-size:12px;font-weight:700;display:grid}.portal-map-card select{border:1px solid var(--p-line);background:#fff;border-radius:12px;min-height:48px;padding:0 38px 0 13px}.portal-map-wrap{position:relative}.portal-track-map,.portal-map-empty{background:#eef1ee;border-radius:18px;min-height:570px;overflow:hidden}.portal-map-empty{color:var(--p-muted);text-align:center;place-items:center;padding:30px;display:grid}.portal-map-loading{background:#fff;border-radius:12px;padding:12px 16px;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.portal-map-layers{flex-wrap:wrap;gap:10px;padding-top:14px;display:flex}.portal-map-layers button{border:1px solid var(--p-line);cursor:pointer;background:#fff;border-radius:13px;align-items:center;gap:9px;min-height:48px;padding:0 12px;display:flex}.portal-map-layers button>i{border-radius:3px;width:19px;height:5px}.portal-map-layers i.green{background:var(--p-green)}.portal-map-layers i.blue{background:var(--p-blue)}.portal-map-layers i.orange{background:var(--p-orange);height:12px}.portal-map-layers button>b{background:#a9b5ae;border-radius:999px;width:34px;height:20px;padding:3px}.portal-map-layers button>b:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;display:block}.portal-map-layers button[aria-checked=true]>b{background:var(--p-green)}.portal-map-layers button[aria-checked=true]>b:after{margin-left:14px}.portal-fact-grid{grid-template-columns:repeat(6,1fr);gap:12px;margin:18px 0;display:grid}.portal-fact{border:1px solid var(--p-line);background:#fff;border-radius:18px;min-height:120px;padding:17px;display:grid}.portal-fact>span{color:var(--p-green)}.portal-fact small{color:var(--p-muted);align-self:end}.portal-fact strong{margin-top:3px}.portal-search-summary{background:var(--p-deep);color:#fff;border-radius:22px;align-items:center;gap:24px;padding:24px;display:flex}.portal-search-summary>div{margin-right:auto}.portal-search-summary h2{margin:0;font-size:25px}.portal-search-summary p{color:#b8cbc1;margin:6px 0 0}.portal-search-summary>span{color:#cbd9d2;background:#ffffff14;border-radius:14px;min-width:115px;padding:14px;font-size:13px}.portal-search-summary>span strong{color:#fff;font-size:25px;display:block}.portal-profile-card{border:1px solid var(--p-line);max-width:850px;box-shadow:var(--p-shadow);background:#fff;border-radius:26px;padding:30px}.portal-profile-card>header{border-bottom:1px solid var(--p-line);align-items:center;gap:20px;padding-bottom:26px;display:flex}.portal-profile-card h2{margin:0;font-size:31px}.portal-profile-card p{color:var(--p-muted);margin:5px 0 0}.portal-profile-card dl{margin:0}.portal-profile-card dl>div{border-bottom:1px solid var(--p-line);justify-content:space-between;align-items:center;gap:20px;min-height:72px;display:flex}.portal-profile-card dt{color:var(--p-muted);align-items:center;gap:11px;display:flex}.portal-profile-card dt svg{width:19px;color:var(--p-green)}.portal-profile-card dd{margin:0;font-weight:700}.portal-profile-card>footer{background:var(--p-soft);border-radius:16px;gap:14px;margin-top:24px;padding:18px;display:flex}.portal-profile-card>footer span,.portal-profile-card>footer strong{display:block}.portal-profile-card>footer span{color:var(--p-muted);font-size:14px}.portal-profile-card>footer strong{color:var(--p-forest);margin-bottom:3px}@media (width<=1080px){.portal-metrics{grid-template-columns:repeat(2,1fr)}.portal-fact-grid{grid-template-columns:repeat(3,1fr)}.portal-login{grid-template-columns:1fr}.portal-login-card{max-width:none;min-height:100vh}.portal-login-benefits{display:none}}@media (width<=780px){.portal-mobile-header{z-index:18;background:var(--p-deep);justify-content:space-between;align-items:center;height:74px;padding:0 18px;display:flex;position:sticky;top:0}.portal-mobile-header img{width:145px}.portal-sidebar{z-index:30;width:min(320px,88vw);transition:transform .2s;transform:translate(-105%);box-shadow:20px 0 60px #00000040}.portal-sidebar.open{transform:translate(0)}.portal-nav-backdrop{z-index:25;background:#00000073;border:0;position:fixed;inset:0}.portal-content{width:100%;margin:0;padding:38px 18px 80px}.portal-page-head h1,.portal-dog-detail-head h1{font-size:42px}.portal-notice{grid-template-columns:46px 1fr}.portal-notice-icon{width:46px;height:46px}.portal-notice-app{grid-column:2;justify-self:start}.portal-dog-grid,.portal-detail-grid{grid-template-columns:1fr}.portal-track-map,.portal-map-empty{min-height:470px}.portal-map-card{margin-inline:-8px;padding:14px}.portal-fact-grid{grid-template-columns:repeat(2,1fr)}.portal-search-summary{flex-wrap:wrap;align-items:stretch}.portal-search-summary>div{flex-basis:100%}}@media (width<=520px){.portal-page-head h1,.portal-dog-detail-head h1{font-size:36px}.portal-page-head p{font-size:17px}.portal-metrics{gap:10px}.portal-metric{min-height:130px;padding:17px}.portal-metric>span{width:38px;height:38px;top:14px;right:14px}.portal-metric strong{font-size:28px}.portal-notice{text-align:left;grid-template-columns:1fr}.portal-notice-app{grid-column:1}.portal-track-card{grid-template-columns:46px 1fr 20px;gap:12px;min-height:120px;padding:14px}.portal-card-icon{width:46px;height:46px}.portal-track-facts{text-align:left;grid-area:2/2;gap:10px;display:flex}.portal-track-card>svg{grid-area:1/3/3}.portal-section-head{align-items:start}.portal-section-head button{min-width:110px}.portal-dog-card>header{grid-template-columns:56px 1fr 20px;padding:20px}.portal-dog-avatar{width:56px;height:56px}.portal-dog-stats{grid-template-columns:1fr}.portal-dog-stats span{justify-content:flex-start;min-height:58px;padding:12px 22px}.portal-dog-stats span+span{border-top:1px solid var(--p-line);border-left:0}.portal-dog-detail-head{align-items:flex-start}.portal-dog-avatar.large{border-radius:19px;width:64px;height:64px}.portal-dog-avatar.large svg{width:30px;height:30px}.portal-map-card>header{flex-direction:column;align-items:start}.portal-track-map,.portal-map-empty{min-height:390px}.portal-map-layers{grid-template-columns:1fr;display:grid}.portal-map-layers button{justify-content:flex-start}.portal-map-layers button>b{margin-left:auto}.portal-fact-grid{grid-template-columns:1fr 1fr;gap:8px}.portal-fact{min-height:105px;padding:13px}.portal-search-summary>span{flex:1;min-width:125px}.portal-profile-card{padding:20px}.portal-profile-card>header{align-items:flex-start}.portal-avatar.large{width:58px;height:58px;font-size:23px}.portal-profile-card dl>div{flex-direction:column;justify-content:center;align-items:flex-start;gap:6px;padding:14px 0}.portal-login-card{padding:36px 24px}.portal-login-card>a img{width:150px;margin-bottom:55px}.portal-login h1{font-size:44px}}
