/*
 * Skograpport Forest Platform 2.4.0
 * Product UI rebuilt as a dedicated forestry workspace. No wp-admin styling.
 */
:root {
	--sfp-ink:#0a1713;
	--sfp-ink-2:#10231d;
	--sfp-ink-3:#173128;
	--sfp-green:#1f6c4c;
	--sfp-green-2:#2f8a61;
	--sfp-mint:#74d6a4;
	--sfp-lime:#a8e6bf;
	--sfp-paper:#f4f6f2;
	--sfp-panel:#ffffff;
	--sfp-line:#d8dfda;
	--sfp-line-dark:rgba(255,255,255,.14);
	--sfp-muted:#65716c;
	--sfp-muted-dark:#a9b7b0;
	--sfp-danger:#aa3131;
	--sfp-warning:#99641d;
	--sfp-shadow:0 18px 50px rgba(6,24,18,.10);
	--sfp-sidebar:216px;
	--sfp-max:1440px;
}

*{box-sizing:border-box}
html{min-height:100%;background:var(--sfp-paper);scroll-behavior:smooth}
body{margin:0;min-width:320px;min-height:100vh;background:var(--sfp-paper);color:var(--sfp-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}
body.sfp-route,body.home{overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button,a{touch-action:manipulation}
img,svg{display:block;max-width:100%}
button{cursor:pointer}

/* Brand + language */
.sfp-brand{display:inline-flex;align-items:center;gap:11px;min-width:0}
.sfp-brand__mark{display:grid;place-items:center;width:35px;height:35px;flex:0 0 35px;color:#fff}
.sfp-brand__mark svg{width:31px;height:31px}
.sfp-brand__copy{display:grid;gap:1px;min-width:0;line-height:1}
.sfp-brand__copy strong{font-size:13px;letter-spacing:-.01em;white-space:nowrap}
.sfp-brand__copy small{text-transform:uppercase;font-size:8px;font-weight:800;letter-spacing:.18em;opacity:.66}
.sfp-language{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid rgba(10,23,19,.11);background:rgba(255,255,255,.78);backdrop-filter:blur(14px)}
.sfp-language__item{display:grid;place-items:center;min-width:34px;height:30px;padding:0 8px;font-size:10px;font-weight:800;letter-spacing:.09em;color:#58645f;border-radius:2px}
.sfp-language__item:hover,.sfp-language__item.is-active{background:var(--sfp-ink);color:#fff}

/* =========================================================
 * PUBLIC LANDING — image-led, no card-on-card SaaS framing
 * ======================================================= */
.sfp-landing{min-height:100svh;background:#07130f;color:#fff}
.sfp-landing-stage{position:relative;isolation:isolate;min-height:100svh;padding:0 clamp(22px,4vw,66px) 34px;display:grid;grid-template-rows:auto 1fr auto;background:url('../img/forest-panorama.webp') center 48%/cover no-repeat}
.sfp-landing-stage::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(3,14,10,.77) 0%,rgba(3,14,10,.38) 49%,rgba(3,14,10,.60) 100%)}
.sfp-landing-stage::after{content:"";position:absolute;inset:auto 0 0;z-index:-1;height:48%;background:linear-gradient(180deg,transparent,rgba(2,10,7,.92) 68%,#020906 100%)}
.sfp-landing-stage__shade{position:absolute;inset:0;z-index:-1;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}
.sfp-public-header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:88px;border-bottom:1px solid rgba(255,255,255,.16)}
.sfp-brand--public{color:#fff}
.sfp-brand--public .sfp-brand__mark{width:42px;height:42px;flex-basis:42px}
.sfp-brand--public .sfp-brand__mark svg{width:38px;height:38px}
.sfp-brand--public .sfp-brand__copy strong{font-size:14px}
.sfp-public-header__meta{display:flex;align-items:center;gap:16px}
.sfp-public-header__pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(255,255,255,.18);background:rgba(4,17,12,.26);font-size:11px;font-weight:700;letter-spacing:.02em;backdrop-filter:blur(10px)}
.sfp-public-header__pill i,.sfp-topbar__live i{width:7px;height:7px;border-radius:50%;background:#67d89b;box-shadow:0 0 0 4px rgba(103,216,155,.12)}
.sfp-public-header .sfp-language{border-color:rgba(255,255,255,.18);background:rgba(4,17,12,.22)}
.sfp-public-header .sfp-language__item{color:rgba(255,255,255,.78)}
.sfp-public-header .sfp-language__item:hover,.sfp-public-header .sfp-language__item.is-active{background:#fff;color:var(--sfp-ink)}
.sfp-landing-stage__intro{align-self:center;width:min(760px,100%);margin:40px auto 220px;text-align:center;text-shadow:0 2px 24px rgba(0,0,0,.28)}
.sfp-landing-stage__intro h1{margin:0;font-size:clamp(44px,5.4vw,78px);line-height:.96;letter-spacing:-.055em;font-weight:760}
.sfp-landing-stage__intro p{width:min(680px,100%);margin:25px auto 0;color:rgba(255,255,255,.88);font-size:clamp(16px,1.35vw,20px);line-height:1.65}
.sfp-entry-grid{position:absolute;left:50%;bottom:106px;transform:translateX(-50%);width:min(1120px,calc(100% - 80px));display:grid;grid-template-columns:1fr 1fr;gap:18px}
.sfp-entry-card{position:relative;min-height:198px;overflow:hidden;display:grid;grid-template-columns:40% 60%;border:1px solid rgba(255,255,255,.31);background:#061510;box-shadow:0 16px 42px rgba(0,0,0,.26);transition:transform .2s ease,border-color .2s ease}
.sfp-entry-card:hover{transform:translateY(-3px);border-color:rgba(116,214,164,.82)}
.sfp-entry-card__media{min-height:198px;background-position:center;background-size:cover;filter:saturate(.9) contrast(1.03)}
.sfp-entry-card--contractor .sfp-entry-card__media{background-image:linear-gradient(90deg,rgba(4,16,12,.08),rgba(4,16,12,.58)),url('../img/forest-contractor.webp');background-position:center 55%}
.sfp-entry-card--owner .sfp-entry-card__media{background-image:linear-gradient(90deg,rgba(4,16,12,.08),rgba(4,16,12,.58)),url('../img/forest-owner.webp');background-position:center 62%}
.sfp-entry-card__content{padding:26px 28px 22px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(90deg,rgba(7,26,19,.98),rgba(7,26,19,.94))}
.sfp-entry-card__heading{display:flex;align-items:center;gap:12px}
.sfp-entry-card__icon{display:grid;place-items:center;width:34px;height:34px;color:var(--sfp-mint);flex:0 0 34px}
.sfp-entry-card__icon svg{width:28px;height:28px}
.sfp-entry-card h2{margin:0;font-size:24px;line-height:1.15;letter-spacing:-.025em}
.sfp-entry-card p{margin:12px 0 18px;color:rgba(255,255,255,.75);font-size:13px;line-height:1.55}
.sfp-entry-card__action{display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:1px solid rgba(255,255,255,.14);font-size:12px}
.sfp-entry-card__action i{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:var(--sfp-mint);color:#082117;font-style:normal;font-size:18px;transition:transform .2s ease}
.sfp-entry-card:hover .sfp-entry-card__action i{transform:translateX(3px)}
.sfp-feature-strip{align-self:end;display:grid;grid-template-columns:repeat(3,1fr);max-width:1120px;width:100%;margin:0 auto;color:#fff}
.sfp-feature-chip{display:flex;align-items:center;gap:12px;min-height:64px;padding:0 24px;border-right:1px solid rgba(255,255,255,.16)}
.sfp-feature-chip:last-child{border-right:0}
.sfp-feature-chip>span{width:28px;color:var(--sfp-mint);flex:0 0 28px}
.sfp-feature-chip>span svg{width:24px;height:24px}
.sfp-feature-chip div{display:grid;gap:2px}
.sfp-feature-chip strong{font-size:11px}
.sfp-feature-chip small{font-size:10px;color:rgba(255,255,255,.62)}

/* =========================
 * AUTHENTICATION SURFACES
 * ======================= */
.sfp-auth{min-height:100svh;display:grid;grid-template-columns:minmax(360px,1.18fr) minmax(430px,.82fr);background:#07130f}
.sfp-auth__visual{position:relative;isolation:isolate;min-height:100svh;background-size:cover;background-position:center}
.sfp-auth__visual::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(3,14,10,.08),rgba(3,14,10,.67))}
.sfp-auth__visual--contractor{background-image:url('../img/forest-contractor.webp');background-position:center 54%}
.sfp-auth__visual--owner{background-image:url('../img/forest-owner.webp');background-position:center 58%}
.sfp-auth__visual-copy{position:absolute;left:clamp(34px,5vw,82px);right:clamp(34px,6vw,96px);bottom:clamp(36px,6vw,84px);max-width:630px;color:#fff}
.sfp-eyebrow,.sfp-dashboard-intro__kicker,.sfp-card__eyebrow,.sfiopa-section-kicker{display:block;font-size:10px;font-weight:850;letter-spacing:.15em;text-transform:uppercase;color:var(--sfp-green-2)}
.sfp-auth__visual-copy .sfp-eyebrow{color:var(--sfp-mint)}
.sfp-auth__visual-copy h2{margin:10px 0 10px;font-size:clamp(34px,4vw,58px);line-height:1;letter-spacing:-.045em;max-width:620px}
.sfp-auth__visual-copy p{margin:0;max-width:560px;color:rgba(255,255,255,.80);font-size:15px;line-height:1.65}
.sfp-auth__panel{position:relative;min-height:100svh;padding:clamp(34px,5vw,70px) clamp(34px,6vw,90px);display:flex;flex-direction:column;justify-content:center;background:#f9faf7;color:var(--sfp-ink)}
.sfp-auth__panel>.sfp-brand{position:absolute;top:36px;left:clamp(34px,6vw,90px)}
.sfp-auth__panel .sfp-brand__mark{color:var(--sfp-ink)}
.sfp-auth__language{position:absolute;top:34px;right:clamp(34px,6vw,90px)}
.sfp-back-link{display:inline-flex;width:max-content;margin:60px 0 32px;color:#617069;font-size:12px;font-weight:700}
.sfp-back-link:hover{color:var(--sfp-green)}
.sfp-auth__copy h1{margin:0;font-size:34px;line-height:1.1;letter-spacing:-.035em}
.sfp-auth__copy p{margin:10px 0 0;max-width:510px;color:var(--sfp-muted);font-size:13px;line-height:1.65}
.sfp-auth-steps{counter-reset:none;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0;margin:28px 0 20px;padding:0;border-top:1px solid var(--sfp-line);border-bottom:1px solid var(--sfp-line)}
.sfp-auth-steps li{display:flex;align-items:center;gap:9px;min-height:48px;padding:8px 12px 8px 0;color:#7a8580;font-size:11px}
.sfp-auth-steps li+li{padding-left:14px;border-left:1px solid var(--sfp-line)}
.sfp-auth-steps li>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e6ebe7;color:#33413b;font-size:10px;font-weight:800}
.sfp-auth-steps li:first-child>span{background:var(--sfp-green);color:#fff}
.sfp-otp-host{width:100%;max-width:510px}
.sfp-system-message,.sfp-alert{padding:12px 14px;border-left:3px solid var(--sfp-warning);background:#fff7e7;color:#6b4b14;font-size:12px}
.sfp-system-message--error,.sfp-alert--error{border-left-color:var(--sfp-danger);background:#fff1f1;color:#7f2424}
.sfp-alert--ok{border-left-color:var(--sfp-green);background:#eef8f2;color:#16573b}

/* Override generic HR OTP plugin presentation only inside Forest auth. */
.sfp-otp-host .hrotp-wrap{max-width:none;margin:0;padding:0}
.sfp-otp-host .hrotp-card{padding:0;border:0;border-radius:0;box-shadow:none;background:transparent}
.sfp-otp-host .hrotp-card h2{display:none}
.sfp-otp-host .hrotp-sub{margin:0 0 14px;color:var(--sfp-muted);font-size:12px}
.sfp-otp-host .hrotp-form{display:grid;gap:10px;margin:0}
.sfp-otp-host .hrotp-form label{font-size:11px;font-weight:800;color:#34413c}
.sfp-otp-host .hrotp-form input{width:100%;height:47px;padding:0 13px;border:1px solid #cbd4ce;border-radius:3px;background:#fff;color:var(--sfp-ink);font-size:15px;outline:0;box-shadow:none}
.sfp-otp-host .hrotp-form input:focus{border-color:var(--sfp-green);box-shadow:0 0 0 3px rgba(31,108,76,.10)}
.sfp-otp-host .hrotp-form button{height:47px;padding:0 18px;border:0;border-radius:3px;background:var(--sfp-green);color:#fff;font-size:12px;font-weight:800;letter-spacing:.01em}
.sfp-otp-host .hrotp-form button:hover{background:#195e42}
.sfp-otp-host .hrotp-msg{margin:0 0 12px;padding:10px 12px;border-radius:2px;font-size:12px}
.sfp-otp-host .hrotp-note,.sfp-otp-host .hrotp-secondary-actions,.sfp-otp-host .hrotp-resend{font-size:11px;color:var(--sfp-muted)}
.sfp-otp-host .hrotp-fallback-link,.sfp-otp-host a{color:var(--sfp-green);font-weight:700}
.sfp-otp-host .hrotp-lang-wrap{display:none!important}

/* Owner OTP form */
.sfiopa-login{max-width:520px}
.sfiopa-form{display:grid;gap:13px}
.sfiopa-property-grid{display:grid;grid-template-columns:1.5fr repeat(4,.72fr);gap:8px}
.sfiopa-field{display:grid;gap:6px;min-width:0}
.sfiopa-field--wide{grid-column:1/-1}
.sfiopa-field span{font-size:10px;font-weight:800;letter-spacing:.01em;color:#3c4a44}
.sfiopa-field input,.sfiopa-field select{width:100%;height:45px;min-width:0;padding:0 10px;border:1px solid #cbd4ce;border-radius:3px;background:#fff;color:var(--sfp-ink);outline:0}
.sfiopa-field input:focus,.sfiopa-field select:focus{border-color:var(--sfp-green);box-shadow:0 0 0 3px rgba(31,108,76,.10)}
.sfiopa-button{min-height:45px;padding:0 16px;border:0;border-radius:3px;background:var(--sfp-green);color:#fff;font-size:12px;font-weight:800}
.sfiopa-button:hover{background:#195e42}
.sfiopa-button--ghost{width:100%;border:1px solid rgba(255,255,255,.16);background:transparent;color:#d9e4df}
.sfiopa-button--ghost:hover{background:rgba(255,255,255,.07)}
.sfiopa-message{margin:0 0 15px;padding:11px 12px;border-left:3px solid var(--sfp-green);background:#eef7f1;color:#1b583e;font-size:11px}
.sfiopa-message--error{border-left-color:var(--sfp-danger);background:#fff0f0;color:#862a2a}
.sfiopa-note{margin:0;color:var(--sfp-muted);font-size:10.5px;line-height:1.55}
.sfiopa-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px}
.sfiopa-actions form{margin:0}
.sfiopa-link-button{padding:0;border:0;background:none;color:var(--sfp-green);font-size:11px;font-weight:800}

/* =====================================
 * CONTRACTOR APPLICATION SHELL
 * =================================== */
.sfp-app-shell{min-height:100svh;display:grid;grid-template-columns:var(--sfp-sidebar) minmax(0,1fr);background:var(--sfp-paper)}
.sfp-sidebar{position:sticky;top:0;height:100svh;z-index:60;display:flex;flex-direction:column;padding:21px 14px 14px;background:#071712;color:#dce8e2;border-right:1px solid rgba(255,255,255,.08)}
.sfp-sidebar__brand{display:flex;align-items:center;justify-content:space-between;padding:0 5px 19px;border-bottom:1px solid rgba(255,255,255,.10)}
.sfp-brand--sidebar{color:#fff}
.sfp-brand--sidebar .sfp-brand__mark{width:30px;height:30px;flex-basis:30px}
.sfp-brand--sidebar .sfp-brand__mark svg{width:27px;height:27px}
.sfp-brand--sidebar .sfp-brand__copy strong{font-size:11px}
.sfp-brand--sidebar .sfp-brand__copy small{font-size:7px}
.sfp-sidebar__close{display:none;border:0;background:transparent;color:#fff;font-size:24px}
.sfp-sidebar__section-label{margin:22px 10px 8px;color:#6f8379;font-size:8px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
.sfp-sidebar__section-label--secondary{margin-top:22px}
.sfp-nav{display:flex;flex-direction:column;gap:2px;min-height:0;overflow-y:auto}
.sfp-nav__item{position:relative;display:flex;align-items:center;gap:10px;min-height:38px;padding:7px 10px;color:#aebfb7;font-size:11px;border-left:2px solid transparent;transition:background .15s ease,color .15s ease,border-color .15s ease}
.sfp-nav__item>span{width:18px;flex:0 0 18px}
.sfp-nav__item svg{width:17px;height:17px}
.sfp-nav__item b{font-weight:650}
.sfp-nav__item:hover{background:rgba(255,255,255,.05);color:#fff}
.sfp-nav__item.is-active{background:#123328;color:#fff;border-left-color:var(--sfp-mint)}
.sfp-sidebar__footer{display:grid;grid-template-columns:30px minmax(0,1fr) 26px;align-items:center;gap:9px;margin-top:auto;padding:14px 6px 2px;border-top:1px solid rgba(255,255,255,.10)}
.sfp-sidebar__user-avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#264a3c;color:#dff6e9;font-size:10px;font-weight:800}
.sfp-sidebar__user{min-width:0;display:grid;gap:1px}
.sfp-sidebar__user strong,.sfp-sidebar__user small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sfp-sidebar__user strong{font-size:10px;color:#fff}
.sfp-sidebar__user small{font-size:8px;color:#82978d}
.sfp-sidebar__logout{display:grid;place-items:center;width:26px;height:26px;color:#8ea39a}
.sfp-sidebar__logout:hover{color:#fff}
.sfp-sidebar-backdrop{display:none}
.sfp-workspace{min-width:0;min-height:100svh}
.sfp-topbar{position:sticky;top:0;z-index:40;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:11px clamp(18px,2.5vw,36px);border-bottom:1px solid var(--sfp-line);background:rgba(247,249,246,.93);backdrop-filter:blur(16px)}
.sfp-topbar__left,.sfp-topbar__right{display:flex;align-items:center;gap:14px;min-width:0}
.sfp-topbar__title-group{display:grid;gap:1px}
.sfp-topbar__eyebrow{font-size:8px;font-weight:850;letter-spacing:.14em;text-transform:uppercase;color:#89958f}
.sfp-topbar__title{margin:0;font-size:22px;line-height:1.05;letter-spacing:-.03em}
.sfp-topbar__live{display:inline-flex;align-items:center;gap:7px;color:#52615b;font-size:10px;font-weight:700}
.sfp-topbar__date{font-size:10px;color:#7c8883;font-variant-numeric:tabular-nums}
.sfp-menu-button{display:none;align-items:center;gap:4px;padding:8px;border:1px solid var(--sfp-line);background:#fff;color:var(--sfp-ink)}
.sfp-menu-button span{display:block;width:14px;height:1px;background:currentColor}
.sfp-menu-button b{margin-left:5px;font-size:10px}
.sfp-workspace__content{width:min(var(--sfp-max),100%);margin:0 auto;padding:28px clamp(18px,2.6vw,38px) 54px}
.sfp-workspace--map{display:grid;grid-template-rows:auto minmax(0,1fr)}
.sfp-workspace__content--map{width:100%;max-width:none;margin:0;padding:0;min-height:calc(100svh - 72px);display:flex;flex-direction:column}

/* Dashboard composition */
.sfp-dashboard-intro{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:24px;align-items:end;padding:3px 0 24px;border-bottom:1px solid var(--sfp-line)}
.sfp-dashboard-intro h2{max-width:700px;margin:6px 0 7px;font-size:clamp(25px,2.5vw,38px);line-height:1.05;letter-spacing:-.04em}
.sfp-dashboard-intro p{max-width:760px;margin:0;color:var(--sfp-muted);font-size:12px}
.sfp-dashboard-intro__map{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:58px;padding:12px 14px;border:1px solid #bac9c0;background:#eef4ef;color:#1c513b;font-size:11px;font-weight:800}
.sfp-dashboard-intro__map svg{width:21px;height:21px}
.sfp-dashboard-intro__map b{font-size:18px}
.sfp-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:24px 0;background:var(--sfp-line);border:1px solid var(--sfp-line)}
.sfp-kpi{min-width:0;padding:18px 18px 16px;background:var(--sfp-panel)}
.sfp-kpi>span{display:block;color:#7c8983;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.sfp-kpi strong{display:block;margin:5px 0 2px;font-size:27px;line-height:1;letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.sfp-kpi small{display:block;color:#64716b;font-size:9px}
.sfp-dashboard-grid{display:grid;gap:14px;margin-bottom:14px}
.sfp-dashboard-grid--overview{grid-template-columns:1.25fr .75fr}
.sfp-dashboard-grid--activity{grid-template-columns:1.25fr .75fr}
.sfp-card{min-width:0;border:1px solid var(--sfp-line);background:#fff;box-shadow:0 6px 16px rgba(14,35,27,.035)}
.sfp-card__head{min-height:61px;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e4e9e5}
.sfp-card__head h3{margin:2px 0 0;font-size:14px;letter-spacing:-.015em}
.sfp-card__head>a{color:var(--sfp-green);font-size:10px;font-weight:800}
.sfp-card__head>strong{font-size:23px;font-variant-numeric:tabular-nums}
.sfp-card__body{padding:16px}
.sfp-muted-copy{margin:0;color:var(--sfp-muted);font-size:11px;line-height:1.65}
.sfp-progress>div:first-child{display:flex;justify-content:space-between;gap:20px;font-size:10px}
.sfp-progress__track{height:6px;margin:9px 0 13px;background:#e9efeb;overflow:hidden}
.sfp-progress__track i{display:block;height:100%;background:var(--sfp-green)}
.sfp-mini-list{display:grid;padding:0}
.sfp-mini-list>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 16px;border-bottom:1px solid #e8ece9}
.sfp-mini-list>div:last-child{border-bottom:0}
.sfp-mini-list span{display:grid;gap:1px}
.sfp-mini-list b{font-size:10px}.sfp-mini-list small{font-size:9px;color:#7b8882}.sfp-mini-list em{max-width:55%;overflow:hidden;text-overflow:ellipsis;font-style:normal;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px;color:#76827d;white-space:nowrap}
.sfp-dashboard-list{display:grid}
.sfp-dashboard-list>a,.sfp-dashboard-list>div{display:grid;grid-template-columns:minmax(130px,.72fr) minmax(180px,1fr) auto;gap:12px;align-items:center;min-height:54px;padding:9px 16px;border-bottom:1px solid #e8ece9}
.sfp-dashboard-list>a:last-child,.sfp-dashboard-list>div:last-child{border-bottom:0}
.sfp-dashboard-list>a:hover{background:#f6f9f6}
.sfp-dashboard-list span{display:grid;gap:1px}.sfp-dashboard-list strong{font-size:10px}.sfp-dashboard-list small{font-size:8px;color:#7b8882}
.sfp-dashboard-list__type{display:flex!important;align-items:center!important;grid-template-columns:none!important;gap:8px!important}
.sfp-dashboard-list__type i{width:7px;height:7px;border-radius:50%;background:#7c66cb}.sfp-dashboard-list__type i.is-planting{background:#2b9967}

/* Shared data UI */
.sfp-filterbar{display:flex;align-items:center;gap:8px;margin:0 0 13px}
.sfp-filterbar--grow .sfp-search{flex:1}
.sfp-filterbar input,.sfp-filterbar select,.sfp-owner-form input,.sfp-owner-form select{height:39px;padding:0 10px;border:1px solid #cdd6d0;border-radius:2px;background:#fff;color:var(--sfp-ink);outline:0;font-size:11px}
.sfp-filterbar input:focus,.sfp-filterbar select:focus,.sfp-owner-form input:focus,.sfp-owner-form select:focus{border-color:var(--sfp-green);box-shadow:0 0 0 2px rgba(31,108,76,.08)}
.sfp-search{min-width:180px}
.sfp-button{display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:0 14px;border:1px solid #bdc9c2;border-radius:2px;background:#fff;color:#22332c;font-size:10px;font-weight:800}
.sfp-button:hover{border-color:#8fa59a;background:#f4f7f4}
.sfp-button--primary{border-color:var(--sfp-green);background:var(--sfp-green);color:#fff}.sfp-button--primary:hover{background:#195e42;color:#fff}
.sfp-table-wrap{width:100%;overflow:hidden}
.sfp-table{width:100%;border-collapse:collapse;font-size:10px}
.sfp-table th{padding:9px 13px;text-align:left;background:#f6f8f5;color:#79857f;font-size:8px;font-weight:850;letter-spacing:.07em;text-transform:uppercase;border-bottom:1px solid #dde3df}
.sfp-table td{padding:11px 13px;vertical-align:middle;border-bottom:1px solid #e7ebe8;color:#34423c}
.sfp-table tbody tr:last-child td{border-bottom:0}
.sfp-table tbody tr:hover td{background:#fafcf9}
.sfp-table td strong,.sfp-table td small{display:block}.sfp-table td strong{font-size:10px;color:#17241f}.sfp-table td small{margin-top:2px;font-size:8px;color:#7c8883}
.sfp-row-link{color:var(--sfp-green);font-weight:800;white-space:nowrap}
.sfp-chip{display:inline-flex;align-items:center;min-height:23px;padding:3px 8px;border-radius:2px;background:#edf1ee;color:#42514a;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.sfp-chip--green{background:#e4f5eb;color:#17613f}.sfp-chip--amber{background:#fff0d9;color:#85561b}.sfp-chip--violet{background:#eeeafd;color:#5947a0}
.sfp-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 15px;border-top:1px solid #e1e6e2;font-size:9px;color:#718078}
.sfp-pagination div{display:flex;gap:7px}.sfp-pagination a{padding:5px 8px;border:1px solid #ccd5cf;background:#fff;color:#2e4037;font-weight:800}
.sfp-analysis-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:13px}
.sfp-analysis-card{padding:17px;border:1px solid var(--sfp-line);background:#fff}
.sfp-analysis-card span,.sfp-analysis-card small{display:block;color:#77847e;font-size:9px}.sfp-analysis-card h3{margin:5px 0;font-size:13px}.sfp-analysis-card strong{display:block;font-size:26px;letter-spacing:-.035em}
.sfp-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.sfp-definition{margin:0;display:grid}.sfp-definition>div{display:grid;grid-template-columns:160px minmax(0,1fr);gap:12px;padding:9px 0;border-bottom:1px solid #e6ebe7}.sfp-definition>div:last-child{border-bottom:0}.sfp-definition dt{font-size:9px;color:#75817b}.sfp-definition dd{margin:0;font-size:10px;font-weight:700;word-break:break-word}
.sfp-access-list{display:grid;gap:6px;margin-top:14px}.sfp-access-row{display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #e6ebe7}.sfp-access-row>div{display:grid}.sfp-access-row strong{font-size:10px}.sfp-access-row small{font-size:8px;color:#78857f}.sfp-access-row label{font-size:9px;white-space:nowrap}
.sfp-owner-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sfp-owner-form label{display:grid;gap:5px}.sfp-owner-form label>span{font-size:9px;font-weight:800;color:#55635d}.sfp-owner-form .sfp-check,.sfp-owner-form .sfp-form-actions{grid-column:1/-1}.sfp-check{display:flex!important;align-items:center;gap:8px}.sfp-check input{width:auto;height:auto}.sfp-form-actions{display:flex;align-items:center;gap:14px;padding-top:5px}.sfp-form-actions small{color:#6e7b75;font-size:9px}
.sfp-inline-actions,.sfp-action-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sfp-text-danger{color:var(--sfp-danger)!important}
.sfp-empty{padding:24px;border:1px dashed #c9d2cc;background:#fafbf9;color:#69766f;font-size:11px}

/* Record/property detail */
.sfp-record-hero{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:0 0 19px;margin-bottom:14px;border-bottom:1px solid var(--sfp-line)}
.sfp-record-hero h2{margin:4px 0 0;font-size:28px;letter-spacing:-.035em}.sfp-record-hero p{margin:4px 0 0;color:#718078;font-size:10px}.sfp-record-metric{text-align:right}.sfp-record-metric span{display:block;font-size:8px;color:#74817b;text-transform:uppercase;letter-spacing:.08em}.sfp-record-metric strong{font-size:25px}
.sfp-property-atlas{margin:14px 0;border:1px solid var(--sfp-line);background:#fff}
.sfp-property-atlas__toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:11px 14px;border-bottom:1px solid #e2e7e3}.sfp-property-atlas__toolbar h3{margin:2px 0 0;font-size:13px}
.sfp-property-map-controls{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.sfp-property-map-controls button{height:30px;padding:0 9px;border:1px solid #c9d3cd;border-radius:2px;background:#fff;color:#4d5b54;font-size:8px;font-weight:800}.sfp-property-map-controls button.is-active{border-color:#2b7955;background:#e8f3ec;color:#145839}
.sfp-property-atlas__map,.sfp-property-map-canvas{width:100%;height:410px;background:#dce5df}
.sfp-property-atlas__facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #e2e7e3}.sfp-property-fact{display:grid;gap:2px;padding:12px 14px;border-right:1px solid #e2e7e3}.sfp-property-fact:last-child{border-right:0}.sfp-property-fact span{font-size:8px;color:#718078}.sfp-property-fact strong{font-size:14px}
.sfp-hkl-list{display:grid;gap:7px}.sfp-hkl-list>div{display:grid;grid-template-columns:90px 1fr auto;gap:9px;align-items:center;font-size:9px}.sfp-hkl-list i{height:5px;background:#76b996}

/* Contractor full map workbench */
.sfp-map-workbench{display:grid;grid-template-columns:225px minmax(0,1fr);min-height:calc(100svh - 154px);border:1px solid #cfd8d2;background:#fff}
.sfp-map-workbench__rail{display:flex;flex-direction:column;padding:18px;background:#0b2119;color:#d9e7df;border-right:1px solid rgba(255,255,255,.1)}
.sfp-map-workbench__title h2{margin:5px 0 7px;font-size:21px;color:#fff;letter-spacing:-.03em}.sfp-map-workbench__title p{margin:0;color:#91a69c;font-size:10px;line-height:1.55}
.sfp-map-workbench__layers{display:grid;gap:5px;margin-top:20px}.sfp-map-workbench__layers button{display:flex;align-items:center;gap:9px;min-height:38px;padding:8px 10px;border:1px solid rgba(255,255,255,.12);border-radius:2px;background:rgba(255,255,255,.025);color:#b9cac2;text-align:left;font-size:9px;font-weight:750}.sfp-map-workbench__layers button.is-active{border-color:rgba(116,214,164,.5);background:#153a2c;color:#fff}
.sfp-map-layer-mark{width:9px;height:9px;border-radius:50%;background:#49c985;box-shadow:0 0 0 3px rgba(73,201,133,.12)}.sfp-map-layer-mark--property{border-radius:1px;border:2px solid #eef8f2;background:transparent;box-shadow:none}
.sfp-map-workbench__note{margin-top:auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.10);color:#92a59c;font-size:9px;line-height:1.55}.sfp-map-workbench__legend{display:grid;gap:6px;margin-bottom:9px;color:#c5d5cd}.sfp-legend-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:7px}.sfp-legend-dot--planting{background:#2fc778}.sfp-legend-dot--tending{background:#8067dc}
.sfp-map-workbench__stage{position:relative;min-width:0;min-height:560px;background:#d8e1db}.sfp-map{width:100%;height:100%;min-height:560px}.sfp-map-loading,.sfp-map-error,.sfp-map-density{position:absolute;z-index:500;left:16px;top:15px;max-width:300px;padding:9px 11px;border:1px solid rgba(8,32,23,.14);background:rgba(255,255,255,.94);box-shadow:0 7px 22px rgba(6,24,18,.13);font-size:9px;font-weight:750}.sfp-map-error{color:#862a2a}.sfp-map-density{top:auto;bottom:15px;color:#6a4b15;background:#fff8e8}
.sfp-map-popup{min-width:140px;display:grid;gap:4px}.sfp-map-popup strong{font-size:11px}.sfp-map-popup small{font-size:9px;color:#627069}.sfp-map-popup a{margin-top:4px;color:var(--sfp-green);font-size:9px;font-weight:800}

/* =====================================
 * OWNER APPLICATION — different product surface
 * =================================== */
.sfp-owner-app{min-height:100svh;display:grid;grid-template-columns:205px minmax(0,1fr);background:#f2f5f1}
.sfp-owner-sidebar{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;padding:22px 14px 14px;background:#071712;color:#dce8e2}
.sfp-owner-sidebar__brand{padding:0 5px 20px;border-bottom:1px solid rgba(255,255,255,.10)}
.sfp-owner-sidebar__label{margin:20px 10px 8px;color:#6f8379;font-size:8px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
.sfp-owner-nav{display:grid;gap:3px}.sfp-owner-nav a{display:flex;align-items:center;gap:10px;min-height:39px;padding:8px 10px;color:#aebfb7;border-left:2px solid transparent;font-size:10px}.sfp-owner-nav a span{width:17px}.sfp-owner-nav svg{width:16px;height:16px}.sfp-owner-nav a.is-active,.sfp-owner-nav a:hover{background:#123328;color:#fff;border-left-color:var(--sfp-mint)}
.sfp-owner-sidebar__bottom{margin-top:auto;padding-top:14px;border-top:1px solid rgba(255,255,255,.10)}.sfp-owner-sidebar__language{margin-bottom:9px}.sfp-owner-sidebar .sfp-language{width:100%;justify-content:center;border-color:rgba(255,255,255,.11);background:rgba(255,255,255,.03)}.sfp-owner-sidebar .sfp-language__item{color:#94a69e}.sfp-owner-sidebar .sfp-language__item.is-active{background:#e8f4ed;color:#123024}
.sfp-owner-workspace{min-width:0}
.sfp-owner-main{width:min(1340px,100%);margin:0 auto;padding:34px clamp(18px,3vw,46px) 60px}
.sfp-owner-mobilebar,.sfp-owner-mobile-nav{display:none}
.sfiopa-owner-hero{display:flex;align-items:end;justify-content:space-between;gap:22px;padding-bottom:22px;border-bottom:1px solid var(--sfp-line)}
.sfiopa-owner-hero h1{margin:5px 0 7px;font-size:36px;line-height:1.05;letter-spacing:-.04em}.sfiopa-owner-hero p{margin:0;max-width:720px;color:var(--sfp-muted);font-size:11px}.sfiopa-owner-hero__status{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #c7d8ce;background:#edf6f0;color:#1a6341;font-size:9px;font-weight:800}.sfiopa-owner-hero__status i{width:7px;height:7px;border-radius:50%;background:#48bc7c}
.sfiopa-owner-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:22px 0;background:var(--sfp-line);border:1px solid var(--sfp-line)}
.sfiopa-owner-kpi{padding:17px;background:#fff}.sfiopa-owner-kpi span{display:block;color:#78847f;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.sfiopa-owner-kpi strong{display:block;margin:5px 0 2px;font-size:26px;line-height:1;letter-spacing:-.03em}.sfiopa-owner-kpi small{font-size:8px;color:#6d7a74}
.sfiopa-portfolio{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px;align-items:start}
.sfiopa-property-switcher,.sfiopa-panel{border:1px solid var(--sfp-line);background:#fff}
.sfiopa-panel__head{min-height:60px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #e4e9e5}.sfiopa-panel__head h2{margin:2px 0 0;font-size:14px;letter-spacing:-.015em}.sfiopa-panel__head>span{display:grid;place-items:center;min-width:25px;height:25px;background:#eaf2ed;color:#285d43;font-size:9px;font-weight:800}.sfiopa-panel__head--property>strong{font-size:18px}.sfiopa-panel__head small{display:block;margin-top:2px;color:#86918c;font-size:8px}
.sfiopa-property-switcher__list{max-height:690px;overflow:auto}.sfiopa-property-choice{display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center;gap:8px;padding:11px 13px;border-bottom:1px solid #e6ebe7;border-left:3px solid transparent}.sfiopa-property-choice:hover{background:#f7faf7}.sfiopa-property-choice.is-active{border-left-color:var(--sfp-green);background:#edf5f0}.sfiopa-property-choice__id{min-width:0;display:grid;gap:2px}.sfiopa-property-choice__id strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.sfiopa-property-choice__id small{font-size:8px;color:#7b8781}.sfiopa-property-choice__signal{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#e8efe9;color:#335245;font-size:9px;font-weight:800}
.sfiopa-panel__body{padding:15px}.sfiopa-property-meta{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #e0e6e2;margin-bottom:13px}.sfiopa-property-meta>div{padding:10px 12px;border-right:1px solid #e0e6e2}.sfiopa-property-meta>div:last-child{border-right:0}.sfiopa-property-meta span{display:block;font-size:8px;color:#7c8882}.sfiopa-property-meta strong{display:block;margin-top:2px;font-size:11px}
.sfiopa-owner-map{margin:0 0 15px;border:1px solid #dbe3de;background:#fff}.sfiopa-owner-map__head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 12px;border-bottom:1px solid #e1e7e3}.sfiopa-owner-map__head h3{margin:2px 0 0;font-size:12px}.sfiopa-owner-map__canvas{height:390px;background:#dae4dd}.sfiopa-owner-map__facts{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #e1e7e3}.sfiopa-owner-map__facts span{display:flex;align-items:baseline;gap:6px;padding:9px 12px;border-right:1px solid #e1e7e3;color:#68756f;font-size:8px}.sfiopa-owner-map__facts span:last-child{border-right:0}.sfiopa-owner-map__facts b{color:#1d2d26;font-size:11px}
.sfiopa-section-title{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:17px 0 7px}.sfiopa-section-title h3{margin:2px 0 0;font-size:13px}.sfiopa-section-title>small{font-size:9px;color:#7b8882}
.sfiopa-work-list{border-top:1px solid #e3e8e4}.sfiopa-work-item{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:49px;padding:8px 0;border-bottom:1px solid #e7ebe8}.sfiopa-work-item>div{display:grid;gap:1px}.sfiopa-work-item strong{font-size:10px}.sfiopa-work-item small{font-size:8px;color:#7e8a84}.sfiopa-work-item>b{font-size:11px}.sfiopa-owner-note{margin-top:13px;padding:10px 12px;border-left:2px solid #c78f37;background:#fff8e9;color:#6d511f;font-size:8.5px;line-height:1.5}.sfiopa-empty{padding:18px;border:1px dashed #cad4cd;color:#68766f;font-size:10px}

/* Leaflet product integration */
.leaflet-container{font:inherit;background:#dce5df;outline:0}.leaflet-control-zoom a{border-radius:0!important;color:#183128!important}.leaflet-control-attribution{font-size:8px!important;background:rgba(255,255,255,.82)!important}.leaflet-popup-content-wrapper,.leaflet-popup-tip{border-radius:2px!important}.leaflet-popup-content-wrapper{box-shadow:0 8px 28px rgba(8,26,19,.16)!important}

/* Generic fallback */
.sfp-fallback{min-height:100vh;display:grid;place-items:center;background:#071712;color:#fff}.sfp-fallback h1{font-size:36px}

/* ===================
 * RESPONSIVE / MOBILE
 * ================= */
@media (max-width:1180px){
	:root{--sfp-sidebar:198px}
	.sfp-entry-grid{width:calc(100% - 48px)}
	.sfp-landing-stage__intro{margin-bottom:220px}
	.sfp-dashboard-grid--overview,.sfp-dashboard-grid--activity{grid-template-columns:1fr}
	.sfiopa-portfolio{grid-template-columns:260px minmax(0,1fr)}
}

@media (max-width:960px){
	.sfp-auth{grid-template-columns:42% 58%}
	.sfp-auth__visual-copy{left:26px;right:26px;bottom:38px}.sfp-auth__visual-copy h2{font-size:34px}
	.sfp-app-shell{display:block}
	.sfp-sidebar{position:fixed;left:0;top:0;transform:translateX(-101%);width:min(285px,84vw);height:100dvh;transition:transform .22s ease;box-shadow:12px 0 40px rgba(0,0,0,.25)}
	.sfp-sidebar-open .sfp-sidebar{transform:none}.sfp-sidebar__close{display:block}.sfp-sidebar-backdrop{position:fixed;inset:0;z-index:50;background:rgba(2,10,7,.55);backdrop-filter:blur(2px)}.sfp-sidebar-open .sfp-sidebar-backdrop{display:block}
	.sfp-menu-button{display:inline-flex}
	.sfp-topbar{min-height:66px}.sfp-topbar__eyebrow,.sfp-topbar__date{display:none}
	.sfp-kpi-grid,.sfiopa-owner-kpis{grid-template-columns:repeat(2,1fr)}
	.sfp-analysis-grid{grid-template-columns:repeat(2,1fr)}
	.sfp-map-workbench{grid-template-columns:190px minmax(0,1fr)}
	.sfp-owner-app{display:block}
	.sfp-owner-sidebar{display:none}
	.sfp-owner-mobilebar{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:64px;padding:10px 18px;border-bottom:1px solid var(--sfp-line);background:rgba(247,249,246,.96);backdrop-filter:blur(14px)}
	.sfp-owner-mobilebar .sfp-brand__mark{color:var(--sfp-ink)}
	.sfp-owner-mobilebar__actions{display:flex;align-items:center;gap:8px}.sfp-owner-mobilebar__actions .sfiopa-button{width:auto;min-height:34px;padding:0 10px;color:#31423a;border-color:#cbd5ce}
	.sfp-owner-mobile-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:sticky;top:64px;z-index:38;gap:4px;padding:7px 10px;border-bottom:1px solid var(--sfp-line);background:#fff}.sfp-owner-mobile-nav a{min-width:0;padding:5px 3px;text-align:center;font-size:9px;font-weight:800;color:#53625b;overflow-wrap:anywhere}
	.sfiopa-portfolio{grid-template-columns:240px minmax(0,1fr)}
}

@media (max-width:760px){
	.sfp-landing-stage{min-height:100svh;padding:0 16px 22px;grid-template-rows:auto auto auto auto;background-position:center 50%}
	.sfp-public-header{min-height:68px}.sfp-public-header__pill{display:none}.sfp-public-header__meta{gap:8px}.sfp-brand--public .sfp-brand__mark{width:34px;height:34px;flex-basis:34px}.sfp-brand--public .sfp-brand__mark svg{width:31px}.sfp-brand--public .sfp-brand__copy strong{font-size:11px}
	.sfp-landing-stage__intro{align-self:auto;width:100%;margin:48px 0 24px;text-align:left}.sfp-landing-stage__intro h1{font-size:clamp(38px,12vw,55px);max-width:520px}.sfp-landing-stage__intro p{margin:16px 0 0;max-width:500px;font-size:14px}
	.sfp-entry-grid{position:static;transform:none;width:100%;grid-template-columns:1fr;gap:10px;margin:0}
	.sfp-entry-card{min-height:132px;grid-template-columns:37% 63%}.sfp-entry-card__media{min-height:132px}.sfp-entry-card__content{padding:16px}.sfp-entry-card h2{font-size:18px}.sfp-entry-card p{margin:7px 0 10px;font-size:11px;line-height:1.4}.sfp-entry-card__icon{display:none}.sfp-entry-card__action{padding-top:9px;font-size:10px}.sfp-entry-card__action i{width:24px;height:24px;font-size:15px}
	.sfp-feature-strip{grid-template-columns:1fr 1fr 1fr;margin-top:17px}.sfp-feature-chip{min-height:48px;padding:0 9px;gap:7px}.sfp-feature-chip>span{display:none}.sfp-feature-chip strong{font-size:8px}.sfp-feature-chip small{font-size:7px}

	.sfp-auth{display:block;min-height:100svh;background:#f9faf7}.sfp-auth__visual{min-height:220px;height:30vh}.sfp-auth__visual-copy{left:20px;right:20px;bottom:22px}.sfp-auth__visual-copy h2{font-size:29px}.sfp-auth__visual-copy p{display:none}
	.sfp-auth__panel{min-height:70vh;padding:28px 20px 42px;justify-content:flex-start}.sfp-auth__panel>.sfp-brand{position:static;margin-bottom:20px}.sfp-auth__language{top:25px;right:20px}.sfp-back-link{margin:3px 0 22px}.sfp-auth__copy h1{font-size:29px}.sfp-auth-steps{margin-top:22px}.sfp-auth-steps li{font-size:9px}.sfp-otp-host,.sfiopa-login{max-width:none}
	.sfiopa-property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sfiopa-field--municipality{grid-column:1/-1}

	.sfp-topbar{padding:9px 14px}.sfp-topbar__right .sfp-language{display:none}.sfp-topbar__live{display:none}.sfp-topbar__title{font-size:18px}.sfp-workspace__content{padding:20px 14px 42px}.sfp-workspace__content--map{padding:0;min-height:calc(100svh - 60px)}
	.sfp-dashboard-intro{grid-template-columns:1fr;gap:14px}.sfp-dashboard-intro h2{font-size:28px}.sfp-dashboard-intro__map{width:100%}
	.sfp-kpi-grid{grid-template-columns:1fr 1fr;margin:17px 0}.sfp-kpi{padding:14px}.sfp-kpi strong{font-size:22px}
	.sfp-card__head{padding:12px}.sfp-card__body{padding:12px}
	.sfp-analysis-grid,.sfp-detail-grid{grid-template-columns:1fr}
	.sfp-filterbar{align-items:stretch;flex-wrap:wrap}.sfp-filterbar input,.sfp-filterbar select,.sfp-search{min-width:0;flex:1 1 150px}
	.sfp-owner-form{grid-template-columns:1fr}.sfp-owner-form .sfp-check,.sfp-owner-form .sfp-form-actions{grid-column:auto}.sfp-form-actions{align-items:flex-start;flex-direction:column}
	.sfp-access-row{grid-template-columns:1fr 1fr}.sfp-access-row>div{grid-column:1/-1}

	/* Tables become labelled cards, never horizontal-scroll tables. */
	.sfp-table-wrap{overflow:visible}.sfp-table,.sfp-table tbody,.sfp-table tr,.sfp-table td{display:block;width:100%}.sfp-table thead{display:none}.sfp-table tbody{display:grid;gap:9px}.sfp-table tr{padding:5px 11px;border:1px solid var(--sfp-line);background:#fff}.sfp-table td{display:grid;grid-template-columns:minmax(92px,36%) minmax(0,1fr);gap:10px;padding:7px 0;border:0;border-bottom:1px solid #edf0ed}.sfp-table td:last-child{border-bottom:0}.sfp-table td::before{content:attr(data-label);color:#78847f;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.sfp-table td:empty{display:none}

	.sfp-map-workbench{display:block;min-height:auto}.sfp-map-workbench__rail{padding:14px}.sfp-map-workbench__layers{grid-template-columns:1fr 1fr;margin-top:12px}.sfp-map-workbench__note{display:none}.sfp-map-workbench__stage,.sfp-map{min-height:62vh;height:62vh}.sfp-map-workbench__title h2{font-size:18px}
	.sfp-property-atlas__toolbar,.sfiopa-owner-map__head{align-items:flex-start;flex-direction:column}.sfp-property-atlas__map,.sfp-property-map-canvas,.sfiopa-owner-map__canvas{height:48vh;min-height:320px}.sfp-property-atlas__facts{grid-template-columns:1fr}.sfp-property-fact{border-right:0;border-bottom:1px solid #e2e7e3}.sfp-property-fact:last-child{border-bottom:0}

	.sfp-owner-main{padding:22px 14px 45px}.sfp-owner-mobilebar{padding:9px 13px}.sfp-owner-mobilebar .sfp-brand__copy{display:none}.sfp-owner-mobilebar__actions .sfp-language{display:none}.sfp-owner-mobile-nav{top:55px;padding:8px 14px}
	.sfiopa-owner-hero{align-items:flex-start;flex-direction:column}.sfiopa-owner-hero h1{font-size:29px}.sfiopa-owner-kpis{grid-template-columns:1fr 1fr}.sfiopa-owner-kpi{padding:13px}.sfiopa-owner-kpi strong{font-size:21px}
	.sfiopa-portfolio{grid-template-columns:1fr}.sfiopa-property-switcher__list{display:grid;max-height:none;overflow:visible}.sfiopa-property-choice{min-width:0;border-left:3px solid transparent;border-bottom:1px solid #e6ebe7}.sfiopa-property-choice.is-active{border-left-color:var(--sfp-green);border-bottom-color:#e6ebe7}.sfiopa-panel__body{padding:12px}.sfiopa-property-meta{grid-template-columns:1fr 1fr}.sfiopa-property-meta>div{border-bottom:1px solid #e0e6e2}.sfiopa-property-meta>div:nth-child(2){border-right:0}.sfiopa-property-meta>div:last-child{grid-column:1/-1;border-bottom:0}.sfiopa-owner-map__facts{grid-template-columns:1fr}.sfiopa-owner-map__facts span{border-right:0;border-bottom:1px solid #e1e7e3}.sfiopa-owner-map__facts span:last-child{border-bottom:0}
}

@media (max-width:420px){
	.sfp-public-header .sfp-language__item{min-width:30px;padding:0 5px}.sfp-brand__copy strong{font-size:10px}
	.sfp-landing-stage__intro{margin-top:34px}.sfp-landing-stage__intro h1{font-size:39px}.sfp-entry-card{grid-template-columns:34% 66%}.sfp-entry-card h2{font-size:16px}.sfp-entry-card p{font-size:10px}.sfp-feature-chip:nth-child(3){display:none}.sfp-feature-strip{grid-template-columns:1fr 1fr}
	.sfp-auth__visual{min-height:185px;height:25vh}.sfp-auth__visual-copy h2{font-size:25px}.sfp-auth__panel{padding-left:16px;padding-right:16px}.sfp-auth__language{right:16px}
	.sfp-auth-steps{display:block}.sfp-auth-steps li+li{border-left:0;border-top:1px solid var(--sfp-line);padding-left:0}
	.sfiopa-property-grid{grid-template-columns:1fr 1fr}.sfiopa-property-grid .sfiopa-field--municipality{grid-column:1/-1}
	.sfp-kpi-grid,.sfiopa-owner-kpis{grid-template-columns:1fr}.sfp-kpi,.sfiopa-owner-kpi{display:grid;grid-template-columns:1fr auto;align-items:end;column-gap:10px}.sfp-kpi strong,.sfiopa-owner-kpi strong{grid-column:2;grid-row:1/3}.sfp-kpi small,.sfiopa-owner-kpi small{grid-column:1}
	.sfp-property-map-controls{width:100%}.sfp-property-map-controls button{flex:1}.sfp-map-workbench__layers{grid-template-columns:1fr}
}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;transition-duration:.001ms!important}}

/* Small structural helpers used by record/admin screens. */
.sfp-backline{display:inline-flex;margin:0 0 13px;color:#64736c;font-size:9px;font-weight:800}.sfp-backline:hover{color:var(--sfp-green)}
.sfp-form-card>.sfp-owner-form{padding:15px 16px 17px}
.sfp-dashboard-list--properties>a,.sfp-dashboard-list--properties>div{grid-template-columns:minmax(170px,1fr) auto}
.sfiopa-property-detail,.sfiopa-owner-hero__copy{min-width:0}

/* =========================================================
 * FOREST WORKSPACE V2.3 — GIS-FIRST MAP + PROPERTY DOSSIER
 * ======================================================= */
.sfp-map-v2{
	--sfp-map-toolbar-z:610;
	--sfp-map-panel-z:620;
	--sfp-map-overlay-z:630;
	min-width:0;
	display:grid;
	grid-template-rows:auto minmax(0,1fr);
	flex:1 1 auto;
	min-height:calc(100svh - 72px);
	border:0;
	background:#dbe4de;
	box-shadow:none;
}
.sfp-map-v2__toolbar{display:grid;grid-template-columns:auto minmax(150px,220px) minmax(220px,1fr) auto;align-items:end;gap:12px;min-height:62px;padding:10px 12px;border-bottom:1px solid var(--sfp-line);background:#fff}
.sfp-map-v2__toolbar-group{display:flex;gap:6px;align-items:center}
.sfp-map-tool{min-height:38px;padding:0 12px;border:1px solid #cfd8d2;border-radius:5px;background:#fff;color:#24352e;font-size:10px;font-weight:800}.sfp-map-tool:hover{border-color:#9fb9aa;background:#f6f9f7}.sfp-map-tool:focus-visible{outline:2px solid #00c9d7;outline-offset:2px}
.sfp-map-search{display:grid;grid-template-columns:auto minmax(140px,1fr);align-items:center;gap:10px;min-width:0;height:38px;padding:0 10px;border:1px solid #cfd8d2;border-radius:5px;background:#f9fbf9}.sfp-map-search span{font-size:9px;font-weight:850;color:#64736c;text-transform:uppercase;letter-spacing:.05em}.sfp-map-search input{min-width:0;height:34px;border:0;outline:0;background:transparent;color:#12241d;font-size:11px}.sfp-map-search input::placeholder{color:#909b96}
.sfp-map-filter{display:grid;grid-template-columns:auto minmax(105px,1fr);align-items:center;gap:8px;min-width:0;height:38px;padding:0 8px;border:1px solid #cfd8d2;border-radius:5px;background:#f9fbf9}.sfp-map-filter span{font-size:8px;font-weight:850;color:#64736c;text-transform:uppercase;letter-spacing:.05em}.sfp-map-filter select{min-width:0;height:34px;border:0;outline:0;background:transparent;color:#12241d;font-size:10px;font-weight:700}
.sfp-map-v2__status{padding:0 4px 4px;color:#66746d;font-size:10px;white-space:nowrap}.sfp-map-v2__status span{color:#12241d;font-weight:850}
.sfp-map-v2__body{position:relative;display:block;min-height:0;height:100%;overflow:hidden;background:#d6e0da}
.sfp-map-v2__stage{position:relative;min-width:0;min-height:0;height:100%;overflow:hidden}.sfp-map--v2{width:100%;height:100%;min-height:0}
.sfp-map-v2 .leaflet-control-container{position:relative;z-index:500}.sfp-map-v2 .leaflet-control-attribution{font-size:8px}
.sfp-map-v2 .sfp-map-loading,.sfp-map-v2 .sfp-map-error,.sfp-map-v2 .sfp-map-density{z-index:var(--sfp-map-overlay-z);border-radius:5px}
.sfp-map-v2 .sfp-map-loading{left:62px;top:14px}.sfp-map-v2 .sfp-map-error{left:62px;top:58px}.sfp-map-v2 .sfp-map-density{right:12px;left:auto;bottom:12px;top:auto;max-width:420px}
.sfp-map-controlbar{position:absolute;z-index:var(--sfp-map-panel-z);top:14px;left:14px;display:grid;gap:3px;padding:3px;border:1px solid rgba(12,48,36,.16);border-radius:7px;background:rgba(255,255,255,.96);box-shadow:0 8px 22px rgba(7,29,21,.14);backdrop-filter:blur(10px)}.sfp-map-controlbar button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:4px;background:#fff;color:#284238;font-size:16px;font-weight:850;line-height:1}.sfp-map-controlbar button:hover{background:#edf5f0}.sfp-map-controlbar button.is-active{background:#123f30;color:#fff}.sfp-map-controlbar button:focus-visible{outline:2px solid #00c9d7;outline-offset:1px}.sfp-map-controlbar button[data-sfp-map-action=clear]{border-top:1px solid #e1e8e3;color:#8b3d3d}.sfp-map--v2.is-measuring{cursor:crosshair}
.sfp-map-measure{position:absolute;z-index:var(--sfp-map-overlay-z);top:14px;right:14px;max-width:min(320px,calc(100% - 86px));padding:9px 11px;border:1px solid rgba(13,55,40,.14);border-radius:5px;background:rgba(255,255,255,.96);box-shadow:0 7px 22px rgba(6,24,18,.13);color:#193c2e;font-size:10px;font-weight:850}.sfp-map-measure.is-error{border-color:#e3b7b7;color:#8a3333;background:#fff6f6}

.sfp-layer-panel{position:absolute;z-index:var(--sfp-map-panel-z);left:14px;bottom:20px;width:min(286px,calc(100% - 28px));overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(8,28,21,.94);color:#fff;box-shadow:0 16px 36px rgba(4,18,13,.28);backdrop-filter:blur(14px)}
.sfp-layer-panel__head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.11)}.sfp-layer-panel__head strong{font-size:11px}.sfp-layer-panel__head button{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(255,255,255,.14);border-radius:4px;background:rgba(255,255,255,.04);color:#fff;font-size:18px;line-height:1}
.sfp-layer-panel__body{display:grid;padding:5px}.sfp-layer-panel__body label{display:grid;grid-template-columns:18px 12px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:48px;padding:6px 7px;border-radius:5px;color:#e8f1ec}.sfp-layer-panel__body label:hover{background:rgba(255,255,255,.06)}.sfp-layer-panel__body input{width:16px;height:16px;margin:0;accent-color:#74d6a4}.sfp-layer-panel__body span{display:grid;min-width:0}.sfp-layer-panel__body b{font-size:10px}.sfp-layer-panel__body small{color:#93a79d;font-size:8px}.sfp-layer-panel__body em{font-style:normal;font-size:9px;font-weight:850;color:#a8b9b0}.sfp-layer-panel.is-collapsed .sfp-layer-panel__body{display:none}.sfp-layer-panel.is-collapsed .sfp-layer-panel__head{border-bottom:0}
.sfp-layer-swatch{width:10px;height:10px;border-radius:2px;background:#fff}.sfp-layer-swatch--property{background:transparent;border:2px solid #00f7ff}.sfp-layer-swatch--stands{background:#b9dec8;border:1px solid #6e9481}.sfp-layer-swatch--planting{background:#36ec0d}.sfp-layer-swatch--tending{background:#ff00bf}

.sfp-map-results,.sfp-map-inspector{position:absolute;z-index:var(--sfp-map-panel-z);top:0;bottom:0;right:0;width:300px;display:flex;flex-direction:column;min-width:0;border-left:1px solid var(--sfp-line);background:rgba(250,251,249,.98);transform:translateX(101%);transition:transform .18s ease;box-shadow:-12px 0 32px rgba(6,24,18,.10)}
.sfp-map-results.is-open,.sfp-map-inspector.is-open{transform:none}.sfp-map-inspector{z-index:calc(var(--sfp-map-panel-z) + 2);width:340px}
.sfp-map-results__head,.sfp-map-inspector__head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:58px;padding:10px 12px;border-bottom:1px solid var(--sfp-line);background:#fff}.sfp-map-results__head>div,.sfp-map-inspector__head>div{display:grid;gap:2px;min-width:0}.sfp-map-results__head span,.sfp-map-inspector__head span{font-size:8px;font-weight:850;letter-spacing:.12em;color:#708078}.sfp-map-results__head strong,.sfp-map-inspector__head strong{overflow:hidden;text-overflow:ellipsis;font-size:13px;white-space:nowrap}.sfp-map-results__head button,.sfp-map-inspector__head button{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--sfp-line);border-radius:4px;background:#fff;color:#56645d;font-size:19px}
.sfp-map-results__list,.sfp-map-inspector__body{min-height:0;overflow:auto;overscroll-behavior:contain}.sfp-map-results__empty{padding:24px 16px;color:#75827c;font-size:10px;line-height:1.55;text-align:center}.sfp-map-results__limit{padding:10px 12px;border-top:1px solid var(--sfp-line);color:#7b8781;font-size:9px;line-height:1.5}
.sfp-map-result{width:100%;display:grid;grid-template-columns:9px minmax(0,1fr) 12px;align-items:center;gap:9px;padding:10px 12px;border:0;border-bottom:1px solid #e7ebe8;background:#fff;color:#15271f;text-align:left}.sfp-map-result:hover,.sfp-map-result.is-selected{background:#eff7f2}.sfp-map-result>i{width:8px;height:8px;border-radius:2px;background:#00f7ff}.sfp-map-result>i.is-stands{background:#a8d4ba}.sfp-map-result>i.is-planting{background:#36ec0d}.sfp-map-result>i.is-young_stand_tending{background:#ff00bf}.sfp-map-result>span{display:grid;gap:2px;min-width:0}.sfp-map-result b{overflow:hidden;text-overflow:ellipsis;font-size:10px;white-space:nowrap}.sfp-map-result small{overflow:hidden;text-overflow:ellipsis;color:#77837d;font-size:8px;white-space:nowrap}.sfp-map-result em{font-style:normal;color:#7d8983;font-size:18px}
.sfp-inspector-kpis{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--sfp-line)}.sfp-inspector-field{display:grid;gap:2px;min-width:0;padding:12px;border-right:1px solid var(--sfp-line);border-bottom:1px solid var(--sfp-line)}.sfp-inspector-field:nth-child(2n){border-right:0}.sfp-inspector-field span{color:#74817a;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.sfp-inspector-field strong{overflow-wrap:anywhere;font-size:13px}.sfp-inspector-section{padding:14px;border-bottom:1px solid var(--sfp-line)}.sfp-inspector-section h4{margin:0 0 8px;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.sfp-inspector-section .sfp-inspector-field{padding:7px 0;border:0}.sfp-inspector-note{margin:0;padding:12px 14px;color:#6d7973;font-size:9px;line-height:1.55}.sfp-inspector-action{display:flex;align-items:center;justify-content:space-between;min-height:40px;margin:12px;padding:0 11px;border:1px solid #bad3c5;border-radius:4px;background:#edf7f1;color:#195e43;font-size:10px;font-weight:850}.sfp-inspector-related{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid #edf0ee}.sfp-inspector-related:first-of-type{border-top:0}.sfp-inspector-related span{display:grid;min-width:0}.sfp-inspector-related b{font-size:10px}.sfp-inspector-related small{color:#74817a;font-size:8px}.sfp-inspector-related .sfp-inspector-action{margin:0;padding:0;border:0;background:transparent;min-height:auto;white-space:nowrap}.sfp-inspector-loading{padding:24px 16px;color:#6d7a73;font-size:10px;text-align:center}

.sfp-property-workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);min-width:0;margin:16px 0;border:1px solid var(--sfp-line);background:#fff}.sfp-property-workspace__map{position:relative;min-width:0;border-right:1px solid var(--sfp-line)}.sfp-property-workspace__map .sfp-property-map-canvas{position:relative;height:620px;min-height:520px}.sfp-property-workspace__map .sfp-map-loading{position:absolute;z-index:500;left:12px;top:12px}.sfp-property-map-error{position:absolute;z-index:510;left:12px;top:70px;max-width:320px;padding:9px 11px;border:1px solid #e5c3c3;border-radius:4px;background:#fff5f5;color:#8a3333;font-size:9px;font-weight:750}.sfp-property-map-note{position:absolute;z-index:509;left:12px;bottom:12px;max-width:min(420px,calc(100% - 24px));padding:9px 11px;border:1px solid #e7d4a3;border-radius:4px;background:#fff8e8;color:#6a4b15;font-size:9px;font-weight:750;line-height:1.45}
.sfp-property-workspace__stands{min-width:0;display:flex;flex-direction:column;max-height:692px}.sfp-property-workspace__stands .sfp-card__head{flex:0 0 auto}.sfp-property-stand-filter{padding:9px 10px;border-bottom:1px solid var(--sfp-line);background:#f8faf8}.sfp-property-stand-filter input{width:100%;height:36px;padding:0 10px;border:1px solid #cfd8d2;border-radius:4px;background:#fff;font-size:10px;outline:0}.sfp-property-stand-filter input:focus{border-color:#75ab8e;box-shadow:0 0 0 2px rgba(47,138,97,.10)}
.sfp-property-stand-list{min-height:0;overflow:auto;overscroll-behavior:contain}.sfp-stand-row{width:100%;display:grid;grid-template-columns:minmax(0,1.5fr) .7fr .55fr .55fr;gap:9px;align-items:center;padding:9px 10px;border:0;border-bottom:1px solid #e9edea;background:#fff;color:#14261e;text-align:left}.sfp-stand-row:hover,.sfp-stand-row:focus-visible{background:#f1f8f4;outline:0}.sfp-stand-row>span{display:grid;min-width:0}.sfp-stand-row b{overflow:hidden;text-overflow:ellipsis;font-size:9px;white-space:nowrap}.sfp-stand-row small{overflow:hidden;text-overflow:ellipsis;color:#7a8780;font-size:7px;white-space:nowrap}.sfp-list-limit-note{margin:0;padding:8px 10px;border-top:1px solid var(--sfp-line);background:#f8faf8;color:#7b8781;font-size:8px;line-height:1.45}.sfp-mini-list__button{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 0;border:0;border-bottom:1px solid #edf0ed;background:transparent;color:inherit;text-align:left}.sfp-mini-list__button:last-child{border-bottom:0}.sfp-mini-list__button:hover{color:var(--sfp-green)}.sfp-mini-list__button span{display:grid}.sfp-mini-list__button b{font-size:10px}.sfp-mini-list__button small{color:#7c8882;font-size:8px}.sfp-mini-list__button em{font-style:normal;font-size:9px;font-weight:800}
.sfp-kpi-grid--property{grid-template-columns:repeat(4,minmax(0,1fr))}

@media (max-width:1180px){
	.sfp-map-results{width:280px}.sfp-map-inspector{width:320px}
	.sfp-property-workspace{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr)}
}
@media (max-width:960px){
	.sfp-map-v2__toolbar{grid-template-columns:1fr 1fr auto}.sfp-map-search{grid-column:1/-1;grid-row:2}.sfp-map-filter{min-width:0}.sfp-map-v2__body{display:block;min-height:70vh}.sfp-map-v2__stage,.sfp-map--v2{height:70vh;min-height:540px}.sfp-map-results,.sfp-map-inspector{position:absolute;top:auto;left:0;right:0;bottom:0;width:100%;height:min(48vh,440px);border-left:0;border-top:1px solid var(--sfp-line);transform:translateY(101%)}.sfp-map-results.is-open,.sfp-map-inspector.is-open{transform:none}.sfp-layer-panel{bottom:18px}.sfp-map-results.is-open~.sfp-map-inspector:not(.is-open){pointer-events:none}
	.sfp-property-workspace{grid-template-columns:1fr}.sfp-property-workspace__map{border-right:0;border-bottom:1px solid var(--sfp-line)}.sfp-property-workspace__stands{max-height:520px}.sfp-kpi-grid--property{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
	.sfp-map-v2{margin:0 -14px;border-left:0;border-right:0}.sfp-map-v2__toolbar{padding:8px;gap:7px}.sfp-map-v2__toolbar-group{overflow:auto}.sfp-map-tool{min-height:36px;white-space:nowrap}.sfp-map-search{grid-template-columns:1fr;height:auto;padding:6px 9px;gap:2px}.sfp-map-search span{font-size:7px}.sfp-map-search input{height:28px}.sfp-map-filter{grid-template-columns:1fr;height:auto;padding:6px 9px;gap:2px}.sfp-map-filter span{font-size:7px}.sfp-map-filter select{height:28px}.sfp-map-v2__status{font-size:8px}.sfp-map-v2__stage,.sfp-map--v2{height:68vh;min-height:500px}.sfp-layer-panel{left:9px;bottom:10px;width:min(270px,calc(100% - 18px))}.sfp-layer-panel__body label{min-height:45px}.sfp-map-results,.sfp-map-inspector{height:min(52vh,460px)}.sfp-workspace__content--map .sfp-map-v2{min-height:68vh}
	.sfp-property-workspace{margin-left:-14px;margin-right:-14px;border-left:0;border-right:0}.sfp-property-atlas__toolbar{padding:10px}.sfp-property-map-controls{display:grid;grid-template-columns:1fr 1fr;width:100%}.sfp-property-map-controls button{min-width:0}.sfp-property-workspace__map .sfp-property-map-canvas{height:52vh;min-height:380px}.sfp-property-workspace__stands{max-height:none}.sfp-property-stand-list{max-height:460px}.sfp-stand-row{grid-template-columns:minmax(0,1.35fr) .7fr .55fr .55fr}.sfp-kpi-grid--property{grid-template-columns:1fr 1fr}
}
@media (max-width:480px){
	.sfp-map-v2__toolbar{grid-template-columns:1fr}.sfp-map-v2__toolbar-group,.sfp-map-filter,.sfp-map-search{grid-column:1}.sfp-map-v2__status{display:none}.sfp-map-v2__stage,.sfp-map--v2{height:66vh;min-height:460px}.sfp-layer-panel{width:calc(100% - 18px)}.sfp-map-controlbar{top:9px;left:9px}.sfp-map-controlbar button{width:34px;height:34px}.sfp-map-v2 .sfp-map-loading{left:52px;top:9px}.sfp-map-v2 .sfp-map-error{left:52px;top:50px}.sfp-map-measure{top:9px;right:9px}.sfp-map-results,.sfp-map-inspector{height:56vh}.sfp-inspector-kpis{grid-template-columns:1fr 1fr}.sfp-property-map-controls{grid-template-columns:1fr}.sfp-stand-row{grid-template-columns:minmax(0,1fr) .7fr}.sfp-stand-row>span:nth-child(n+3){display:none}.sfp-kpi-grid--property{grid-template-columns:1fr}.sfp-workspace__content--map .sfp-map-v2{min-height:66vh}
}

/* 2.3.1 map/workspace refinements */
.sfp-layer-panel__section{display:grid;gap:4px;padding:5px 0}.sfp-layer-panel__section+.sfp-layer-panel__section{margin-top:5px;padding-top:10px;border-top:1px solid var(--sfp-line)}
.sfp-layer-panel__section-title{padding:2px 9px 4px;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--sfp-muted)}
.sfp-layer-swatch--base-topo{background:linear-gradient(135deg,#d7ead1 0 45%,#e9e0bd 45% 72%,#bdd7ea 72%)}
.sfp-layer-swatch--base-gray{background:linear-gradient(135deg,#e8ece9 0 45%,#cfd5d1 45% 72%,#f5f6f5 72%);border-color:#9ca8a1}
.sfp-filterbar--work{grid-template-columns:minmax(240px,1.5fr) minmax(170px,.8fr) minmax(170px,.8fr) auto;align-items:center}
@media(max-width:900px){.sfp-filterbar--work{grid-template-columns:1fr 1fr}.sfp-filterbar--work .sfp-search{grid-column:1/-1}.sfp-filterbar--work .sfp-button{width:100%}}
@media(max-width:560px){.sfp-filterbar--work{grid-template-columns:1fr}.sfp-filterbar--work .sfp-search{grid-column:1}.sfp-filterbar--work select,.sfp-filterbar--work .sfp-button{width:100%}}

/* Full-viewport map route overrides */
.sfp-workspace__content--map .sfp-map-v2{margin:0}

/* 2.4.0 inspector and full-canvas refinements */
.sfp-map-v2__stage{width:100%}
.sfp-inspector-value{margin:0;color:#21352c;font-size:11px;font-weight:750;line-height:1.55;overflow-wrap:anywhere}
.sfp-inspector-breakdown{display:grid;gap:1px;margin-top:9px;border:1px solid #e2e8e4;background:#e2e8e4}
.sfp-inspector-breakdown>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:8px 9px;background:#fff}
.sfp-inspector-breakdown span{font-size:9px;font-weight:800;color:#293d34}
.sfp-inspector-breakdown b{font-size:9px;color:#173f30;font-variant-numeric:tabular-nums}
.sfp-inspector-breakdown small{grid-column:1/-1;color:#78857f;font-size:8px}

/* 2.4.1 candidate-data quality */
.sfp-inspector-note--inline{margin:10px 0 0;padding:9px 10px;border:1px solid #eadfbf;border-radius:4px;background:#fff9e9;color:#6d5a2c}
