:root{--ink:#1f302c;--muted:#72817c;--line:#e8ede9;--paper:#fff;--canvas:#f6f8f5;--forest:#203d35;--forest-2:#2c5145;--mint:#c9f277;--mint-soft:#eef8dc;--amber:#f3c66a;--rose:#bd6555;--shadow:0 12px 34px rgba(31,48,44,.055)}
*{box-sizing:border-box}
body{margin:0;background:var(--canvas);color:var(--ink);font:14px/1.55 'DM Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button,a,select{-webkit-tap-highlight-color:transparent}
.app-shell{min-height:100vh;display:grid;grid-template-columns:252px minmax(0,1fr)}
.sidebar{background:var(--forest);color:#f8fbf7;min-height:100vh;padding:25px 16px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;scrollbar-width:thin}
.brand{display:flex;align-items:center;gap:11px;padding:0 12px;color:#fff;font:800 19px/1 'Manrope',sans-serif;letter-spacing:-.7px}
.brand-mark{width:27px;height:27px;display:grid;grid-template-columns:1fr 1fr;gap:3px;transform:rotate(-8deg)}
.brand-mark i{background:var(--mint);border-radius:4px}.brand-mark i:nth-child(2){opacity:.72}.brand-mark i:nth-child(3){opacity:.52}.brand-mark i:nth-child(4){opacity:.86}
.workspace-picker{margin:32px 4px 20px;padding:12px 11px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09);border-radius:12px}
.eyebrow,.nav-caption{display:block;font-size:9px;font-weight:700;letter-spacing:1.2px;color:#a9bcb3}
.workspace-name{display:flex;align-items:center;gap:9px;margin-top:10px;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.workspace-avatar,.account-avatar{display:grid;place-items:center;flex:none;width:29px;height:29px;border-radius:9px;background:var(--mint);color:var(--forest);font-weight:800}
.workspace-form{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:8px}
.workspace-form select{width:100%;min-width:0;border:0;background:transparent;color:#fff;font-size:12px;font-weight:600;padding:4px 2px;outline-color:var(--mint)}
.workspace-form option{background:#fff;color:var(--ink)}
.workspace-switch{border:0;background:rgba(255,255,255,.13);color:white;border-radius:6px;padding:4px 7px;font-size:10px;cursor:pointer}
.main-nav{display:flex;flex-direction:column;gap:4px}
.nav-caption{padding:11px 12px 5px}
.nav-caption-spaced{margin-top:23px}
.nav-link{height:40px;padding:0 12px;border-radius:9px;color:#d0ddd6;display:flex;align-items:center;gap:12px;font-size:12px;font-weight:500;transition:background .15s,color .15s}
.nav-link:hover{background:rgba(255,255,255,.08);color:white}
.nav-link.is-active{background:rgba(201,242,119,.13);color:var(--mint);font-weight:700}
.nav-icon{width:17px;text-align:center;font-size:17px;line-height:1}
.sidebar-bottom{margin-top:auto}
.plan-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);padding:11px;border-radius:10px;display:flex;align-items:center;gap:9px;margin:10px 4px 14px}
.plan-card b,.plan-card small{display:block}.plan-card b{font-size:11px}.plan-card small{font-size:9px;color:#abc0b5;margin-top:2px}.plan-arrow{margin-left:auto;color:#a9bcb3}
.plan-dot{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(201,242,119,.11)}
.account-row{border-top:1px solid rgba(255,255,255,.12);padding:15px 5px 0;display:flex;gap:9px;align-items:center}
.account-avatar{width:30px;height:30px;background:#e6eee8;border-radius:50%;font-size:12px}
.account-copy{min-width:0;flex:1}.account-copy b,.account-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-copy b{font-size:11px}.account-copy small{font-size:9px;color:#a9bcb3}
.signout{border:1px solid rgba(255,255,255,.16);border-radius:7px;background:transparent;color:#d0ddd6;width:28px;height:28px;cursor:pointer}
.main-area{min-width:0;max-width:1500px;width:100%;margin:0 auto;padding:0 42px 23px}
.topline{height:61px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}
.demo-pill{display:inline-flex;align-items:center;gap:7px;padding:5px 9px;border-radius:99px;background:var(--mint-soft);color:#48622d;font-size:9px;font-weight:800;letter-spacing:.6px}
.demo-pill span{width:6px;height:6px;border-radius:50%;background:#8cad49}
.topline-note{font-size:11px;color:var(--muted)}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:24px}
.page-kicker{font-size:10px;text-transform:uppercase;letter-spacing:1.1px;font-weight:700;color:#82918b;margin-bottom:4px}
h1,h2,h3,p{margin-top:0}
h1{font:800 clamp(24px,3vw,32px)/1.15 'Manrope',sans-serif;letter-spacing:-1px;margin-bottom:6px}
h2{font:700 16px/1.3 'Manrope',sans-serif;letter-spacing:-.3px;margin-bottom:3px}
h3{font-size:12px;margin-bottom:3px}
.subhead{font-size:12px;color:var(--muted);margin-bottom:0}
.head-actions{display:flex;gap:9px;align-items:center}
.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:8px;padding:10px 13px;background:var(--forest);color:#fff;font-size:11px;font-weight:700;cursor:pointer;transition:transform .15s,background .15s}
.button:hover{background:var(--forest-2);transform:translateY(-1px)}
.button-secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.button-secondary:hover{background:#f4f7f2;color:var(--ink)}
.button[disabled]{cursor:not-allowed;transform:none;background:#e2e8e2;color:#7f8e86}
.connect-hint{font-size:9px;color:var(--muted);text-align:right;margin:5px 0 0}
.demo-notice{background:#f0f7e6;border:1px solid #dcebc4;border-radius:10px;padding:11px 14px;display:flex;gap:10px;align-items:flex-start;color:#47602f;font-size:11px;margin-bottom:20px}
.demo-notice b{color:#334824}.notice-icon{font-size:15px;line-height:1.1}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:0 0 21px}
.stat-card,.panel,.location-card{background:var(--paper);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow)}
.stat-card{padding:15px 16px;min-height:109px;position:relative;overflow:hidden}
.stat-top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:10px;font-weight:600}
.stat-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#f1f5ee;color:#55714d;font-size:13px}
.stat-value{font:800 25px/1.1 'Manrope',sans-serif;letter-spacing:-.8px;margin-top:10px}
.stat-foot{font-size:9px;color:#82918b;margin-top:5px}
.content-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.85fr);gap:15px;align-items:start}
.panel{padding:18px;margin-bottom:15px}
.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}
.panel-description{font-size:10px;color:var(--muted);margin:3px 0 0}
.text-link{color:#527044;font-size:10px;font-weight:700}
.locations-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.location-card{box-shadow:none;padding:13px;border-radius:10px;min-width:0}
.location-top{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}
.location-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e8f0e5;color:#56734e;font-size:16px;flex:none}
.location-name{font-size:11px;font-weight:700;line-height:1.3}.location-address{font-size:9px;color:var(--muted);margin-top:3px}
.sample-tag{font-size:8px;line-height:1;padding:5px 6px;border-radius:99px;background:#f3f5f2;color:#6e7c73;font-weight:700;white-space:nowrap}
.location-metrics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:13px;padding-top:11px;gap:6px}
.location-metrics span{display:block;font-size:8px;color:var(--muted)}.location-metrics b{display:block;font:700 14px/1.3 'Manrope',sans-serif;color:var(--ink)}
.location-unanswered{font-size:9px;color:#9a6b25;margin-top:9px}
.chart-wrap{height:135px;display:flex;align-items:flex-end;gap:8px;border-bottom:1px solid var(--line);padding:0 6px 0;margin:9px 0 7px}
.chart-col{height:100%;flex:1;display:flex;align-items:flex-end;justify-content:center;position:relative}
.chart-bar{width:min(25px,75%);height:var(--bar);background:#dfead5;border-radius:6px 6px 0 0;position:relative;transition:background .15s}
.chart-bar.is-current{background:#839d62}.chart-bar::after{content:'';position:absolute;left:0;right:0;top:-5px;height:5px;border-radius:6px 6px 0 0;background:inherit}
.chart-labels{display:flex;justify-content:space-around;color:#87958e;font-size:8px;padding:0 5px}
.chart-summary{display:flex;align-items:baseline;gap:7px;margin-top:11px}.chart-summary b{font:800 22px 'Manrope',sans-serif}.chart-summary span{font-size:9px;color:var(--muted)}
.activity-list{list-style:none;padding:0;margin:0}.activity-item{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.activity-item:last-child{border-bottom:0;padding-bottom:0}
.activity-mark{width:25px;height:25px;flex:none;border-radius:8px;background:#f0f4ed;color:#617754;display:grid;place-items:center;font-size:11px}
.activity-copy{font-size:10px;line-height:1.4}.activity-copy b{font-weight:700}.activity-time{font-size:8px;color:#91a098;margin-top:3px}
.empty-state{padding:20px 8px;text-align:center;color:var(--muted);font-size:10px}
.checklist{display:grid;gap:10px;margin-top:14px}.check-item{display:flex;gap:9px;align-items:flex-start;font-size:10px;color:#64736a}.check-number{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#eef3e9;color:#597049;font-weight:800;font-size:9px;flex:none}
.team-wrap{max-width:1040px}.member-table{width:100%;border-collapse:collapse}.member-table th{text-align:left;text-transform:uppercase;letter-spacing:.65px;font-size:8px;color:#86948c;font-weight:700;padding:0 10px 9px}.member-table td{padding:12px 10px;border-top:1px solid var(--line);font-size:10px;vertical-align:middle}.member-person{display:flex;align-items:center;gap:9px}.member-avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e9f1e5;color:#547149;font-size:10px;font-weight:800}.member-person b,.member-person small{display:block}.member-person b{font-size:10px}.member-person small{font-size:9px;color:var(--muted)}.role-chip{display:inline-flex;padding:4px 7px;border-radius:99px;background:#f2f5ef;color:#596b53;font-size:8px;font-weight:700}
.invite-form{display:grid;grid-template-columns:minmax(180px,1fr) 160px auto;gap:9px;align-items:end}.field label{display:block;font-size:9px;font-weight:700;color:#66766d;margin-bottom:5px}.field input,.field select{height:38px;width:100%;border:1px solid #dde5dd;border-radius:8px;padding:0 10px;background:white;color:var(--ink);outline:none;font-size:10px}.field input:focus,.field select:focus{border-color:#8ba777;box-shadow:0 0 0 3px rgba(139,167,119,.14)}
.invite-link{overflow-wrap:anywhere;font-size:10px;background:#f4f7f1;border-radius:8px;padding:10px;color:#49613c}.pending-list{display:grid;gap:7px}.pending-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--line);font-size:10px}.pending-row small{color:var(--muted)}
.settings-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1.2fr) auto;gap:14px;align-items:end}.settings-form .button{height:38px}.settings-help{font-size:9px;color:var(--muted);line-height:1.55}.setting-row{display:flex;align-items:center;gap:11px;padding:12px 0;border-top:1px solid var(--line)}.setting-icon{display:grid;place-items:center;width:30px;height:30px;flex:none;border-radius:9px;background:#f0f4ed;color:#5f7654}.setting-copy{flex:1;min-width:0}.setting-copy b,.setting-copy small{display:block}.setting-copy b{font-size:10px}.setting-copy small{font-size:9px;color:var(--muted);margin-top:2px}.status-pill{padding:4px 8px;border-radius:99px;font-size:8px;font-weight:700;white-space:nowrap}.status-neutral{background:#f1f3f1;color:#738078}.status-active{background:#edf6df;color:#617e3c}
.flash{padding:11px 14px;border-radius:9px;margin:0 0 15px;font-size:11px}.flash-error{background:#fff0ed;border:1px solid #f2d0c8;color:#873b2f}.flash ul{margin:5px 0 0;padding-left:18px}
.app-footer{display:flex;justify-content:space-between;gap:12px;color:#94a099;font-size:9px;padding:14px 2px 0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.auth-body{min-height:100vh;background:#fff}.auth-layout{min-height:100vh;display:grid;grid-template-columns:minmax(320px,.88fr) 1.12fr}.auth-story{background:var(--forest);color:#fff;padding:38px clamp(30px,6vw,88px);display:flex;flex-direction:column;position:relative;overflow:hidden}.auth-story::after{content:'';position:absolute;width:390px;height:390px;border:1px solid rgba(201,242,119,.16);border-radius:50%;right:-140px;bottom:-170px;box-shadow:0 0 0 42px rgba(201,242,119,.035),0 0 0 88px rgba(201,242,119,.025)}.auth-brand{padding:0;z-index:1}.auth-story-copy{max-width:470px;margin:auto 0;position:relative;z-index:1;padding:55px 0}.auth-overline{font-size:9px;font-weight:800;letter-spacing:1.5px;color:var(--mint)}.auth-story-copy h1{max-width:440px;font-size:clamp(34px,4.4vw,56px);line-height:1.08;letter-spacing:-2px;margin:17px 0 15px}.auth-story-copy p{max-width:360px;color:#c4d3cb;font-size:13px;line-height:1.8}.auth-story-note{display:flex;align-items:flex-start;gap:9px;max-width:360px;margin-top:35px;padding-top:16px;border-top:1px solid rgba(255,255,255,.14);color:#d3dfd8;font-size:10px;line-height:1.6}.story-check{color:var(--mint);font-weight:800}.auth-story-footer{position:relative;z-index:1;color:#a8bbb1;font-size:9px}.auth-main{padding:36px;display:grid;place-items:center;background:#fafbf9}.auth-card-wrap{width:min(100%,390px)}.auth-form-head{margin-bottom:22px}.auth-form-head .page-kicker{font-size:9px;letter-spacing:1.25px}.auth-form-head h2{font-size:26px;margin:8px 0}.auth-form-head p{color:var(--muted);font-size:11px;margin:0;line-height:1.6}.auth-mobile-brand{display:none;color:var(--forest);font:800 18px 'Manrope',sans-serif;margin-bottom:24px}.auth-form{display:grid;gap:14px}.auth-form .field label{font-size:10px}.auth-form .field input{height:44px;font-size:12px}.auth-submit{width:100%;height:44px;margin-top:4px;justify-content:space-between;padding:0 15px}.auth-remember{display:flex;align-items:center;gap:8px;font-size:10px;color:#66766d}.auth-switch{text-align:center;margin:21px 0 0;color:var(--muted);font-size:10px}.auth-switch a{color:#527044;font-weight:700}.auth-privacy-note{font-size:9px;color:#92a098;text-align:center;margin:13px 0 0;line-height:1.6}.auth-footer{text-align:center;color:#a0aaa4;font-size:9px;margin-top:45px}.flash-success{background:#eff7e8;border:1px solid #dcebc4;color:#486333}
.button-google{background:#fff;color:#3c4043;border:1px solid #dadce0;font-size:12px;font-weight:600;width:100%;height:44px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;border-radius:8px;box-shadow:0 1px 2px rgba(60,64,67,.08);transition:background .15s,box-shadow .15s,border-color .15s;cursor:pointer}
.button-google:hover{background:#f8fafd;border-color:#c6cacc;box-shadow:0 1px 3px rgba(60,64,67,.15);color:#202124;transform:none}
.button-google svg{flex:none}
.auth-divider{display:flex;align-items:center;text-align:center;margin:18px 0;color:#9aa59f;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.75px}
.auth-divider::before,.auth-divider::after{content:'';flex:1;border-bottom:1px solid #e1e7e2}
.auth-divider span{padding:0 12px}
.invite-accept-main{width:min(100% - 32px,490px);margin:0 auto;padding:32px 0;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.invite-brand{color:var(--forest);padding:0;margin-bottom:22px}.invite-accept-card{padding:26px}.invite-accept-card h1{font-size:26px;margin:9px 0}.invite-accept-card .subhead b{color:var(--ink)}.invite-security-note{margin-top:20px}.invite-accept-card .auth-submit{margin-top:5px}
@media(max-width:760px){.auth-layout{grid-template-columns:1fr}.auth-story{display:none}.auth-main{min-height:100vh;padding:24px}.auth-mobile-brand{display:block}.auth-footer{margin-top:30px}}
@media(max-width:1100px){.main-area{padding-left:26px;padding-right:26px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;min-height:unset;position:relative;padding:14px 18px}.brand{padding:0}.workspace-picker{margin:14px 0 9px}.main-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.nav-caption{display:none}.nav-caption-spaced{display:none}.nav-link{justify-content:center;padding:0 4px;gap:5px;font-size:10px}.nav-icon{display:none}.sidebar-bottom{display:flex;align-items:center;gap:10px;margin-top:12px}.plan-card{margin:0;flex:1}.account-row{border-top:0;padding:0}.account-copy{display:none}.main-area{padding:0 18px 20px}.topline{height:50px;margin-bottom:22px}.content-grid{grid-template-columns:1fr}}
@media(max-width:560px){.page-head{align-items:flex-start;flex-direction:column}.head-actions{width:100%}.head-actions .button{flex:1}.stats-grid{gap:9px}.stat-card{min-height:98px;padding:12px}.stat-value{font-size:22px}.content-grid{gap:0}.locations-list{grid-template-columns:1fr}.panel{padding:14px}.invite-form{grid-template-columns:1fr}.invite-form .button{width:100%}.member-table th:nth-child(3),.member-table td:nth-child(3){display:none}.app-footer{flex-direction:column}.topline-note{font-size:9px}}
.profile-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px;align-items:start}
@media(max-width:860px){.profile-grid{grid-template-columns:1fr}}

