:root{color-scheme:light;--brand:#167c59;--brand-dark:#0f6246;--brand-soft:#eaf7f1;--ink:#152033;--muted:#667085;--line:#e3e8ef;--canvas:#f4f7f9;--danger:#c83d4d;--warning:#a76306;--success:#14805e;--shadow:0 2px 4px rgba(16,24,40,.03),0 12px 32px rgba(16,24,40,.06);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}html{min-height:100%}body,html{background:var(--canvas)}body{margin:0;min-height:100vh}a{color:var(--brand-dark)}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{overflow-wrap:anywhere}h1{margin:0;font-size:clamp(1.65rem,2.4vw,2.25rem);line-height:1.15;letter-spacing:-.035em}h2{margin:0 0 16px;font-size:1.18rem;line-height:1.25;letter-spacing:-.015em}h3{margin:0 0 10px;font-size:1rem}p{line-height:1.55}.portal-sidebar{background:#10291f;color:#fff;flex-direction:column;height:100vh;left:0;overflow-y:auto;position:fixed;top:0;width:276px;z-index:50}.portal-brand{display:flex;min-height:52px;padding:0 8px 22px}.portal-brand>div{display:grid;gap:3px;min-width:0}.portal-brand strong{font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-brand small{color:#91b0a4;font-size:.74rem}.portal-logo{align-items:center;background:linear-gradient(145deg,#40b98a,#1c8a63);border-radius:14px;box-shadow:0 8px 22px rgba(0,0,0,.22);display:flex;flex:0 0 44px;font-size:.78rem;font-weight:800;height:44px;justify-content:center;letter-spacing:.04em}.portal-nav{display:grid;gap:5px;overflow-y:auto;padding:8px 0}.portal-nav a{align-items:center;border-radius:10px;color:#b9ccc4;display:flex;font-size:.93rem;font-weight:600;gap:12px;padding:11px 13px;text-decoration:none;transition:background .18s ease,color .18s ease,transform .18s ease}.portal-nav a:hover{background:rgba(255,255,255,.07);color:#fff;transform:translateX(2px)}.portal-nav a.active{color:#123f30;box-shadow:0 6px 20px rgba(0,0,0,.16)}.portal-nav svg,.portal-user svg{fill:none;flex:0 0 20px;height:20px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;width:20px}.portal-user{align-items:center;border-top:1px solid rgba(255,255,255,.1);display:grid;gap:10px;grid-template-columns:38px 1fr auto;margin-top:auto;padding:18px 6px 2px}.portal-user>div{display:grid;gap:2px;min-width:0}.portal-user strong{font-size:.84rem}.portal-user small,.portal-user strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-user small{color:#91b0a4;font-size:.72rem}.topbar-avatar,.user-avatar{align-items:center;background:#dff5eb;border-radius:50%;color:#155b43;display:flex;font-size:.76rem;font-weight:800;height:38px;justify-content:center;width:38px}.portal-user button{background:transparent;border:0;color:#91b0a4;cursor:pointer;display:flex;padding:6px}.portal-user button:hover{color:#fff}.portal-workspace{min-height:100vh;margin-left:276px}.portal-topbar{background:rgba(255,255,255,.88);border-bottom:1px solid rgba(227,232,239,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:30}.portal-topbar>div{display:grid;gap:2px}.portal-topbar span{color:var(--muted);font-size:.75rem}.portal-topbar strong{font-size:1rem}.topbar-avatar{display:none}.portal-content{min-width:0}.menu-close,.menu-toggle,.sidebar-backdrop{display:none}.admin-shell{margin:0 auto;max-width:1280px;padding:30px 32px 64px;width:100%}.admin-shell>a:first-child{align-items:center;color:var(--muted);display:inline-flex;font-size:.86rem;margin-bottom:18px;text-decoration:none}.admin-shell>a:first-child:hover{color:var(--brand)}.admin-header,.tenant-title{align-items:flex-end;display:flex;gap:24px;justify-content:space-between;margin-bottom:24px}.admin-header>div,.tenant-title>div{display:grid;gap:7px}.admin-header p,.tenant-title p{color:var(--muted);margin:0}.tenant-title>strong{background:var(--brand-soft);border-radius:999px;color:var(--brand-dark);padding:8px 13px}.eyebrow{color:var(--brand)!important;font-size:.72rem;font-weight:800;letter-spacing:.1em;margin:0;text-transform:uppercase}.page-subtitle{color:var(--muted);margin:8px 0 0;max-width:720px}.section-stack{display:grid;gap:20px}.admin-card,.metric-grid article{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:22px}.admin-card+.admin-card{margin-top:20px}.admin-card>:first-child{margin-top:0}.admin-card>:last-child{margin-bottom:0}.card-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:18px}.card-header h2{margin-bottom:4px}.card-header p{color:var(--muted);margin:0}.empty-state{align-items:center;color:var(--muted);display:flex;flex-direction:column;justify-content:center;min-height:160px;padding:24px;text-align:center}.metric-grid{display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:22px}.metric-grid article{min-height:124px;position:relative}.metric-grid span{color:var(--muted);display:block;font-size:.82rem;font-weight:600}.metric-grid strong{display:block;font-size:clamp(1.65rem,2.4vw,2.2rem);letter-spacing:-.04em;margin-top:13px}.metric-grid small{color:var(--muted);margin-top:6px}.button{align-items:center;background:var(--brand);border:1px solid var(--brand);border-radius:10px;box-shadow:0 5px 14px rgba(22,124,89,.16);color:white;cursor:pointer;display:inline-flex;font-weight:700;gap:8px;justify-content:center;min-height:42px;padding:10px 16px;text-decoration:none;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.button:hover{background:var(--brand-dark);border-color:var(--brand-dark);box-shadow:0 7px 18px rgba(22,124,89,.22);transform:translateY(-1px)}.button:active{transform:translateY(0)}.button:disabled{cursor:wait;opacity:.62;transform:none}.button.secondary{background:#fff;border-color:var(--line);box-shadow:none;color:var(--ink)}.button.secondary:hover{background:#f8fafb;border-color:#cbd3dd}.button.ghost{background:transparent;border-color:transparent;box-shadow:none;color:var(--brand-dark)}.button.ghost:hover{background:var(--brand-soft);border-color:transparent}.button.danger,.danger{background:#fff1f2;border-color:#ffd6da;box-shadow:none;color:var(--danger)}.button.danger:hover,.danger:hover{background:#ffe5e8;border-color:#ffc8ce}.action-links{align-items:center;display:flex;flex-wrap:wrap}.form-grid{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid>.button,.form-grid>h2,.form-grid>p{grid-column:1/-1}label{color:#344054;display:grid;font-size:.86rem;font-weight:700}label small{color:var(--muted);font-size:.74rem;font-weight:500;line-height:1.4}input,select,textarea{background:#fff;border:1px solid #cdd5df;border-radius:10px;color:var(--ink);min-height:44px;outline:none;padding:10px 12px;transition:border-color .18s ease,box-shadow .18s ease;width:100%}input:focus,select:focus,textarea:focus{border-color:#3b9f7b;box-shadow:0 0 0 4px rgba(22,124,89,.1)}input::placeholder,textarea::placeholder{color:#98a2b3}textarea{min-height:106px;resize:vertical}fieldset{border:1px solid var(--line);border-radius:13px;display:grid;gap:16px;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:18px}legend{color:var(--ink);font-weight:800;padding:0 6px}.wide{grid-column:1/-1}.checkbox{align-items:center;display:flex;gap:9px}.checkbox input,input[type=checkbox],input[type=radio]{accent-color:var(--brand);min-height:18px;width:18px}.inline-form{align-items:end;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;padding-top:16px}.inline-form>label{flex:1 1 190px}.filter-form{align-items:end;display:grid;gap:12px;grid-template-columns:minmax(220px,2fr) minmax(180px,1fr) auto;margin-bottom:20px}.tenant-table{overflow-x:auto;width:100%}.tenant-row{align-items:center;border-top:1px solid var(--line);display:grid;gap:16px;grid-template-columns:2fr 1.2fr 1fr 1fr auto;min-width:700px;padding:15px 2px}.tenant-row.heading{border-top:0;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.04em;padding-top:0;text-transform:uppercase}.tenant-row strong{display:block}.tenant-row small{color:var(--muted);display:block;font-size:.78rem;margin-top:4px}.plot-row{align-items:center;border-top:1px solid var(--line);display:grid;gap:16px;grid-template-columns:1.2fr 2fr 1fr 1fr auto;min-width:680px;padding:15px 2px}.plot-row.heading{border-top:0;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.badge{align-items:center;background:#f0f2f5;border-radius:999px;color:#475467;display:inline-flex;font-size:.73rem;font-weight:800;white-space:nowrap}.badge.success{background:#e7f7f0;color:#087354}.badge.warning{background:#fff4dc;color:#8a5200}.badge.danger{background:#fff0f2;color:#b4233b}.badge.neutral{background:#f0f2f5;color:#475467}.cabinet-link{align-items:center;border-top:1px solid var(--line);color:inherit;display:flex;gap:16px;justify-content:space-between;padding:16px 3px;text-decoration:none;transition:color .18s ease,padding .18s ease}.cabinet-link:hover{color:var(--brand);padding-left:7px}.cabinet-link small{color:var(--muted);display:block;font-size:.78rem;margin-top:4px}.card-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.contact-card,.feature-card{align-items:flex-start;background:#f8faf9;border:1px solid var(--line);border-radius:13px;color:inherit;display:flex;gap:14px;padding:18px;text-decoration:none}.contact-card p,.feature-card p{color:var(--muted);margin:3px 0 10px}.feature-card{transition:border-color .18s ease,transform .18s ease}.feature-card:hover{border-color:#91c8b4;transform:translateY(-2px)}.avatar,.feature-icon{align-items:center;background:var(--brand-soft);border-radius:12px;color:var(--brand-dark);display:flex;flex:0 0 42px;font-weight:800;height:42px;justify-content:center}.avatar{border-radius:50%}.feed-item{border-top:1px solid var(--line);padding:20px 2px 4px}.feed-item:first-of-type{border-top:0;padding-top:2px}.feed-item h3{font-size:1.08rem;margin-top:12px}.feed-item p{white-space:pre-wrap}.message-thread{display:grid;gap:12px}.message-bubble{background:#f4f7f6;border-radius:14px 14px 14px 4px;max-width:760px;padding:14px 16px}.message-bubble p{margin:4px 0 0}.meter-card{align-items:end;border-top:1px solid var(--line);display:grid;gap:14px;grid-template-columns:minmax(220px,1.5fr) repeat(2,minmax(160px,1fr)) auto;padding:20px 0}.meter-card:first-child{border-top:0;padding-top:0}.meter-card h3{margin:10px 0 3px}.meter-card p,.meter-card small{color:var(--muted);margin:0}.poll-results{background:#f8faf9;border-radius:12px;display:grid;gap:1px;margin:18px 0;overflow:hidden}.poll-results>div{align-items:center;background:#fff;display:flex;justify-content:space-between;padding:11px 14px}.comment-list{border-left:3px solid var(--brand-soft);display:grid;gap:8px;margin:18px 0;padding-left:14px}.comment-list p{display:grid;gap:2px;margin:0}.comment-list span{color:var(--muted)}.user-card{border-top:1px solid var(--line);padding:20px 2px}.user-card:first-of-type{border-top:0;padding-top:0}.user-summary{align-items:center;display:grid;gap:13px;grid-template-columns:42px 1fr auto}.user-summary small{color:var(--muted);display:block;margin-top:4px}details summary{color:var(--ink);cursor:pointer;font-weight:800;list-style-position:inside}.user-card details{background:#f8faf9;border-radius:10px;margin-top:14px;padding:12px 14px}.split-grid{display:grid;gap:22px;grid-template-columns:repeat(2,minmax(0,1fr));margin:22px 0}.compact-form{background:#f8faf9;border:1px solid var(--line);border-radius:12px;padding:18px}.compact-form h3{grid-column:1/-1}.barrier-card{align-items:center;display:flex;gap:18px}.barrier-card>div:nth-child(2){flex:1 1}.barrier-card h2,.barrier-card p{margin:0}.breadcrumbs{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;font-size:.84rem;gap:8px;margin-bottom:18px}.breadcrumbs a{color:var(--brand-dark);text-decoration:none}.danger-zone{align-items:center;background:#fff7f8;border:1px solid #ffd6da;border-radius:14px;display:flex;gap:20px;justify-content:space-between;margin-top:20px;padding:18px 20px}.danger-zone p{color:var(--muted);margin:4px 0 0}.upload-card{align-items:center;display:grid;gap:22px;grid-template-columns:1.5fr 1fr auto}.upload-card h2,.upload-card p{margin:0}.upload-card p{color:var(--muted);margin-top:6px}.notice{background:var(--brand-soft);border:1px solid #cbe9dc;border-radius:12px;color:#155b43;margin-bottom:18px;padding:14px 16px}.notice p{margin:4px 0 0}.form-actions{display:flex;justify-content:flex-end;margin-top:18px}.plot-create-flow{display:grid;gap:20px}.plot-create-flow .admin-card+.admin-card{margin-top:0}.step-badge{align-items:center;background:var(--brand-soft);border-radius:50%;color:var(--brand-dark);display:inline-flex;float:left;font-size:.78rem;font-weight:900;height:30px;justify-content:center;margin-right:10px;width:30px}.step-badge+h2{padding-top:3px}.people-editor{display:grid;gap:16px}.person-card{background:#f9fbfa;display:block}.person-card .form-grid{margin-top:16px}.person-card-head{align-items:end;display:flex;gap:14px;justify-content:space-between}.person-card-head label{flex:1 1;max-width:360px}.button.compact{min-height:40px;padding:8px 12px}.save-panel{align-items:center;background:#10291f;border-radius:16px;box-shadow:var(--shadow);color:#fff;display:flex;gap:24px;justify-content:space-between;padding:20px 22px;position:sticky;bottom:16px;z-index:10}.save-panel p{color:#b9ccc4;margin:3px 0 0}.save-panel .button{background:#fff;border-color:#fff;color:#123f30;min-width:260px}.bulk-charge-card{border-color:#b8e0d0;box-shadow:0 2px 4px rgba(16,24,40,.03),0 12px 32px rgba(22,124,89,.09)}.plot-filter-grid{align-items:end;display:grid;gap:12px;grid-template-columns:minmax(280px,2fr) minmax(180px,1fr) minmax(190px,1fr) auto auto;margin-bottom:22px}.plot-filter-grid .search-field{min-width:0}.filter-more{position:relative}.filter-more>summary{align-items:center;border:1px solid var(--line);border-radius:10px;cursor:pointer;display:flex;font-weight:800;min-height:44px;padding:10px 13px;white-space:nowrap}.filter-more[open]>div{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);display:grid;gap:12px;margin-top:8px;min-width:260px;padding:14px;position:absolute;right:0;z-index:20}.plot-card-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.plot-tile{background:#eef3f7;border:1px solid transparent;border-radius:18px;color:var(--ink);display:flex;flex-direction:column;min-height:245px;padding:22px;text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.plot-tile:hover{border-color:#9bcdb9;box-shadow:var(--shadow);transform:translateY(-3px)}.plot-tile.unowned{background:#fff;border:1px dashed #98a2b3}.plot-tile-address{color:var(--muted);font-size:.82rem;font-weight:700}.plot-tile h2{font-size:1.12rem;margin:7px 0 0}.plot-tile-spacer{flex:1 1;min-height:28px}.plot-tile>strong{font-size:1.05rem}.plot-tile p{margin:8px 0}.plot-tile-meta{color:var(--muted);font-size:.75rem;margin-top:auto}.member-search{align-items:end;display:grid;gap:12px;grid-template-columns:minmax(260px,1fr) auto;margin-bottom:18px}.invite-panel{margin-bottom:20px}.embedded-editor>summary,.invite-panel>summary,.plot-edit-panel>summary{cursor:pointer;font-weight:800}.embedded-editor[open]>summary,.invite-panel[open]>summary,.plot-edit-panel[open]>summary{margin-bottom:18px}.member-grid{display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.member-tile{align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);color:inherit;display:grid;gap:16px;grid-template-columns:68px 1fr auto;min-height:142px;padding:20px;text-decoration:none;transition:border-color .18s ease,transform .18s ease}.member-tile:hover{border-color:#95cbb6;transform:translateY(-2px)}.member-tile h2{font-size:1rem;margin:9px 0 4px}.member-tile p{margin:0}.member-tile small{color:var(--muted);display:block;line-height:1.45;margin-top:6px}.member-avatar{background:#e9f3ef;border-radius:50%;height:68px;object-fit:cover;width:68px}.member-avatar.fallback,.profile-avatar.fallback{align-items:center;color:var(--brand-dark);display:flex;font-weight:900;justify-content:center}.member-arrow{color:var(--brand);font-size:1.4rem}.member-profile-header{align-items:center;display:flex;gap:22px;margin-bottom:22px}.member-profile-header h1{margin-top:9px}.member-profile-header p{color:var(--muted);margin:6px 0 0}.profile-avatar{background:#e9f3ef;border-radius:50%;height:104px;object-fit:cover;width:104px}.profile-contact-bar{align-items:center;background:#fff;border:1px solid var(--line);border-radius:15px;display:flex;gap:12px;margin-bottom:20px;padding:16px}.profile-activity{color:var(--muted);margin-left:auto}.button.max-button{background:#5b28e6;border-color:#5b28e6}.button.max-button:hover{background:#481ac8;border-color:#481ac8}.button.disabled{cursor:default;opacity:.55;pointer-events:none}.profile-plot-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.profile-plot{background:#f4f7f9;border:1px solid var(--line);border-radius:13px;color:inherit;display:grid;gap:7px;padding:17px;text-decoration:none}.profile-plot:hover{border-color:#95cbb6}.profile-plot small,.profile-plot span{color:var(--muted)}.profile-settings-grid{display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0}.profile-settings-grid .admin-card+.admin-card{margin-top:0}.access-control-card{align-items:center;background:#eff9f5;border:1px solid #bfe4d5;border-radius:15px;display:flex;gap:20px;justify-content:space-between;padding:18px 20px}.access-control-card.suspended{background:#fff4f5;border-color:#ffd0d5}.access-control-card p{color:var(--muted);margin:4px 0 0}.plot-metrics .date-value{font-size:clamp(1.2rem,2vw,1.7rem)}.plot-facts dl{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.plot-facts dl>div{background:#f7f9fa;border-radius:12px;padding:14px}.plot-facts dt{color:var(--muted);font-size:.76rem;font-weight:700}.plot-facts dd{font-weight:800;margin:7px 0 0}.plot-people-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.plot-person-card{background:#eef3f7;border-radius:16px;display:grid;gap:18px;padding:20px}.person-card-profile{align-items:flex-start;display:flex;gap:13px}.person-card-profile>img{border-radius:50%;height:48px;object-fit:cover;width:48px}.person-card-profile strong{display:block;margin-top:12px}.person-card-profile p{color:var(--muted);margin:5px 0 0}.person-contact-actions{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.embedded-editor{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.plot-edit-panel{margin-top:20px;scroll-margin-top:90px}.edit-panel-content>.admin-card{border:0;box-shadow:none;margin-top:10px;padding:0}.payment-entry-card{border-color:#b8e0d0}.finance-charge-row{align-items:center;border-top:1px solid var(--line);display:grid;gap:14px;grid-template-columns:1fr 1.5fr .8fr .8fr .8fr auto;min-width:980px;padding:14px 2px}.finance-charge-row.heading{border-top:0;color:var(--muted);font-size:.74rem;font-weight:800;text-transform:uppercase}.finance-charge-row small{color:var(--muted);display:block;margin-top:4px}.plot-form-page{max-width:1180px}.reference-flow{gap:0}.flow-title{font-size:clamp(1.35rem,2vw,1.75rem);margin:28px 0 16px}.reference-flow>.flow-title:first-of-type{margin-top:4px}.plot-form-panel{background:#e9e9e9;border:0;padding:26px}.plot-basics-grid{display:grid;gap:16px;grid-template-columns:minmax(280px,2fr) minmax(160px,1fr) minmax(160px,1fr)}.person-form-panel{margin-bottom:14px;position:relative}.person-form-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.share-field{max-width:100%}.phone-control,.suffix-control{align-items:center;background:#fff;border:1px solid #cdd5df;border-radius:10px;display:flex;overflow:hidden}.phone-control:focus-within,.suffix-control:focus-within{border-color:#3b9f7b;box-shadow:0 0 0 4px rgba(22,124,89,.1)}.phone-control>span{font-weight:800;padding-left:14px}.suffix-control>span{font-weight:800;padding-right:14px}.phone-control input,.suffix-control input{border:0;border-radius:0;box-shadow:none!important}.remove-person{background:transparent;color:var(--danger);position:absolute;right:20px;top:12px}.add-more-person,.remove-person{border:0;cursor:pointer;font-weight:800}.add-more-person{color:#fff;min-height:48px;width:100%}.add-more-person:hover{background:#2a2a2a}.internal-note textarea{background:#fff;min-height:160px}.plot-edit-basic>.button,.save-plot-button{margin-top:28px;width:100%}.plot-edit-basic{display:grid}.edit-person-title{margin-top:42px}.plot-toolbar{align-items:end;display:grid;gap:14px;grid-template-columns:minmax(320px,2fr) minmax(190px,1fr) minmax(210px,1fr) auto;margin:26px 0 30px}.plot-toolbar input,.plot-toolbar select{background:#f2f3f4;border-color:transparent}.plot-toolbar .filter-submit{min-width:100px}.plot-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.plot-tile{box-shadow:none;min-height:250px}.plot-detail-page{background:#fff}.plot-content-section{margin-top:42px}.plot-content-section .card-header{margin-bottom:20px}.plot-facts dl{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px}.plot-facts dl>div{background:transparent;border-radius:0;padding:0}.plot-facts dt{color:var(--ink);font-size:.92rem;font-weight:500}.plot-facts dd{font-size:1rem;margin-top:4px}.plot-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plot-person-card{box-shadow:none;min-height:250px}@media (max-width:1180px){.plot-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.auth-page{align-items:center;background:radial-gradient(circle at 15% 15%,#dff6eb 0,transparent 30%),radial-gradient(circle at 88% 75%,#e4efe9 0,transparent 34%),#f6f8f7;display:grid;min-height:100vh;padding:24px}.auth-card{background:rgba(255,255,255,.96);border:1px solid rgba(220,228,224,.9);border-radius:22px;box-shadow:0 24px 80px rgba(17,55,42,.14);margin:auto;max-width:510px;padding:clamp(24px,5vw,40px);width:100%}.auth-card h1{margin:8px 0 10px}.auth-card>p{color:var(--muted)}.auth-card .form-grid{grid-template-columns:1fr;margin:24px 0 18px}.auth-card .button{width:100%}.auth-card.home-card{max-width:720px;text-align:center}.home-card .auth-brand{justify-content:center}.home-card>p:not(.eyebrow){font-size:1.05rem;margin-left:auto;margin-right:auto;max-width:570px}.auth-actions{display:flex;gap:12px;justify-content:center;margin-top:28px}.auth-actions .button{width:auto}.auth-brand{align-items:center;display:flex;gap:10px;margin-bottom:28px}.auth-brand .portal-logo{color:#fff}.tenant-logo{background:#fff;border:1px solid var(--line);border-radius:14px;height:48px;object-fit:contain;padding:4px;width:48px}.auth-page[style] .button{background:var(--tenant-brand,var(--brand));border-color:var(--tenant-brand,var(--brand))}.auth-note{background:var(--brand-soft);border-radius:10px;color:var(--brand-dark);font-size:.82rem;margin:16px 0;padding:11px 13px}.alert{background:#fff4f4;border:1px solid #ffd9dd;color:#a82438!important}.alert,.form-message{border-radius:10px;padding:11px 13px}.form-message{flex:1 1 100%;margin:0}.form-message.success{background:#e7f7f0;color:#087354}.form-message.error{background:#fff0f2;color:#b4233b}.image-preview{align-items:center;background:#f8faf9;border:1px solid var(--line);border-radius:12px;display:flex;gap:12px;padding:12px}.image-preview img{border-radius:10px;height:64px;object-fit:contain;width:64px}.image-preview span{color:var(--muted);font-size:.82rem;font-weight:700}.access-links-card{align-items:center;display:flex;gap:22px;justify-content:space-between}.access-links-card h2,.access-links-card p{margin:0}.access-links-card p{color:var(--muted);margin-top:5px}.access-links-card code{background:#f0f4f2;border-radius:8px;color:var(--brand-dark);padding:10px 12px}.service-admin-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.service-admin-card{border:1px solid var(--line);border-radius:14px;overflow:hidden}.service-admin-card .form-grid{padding:18px}.service-banner{background:#e8efec;display:block;height:190px;object-fit:cover;width:100%}.service-banner.placeholder{align-items:center;color:var(--muted);display:flex;font-weight:800;justify-content:center}.checkbox-stack{align-content:center;display:grid;gap:10px}.service-catalog{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-bottom:20px}.service-catalog-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}.service-catalog-card>div:last-child{padding:18px}.service-catalog-card .card-header{margin-bottom:8px}.service-catalog-card h2{margin:0}.service-catalog-card p{color:var(--muted);min-height:48px}.analytics-tabs{align-items:center;background:#e8eeeb;border-radius:12px;display:inline-flex;gap:4px;margin-bottom:22px}.analytics-tabs a{border-radius:9px;color:var(--muted);font-weight:800;padding:10px 18px;text-decoration:none}.analytics-tabs a.active{background:#fff;box-shadow:0 3px 10px rgba(16,24,40,.08);color:var(--brand-dark)}.analytics-filter{align-items:end;display:flex;gap:12px;margin-bottom:20px}.analytics-filter label{min-width:min(360px,100%)}.service-order-row{align-items:center;border-top:1px solid var(--line);display:grid;gap:16px;grid-template-columns:1.6fr 1.4fr 1.2fr 1fr .8fr;min-width:980px;padding:15px 2px}.service-order-row.heading,.subscription-row.heading{border-top:0;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.service-order-row small,.subscription-row small{color:var(--muted);display:block;margin-top:4px}.person-cell{align-items:center;display:flex;gap:10px}.person-cell>img{background:#eef3f1;border-radius:50%;height:42px;object-fit:cover;width:42px}.person-cell a{display:block;font-size:.78rem;margin-top:4px;text-decoration:none}.subscription-row{align-items:center;border-top:1px solid var(--line);display:grid;gap:16px;grid-template-columns:1.4fr 1.2fr 1fr 1fr .8fr auto;min-width:900px;padding:15px 2px}@media (max-width:1100px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-sidebar{width:244px}.portal-workspace{margin-left:244px}}@media (max-width:820px){.portal-sidebar{box-shadow:18px 0 50px rgba(4,24,17,.24);transform:translateX(-105%);transition:transform .24s ease;width:min(86vw,292px)}.portal-sidebar.open{transform:translateX(0)}.portal-workspace{margin-left:0}.portal-topbar{height:64px;padding:0 18px}.topbar-avatar{display:flex}.menu-toggle{background:transparent;border:0;display:grid;gap:4px;padding:7px}.menu-toggle span{background:var(--ink);border-radius:3px;height:2px;width:21px}.menu-close{background:transparent;border:0;color:#fff;display:block;font-size:1.6rem;margin-left:auto}.sidebar-backdrop{background:rgba(5,20,15,.42);border:0;display:block;inset:0;position:fixed;z-index:40}.admin-shell{padding:22px 18px 52px}.filter-form,.form-grid,.meter-card,.person-form-grid,.plot-basics-grid,.plot-filter-grid,.plot-toolbar,.profile-settings-grid,.split-grid,.upload-card,fieldset{grid-template-columns:1fr}.access-links-card,.analytics-filter,.profile-contact-bar{align-items:stretch;flex-direction:column}.profile-activity{margin-left:0}.filter-more[open]>div{position:static}.save-panel{align-items:stretch;bottom:8px;flex-direction:column}.save-panel .button{min-width:0;width:100%}.form-grid>.button{width:100%}.admin-header,.tenant-title{align-items:flex-start;flex-direction:column}}@media (max-width:560px){body{font-size:14px}.metric-grid{grid-template-columns:1fr}.admin-card,.metric-grid article{border-radius:13px;padding:18px}.inline-form{align-items:stretch;flex-direction:column}.inline-form>label{flex-basis:auto}.inline-form .button{width:100%}.card-header,.person-card-head{align-items:stretch;flex-direction:column}.person-card-head label{max-width:none}.access-control-card,.barrier-card,.danger-zone,.member-profile-header{align-items:stretch;flex-direction:column}.member-grid{grid-template-columns:1fr}.member-tile{grid-template-columns:54px 1fr auto}.member-avatar{height:54px;width:54px}.plot-facts dl{grid-template-columns:1fr}.plot-card-grid,.plot-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.person-contact-actions{grid-template-columns:1fr}.user-summary{align-items:flex-start;grid-template-columns:38px 1fr}.user-summary .badge{grid-column:2;justify-self:start}.analytics-tabs{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.analytics-tabs a{padding:9px 7px;text-align:center}.plot-card-grid,.plot-people-grid{grid-template-columns:1fr}.plot-form-panel{border-radius:14px;padding:18px}}:root{--brand:#111111;--brand-dark:#000000;--brand-soft:#f0ebff;--ink:#111114;--muted:#71717a;--line:#e9e7ee;--surface:#ffffff;--canvas:#aaa6c0;--shadow:0 18px 55px rgba(52,43,82,.16)}body,html{background:#aaa6c0}body{background:radial-gradient(circle at 58% 13%,#c9c5ec 0,transparent 33%),linear-gradient(135deg,#aaa6c0,#9ba8d0);color:var(--ink);font-family:Manrope,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}h1{font-size:clamp(2rem,2.8vw,3rem);letter-spacing:-.055em;line-height:1.03}h1,h2{font-weight:800}h2{font-size:1.05rem;letter-spacing:-.035em}.portal-shell{align-items:flex-start;display:flex;padding:clamp(18px,6.3vw,96px) clamp(12px,6.3vw,96px)}.portal-frame{background:rgba(250,250,255,.92);border:1px solid rgba(255,255,255,.74);border-radius:25px;box-shadow:0 26px 80px rgba(46,38,79,.24);margin:auto;max-width:1320px;min-height:min(936px,calc(100vh - 12.6vw));overflow:hidden}.portal-topbar{align-items:center;background:rgba(255,255,255,.48);border:0;border-bottom:1px solid rgba(225,222,238,.95);display:grid;grid-template-columns:minmax(200px,1fr) auto minmax(200px,1fr);height:82px;padding:0 26px;position:relative}.portal-brand{align-items:center;color:var(--ink);display:inline-flex;font-size:1rem;font-weight:700;gap:12px;min-width:0;text-decoration:none}.portal-logo{background:linear-gradient(145deg,#7f2dff,#bf69ff);border-radius:50%;box-shadow:0 7px 16px rgba(131,46,255,.25);color:#fff;flex:0 0 38px;font-size:.68rem;height:38px;letter-spacing:0;width:38px}.portal-topnav{align-items:center;display:flex;gap:7px;justify-content:center}.portal-topnav a{border-radius:999px;color:#232128;font-size:.79rem;font-weight:700;padding:11px 15px;text-decoration:none;white-space:nowrap}.portal-topnav a.active{background:#111;box-shadow:0 5px 12px rgba(0,0,0,.12);color:#fff}.portal-account{align-items:center;display:flex;gap:10px;justify-content:flex-end;min-width:0}.portal-account>div{display:grid;gap:2px;min-width:0}.portal-account strong{font-size:.78rem}.portal-account small,.portal-account strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-account small{color:var(--muted);font-size:.68rem}.topbar-avatar{align-items:center;background:#ebe6f4;border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.08);color:#51338a;display:flex;flex:0 0 38px;font-size:.72rem;font-weight:900;height:38px;justify-content:center;width:38px}.portal-body{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:calc(min(936px, 100vh - 12.6vw) - 82px)}.portal-sidebar{background:linear-gradient(180deg,rgba(235,243,255,.91),rgba(249,250,255,.94));border:0;border-right:1px solid rgba(225,222,238,.95);color:var(--ink);display:flex;height:auto;left:auto;min-height:100%;overflow:hidden;padding:25px 14px 14px;position:static;top:auto;width:auto;z-index:auto}.portal-sidebar-caption{color:#8a8795;font-size:.67rem;font-weight:800;letter-spacing:.07em;margin:0 12px 15px;text-transform:uppercase}.portal-nav{gap:4px;overflow:visible;padding:0}.portal-nav a{border-radius:14px;color:#2e2c34;font-size:.84rem;font-weight:700;gap:11px}.portal-nav a:hover{background:rgba(255,255,255,.72);color:#111;transform:none}.portal-nav a.active{background:#fff;box-shadow:0 5px 18px rgba(84,82,113,.08);color:#111}.portal-nav svg{height:19px;stroke-width:1.75;width:19px}.portal-user{background:rgba(255,255,255,.64);border:0;border-radius:16px;gap:8px;grid-template-columns:34px 1fr auto;margin:auto 0 0;padding:10px}.portal-user strong{color:var(--ink);font-size:.72rem}.portal-user small{color:var(--muted);font-size:.64rem}.portal-user button{color:#63606e}.portal-user button:hover{color:#111}.user-avatar{background:#dfd7ee;color:#4e3579;height:34px;width:34px}.portal-workspace{background:rgba(249,250,255,.72);margin:0;min-height:0}.portal-content{min-height:100%}.admin-shell{max-width:100%;padding:31px 33px 42px}.admin-header,.tenant-title{align-items:flex-start;margin-bottom:26px}.admin-header>div,.tenant-title>div{gap:5px}.eyebrow{color:#7b7787!important;font-size:.65rem;letter-spacing:.09em}.page-subtitle{font-size:.86rem;line-height:1.45;margin-top:9px;max-width:650px}.admin-card,.metric-grid article{background:rgba(255,255,255,.76);border:1px solid rgba(229,227,237,.94);border-radius:20px;box-shadow:0 6px 19px rgba(66,58,96,.045);padding:21px}.metric-grid{gap:12px;margin-bottom:14px}.metric-grid article{min-height:116px;padding:19px 20px}.metric-grid span{color:#686571;font-size:.73rem;font-weight:700}.metric-grid strong{font-size:clamp(1.45rem,2vw,2rem);margin-top:18px}.metric-grid small{font-size:.7rem}.button{background:#111;border-color:#111;border-radius:999px;box-shadow:none;font-size:.81rem;min-height:43px;padding:10px 17px}.button:hover{background:#29272e;border-color:#29272e;box-shadow:none;transform:none}.button.secondary{background:rgba(255,255,255,.82);border-color:#ece9f1;color:#17151b}.button.secondary:hover{background:#fff;border-color:#ddd8e6}.button.max-button{background:#7927f1;border-color:#7927f1}.button.max-button:hover{background:#651ed0;border-color:#651ed0}label{color:#35323d;font-size:.76rem;font-weight:800;gap:7px}input,select,textarea{background:rgba(255,255,255,.92);border-color:#e1deea;border-radius:13px;font-size:.86rem;min-height:46px;padding:11px 13px}input:focus,select:focus,textarea:focus{border-color:#9b65ee;box-shadow:0 0 0 4px rgba(128,63,238,.12)}textarea{min-height:126px}.badge{background:#f1eff5;color:#5e5968;font-size:.68rem;padding:6px 10px}.badge.success{background:#e6f8ef;color:#168152}.badge.warning{background:#fff1db;color:#a65a00}.badge.danger{background:#ffedef;color:#c33650}.analytics-tabs{background:rgba(234,231,242,.7);border-radius:999px;margin-bottom:16px;padding:4px}.analytics-tabs a{border-radius:999px;font-size:.76rem;padding:9px 15px}.analytics-tabs a.active{color:#111}.member-search,.plot-toolbar{background:rgba(255,255,255,.74);border:1px solid rgba(229,227,237,.94);border-radius:20px;box-shadow:0 6px 19px rgba(66,58,96,.045);margin:0 0 18px;padding:15px}.member-grid{gap:12px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.member-tile{background:rgba(255,255,255,.78);border-color:rgba(229,227,237,.94);border-radius:20px;box-shadow:0 6px 19px rgba(66,58,96,.045);min-height:132px;padding:18px}.member-tile:hover{border-color:#d2c6e9;transform:none}.member-avatar{height:62px;width:62px}.plot-card-grid{gap:12px}.plot-tile{background:rgba(237,242,250,.94);border-radius:20px;min-height:220px;padding:20px}.plot-tile:hover{border-color:#d1c7e7;box-shadow:0 8px 22px rgba(66,58,96,.08);transform:none}.plot-tile.unowned{background:rgba(255,255,255,.75);border-color:#bcb8c5}.plot-form-page{max-width:1040px}.flow-title{font-size:1.32rem;margin:27px 0 13px}.plot-form-panel{background:rgba(238,238,242,.86);border-radius:20px;padding:23px}.person-form-panel{margin-bottom:12px}.add-more-person{background:#111;border-radius:999px;min-height:44px}.add-owner-button{background:rgba(255,255,255,.86);border:1px dashed #a7a0b7;color:#393540}.add-owner-button:hover{background:#fff}.phone-control,.suffix-control{border-color:#e1deea;border-radius:13px;min-height:46px}.phone-control:focus-within,.suffix-control:focus-within{border-color:#9b65ee;box-shadow:0 0 0 4px rgba(128,63,238,.12)}.plot-detail-page{background:transparent}.plot-content-section{background:rgba(255,255,255,.7);border:1px solid rgba(229,227,237,.94);border-radius:20px;margin-top:25px;padding:22px}.plot-person-card{background:rgba(237,242,250,.94);border-radius:20px;min-height:210px}.plot-facts dl>div{background:rgba(237,242,250,.94);border-radius:16px;padding:16px}@media (max-width:900px){.portal-shell{padding:0}.portal-frame{border-radius:0;min-height:100vh}.portal-topbar{grid-template-columns:auto 1fr auto;height:68px;padding:0 16px}.portal-account>div,.portal-topnav{display:none}.portal-body{display:block;min-height:calc(100vh - 68px)}.portal-sidebar{box-shadow:18px 0 50px rgba(31,25,52,.22);height:100vh;left:0;padding-top:24px;position:fixed;top:0;transform:translateX(-105%);width:min(86vw,292px);z-index:50}.portal-sidebar.open{transform:translateX(0)}.menu-toggle{display:grid}.portal-workspace{min-height:calc(100vh - 68px)}.admin-shell{padding:24px 18px 40px}}body,html{background:#f7f8fc}body{font-family:Segoe UI Variable Text,Segoe UI,Arial,sans-serif;font-size:15px;font-weight:400}.portal-shell{display:block;min-height:100vh;padding:0}.portal-frame{border:0;border-radius:0;box-shadow:none;margin:0;max-width:none;min-height:100vh;overflow:visible;width:100%}.portal-topbar{grid-template-columns:1fr auto;height:72px;padding:0 30px}.portal-topnav{display:none}.portal-body{grid-template-columns:252px minmax(0,1fr)}.portal-body,.portal-sidebar{min-height:calc(100vh - 72px)}.portal-sidebar{padding:24px 18px 18px}.portal-sidebar-caption{font-size:.72rem;font-weight:600;letter-spacing:.06em;margin:0 12px 14px}.portal-nav a{border-radius:11px;font-size:.91rem;font-weight:500;min-height:43px;padding:10px 12px}.portal-nav a.active{box-shadow:0 3px 12px rgba(40,38,55,.06);font-weight:600}.portal-account strong,.portal-brand{font-weight:600}.portal-account small{font-weight:400}.portal-user strong{font-weight:600}.admin-shell{padding:34px 40px 56px}.admin-shell,.plot-form-page{max-width:none}h1{font-size:clamp(2rem,3vw,2.75rem);letter-spacing:-.045em;line-height:1.08}h1,h2{font-weight:650}h2{font-size:1.22rem;letter-spacing:-.025em}.flow-title,h3{font-weight:650}.flow-title{font-size:1.35rem;margin:30px 0 14px}.page-subtitle{font-size:.94rem;font-weight:400}label{font-size:.82rem;font-weight:600}label small{font-weight:400}button,input,select,textarea{font-family:inherit;font-weight:400}input,select,textarea{border-radius:11px;font-size:.94rem;min-height:48px;padding:11px 14px}input::placeholder,textarea::placeholder{font-weight:400}.add-more-person,.button,.filter-more>summary{border-radius:11px;font-size:.9rem;font-weight:600;min-height:46px}.add-more-person,.save-plot-button{width:100%}.plot-form-panel{border-radius:18px;padding:26px 28px}.person-form-grid,.plot-basics-grid{gap:18px 20px}.phone-control,.suffix-control{border-radius:11px;min-height:48px}.phone-control input,.suffix-control input{font-weight:400}.remove-person{font-size:.84rem;font-weight:600}.internal-note textarea{min-height:150px}.admin-card,.member-tile,.metric-grid article,.plot-content-section{border-radius:16px}@media (max-width:900px){.portal-topbar{grid-template-columns:auto 1fr auto;height:64px;padding:0 16px}.portal-body{min-height:calc(100vh - 64px)}.portal-sidebar{height:100vh;min-height:100vh}.admin-shell{padding:24px 18px 42px}}:root{--button-height:46px;--button-radius:11px;--button-font-size:.9rem;--button-weight:600}.add-more-person,.button,.filter-more>summary{align-items:center;background:#17171a;border:1px solid #17171a;border-radius:var(--button-radius);box-shadow:none;color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--button-font-size);font-weight:var(--button-weight);gap:8px;justify-content:center;line-height:1.2;min-height:var(--button-height);padding:11px 18px;text-decoration:none;transition:background-color .16s ease,border-color .16s ease,color .16s ease,opacity .16s ease}.add-more-person:hover,.button:hover,.filter-more>summary:hover{background:#303034;border-color:#303034;box-shadow:none;transform:none}.add-more-person:active,.button:active{background:#09090a;transform:none}.add-more-person:disabled,.button:disabled{cursor:wait;opacity:.55}.add-owner-button,.button.secondary{background:#fff;border-color:#dcd9e3;color:#242229}.add-owner-button:hover,.button.secondary:hover{background:#f5f4f7;border-color:#cbc7d3;color:#17171a}.button.danger{background:#fff;border-color:#e6b8c0;color:#b92f47}.button.danger:hover{background:#fff1f3;border-color:#d996a2;color:#a51f38}.button.max-button{background:#762be8;border-color:#762be8;color:#fff}.button.max-button:hover{background:#6420ce;border-color:#6420ce}.button.compact{padding:11px 18px}.auth-card .button,.button.compact,.form-grid>.button{min-height:var(--button-height)}.add-more-person,.save-plot-button{margin-top:24px}.reference-flow .add-more-person{margin-top:0}.reference-flow .save-plot-button{margin-top:28px}.action-links{gap:10px}select{background-image:linear-gradient(45deg,transparent 50%,#37343d 0),linear-gradient(135deg,#37343d 50%,transparent 0);background-position:calc(100% - 19px) 50%,calc(100% - 14px) 50%;background-size:5px 5px,5px 5px;padding-right:44px}:root{--ui-page:#f7f8fb;--ui-surface:#ffffff;--ui-subtle:#f1f2f5;--ui-border:#dedfe6;--ui-field-border:#d6d8e1;--ui-radius:16px;--ui-field-radius:11px}.plot-detail-page,.portal-content,.portal-workspace{background:var(--ui-page)}.access-control-card,.admin-card,.invite-panel,.member-search,.member-tile,.metric-grid article,.plot-content-section,.plot-form-panel,.plot-toolbar,.profile-contact-bar,.service-admin-card,.service-catalog-card{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius);box-shadow:none}.compact-form,.image-preview,.message-bubble,.plot-facts dl>div,.plot-person-card,.plot-tile,.poll-results,.profile-plot,.user-card details{background:var(--ui-subtle);border-color:transparent}.plot-person-card,.plot-tile,.profile-plot{border-radius:14px}.phone-control,.suffix-control,input,select,textarea{background-color:#fff;border:1px solid var(--ui-field-border);border-radius:var(--ui-field-radius);box-shadow:none;color:#202027}.plot-toolbar input,.plot-toolbar select{background-color:#fff;border-color:var(--ui-field-border)}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M2 4.5 7 9l5-4.5' fill='none' stroke='%2337343d' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:14px 14px;padding-right:46px}.badge.neutral{border:1px solid #d9dbe3;color:#4b4952}.badge.neutral,.person-contact-actions .button.secondary{background:#fff}