@font-face{font-family:Onest;src:url('/family-space-ui/assets/Onest-variable.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--app-ink:#20334a;--app-secondary:#36516d;--app-blue:#1765ef;--app-line:#dce6ef;--app-paper:#f5f7f8;--app-radius:12px}
html.unified-local-ui{--ink:var(--app-ink);--muted:var(--app-secondary);--blue:var(--app-blue);--line:var(--app-line);--bg:var(--app-paper);font-family:Onest,Arial,sans-serif;color:var(--app-ink);scrollbar-gutter:stable}
.unified-local-ui body{font-family:Onest,Arial,sans-serif!important;color:var(--app-ink)!important;background:var(--app-paper);border-top:0;line-height:1.55}
.unified-local-ui button,.unified-local-ui input,.unified-local-ui textarea,.unified-local-ui select{font-family:Onest,Arial,sans-serif!important}
.unified-local-ui :is(.muted,.meta,.fine,.fineprint,.subtitle,.detail,.intro,.section-intro,.lead){color:var(--app-secondary)!important}
.unified-local-ui :is(input,textarea)::placeholder{color:var(--app-secondary)!important;opacity:1}
.unified-local-ui :is(button,a,input,textarea,select):focus-visible{outline:2px solid var(--app-blue);outline-offset:3px}
.unified-local-ui [hidden]{display:none!important}
.unified-tool-page body{font-size:14px!important}
.unified-tool-page main{width:min(1200px,100%);max-width:1200px;margin:28px auto;padding:0 24px 48px;min-width:0}
.unified-tool-page h1{font-size:28px;line-height:1.25;font-weight:550;letter-spacing:-.6px;margin:0 0 10px;color:var(--app-ink)}
.unified-tool-page h2{font-size:20px;line-height:1.35;font-weight:550;letter-spacing:-.25px}
.unified-tool-page h3{font-size:16px;line-height:1.4;font-weight:550}
.unified-tool-page :is(.lead,.intro){font-size:15px;line-height:1.65;max-width:760px;margin:8px 0 24px}
.unified-tool-page .page-heading{margin:0 0 24px;background:none;padding:0;border:0;display:block}
.unified-tool-page .page-heading>a{display:inline-flex;font-size:13px;margin-top:10px;color:var(--app-blue)}
.unified-tool-page :is(.panel,.state-card,.card,main>section):not(.map-panel){border:1px solid var(--app-line);border-radius:var(--app-radius);background:#fff;box-shadow:0 2px 8px #20334a04}
.unified-tool-page :is(.panel,.state-card){padding:22px}
.unified-tool-page :is(button,.primary,.secondary):not(.leaflet-control):not(.leaflet-control *):not(.drevo-site-header *){font-size:14px;line-height:1.35;min-height:38px;max-width:100%;border-radius:999px;padding:9px 16px;border:1px solid var(--app-line);background:#fff;color:var(--app-ink);font-weight:450;cursor:pointer}
.unified-tool-page :is(button.primary,a.primary,button[type=submit]:not(.secondary)){background:var(--app-blue);border-color:var(--app-blue);color:#fff}
.unified-tool-page button:hover:not(:disabled){border-color:#abc8ed;background:#f2f7ff}
.unified-tool-page :is(button.primary,button[type=submit]:not(.secondary)):hover:not(:disabled){background:#0756d7;color:#fff}
.unified-tool-page button:disabled{opacity:.65;cursor:wait}
.unified-tool-page button[aria-pressed=true]{border-color:#97baf1;color:var(--app-blue);background:#edf4ff}
.unified-tool-page :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color]){font-size:14px!important;line-height:1.5;color:var(--app-ink)!important;min-height:42px;border:1px solid #cedce9!important;border-radius:8px!important;background:#fff;padding:10px 12px!important;max-width:100%;box-sizing:border-box}
.unified-tool-page :is(input,select,textarea):hover{border-color:#adc9ec!important}
.unified-tool-page :is(input,select,textarea):focus-visible{outline:0;border-color:var(--app-blue)!important;box-shadow:0 0 0 3px #1765ef24}
.unified-tool-page :is(input[type=checkbox],input[type=radio]){accent-color:var(--app-blue);width:18px;min-height:18px;flex:none}
.unified-tool-page label{font-size:13px;line-height:1.5}
.unified-tool-page :is(input,textarea,select){font-weight:450!important}
.unified-tool-page form button:not([type]):not(.secondary){background:var(--app-blue);border-color:var(--app-blue);color:#fff}
.unified-tool-page main>nav>span{display:none}
.unified-tool-page .map-panel{padding:0}
.unified-tool-page dialog{border:1px solid var(--app-line);border-radius:16px;color:var(--app-ink);font-family:Onest,Arial,sans-serif;max-width:calc(100vw - 32px);box-shadow:0 20px 80px #20334a26}
.unified-tool-page dialog::backdrop{background:#162a4159}
.unified-tool-page :is(.error,[role=alert]){color:#9d303d;border-radius:8px}
.unified-tool-page :is(.empty,.family-status){font-size:14px;color:var(--app-secondary);line-height:1.65}
.unified-tool-page .eyebrow{color:var(--app-secondary);font-weight:500}
.unified-tool-page .toolbar{margin-bottom:20px;gap:14px}
.unified-tool-page .row{border-color:var(--app-line);gap:14px}
.unified-tool-page .row strong{font-size:15px;font-weight:550}
.unified-tool-page .row a{font-size:13px;color:var(--app-blue)}
.unified-tool-page .map-panel{border:1px solid var(--app-line);border-radius:12px;overflow:hidden}
.unified-tool-page .explorer{margin-bottom:18px}
.unified-tool-page .search button{flex-shrink:0}
.unified-tool-page .choices>p{font-size:13px}
.unified-local-session{width:min(440px,calc(100vw - 32px));padding:24px;border:1px solid var(--app-line);border-radius:16px;font-family:Onest,Arial,sans-serif;color:var(--app-ink)}
.unified-local-session h2{margin-top:0}.unified-local-session p{font-size:14px;color:var(--app-secondary)}.unified-local-session .actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
@media(prefers-reduced-motion:reduce){.unified-local-ui *{scroll-behavior:auto!important}}

.unified-embedded body{background:#fff!important}.unified-embedded main{margin-top:0;padding-top:12px}
@media(max-width:760px){.unified-tool-page main{margin:20px auto;padding:0 16px 32px}.unified-tool-page h1{font-size:25px}.unified-tool-page h2{font-size:19px}.unified-tool-page :is(.panel,.state-card){padding:18px}.unified-tool-page .map-panel{padding:0}.unified-tool-page .row{align-items:stretch}.unified-tool-page .row button{align-self:flex-start}.unified-tool-page .search{flex-wrap:wrap}.unified-tool-page .search input{min-width:0;flex:1 1 180px}.unified-tool-page .layout>*{min-width:0}.unified-tool-page .controls>*{min-width:0;max-width:100%}}
