@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";.landing{background:var(--color-paper);color:var(--color-ink)}.landing-container{width:min(100% - 64px,1280px);margin-inline:auto}.landing a,.trial-page a{color:inherit}.landing h1,.landing h2,.landing h3,.trial-page h1{overflow-wrap:break-word;min-width:0;font-weight:600}.landing-nav{justify-content:space-between;align-items:center;gap:24px;min-height:100px;display:flex}.landing-brand{font-family:var(--font-display);letter-spacing:-2px;font-size:36px;font-weight:800;text-decoration:none}.landing-nav nav{align-items:center;gap:28px;display:flex}.landing-nav nav>a{font-size:15px;font-weight:500;text-decoration:none}.landing a:hover{text-decoration:underline}.landing-cta{background:var(--color-accent);border-radius:6px;justify-content:center;align-items:center;gap:20px;min-height:52px;padding:16px 24px;font-weight:600;line-height:20px;display:inline-flex;color:var(--color-accent-ink)!important;text-decoration:none!important}.landing-cta:hover{background:var(--color-accent-hover)}.landing-cta:active{transform:translateY(1px)}.landing-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:48px;min-height:calc(100svh - 100px);padding-block:24px 64px;display:grid}.landing-hero h1{letter-spacing:-3px;margin:0 0 28px;font-size:clamp(44px,4.8vw,70px);line-height:1.08}.landing-hero p{max-width:34ch;margin-bottom:32px;font-size:21px}.landing-hero small{margin-top:16px;font-size:13px;display:block}.landing-hero-photo{align-self:stretch;min-height:500px;margin:0;position:relative}.landing-hero-photo img{object-fit:cover;object-position:48% center;border-radius:6px;width:100%;height:100%;position:absolute;inset:0}.landing-hero-photo figcaption{background:var(--color-paper);width:fit-content;max-width:calc(100% - 48px);padding:16px 20px;font-size:14px;position:absolute;bottom:24px;left:24px;right:24px}.landing h2{letter-spacing:-1.7px;margin:0 0 24px;font-size:clamp(32px,3.2vw,48px);line-height:1.15}.landing-work{border-top:1px solid var(--color-rule);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;padding-block:96px 112px;display:grid}.landing-work>div>p{font-size:18px}.landing-feature-list article{border-top:1px solid var(--color-rule);gap:24px;padding:24px 0;display:flex}.landing-feature-list article:first-child{border-top:0;padding-top:0}.landing-feature-list svg{flex-shrink:0;margin-top:4px}.landing h3{letter-spacing:-.5px;margin:0 0 8px;font-size:22px}.landing-feature-list p{margin:0}.landing-trades{background:var(--color-well);padding-block:88px}.trade-tabs{flex-wrap:wrap;gap:8px;margin:32px 0;display:flex}.trade-tabs button{border:1px solid var(--color-input-rule);border-radius:4px;padding:12px 20px;font-size:15px}.trade-tabs button[aria-pressed=true]{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.trade-tabs button:hover{outline:1px solid var(--color-accent)}.trade-detail{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:48px;display:grid}.trade-detail>img{object-fit:cover;border-radius:6px;width:100%;height:410px}.trade-detail h3{max-width:15ch;font-size:36px;line-height:1.15}.trade-detail p{max-width:36ch;margin-top:24px;font-size:18px}.landing-text-link{align-items:center;gap:20px;min-height:44px;font-weight:600;display:inline-flex}.landing-customer{border-bottom:1px solid var(--color-rule);justify-content:space-between;align-items:center;gap:32px;padding-block:72px;display:flex}.landing-customer h2{margin:0;font-size:28px}.landing-customer img{mix-blend-mode:multiply;width:300px;max-width:50%;height:auto}.landing-faq{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;padding-block:144px;display:grid}.landing-faq details{border-bottom:1px solid var(--color-rule);padding:20px 0}.landing-faq details:first-child{padding-top:0}.landing-faq summary{cursor:pointer;min-height:44px;font-size:19px;font-weight:500}.landing-faq summary:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}.landing-faq details p{margin:12px 0}.landing-close{background:var(--color-lime);padding-block:72px}.landing-close>.landing-container{justify-content:space-between;align-items:center;gap:32px;display:flex}.landing-close h2{margin:0}.landing-close p{margin:16px 0 0;font-size:14px}.landing-footer{flex-wrap:wrap;align-items:center;gap:32px;padding-block:48px;display:flex}.landing-footer .landing-brand{margin-right:auto}.landing-footer p{width:100%;margin:0;font-size:12px}.trial-page{max-width:1200px;margin:auto;padding:32px}.trial-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:80px;margin-top:64px;display:grid}.trial-layout h1{letter-spacing:-2px;font-size:52px}.trial-layout ul{margin-block:32px;padding-left:20px;line-height:2.2}.trial-form{background:var(--color-surface);border:1px solid var(--color-rule);border-radius:8px;padding:32px}.trial-form h2{margin-top:0;font-size:26px}.trial-form form{gap:20px;display:grid}.trial-form .field{margin:0}.trial-form small{font-size:13px;line-height:1.5}.trial-form button[type=submit]{background:var(--color-accent);color:var(--color-accent-ink);border-radius:6px;padding:16px 20px}.trial-form button:disabled{opacity:.55;cursor:not-allowed}.trial-consent{align-items:start;gap:12px;font-size:14px;line-height:1.5;display:flex}.trial-consent input{flex-shrink:0;width:20px;min-height:20px;margin-top:2px}.registry-result{background:var(--color-well);margin:0;padding:16px}@media (width<=900px){.landing-nav nav>a:not(.landing-cta):not([href=\/logg-inn]){display:none}.landing-nav nav{gap:16px}.landing-hero{gap:24px;min-height:560px}.landing-hero h1{letter-spacing:-2px}.landing-hero-photo{min-height:440px}.trial-layout{gap:32px}}@media (width<=640px){.landing-container{width:calc(100% - 40px)}.landing-nav{gap:12px;min-height:80px}.landing-brand{font-size:30px}.landing-nav .landing-cta{display:none}.landing-hero,.landing-work,.trade-detail,.landing-faq,.trial-layout{grid-template-columns:minmax(0,1fr)}.landing-hero{gap:32px;padding-block:32px 48px}.landing-hero h1{font-size:46px}.landing-hero p{margin-bottom:24px;font-size:18px}.landing-hero-photo{min-height:360px}.landing-work,.landing-faq{gap:32px;padding-block:64px}.landing-trades{padding-block:56px}.trade-tabs{gap:8px}.trade-tabs button{padding:8px 16px}.trade-detail{gap:28px}.trade-detail>img{height:300px}.trade-detail h3{max-width:none;font-size:30px}.landing-customer{padding-block:40px}.landing-customer h2{font-size:22px}.landing-close>.landing-container{display:block}.landing-close h2{margin-bottom:28px}.landing-footer{gap:20px}.trial-page{padding:20px}.trial-layout{gap:24px;margin-top:32px}.trial-layout h1{font-size:40px}.trial-form{padding:24px}}@media (prefers-reduced-motion:reduce){.landing *{scroll-behavior:auto}}.landing h1,.landing h2{text-wrap:balance}.landing-work{padding-top:64px}.registration-details{border-bottom:1px solid var(--color-rule);grid-template-columns:minmax(100px,1fr) minmax(0,3fr);gap:12px 24px;padding-block:24px;display:grid}.registration-details dt{color:var(--color-muted)}.registration-details dd{overflow-wrap:anywhere;margin:0}:root{--font-body:"DM Sans", system-ui, sans-serif;--font-display:"Manrope", system-ui, sans-serif;--color-paper:#f4f6f3;--color-surface:#fff;--color-well:#eaf0e9;--color-rule:#d9e1da;--color-input-rule:#81958a;--color-ink:#20352e;--color-muted:#52675c;--color-accent:#214e3e;--color-accent-ink:#fff;--color-accent-hover:#163f31;--color-sidebar:#183f35;--color-sidebar-ink:#f2f6ed;--color-sidebar-muted:#b9cec1;--color-sidebar-selected:#30594a;--color-lime:#d3e4af;--color-focus:#b66a20;--color-error:#943f2a;--color-error-paper:#fbece6;--color-warning:#745c38;--color-warning-paper:#f3eee4;--color-success:#365a30;--color-success-paper:#e9f1de;--color-overlay:#10291f80;--color-shadow:#10291f20;--color-clear:transparent;--muted:var(--color-muted);--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--text-md:1rem;--text-title:1rem;--text-section:1.25rem;--text-display:2rem;--container:1360px;--gutter:32px;--tracking-display:-.025em}*,:before,:after{box-sizing:border-box}html{scrollbar-color:var(--color-muted) var(--color-paper);scroll-padding-top:var(--space-3xl)}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);-webkit-font-smoothing:antialiased;caret-color:var(--color-accent);margin:0;line-height:1.55}::selection{background:color-mix(in oklab, var(--color-accent) 22%, transparent);color:var(--color-ink)}a{color:inherit;text-underline-offset:.16em;text-decoration-thickness:1px}h1,h2,h3{font-family:var(--font-display);font-weight:var(--display-weight,700);font-synthesis:none;letter-spacing:var(--tracking-display);overflow-wrap:break-word;text-wrap:balance;min-width:0;margin:0;line-height:1.05}h1{max-width:20ch;font-size:var(--text-display)}h2{max-width:30ch;font-size:var(--text-section)}h3{max-width:40ch;font-size:var(--text-title);line-height:1.2}.lead{font-size:var(--text-lead);max-width:52ch;line-height:1.45}p{text-wrap:pretty;margin:0}p:not([class]){max-width:65ch}img,video{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}button,input,select,textarea{font:inherit}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);box-sizing:border-box;margin-inline:auto}.num,.figure,td.num{font-variant-numeric:tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){:not(.keep-motion),:not(.keep-motion):before,:not(.keep-motion):after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{font-family:var(--font-body);color:var(--color-accent);background:var(--color-paper);font-synthesis:none;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit;justify-content:center;align-items:center;gap:var(--space-xs);background:0 0;border:0;min-height:44px;display:inline-flex}button:focus-visible,a:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}h1,h2,h3,.brand{font-family:var(--font-display)}h1{letter-spacing:-1.5px;margin:var(--space-sm) 0;font-size:38px;line-height:1.2}h2{letter-spacing:-.5px;font-size:20px}h3{font-size:19px}p{color:var(--color-muted);margin:var(--space-xs) 0 20px;line-height:1.6}small{color:var(--color-muted);font-size:12px}input,textarea,select{width:100%;padding:var(--space-sm);border:1px solid var(--color-rule);background:var(--color-surface);min-height:46px;color:var(--color-accent);border-radius:9px}input:focus,textarea:focus,select:focus{outline:2px solid var(--color-muted);outline-offset:1px}input[type=file]{font-size:13px}textarea{resize:vertical}.brand{letter-spacing:-1.5px;align-items:center;font-size:31px;font-weight:800;display:flex}.brand-icon{background:var(--color-lime);color:var(--color-accent);width:40px;height:40px;margin-right:var(--space-xs);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.brand-dot{color:var(--color-muted)}.context-label{letter-spacing:0;color:var(--color-muted);font-size:11px;font-weight:700}.primary,.secondary{padding:var(--space-sm) 20px;border-radius:9px;font-size:14px;font-weight:600}.primary{background:var(--color-accent);color:var(--color-surface)}.primary:hover{background:var(--color-accent)}.secondary{background:var(--color-surface);border:1px solid var(--color-rule)}.wide{width:100%}.text-button{color:var(--color-accent);margin-top:var(--space-sm);font-size:13px}.field{gap:var(--space-xs);margin-bottom:20px;font-size:13px;font-weight:500;display:grid}.setup{max-width:600px;padding:var(--space-lg);margin:10vh auto}.setup .brand{margin-bottom:48px}.panel{background:var(--color-surface);border:1px solid var(--color-well);padding:var(--space-lg);border-radius:14px}.auth-layout{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-story{background:var(--color-accent);color:var(--color-well);flex-direction:column;justify-content:center;padding:60px 10%;display:flex}.auth-story h1{font-size:clamp(36px,4vw,60px);line-height:1.17}.auth-story em{color:var(--color-lime);font-style:normal}.auth-story p{color:var(--color-muted);margin:var(--space-lg) 0;font-size:17px}.auth-story .context-label{color:var(--color-muted)}.auth-story small{color:var(--color-muted);margin-top:100px}.story-features{gap:var(--space-md);margin-top:var(--space-lg);font-size:14px;display:grid}.story-features span{gap:var(--space-sm);align-items:center;display:flex}.story-features svg{width:19px;color:var(--color-lime)}.auth-form{place-items:center;padding:48px;display:grid}.auth-form>div{width:100%;max-width:370px}.auth-form form{margin-top:36px}.shell{min-height:100vh;display:flex}aside{background:var(--color-surface);border-right:1px solid var(--color-well);width:240px;height:100vh;padding:32px var(--space-lg);flex-direction:column;display:flex;position:fixed}.workspace{align-items:center;gap:var(--space-xs);border-top:1px solid var(--color-well);border-bottom:1px solid var(--color-well);padding:var(--space-lg) 0;margin:32px 0 var(--space-lg);font-size:12px;display:flex}.workspace small{margin-top:4px;display:block}.avatar{background:var(--color-well);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:12px;font-weight:700;display:inline-flex}nav{gap:var(--space-xs);display:grid}nav button,nav a{align-items:center;gap:var(--space-xs);min-height:44px;padding:var(--space-sm) var(--space-md);color:var(--color-muted);border-radius:8px;justify-content:flex-start;font-size:14px;text-decoration:none;display:inline-flex}nav button.active{color:var(--color-accent);background:var(--color-well);font-weight:700}.sidebar-bottom{margin-top:auto;font-size:12px}.sidebar-bottom p{margin-bottom:32px;line-height:1.8}.sidebar-bottom button{color:var(--color-muted)}.content{width:calc(100% - 240px);margin-left:240px}.topbar{border-bottom:1px solid var(--color-well);background:var(--color-shadow);justify-content:space-between;align-items:center;height:82px;padding:0 48px;font-size:12px;display:flex}.muted{color:var(--color-muted)}.user-chip{color:var(--color-muted);font-size:12px}.page{padding:var(--space-xl) 48px;max-width:1400px;min-height:calc(100vh - 140px);margin:auto}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px;display:flex}.page-heading p{margin:var(--space-xs) 0 0;font-size:14px}.stats{gap:var(--space-md);margin:var(--space-lg) 0 var(--space-xl);grid-template-columns:repeat(3,1fr);display:grid}.stats>div{background:var(--color-surface);border:1px solid var(--color-well);padding:var(--space-lg);border-radius:12px}.stats strong{gap:var(--space-xs);margin-top:var(--space-sm);align-items:baseline;font-size:32px;font-weight:500;display:flex}.stats svg{width:21px;color:var(--color-muted);margin-left:auto}.stats small{margin-left:4px;font-size:13px}.section-heading{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.count{font-family:var(--font-body);background:var(--color-well);color:var(--color-muted);padding:4px var(--space-xs);margin-left:var(--space-xs);border-radius:6px;font-size:12px}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.project-card{text-align:left;border:1px solid var(--color-well);background:var(--color-surface);padding:var(--space-lg);border-radius:14px;min-width:0;transition:transform .15s,border-color .15s;display:block}.project-card:hover{border-color:var(--color-muted);transform:translateY(-3px)}.card-top{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.project-icon{background:var(--color-well);width:42px;height:42px;color:var(--color-muted);border-radius:10px;justify-content:center;align-items:center;display:flex}.project-icon svg{width:20px}.status{background:var(--color-well);color:var(--color-muted);padding:var(--space-xs) var(--space-xs);white-space:nowrap;border-radius:6px;font-size:11px;font-weight:600}.status.completed{background:var(--color-well);color:var(--color-muted)}.project-card h3{margin:0 0 var(--space-xs);overflow-wrap:anywhere}.project-card p{margin:0 0 var(--space-xs);font-size:13px}.address{color:var(--color-muted);font-size:12px}.card-footer{border-top:1px solid var(--color-well);margin-top:var(--space-lg);padding-top:var(--space-md);color:var(--color-muted);gap:20px;font-size:12px;display:flex}.card-footer span{gap:var(--space-xs);align-items:center;display:flex}.card-footer>svg{margin-left:auto}.empty{text-align:center;padding:56px var(--space-lg);grid-column:1/-1}.empty>svg{color:var(--color-muted);width:34px;height:34px}.empty p{font-size:14px}.empty h2,.empty h3{margin-bottom:var(--space-xs)}.quick-actions{gap:var(--space-sm);display:flex}.tabs{border-bottom:1px solid var(--color-rule);margin:32px 0 var(--space-lg);gap:var(--space-lg);display:flex}.tabs button{padding:var(--space-sm) 0;border-bottom:2px solid var(--color-clear);color:var(--color-muted);font-size:14px}.tabs button.active{border-color:var(--color-accent);color:var(--color-accent)}.back{margin:0 0 20px}.list{background:var(--color-surface);border:1px solid var(--color-well);border-radius:12px;overflow:hidden}.time-row{gap:var(--space-md);border-bottom:1px solid var(--color-well);align-items:center;padding:20px;font-size:13px;display:flex}.time-row:last-child{border:0}.time-row>div{flex:1}.time-row p{margin:4px 0 0;font-size:12px}.date-badge{color:var(--color-muted);min-width:55px;font-size:12px}.document-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.document img{aspect-ratio:4/3;object-fit:cover;border-radius:8px;width:100%}.document-note{white-space:pre-wrap;overflow-wrap:anywhere}.member{align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;font-size:13px;display:flex}.member .muted{margin-left:auto}.invite{max-width:550px;margin-top:var(--space-lg)}.invite p{font-size:13px}.message{padding:var(--space-md) var(--space-md);justify-content:space-between;align-items:center;gap:var(--space-xs);overflow-wrap:anywhere;border-radius:8px;margin-bottom:20px;font-size:13px;display:flex}.error{background:var(--color-error-paper);color:var(--color-error)}.success{background:var(--color-well);color:var(--color-accent)}.modal-overlay{background:var(--color-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--color-paper);width:100%;max-width:500px;max-height:90dvh;box-shadow:0 30px 90px var(--color-shadow);border-radius:18px;padding:32px;overflow:auto}.modal-heading{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.modal-heading h2{margin:0}.form-grid{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}footer{color:var(--color-muted);padding:20px 48px;font-size:11px}@media (width>=1500px){.page{padding-top:60px}}@media (width<=1150px){.project-grid,.document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page{padding:32px}.topbar{padding:0 32px}aside{width:205px}.content{width:calc(100% - 205px);margin-left:204px}}@media (width<=760px){h1{font-size:30px}.auth-layout{grid-template-columns:1fr}.auth-story{padding:32px}.auth-story .brand{margin-bottom:36px}.auth-story h1{font-size:38px}.auth-story small,.story-features{display:none}.auth-form{padding:36px var(--space-lg)}.auth-form>div{max-width:none}aside{z-index:5;border-right:1px solid var(--color-rule);width:92px;height:100vh;padding:var(--space-lg) var(--space-xs);inset:0 auto 0 0}aside>.brand,.workspace,.sidebar-bottom p{display:none}nav{display:grid}nav button,nav a{text-align:center;flex-direction:column;gap:4px;padding:4px;font-size:10px}.sidebar-bottom button{flex-direction:column;gap:4px;width:100%;font-size:10px}.content{width:calc(100% - 92px);margin-left:92px}.topbar{height:56px;padding:0 var(--space-md)}.user-chip{display:none}.page{padding:var(--space-lg) var(--space-md)}.page-heading{margin-bottom:var(--space-lg);flex-direction:column;align-items:flex-start}.page-heading p{font-size:13px}.stats{gap:var(--space-xs);margin-bottom:var(--space-lg)}.stats>div{padding:var(--space-md) var(--space-xs)}.stats span{font-size:10px}.stats strong{font-size:26px}.stats svg{display:none}.stats small{font-size:10px}.section-heading{flex-direction:column;align-items:stretch;gap:4px}.section-heading h2{font-size:18px}.search{max-width:none;margin-bottom:var(--space-xs)}.project-grid,.document-grid{grid-template-columns:1fr}.project-card{padding:var(--space-lg)}.card-top{margin-bottom:20px}.quick-actions{flex-wrap:wrap}.quick-actions button{white-space:nowrap;padding:var(--space-sm);flex:1}.time-row{padding:var(--space-md) var(--space-sm);gap:var(--space-xs)}.time-row>strong{white-space:nowrap}.time-row .date-badge{min-width:42px;font-size:11px}.time-row p{font-size:11px}.member{flex-wrap:wrap}.member strong{overflow-wrap:anywhere;max-width:65%}.modal-overlay{padding:var(--space-sm)}.modal{padding:var(--space-lg)}.form-grid{grid-template-columns:1fr 1fr}footer{padding:20px}.setup{margin:4vh auto}}.address-search{position:relative}.address-results{padding:var(--space-xs);background:var(--color-surface);border:1px solid var(--color-rule);max-height:220px;box-shadow:0 8px 20px var(--color-shadow);border-radius:9px;margin:0;list-style:none;overflow:auto}.address-results li{padding:var(--space-sm) var(--space-xs);cursor:pointer;border-radius:5px;font-size:13px}.address-results li:hover,.address-results li[aria-selected=true]{background:var(--color-well)}.map-toolbar{gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.map-toolbar>span{color:var(--color-muted);font-size:12px}.map-filters{background:var(--color-well);border-radius:10px;gap:4px;padding:4px;display:flex}.map-filters button{padding:var(--space-xs) var(--space-md);border-radius:7px;font-size:13px}.map-filters button[aria-pressed=true]{background:var(--color-surface);box-shadow:0 1px 5px var(--color-shadow);font-weight:600}.project-map{border:1px solid var(--color-rule);z-index:0;background:var(--color-well);border-radius:14px;height:480px;min-height:320px}.project-marker{background:0 0;border:0}.map-pin{border:3px solid var(--color-surface);width:36px;height:36px;color:var(--color-surface);box-shadow:0 2px 8px var(--color-shadow);border-radius:50%;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex}.map-pin.active,.map-legend i.active{background:var(--color-accent)}.map-pin.completed,.map-legend i.completed{background:var(--color-muted)}.map-popup button{text-align:left;min-height:40px;font-size:14px;text-decoration:underline;display:block}.map-popup p{font-size:12px}.map-legend{gap:var(--space-md);margin:var(--space-md) 0 var(--space-lg);flex-wrap:wrap;align-items:center;font-size:12px;display:flex}.map-legend span{align-items:center;gap:var(--space-xs);display:flex}.map-legend i{border-radius:50%;width:10px;height:10px}.map-legend small{margin-left:auto}.map-notice{padding:var(--space-md);background:var(--color-well);color:var(--color-ink);border-radius:9px;font-size:13px}.map-project-list{gap:var(--space-xs);display:grid}.map-project-row{background:var(--color-surface);border:1px solid var(--color-well);text-align:left;padding:var(--space-md);justify-content:space-between;gap:var(--space-md);border-radius:10px;display:flex}.map-project-row small{margin-top:var(--space-xs);display:block}.map-project-row strong{font-size:14px}.leaflet-control-attribution{font-size:10px!important}.leaflet-container a{color:var(--color-accent)}.leaflet-control-zoom a{display:block}.map-section .leaflet-popup-close-button{min-height:24px}@media (width<=760px){.project-map{height:390px}.map-legend small{margin-left:0}.map-filters{width:100%}.map-filters button{flex:1}.map-project-row{padding:var(--space-md)}.map-project-row>div{overflow-wrap:anywhere;min-width:0}.project-map .leaflet-control-attribution{max-width:240px}.quick-actions{margin-top:var(--space-sm)}}.editor-fields{border:0;min-width:0;margin:0;padding:0}.project-contact{margin-bottom:var(--space-lg)}.project-contact .secondary{align-items:center;gap:var(--space-xs);color:inherit;text-decoration:none;display:inline-flex}.project-contact p{margin-bottom:var(--space-sm)}.filter-fields{gap:var(--space-sm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.filter-fields label{gap:var(--space-xs);font-size:12px;display:grid}.time-filters{margin-bottom:20px}.time-shortcuts{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);display:flex}.time-shortcuts .text-button{margin:0}.export-actions{gap:var(--space-sm);align-items:center;display:flex}.export-actions .text-button{margin:0}.attachment-grid{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.attachment-grid a{overflow-wrap:anywhere;min-width:0}.attachment-grid .pdf-file{padding:var(--space-md);background:var(--color-well);color:var(--color-accent);border-radius:9px;grid-column:1/-1;font-size:13px}.file-actions{gap:var(--space-xs);margin-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.file-button{cursor:pointer;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.file-button input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.file-button:focus-within{outline:2px solid var(--color-muted)}.selected-files{padding:0;font-size:12px;list-style:none}.selected-files li{justify-content:space-between;gap:var(--space-xs);align-items:center;display:flex}.selected-files span{overflow-wrap:anywhere;min-width:0}.assignee{align-items:center;gap:var(--space-xs);font-size:13px;display:flex}.assignee input{width:18px;min-height:18px}.editor-fields details{margin:var(--space-xs) 0 var(--space-lg)}.editor-fields summary{cursor:pointer;padding:var(--space-xs) 0;font-size:13px}.draft-status{color:var(--color-accent);font-size:12px}.draft-tray{margin-bottom:var(--space-lg);padding:var(--space-md)}.draft-tray strong{font-size:13px}.draft-tray>div{justify-content:space-between;display:flex}.draft-tray .text-button{text-align:left;margin:0}.member-actions{gap:var(--space-xs);display:flex}.pending-invite{padding:var(--space-xs) 0;gap:var(--space-xs);justify-content:space-between;align-items:center;font-size:13px;display:flex}.form-hint{font-size:12px}@media (width<=760px){.filter-fields{grid-template-columns:1fr 1fr}.time-filters{padding:var(--space-md)}.time-row{flex-wrap:wrap}.time-row>div{min-width:130px}.file-actions>*{flex:1}.member-actions{justify-content:flex-end;width:100%}.attachment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pending-invite{overflow-wrap:anywhere}.project-contact{padding:var(--space-md)}}.workspace-select{color:var(--muted);flex-direction:column;gap:4px;min-width:190px;font-size:12px;display:flex}.workspace-select select{max-width:360px;font-size:14px;font-weight:600}.platform-form{gap:var(--space-md);margin:20px 0;display:grid}.platform-filters{gap:var(--space-sm);margin:var(--space-lg) 0;display:flex}.platform-filters input{flex:1}.platform-companies{gap:var(--space-sm);margin-bottom:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));display:grid}.company-choice{text-align:left;align-items:flex-start;gap:var(--space-xs);cursor:pointer;flex-direction:column;display:flex}.company-choice.selected{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.company-choice span{font-size:13px;font-weight:400}.invoice-row{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-well);display:flex}.invoice-row select{width:170px}.platform-page summary{cursor:pointer;font-weight:600}@media (width<=600px){.platform-filters{flex-direction:column}.workspace-select{width:100%;min-width:0}.workspace-select select{max-width:100%}.invoice-row{flex-wrap:wrap}}.platform-filters select{flex:0 0 230px;width:230px}.platform-filters input{min-width:0}@media (width<=600px){.platform-filters select{flex:auto;width:100%}}.crm-actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.crm-filters{gap:var(--space-sm);margin-bottom:var(--space-lg);display:flex}.crm-filters select{width:220px}.crm-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;display:grid}.crm-form,.crm-contact,.crm-task,.crm-history{margin-bottom:var(--space-lg)}.crm-list{gap:var(--space-md);margin-bottom:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));display:grid}.crm-card{text-align:left;align-items:flex-start;gap:var(--space-xs);overflow-wrap:anywhere;flex-direction:column}.crm-card span{font-size:14px}.crm-check{align-items:center;gap:var(--space-xs);margin:var(--space-md) 0;display:flex}.crm-check input{flex-shrink:0;width:20px;min-height:20px}.crm summary,.member-permissions summary{cursor:pointer;min-height:44px;padding:var(--space-xs) 0}.crm-history>details{border-top:1px solid var(--color-well)}.crm-history dl{overflow-wrap:anywhere;font-size:13px}.crm-history dt{font-weight:700}.crm-history dd{margin:4px 0 var(--space-sm);white-space:pre-wrap}.member{flex-wrap:wrap}.member-permissions{width:100%}.member-permissions form{max-width:560px;padding:var(--space-md) 0}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}@media (width<=760px){.crm-fields{grid-template-columns:1fr}.crm-filters{flex-direction:column}.crm-filters select{width:100%}.crm .panel{padding:var(--space-md)}.crm .page-heading{gap:var(--space-xs)}}.profile-page{max-width:680px}.profile-page .panel{margin-bottom:var(--space-lg)}.hms-tabs{gap:var(--space-xs);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.hms-tabs button{padding:var(--space-xs) var(--space-md);background:var(--color-surface);border:1px solid var(--color-rule);border-radius:8px;font-size:13px}.hms-summary{gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.hms-summary strong{font-size:30px;display:block}.hms-summary span{font-size:13px}.hms .panel{margin-bottom:20px}.hms-row{justify-content:space-between;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md) 0;border-bottom:1px solid var(--color-well);text-align:left;display:flex}.hms-row small{margin-top:4px;display:block}.hms-details dt{margin-top:20px;font-weight:600}.hms-details dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:var(--space-xs) 0 var(--space-lg);line-height:1.6}.hms-guidance{padding:var(--space-md);background:var(--color-well);border-left:3px solid var(--color-muted);font-size:13px}.hms-approval{margin:var(--space-lg) 0;background:var(--color-paper);border-radius:10px;padding:20px}.hms summary{cursor:pointer;padding:var(--space-sm) 0}.hms .crm-list{margin-top:20px}@media (width<=760px){.hms .panel{padding:var(--space-md)}.hms-summary{grid-template-columns:1fr}.hms-row{flex-wrap:wrap;align-items:flex-start}.hms-tabs button{flex:1}.hms-approval{padding:var(--space-sm)}}aside{overflow-y:auto}.field-module{min-width:0}.field-module fieldset{border:0;min-width:0;margin:0;padding:0}.field-module .crm-filters{flex-wrap:wrap}.field-module .crm-filters input{flex:1;min-width:180px}.field-module .crm-filters select{flex:1;min-width:160px}.field-module .panel{margin-bottom:20px}.field-module details summary{cursor:pointer;padding:var(--space-sm) 0}.report-point{border:1px solid var(--color-rule);padding:var(--space-md);margin:var(--space-md) 0;background:var(--color-paper);overflow-wrap:anywhere;border-radius:10px}.report-point.has-issue{border-left:4px solid var(--color-muted)}.report-point>.status{width:fit-content;margin-top:var(--space-xs);display:block}.point-options{gap:var(--space-xs);margin:var(--space-md) 0;flex-wrap:wrap;display:flex}.point-options button{border:1px solid var(--color-rule);padding:var(--space-xs) var(--space-md);border-radius:8px;min-height:44px}.point-options button.active{color:var(--color-surface);background:var(--color-accent);border-color:var(--color-accent)}.report-files{border-top:1px solid var(--color-rule);margin-top:28px;padding-top:20px}.report-file-list{gap:var(--space-xs);margin-bottom:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));display:grid}.report-file-list button{text-align:left;overflow-wrap:anywhere;display:block}.report-file-list small{margin-top:var(--space-xs);font-weight:400;display:block}.pre-wrap{white-space:pre-wrap;overflow-wrap:anywhere}.planner-controls{align-items:end;gap:var(--space-xs);flex-wrap:wrap;display:flex}.planner-controls label{font-size:12px}.planner-controls input{display:block}.planner-person-heading{justify-content:space-between;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.planner-person-heading h2{margin:0}.planner-person-heading span{color:var(--color-muted);font-size:13px}.planner-days{gap:var(--space-xs);padding-bottom:var(--space-xs);grid-template-columns:repeat(7,minmax(105px,1fr));display:grid;overflow-x:auto}.planner-day{border:1px solid var(--color-well);padding:var(--space-xs);border-radius:8px;min-height:160px}.planner-day h3{margin:0 0 var(--space-sm);text-transform:capitalize;font-size:13px}.planner-day.is-today{background:var(--color-well);border-color:var(--color-muted)}.booking{gap:var(--space-xs);background:var(--color-well);border-left:3px solid var(--color-muted);padding:var(--space-xs);margin-bottom:var(--space-xs);overflow-wrap:anywhere;border-radius:5px;flex-direction:column;font-size:12px;display:flex}.booking p{white-space:pre-wrap;margin:0}.booking strong{font-size:12px}.booking.unavailable{background:var(--color-well);border-color:var(--color-muted)}.booking.cancelled{opacity:.65;background:var(--color-well)}.booking button{text-align:left;min-height:32px}.planner-add{color:var(--color-accent);min-height:36px;font-size:12px}@media (width<=760px){.field-module .panel{padding:var(--space-md)}.report-point{padding:var(--space-sm)}.planner-days{grid-template-columns:1fr;overflow:visible}.planner-day{min-height:auto}.planner-controls input{max-width:150px}.field-module .crm-filters input,.field-module .crm-filters select{flex:auto;width:100%;min-width:0}.point-options button{padding:var(--space-xs);flex:1;font-size:12px}.field-module .page-heading{gap:var(--space-sm);flex-wrap:wrap}.planner-person-heading span{font-size:12px}}.report-file-list img{object-fit:cover;width:100%;height:150px;margin-bottom:var(--space-xs);border-radius:6px;display:block}.customer-import .page-heading,.customer-import .crm-fields{margin-bottom:20px}.import-summary{gap:var(--space-sm);margin:var(--space-md) 0;flex-wrap:wrap;display:flex}.import-summary span{padding:var(--space-xs) var(--space-md);background:var(--color-well);border-radius:8px;font-size:13px}.import-preview{margin:var(--space-md) 0 var(--space-lg);overflow:auto}.import-preview table{border-collapse:collapse;width:100%;min-width:700px}.import-preview th,.import-preview td{text-align:left;padding:var(--space-xs);border-bottom:1px solid var(--color-well);vertical-align:top;font-size:13px}.import-preview td{overflow-wrap:anywhere;max-width:240px}html,body{overflow-x:clip}body{line-height:1.5}h1{letter-spacing:-.8px;font-size:32px;line-height:1.2}h2{line-height:1.3}h1,h2,h3{max-width:none}button,a,input,select,textarea,summary{touch-action:manipulation}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}button:active:not(:disabled){transform:translateY(1px)}button:disabled{background:var(--color-well);color:var(--color-muted);cursor:not-allowed}button.secondary:hover,.crm-card:hover,.company-choice:hover{background:var(--color-well)}input,textarea,select{border-color:var(--color-input-rule);border-radius:6px}.field{font-size:14px}.primary,.secondary{border-radius:6px;min-height:44px}.panel,.list{border-radius:8px}aside{width:232px;padding:28px var(--space-md) 20px;background:var(--color-sidebar);color:var(--color-sidebar-ink);border:0;height:100dvh}aside .brand{padding:0 var(--space-xs);font-size:29px}aside .brand-icon{background:var(--color-lime);color:var(--color-sidebar);border-radius:8px}.workspace{margin:var(--space-lg) var(--space-xs) var(--space-md);border-color:var(--color-sidebar-selected);align-items:flex-start;padding:20px 0}aside .workspace small,aside .sidebar-bottom p{color:var(--color-sidebar-muted)}aside .avatar{background:var(--color-sidebar-selected);color:var(--color-sidebar-ink);border-radius:6px}aside nav{gap:4px}aside nav button,aside nav a{color:var(--color-sidebar-muted);padding:var(--space-xs) var(--space-sm);border-radius:6px;min-height:44px;font-size:14px}aside nav button:hover,aside nav a:hover{background:var(--color-sidebar-selected);color:var(--color-sidebar-ink)}aside nav button.active{background:var(--color-sidebar-selected);color:var(--color-sidebar-ink);box-shadow:inset 3px 0 var(--color-lime)}aside nav svg{flex-shrink:0;width:19px;height:19px}.sidebar-bottom{padding:var(--space-lg) var(--space-xs) 0}.sidebar-bottom p{margin-bottom:var(--space-sm)}aside .sidebar-bottom button{color:var(--color-sidebar-muted)}.content{width:calc(100% - 232px);min-width:0;margin-left:232px}.topbar{height:auto;min-height:80px;padding:var(--space-md) 32px;background:var(--color-surface);border-color:var(--color-rule);gap:var(--space-md)}.workspace-select{color:var(--color-muted);gap:0}.workspace-select select{background:var(--color-surface);border:0;min-height:36px;padding:4px 28px 4px 0}.user-chip{color:var(--color-ink);background:var(--color-paper);padding:var(--space-xs) var(--space-sm);overflow-wrap:anywhere;border-radius:6px;font-size:13px}.page{max-width:1360px;padding:32px}.page-heading{margin-bottom:var(--space-lg);align-items:center}.page-heading p{color:var(--color-muted)}.page-heading h1{margin:0}.context-label{color:var(--color-muted);margin-bottom:var(--space-xs);letter-spacing:0;font-size:13px;display:block}.stats{background:var(--color-surface);border-block:1px solid var(--color-rule);margin:var(--space-lg) 0 32px;gap:0}.stats>div{border:0;border-right:1px solid var(--color-rule);padding:20px var(--space-lg);background:0 0;border-radius:0}.stats>div:last-child{border-right:0}.stats span{color:var(--color-muted);font-size:13px}.stats strong{font-variant-numeric:tabular-nums;margin-top:4px;font-size:28px;font-weight:700}.stats svg{display:none}.section-heading{gap:var(--space-md);margin-bottom:var(--space-md)}.search{max-width:340px;min-height:44px;font-size:14px}.project-grid{border-radius:8px;grid-template-columns:minmax(0,1fr);gap:0;overflow:clip}.project-card{gap:4px var(--space-lg);padding:var(--space-lg);border:0;border-bottom:1px solid var(--color-rule);border-radius:0;grid-template-columns:minmax(180px,1.2fr) minmax(150px,1fr) 110px;transition:none;display:grid}.project-card:hover{background:var(--color-well);transform:none}.card-top{grid-area:1/3;justify-content:flex-end;margin:0}.project-icon{display:none}.project-card h3{grid-area:1/1;margin:0;font-size:17px}.project-card>p{grid-area:2/1;margin:0;font-size:14px}.project-card>.address{color:var(--color-muted);overflow-wrap:anywhere;grid-area:1/2/span 2;align-self:center;font-size:13px}.card-footer{margin:var(--space-xs) 0 0;justify-content:flex-end;gap:var(--space-sm);color:var(--color-muted);font-variant-numeric:tabular-nums;border:0;grid-area:2/3;padding:0}.card-footer>svg{display:none}.status{color:var(--color-success);background:var(--color-success-paper);padding:4px var(--space-xs);border-radius:4px;font-size:12px}.status.completed{color:var(--color-muted);background:var(--color-well)}.tabs{gap:var(--space-lg);margin-top:var(--space-lg);overflow-x:auto}.tabs button{white-space:nowrap;color:var(--color-muted)}.tabs button.active{font-weight:700}.crm-list{grid-template-columns:minmax(0,1fr);gap:0}.crm-card{border:0;border-bottom:1px solid var(--color-rule);gap:var(--space-xs) var(--space-lg);padding:20px var(--space-lg);border-radius:0;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);display:grid}.crm-card strong{font-size:17px}.crm-card small{font-size:13px}.hms-summary{background:var(--color-surface);margin-bottom:var(--space-lg);gap:0}.hms-summary .panel{border:0;border-right:1px solid var(--color-rule);border-radius:0;margin:0}.hms-summary strong{font-variant-numeric:tabular-nums}.hms-tabs{padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-rule)}.hms-tabs button{border-color:var(--color-clear);color:var(--color-muted);background:0 0;border-radius:6px}.hms-tabs button.active{background:var(--color-accent);color:var(--color-surface)}.report-point{border:0;border-top:1px solid var(--color-rule);padding:var(--space-lg) 0;background:0 0;border-radius:0}.planner-day{border:0;border-left:1px solid var(--color-rule);border-radius:0}.planner-day.is-today{background:var(--color-well)}.booking{color:var(--color-ink)}.auth-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);max-width:1920px;margin-inline:auto}.auth-story{background:var(--color-sidebar);color:var(--color-sidebar-ink);justify-content:flex-start;padding:48px 12%}.auth-story .brand{margin-bottom:auto}.auth-story h1{margin-top:64px;font-size:clamp(32px,3.5vw,48px)}.auth-story p{color:var(--color-sidebar-muted)}.auth-story small{color:var(--color-sidebar-muted);margin-top:auto;padding-top:64px}.story-features{padding-block:var(--space-lg);gap:var(--space-md)}.story-features svg{color:var(--color-lime)}.auth-form{background:var(--color-surface);padding:48px}.auth-form>div{max-width:400px}.auth-form h2{font-size:28px}.auth-form .text-button{text-align:left;min-height:44px}@media (width<=1050px){aside{width:208px}.content{width:calc(100% - 208px);margin-left:208px}.project-card{grid-template-columns:minmax(0,1fr) 110px}.project-card>.address{grid-area:3/1}.card-top,.card-footer{grid-column:2}.page,.topbar{padding:var(--space-lg)}}@media (width<=760px){aside{width:80px;padding:var(--space-sm) var(--space-xs)}aside nav button,aside nav a{padding:var(--space-xs) 0px;gap:4px;font-size:10px}.sidebar-bottom{padding:var(--space-md) 0 0}.content{width:calc(100% - 80px);margin-left:80px}.page{padding:var(--space-lg) var(--space-sm)}.topbar{padding:var(--space-sm);min-height:64px}h1{font-size:26px}.page-heading{align-items:stretch;gap:var(--space-md)}.page-heading>.primary{align-self:flex-start}.stats{grid-template-columns:1fr;margin-block:20px}.stats>div{padding:var(--space-sm) var(--space-md);border-right:0;border-bottom:1px solid var(--color-rule);justify-content:space-between;align-items:center;gap:var(--space-xs);display:flex}.stats>div:last-child{border-bottom:0}.stats span{font-size:12px}.stats strong{margin:0;font-size:22px}.project-card{padding:20px var(--space-md);gap:var(--space-xs);grid-template-columns:minmax(0,1fr) auto}.project-card h3{grid-area:2/1/auto/-1}.project-card>p{grid-area:3/1/auto/-1}.project-card>.address{grid-area:4/1/auto/-1}.card-top{grid-column:1;justify-content:flex-start}.card-footer{grid-area:1/2;margin:0}.crm-card{padding:20px var(--space-md);grid-template-columns:minmax(0,1fr)}.form-grid,.auth-layout{grid-template-columns:minmax(0,1fr)}.auth-story{padding:var(--space-lg)}.auth-story .brand{margin:0}.auth-story h1{margin-top:32px;font-size:30px}.auth-story p{margin:var(--space-md) 0 0;font-size:15px}.auth-form{padding:32px var(--space-lg)}.auth-form h2{font-size:24px}.auth-form form{margin-top:var(--space-lg)}.filter-fields{grid-template-columns:minmax(0,1fr)}.crm-actions{gap:var(--space-xs)}.crm-actions button{flex:1}.modal{border-radius:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}aside button:focus-visible,aside a:focus-visible{outline:3px solid var(--color-lime);outline-offset:2px}
