@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff) format("woff")}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-600-normal-BFCDtZfi.woff2) format("woff2"),url(/assets/fraunces-latin-600-normal-DL5QCzvS.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}.metro-presentation{min-height:100vh;background:var(--background);color:var(--foreground)}.presentation-width{width:min(1120px,calc(100% - 48px));margin-inline:auto}.presentation-header,.presentation-final{display:flex;justify-content:space-between;align-items:center;gap:24px}.presentation-header{padding-block:24px;border-bottom:1px solid var(--border)}.presentation-header .metro-wordmark{width:142px;height:auto}.presentation-access,.presentation-contact,.presentation-more{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;font-weight:600;text-decoration:none}.presentation-access,.presentation-more{color:var(--foreground)}.presentation-access:hover,.presentation-more:hover{text-decoration:underline;text-underline-offset:4px}.presentation-contact{border-radius:var(--radius-md);padding:10px 16px;color:#fff;background:var(--brand)}.presentation-contact:hover{color:#fff;background:var(--brand-hover, #1200cc)}.presentation-hero{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,1fr);align-items:center;gap:clamp(30px,6vw,85px);padding-block:clamp(48px,9vw,112px)}.metro-presentation h1,.metro-presentation h2{font-family:Fraunces,Georgia,serif;font-weight:600;margin:0}.metro-presentation h1{font-size:clamp(2.5rem,5.7vw,4.85rem);line-height:1.04;letter-spacing:-.035em}.metro-presentation h2{font-size:clamp(1.7rem,3.1vw,2.5rem);line-height:1.15}.metro-presentation p{color:var(--muted-foreground);line-height:1.6}.presentation-hero p{font-size:1.12rem;max-width:45ch;margin:22px 0}.presentation-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px}.presentation-sample{margin:0;padding:clamp(20px,3vw,32px);background:#eae6dc;color:#22201d;border-radius:var(--radius-lg);box-shadow:0 12px 28px #18151416}.presentation-sample figcaption{font-weight:600;margin-bottom:26px}.presentation-core{display:grid;grid-template-columns:2fr 3fr 3fr;height:clamp(68px,12vw,140px);overflow:hidden;border-radius:4px}.presentation-core span:nth-child(1){background:repeating-linear-gradient(145deg,#af7154 0 5px,#b87758 5px 8px)}.presentation-core span:nth-child(2){background:repeating-linear-gradient(165deg,#aa9b82 0 5px,#b4a58c 5px 9px)}.presentation-core span:nth-child(3){background:repeating-linear-gradient(150deg,#e1cda9 0 4px,#d9c39b 4px 8px)}.presentation-depths{display:flex;justify-content:space-between;font-size:.8rem;padding:10px 0 16px}.presentation-sample dl{margin:0}.presentation-sample dl div{display:flex;gap:16px;padding-block:8px;border-top:1px solid #c7c0b2}.presentation-sample dd{margin:0}.presentation-sample dt{min-width:4rem;font-weight:600}.presentation-workflow,.presentation-final{border-top:1px solid var(--border);padding-block:clamp(36px,6vw,64px)}.presentation-workflow ol{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.presentation-workflow li{border-top:1px solid var(--border);padding-top:20px}.presentation-workflow h3{margin:10px 0 6px;font-size:1.13rem}.presentation-workflow p,.presentation-final p{margin:0}.presentation-final h2{margin-bottom:8px}.presentation-final .presentation-contact{flex-shrink:0}@media(max-width:720px){.presentation-hero,.presentation-workflow ol{grid-template-columns:1fr}.presentation-final{align-items:flex-start;flex-direction:column}}@media(max-width:390px){.presentation-width{width:calc(100% - 32px)}.presentation-header{gap:10px}.presentation-header .metro-wordmark{width:118px}}.presentation-analysis{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);align-items:center;gap:clamp(24px,6vw,72px);padding-block:clamp(36px,6vw,68px);border-top:1px solid var(--border)}.presentation-analysis-copy>svg{color:var(--primary);margin-bottom:12px}.presentation-analysis-copy p{max-width:41ch;margin-bottom:0}.presentation-analysis-sample{margin:0;padding:clamp(14px,3vw,28px);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card)}.presentation-analysis-sample figcaption{display:grid;gap:2px;line-height:1.3}.presentation-analysis-sample figcaption strong{font-size:1.2rem}.presentation-analysis-sample figcaption span,.presentation-analysis-sample caption{color:var(--muted-foreground)}.presentation-analysis-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin-block:16px}.presentation-analysis-legend span{display:inline-flex;align-items:center;gap:5px;font-size:.87rem}.presentation-analysis-legend i{width:10px;height:10px;border-radius:2px}.presentation-analysis-legend span:first-child i,.presentation-reading-first{background:#2155b5}.presentation-analysis-legend span:last-child i,.presentation-reading-final{background:#c62828}.presentation-analysis-sample table{width:100%;border-collapse:collapse;font-size:.9rem}.presentation-analysis-sample caption{text-align:left;margin-bottom:4px}.presentation-analysis-sample th,.presentation-analysis-sample td{text-align:left;padding:8px 4px;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums}.presentation-analysis-sample th:first-child{white-space:nowrap}.presentation-analysis-sample th:last-child{width:50%}.presentation-reading{display:grid;gap:3px}.presentation-reading span{display:block;min-width:1.55em;padding-inline:3px;border-radius:2px;color:#fff;font-size:.75rem;font-weight:600;line-height:1.3}@media(max-width:720px){.presentation-analysis{grid-template-columns:1fr}}:root{font-family:IBM Plex Sans,sans-serif;font-size:15px;color:#292520;background:#fbfaf8;font-synthesis:none;line-height:1.55;--ink: #292520;--muted: #655f58;--line: #ded9d2;--brand: #1600ff;--focus: #236b91;--surface: #fff;--subtle: #f0ece6}*{box-sizing:border-box}body{margin:0}::selection{background:#e8e6ff;color:#160b70}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button{cursor:pointer;border:0;border-radius:6px;padding:12px 18px;background:var(--brand);color:#fff;font-weight:600;min-height:46px}button:hover{background:#1200cc}button:disabled{opacity:.6;cursor:wait}button.secondary{background:transparent;color:var(--ink);border:1px solid var(--line)}button.secondary:hover{background:#f0ece6}button.danger{background:#8c302c}.wordmark{text-decoration:none;font-size:22px;letter-spacing:-.03em;white-space:nowrap}.wordmark strong{font-weight:700}.access-layout{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr}.intro{padding:56px clamp(28px,6vw,96px);background:#eef0ff;display:flex;flex-direction:column;justify-content:space-between;gap:64px}.intro h1{font-size:clamp(40px,5vw,72px);line-height:1.08;letter-spacing:-.035em;font-weight:500;margin:0 0 28px}.intro p{max-width:38ch}.intro-foot{font-size:13px;color:var(--muted)}.access-form{width:min(100%,540px);align-self:center;justify-self:center;padding:64px 48px}h2{font-size:26px;font-weight:600;line-height:1.25;letter-spacing:-.02em;margin:0 0 12px}h3{font-size:19px;margin:0 0 12px}p{margin:0 0 24px;max-width:70ch;color:var(--muted)}fieldset{border:0;padding:0;margin:0;min-width:0}label{display:block;font-size:14px;font-weight:600;margin:21px 0 7px}input{display:block;width:100%;min-height:47px;border:1px solid #a69d92;border-radius:5px;background:#fff;color:var(--ink);padding:10px 12px;caret-color:var(--brand)}input::placeholder{color:#71685e}input:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #236b91;outline-offset:3px}.help{font-size:13px;margin:8px 0 20px;color:var(--muted)}details{margin:24px 0}summary{cursor:pointer;font-size:14px;font-weight:600}details label{font-weight:400}.primary{width:100%;margin-top:12px}.access-note{font-size:13px;border-top:1px solid var(--line);padding-top:24px;margin-top:32px}.error{background:#fcebe7;color:#8b2824;padding:13px 15px;border-radius:5px;margin:18px 0}.notice{padding:16px 24px;background:#dcead8;color:#21472f;text-align:center}.workspace-header{display:flex;align-items:center;justify-content:space-between;padding:24px clamp(20px,6vw,88px);border-bottom:1px solid var(--line);gap:20px}.account{max-width:1050px;margin:auto;padding:52px 24px}.account-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:36px}.account-title h1{font-size:32px;margin:0 0 8px;letter-spacing:-.025em;overflow-wrap:anywhere}.account-title p{margin:0}.status{font-size:13px;background:#dde9dd;color:#28533b;padding:6px 12px;border-radius:20px;white-space:nowrap}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:36px;max-width:780px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px}.section-heading h2{margin:0}.panel form{max-width:460px}.panel button{margin-top:22px}.setup{padding:24px 0;border-block:1px solid var(--line);margin:28px 0}.setup input{font-family:monospace}.recovery-codes{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.recovery-codes li{overflow-wrap:anywhere;padding:12px;background:#f3f0eb;font-size:14px;font-variant-numeric:tabular-nums}.check{display:flex;align-items:flex-start;gap:10px}.check input{width:18px;min-height:18px;margin-top:2px}.next-step{margin-top:40px;max-width:70ch}.next-step h2{font-size:21px}footer{padding:24px;text-align:center;color:var(--muted);font-size:13px}@media(max-width:760px){.access-layout{display:block}.intro{padding:26px 24px;gap:28px}.intro h1{font-size:36px;margin-bottom:16px}.intro h1 br{display:none}.intro p{margin-bottom:0}.intro-foot{display:none}.access-form{padding:36px 24px}.workspace-header{padding:20px}.wordmark{font-size:20px}.workspace-header button{padding:10px}.account{padding:32px 20px}.account-title,.section-heading{align-items:flex-start;flex-direction:column}.panel{padding:24px 20px}.recovery-codes{grid-template-columns:1fr}.panel button{width:100%}.account-title h1{font-size:28px}}@media(prefers-reduced-motion:no-preference){button{transition:background-color .15s ease-out}}button.danger:hover{background:#70221f}@media(max-width:760px){.intro{gap:0;padding:24px}.intro>div{display:none}}.account-nav{display:flex;gap:12px;margin-bottom:32px;flex-wrap:wrap}.works>.section-heading p{margin:8px 0 0}.work-editor{margin:24px 0}.work-search{max-width:620px;margin:28px 0}.search-controls{display:flex;gap:12px}.work-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.work-list li{padding:22px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.work-list h3{margin:0 0 6px;overflow-wrap:anywhere}.work-list p{margin:0;overflow-wrap:anywhere}.work-list button{flex-shrink:0}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:24px;font-variant-numeric:tabular-nums}.empty{padding:36px 0;border-block:1px solid var(--line)}.empty p{margin:0}.optional{font-weight:400;color:var(--muted)}.field-pair{display:grid;grid-template-columns:2fr 1fr;gap:16px}select{font:inherit;min-height:47px;width:100%;border:1px solid #a69d92;border-radius:5px;background:#fff;color:var(--ink);padding:10px}select:focus-visible{outline:3px solid #236b91;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.error p{color:inherit;margin:0}@media(max-width:760px){.work-list li{align-items:flex-start}.field-pair{grid-template-columns:1fr}.pagination{justify-content:space-between;gap:10px}.search-controls button{padding-inline:12px}}.work-link{background:transparent;color:var(--ink);padding:0;min-height:0;text-align:left;font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:4px}.work-link:hover{background:transparent;color:var(--brand)}.hierarchy>h2{margin-top:28px;overflow-wrap:anywhere}.hierarchy>section{margin-top:36px}.hierarchy .panel{margin-bottom:24px}.hierarchy .panel form,.hierarchy .panel fieldset{max-width:480px}.hierarchy .panel button{margin-right:12px}.hierarchy h4{font-size:18px;margin:0 0 6px}.hierarchy .work-list span{overflow-wrap:anywhere}.hierarchy .work-list li>div{min-width:0}.hierarchy h4{overflow-wrap:anywhere}.row-actions{display:flex;gap:10px;align-items:flex-start;justify-content:flex-end;flex-wrap:wrap;max-width:50%}.trash-action{min-width:0;max-width:100%}.trash-confirm{padding:16px;background:#fff;border:1px solid var(--line);border-radius:8px;max-width:440px}.trash-confirm p{overflow-wrap:anywhere;margin-bottom:12px}.trash-confirm button{margin:4px 8px 4px 0}.trash-filter{max-width:320px;margin-bottom:28px}.work-list li>div{min-width:0}.work-list h3{overflow-wrap:anywhere}@media(max-width:760px){.row-actions{flex-direction:column;align-items:stretch;max-width:45%}.trash-confirm{width:100%}.work-list li:has(.trash-confirm){flex-direction:column;align-items:stretch}.work-list li:has(.trash-confirm)>.row-actions{max-width:100%}.trash-confirm button{width:100%;margin:5px 0}}.row-actions{flex:0 0 auto}.work-list li>div:not(.row-actions){flex:1;min-width:0}.spt-screen>.section-heading{margin-top:28px}.spt-screen .panel{margin-block:24px}.spt-screen form{max-width:620px}.spt-advance{margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}.spt-advance legend{font-weight:600;padding-right:12px}.spt-screen textarea{font:inherit;width:100%;padding:12px;border:1px solid #a69d92;border-radius:5px;resize:vertical;color:var(--ink);background:#fff}.spt-screen textarea:focus-visible{outline:3px solid #236b91;outline-offset:3px}.form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.spt-result p{margin-bottom:14px}.spt-screen .work-list li>div{overflow-wrap:anywhere}@media(max-width:760px){.spt-advance .field-pair{grid-template-columns:1fr 1fr}.spt-advance label{font-size:13px}.spt-screen .work-list li{flex-direction:column;align-items:stretch}}.spt-advance .field-pair{grid-template-columns:1fr 1fr}.spt-advance .field-pair>div{min-width:0}.spt-work-context{overflow-wrap:anywhere}@media(max-width:760px){.spt-advance label{min-height:40px}}.hierarchy>p,.hierarchy .section-heading h3{overflow-wrap:anywhere;min-width:0}.hierarchy .work-list .work-link{flex-shrink:1;min-width:0;overflow-wrap:anywhere}.spt-screen>.section-heading>div{min-width:0}#spt-title,#technical-title{overflow-wrap:anywhere}.technical-screen>section{margin-top:40px}.technical-screen .work-list li>div{min-width:0}.soil-description{white-space:pre-wrap}.files-panel .work-list li>div{min-width:0}.files-panel .row-actions{flex-wrap:wrap}.photo-preview{display:block;max-width:100%;max-height:380px;object-fit:contain;margin-top:16px}.photo-list li{flex-wrap:wrap}#reports-title,.reports-screen h3,.reports-screen p{overflow-wrap:anywhere}.reports-screen .work-list li>div{min-width:0}.selection-order{padding-left:24px}.selection-order li{padding:12px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.selection-order .row-actions{margin-top:8px;flex-wrap:wrap}.hash-value{font-size:.875rem;overflow-wrap:anywhere}.checkbox-label{display:flex;align-items:flex-start;gap:12px;margin-block:14px;overflow-wrap:anywhere}.checkbox-label input[type=checkbox]{width:20px;height:20px;min-height:20px;flex-shrink:0;margin-top:3px;accent-color:var(--brand)}@media(max-width:760px){.reports-screen .work-list li,.technical-screen .work-list li{flex-direction:column;align-items:stretch}.reports-screen .row-actions,.technical-screen .row-actions{max-width:100%}}.technical-screen textarea,.reports-screen textarea{font:inherit;color:var(--ink);background:#fff;width:100%;padding:12px;border:1px solid #a69d92;border-radius:5px;resize:vertical}.technical-screen textarea:focus-visible,.reports-screen textarea:focus-visible{outline:3px solid #236b91;outline-offset:3px}.map-preview{margin-block:28px}.map-preview img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain}.development-toolbar{padding:16px max(20px,calc((100vw - 1268px)/2));background:#eef0ff;display:flex;flex-wrap:wrap;align-items:center;gap:12px}.development-toolbar p,.development-toolbar label{margin:0}.development-toolbar select{width:auto;max-width:100%}@media(max-width:760px){.development-toolbar p{flex-basis:100%}}.google-map-reference{width:100%;height:360px;border:1px solid var(--line, #ded9d2);margin-block:20px}.spt-screen .spt-editor{max-width:960px}.spt-screen .spt-editor form{max-width:none}.spt-advances{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.spt-advance-fields{display:grid;gap:8px}.spt-advances label{min-height:42px}.spt-stepper{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:4px}.spt-penetration{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.spt-stepper input,.spt-penetration input{min-width:0;font-variant-numeric:tabular-nums}.spt-stepper input{text-align:center;padding-inline:4px}.spt-editor .spt-stepper button,.spt-editor .spt-penetration button{margin:0;padding:8px;min-height:47px}.spt-stepper svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;vertical-align:middle}.spt-penetration button[aria-pressed=true]{background:var(--brand);color:#fff;border-color:var(--brand)}@media(max-width:760px){.spt-advances{grid-template-columns:1fr;gap:0}.spt-advance-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.spt-stepper{grid-template-columns:36px minmax(0,1fr) 36px;gap:2px}.spt-advances label{min-height:56px}}h1,h2{font-family:Fraunces,Georgia,serif;font-weight:600;letter-spacing:-.015em}h3,h4{font-weight:600}button,input,select,textarea{border-radius:8px}button:disabled{cursor:not-allowed}textarea::placeholder{color:#71685e}input,select,textarea{caret-color:var(--brand)}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--focus);outline-offset:3px}input[type=checkbox]{accent-color:var(--brand)}.setup input,.recovery-codes,.hash-value{font-family:IBM Plex Mono,monospace}.workspace{min-height:100dvh;padding-left:248px}.workspace-sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:26px 16px;gap:32px;z-index:10}.workspace-sidebar>.wordmark{padding-inline:12px;font-size:23px}.wordmark strong{color:var(--brand)}.workspace-sidebar .account-nav{flex-direction:column;gap:6px;margin:0}.workspace-sidebar .account-nav button{text-align:left;width:100%;min-height:44px;border:0;font-size:14px;padding:10px 14px}.workspace-sidebar .account-nav .secondary{color:var(--muted)}.sidebar-context{margin:auto 12px 0;padding-top:20px;border-top:1px solid var(--line);font-size:14px;color:var(--ink);overflow-wrap:anywhere}.sidebar-context span{font-size:13px;color:var(--muted)}.workspace-header{min-height:72px;padding:12px 32px;background:var(--surface)}.workspace-location{font-weight:500;color:var(--muted)}.workspace>.account{width:100%;max-width:1280px;padding:32px}.account-title{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--line)}.account-title h1{font-size:30px}.account-title p{font-size:14px}.workspace>footer{border-top:1px solid var(--line);margin-top:32px;padding:20px 32px;text-align:left}.panel{border-radius:12px;padding:28px}.work-list{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.work-list li{padding:20px 24px}.work-list li:last-child{border-bottom:0}.work-list .work-list{border:0;border-radius:0}.work-link{text-decoration:none}.work-link:hover{text-decoration:underline}.empty{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:32px 24px}.development-toolbar{border-bottom:1px solid var(--line)}.skip-link{position:fixed;left:16px;top:-100px;z-index:100;padding:12px;background:var(--surface)}.skip-link:focus{top:12px}*{scrollbar-width:thin;scrollbar-color:#b8afa4 #f0ece6}@media(max-width:1000px){.workspace{padding-left:0}.workspace-sidebar{position:static;width:100%;padding:18px 24px;border-right:0;border-bottom:1px solid var(--line);gap:20px}.workspace-sidebar>.wordmark{padding:0}.workspace-sidebar .account-nav{flex-direction:row;flex-wrap:wrap}.workspace-sidebar .account-nav button{width:auto}.sidebar-context{display:none}.workspace-header{padding:12px 24px}}@media(max-width:760px){.workspace>.account{padding:24px 20px}.workspace-sidebar{padding:18px 20px}.workspace-header{padding:12px 20px;gap:12px}.workspace-location{font-size:13px}.account-title{gap:16px;margin-bottom:24px}.account-title h1{font-size:28px}.panel{padding:24px 20px}.work-list li{padding:20px 16px}.workspace>footer{padding:20px}}.navigation-lock{max-width:none;margin:0;padding:8px 24px;border-bottom:1px solid var(--line);font-size:13px;color:var(--ink);background:var(--subtle)}:root{--surface-base: oklch(.985 .004 70);--surface: #fff;--subtle: oklch(.965 .006 70);--ink: oklch(.18 .01 60);--muted: oklch(.48 .008 60);--line: oklch(.88 .004 60);--input-line: oklch(.7 .006 60);--brand: #1600ff;--brand-hover: #100099;--brand-soft: #e8e6ff;--focus: oklch(.4 .105 238);--success-bg: #dcead8;--success-text: #21472f;--error-bg: #fcebe7;--error-text: #8b2824;color:var(--ink);background:var(--surface-base)}:root[data-theme=dark]{--surface-base: oklch(.16 .012 60);--surface: oklch(.21 .012 60);--subtle: oklch(.24 .01 60);--ink: oklch(.97 .005 60);--muted: oklch(.74 .006 60);--line: oklch(.36 .01 60);--input-line: oklch(.52 .008 60);--brand: #6552ff;--brand-hover: #5644e8;--brand-soft: #29224f;--focus: oklch(.78 .08 232);--success-bg: oklch(.3 .04 145);--success-text: oklch(.86 .06 145);--error-bg: oklch(.28 .06 28);--error-text: oklch(.87 .08 28)}body{background:var(--surface-base);color:var(--ink)}::selection{background:var(--brand-soft);color:var(--ink)}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:8px 16px;font-size:14px;line-height:20px;font-weight:500;border-radius:8px;vertical-align:middle}.ui-button svg{width:16px;height:16px;stroke-width:1.75;flex-shrink:0;pointer-events:none}button:hover{background:var(--brand-hover)}button.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}button.secondary:hover{background:var(--subtle)}button.ghost{background:transparent;color:var(--muted);border:0}button.ghost:hover{background:var(--subtle);color:var(--ink)}button:disabled{opacity:.5;cursor:not-allowed}button.icon-button{width:36px;height:36px;min-height:36px;padding:8px}input:not([type=checkbox]),select,.spt-screen textarea{min-height:36px;padding:8px 12px;font-size:14px;border-color:var(--input-line);background:var(--surface);color:var(--ink);border-radius:8px}input::placeholder,textarea::placeholder{color:var(--muted)}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.panel,.work-list,.empty,.trash-confirm{background:var(--surface);border-color:var(--line)}.panel{padding:24px}.status,.notice{background:var(--success-bg);color:var(--success-text)}.error{background:var(--error-bg);color:var(--error-text)}.recovery-codes li,.development-toolbar{background:var(--subtle)}.development-toolbar p{color:var(--ink)}.work-link.ui-button{justify-content:flex-start;font-size:inherit;background:transparent;padding:0;color:var(--ink);min-height:0}.work-link.ui-button:hover{color:var(--brand)}.brand-link{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-family:Fraunces,Georgia,serif;font-weight:600;font-size:16px;white-space:nowrap}.brand-link strong{color:var(--brand)}.brand-mark{display:inline-flex;width:36px;height:36px;flex-shrink:0}.brand-dark,[data-theme=dark] .brand-light{display:none}[data-theme=dark] .brand-dark{display:block}.shell{padding-left:0;display:flex;flex-direction:column}.shell .workspace-sidebar{width:256px;padding:0;gap:0;border-color:var(--line)}.sidebar-brand{display:flex;align-items:center;justify-content:space-between;height:64px;flex-shrink:0;gap:4px;padding:12px;border-bottom:1px solid var(--line)}.shell .account-nav{padding:16px 12px;gap:2px}.shell .account-nav .ui-button{display:flex;justify-content:flex-start;min-height:36px;gap:12px;padding:8px 12px;font-weight:500}.shell .account-nav .selected{color:#fff;background:var(--brand)}.shell .account-nav .secondary{background:transparent;border:0}.workspace-body{margin-left:256px;min-width:0;flex:1}.shell .workspace-header{height:64px;min-height:64px;padding:0 24px;gap:16px}.shell .account{width:100%;max-width:none;padding:24px}.shell .account-title{margin-bottom:24px;padding-bottom:20px}.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.avatar-button.ui-button{width:36px;height:36px;border-radius:50%;padding:8px;min-height:36px;background:var(--brand-soft);color:var(--ink);border:1px solid var(--line)}.shell .shell-footer{display:flex;position:relative;z-index:11;align-items:center;flex-wrap:wrap;gap:12px 20px;padding:16px 24px;margin:0;text-align:left;border-top:1px solid var(--line);background:var(--surface)}.shell-footer p{margin:0 0 0 auto;font-size:12px}.sidebar-compact .workspace-sidebar{width:64px}.sidebar-compact .workspace-body{margin-left:64px}.sidebar-compact .sidebar-brand{height:112px;flex-direction:column;padding:8px}.sidebar-compact .account-nav{padding:16px 8px}.sidebar-compact .account-nav .ui-button{justify-content:center;padding:10px;width:46px}.mobile-menu-button.ui-button{display:none}.mobile-drawer{padding:0;margin:0;border:0;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;background:transparent;color:var(--ink);overflow:hidden}.mobile-drawer::backdrop{background:#0000007f}.drawer-content{width:min(256px,85vw);height:100%;background:var(--surface);border-right:1px solid var(--line)}.mobile-drawer .account-nav{flex-direction:column}.mobile-drawer .account-nav .ui-button{width:100%}.access-layout{display:flex;align-items:center;justify-content:center;padding:24px;min-height:100dvh;background:var(--surface-base)}.access-form{width:100%;max-width:448px;background:var(--surface);padding:24px;border:1px solid var(--line);border-radius:12px}.login-brand{display:flex;justify-content:center;margin-bottom:20px}.login-brand .brand-link{font-size:24px}.login-brand .brand-mark,.login-brand img{width:44px;height:44px}.access-form>h1{margin:0 0 12px;text-align:center;font-size:22px;line-height:1.25}.account-password{margin-top:24px}.access-form>p:not(.access-note){text-align:center;font-size:14px}.access-note{margin-bottom:0;font-size:13px;padding-top:16px;margin-top:24px}.spt-editor .spt-stepper button,.spt-editor .spt-penetration button{min-height:36px}@keyframes ui-spin{to{transform:rotate(360deg)}}@keyframes drawer-in{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes drawer-out{0%{transform:translate(0)}to{transform:translate(-100%)}}@media(prefers-reduced-motion:no-preference){.ui-button,input,select,textarea{transition:background-color .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.workspace-sidebar,.workspace-body{transition:width .2s ease,margin-left .2s ease}.ui-spinner{animation:ui-spin 1s linear infinite}.mobile-drawer[open] .drawer-content{animation:drawer-in .3s cubic-bezier(.16,1,.3,1) both}.mobile-drawer.closing .drawer-content{animation:drawer-out .2s ease-in both}}@media(max-width:1023px){.shell .workspace-sidebar{display:none}.shell .workspace-body{margin-left:0}.mobile-menu-button.ui-button{display:inline-flex}}@media(max-width:760px){.shell .workspace-header{padding:0 16px;gap:8px}.shell .account{padding:16px}.shell .workspace-location{display:none}.shell .header-actions{gap:4px}.ui-button{min-height:44px;white-space:normal}.shell .shell-footer{padding:16px}.shell-footer p{margin-left:0}input:not([type=checkbox]),select,.spt-screen textarea{font-size:16px;min-height:44px}.spt-editor .spt-stepper button,.spt-editor .spt-penetration button{min-height:44px}.panel .icon-button{width:36px}}:root{--surface-base: oklch(.985 .004 70);--surface-raised: oklch(1 0 0);--surface-sunken: oklch(.965 .006 70);--surface-overlay: oklch(.99 .003 70);--graphite-950: oklch(.18 .01 60);--graphite-800: oklch(.3 .01 60);--graphite-600: oklch(.5 .008 60);--graphite-400: oklch(.7 .006 60);--graphite-200: oklch(.88 .004 60);--graphite-100: oklch(.94 .003 60);--brand-50: #f4f3ff;--brand-100: #e8e6ff;--brand-300: #b2aaff;--brand-500: #1600ff;--brand-600: #1200cc;--brand-700: #100099;--brand-900: #160b70;--accent-50: oklch(.96 .02 230);--accent-300: oklch(.78 .08 232);--accent-500: oklch(.55 .12 235);--accent-700: oklch(.4 .105 238);--success-500: oklch(.55 .11 145);--success-50: oklch(.96 .025 145);--warning-500: oklch(.74 .15 78);--warning-50: oklch(.97 .04 85);--danger-500: oklch(.55 .18 28);--danger-50: oklch(.96 .03 28);--info-500: var(--accent-500);--info-50: var(--accent-50);--background: var(--surface-base);--foreground: var(--graphite-950);--card: var(--surface-raised);--card-foreground: var(--graphite-950);--popover: var(--surface-overlay);--popover-foreground: var(--graphite-950);--primary: var(--brand-500);--primary-foreground: oklch(.99 .005 70);--secondary: var(--graphite-100);--secondary-foreground: var(--graphite-800);--muted: var(--graphite-100);--muted-foreground: var(--graphite-600);--accent: var(--accent-500);--accent-foreground: oklch(.99 .005 230);--destructive: var(--danger-500);--destructive-foreground: oklch(.99 .005 28);--border: var(--graphite-200);--input: var(--graphite-200);--ring: var(--accent-500);--sidebar: var(--surface-raised);--sidebar-foreground: var(--graphite-950);--sidebar-primary: var(--brand-500);--sidebar-primary-foreground: oklch(.99 .005 70);--sidebar-accent: var(--graphite-100);--sidebar-accent-foreground: var(--graphite-800);--sidebar-border: var(--graphite-200);--sidebar-ring: var(--accent-500);--chart-1: var(--brand-500);--chart-2: var(--accent-500);--chart-3: var(--success-500);--chart-4: var(--warning-500);--chart-5: var(--graphite-600);--warning: var(--warning-500);--warning-foreground: oklch(.22 .04 80);--ts-display: 2.5rem;--ts-h1: 2rem;--ts-h2: 1.5rem;--ts-h3: 1.25rem;--ts-lg: 1.0625rem;--ts-base: .9375rem;--ts-sm: .8125rem;--ts-label: .75rem;--lh-tight: 1.15;--lh-snug: 1.3;--lh-base: 1.55;--radius-xs: .25rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-pill: 9999px;--radius: var(--radius-md);--icon-stroke: 1.75}:root[data-theme=dark]{--surface-base: oklch(.16 .012 60);--surface-raised: oklch(.21 .012 60);--surface-sunken: oklch(.13 .01 60);--surface-overlay: oklch(.23 .012 60);--graphite-950: oklch(.97 .005 60);--graphite-800: oklch(.88 .005 60);--graphite-600: oklch(.68 .006 60);--graphite-400: oklch(.5 .008 60);--graphite-200: oklch(.3 .01 60);--graphite-100: oklch(.24 .01 60);--brand-50: #211c3c;--brand-100: #29224f;--brand-300: #8275ff;--brand-500: #a297ff;--brand-600: #6552ff;--brand-700: #6552ff;--brand-900: #34276d;--accent-50: oklch(.3 .04 230);--accent-300: oklch(.55 .11 232);--accent-500: oklch(.72 .13 230);--accent-700: oklch(.6 .12 232);--success-500: oklch(.7 .11 145);--success-50: oklch(.3 .04 145);--warning-500: oklch(.82 .14 80);--warning-50: oklch(.3 .06 80);--danger-500: oklch(.68 .17 28);--danger-50: oklch(.3 .06 28);--background: var(--surface-base);--foreground: var(--graphite-950);--card: var(--surface-raised);--card-foreground: var(--graphite-950);--popover: var(--surface-overlay);--popover-foreground: var(--graphite-950);--primary: var(--brand-500);--primary-foreground: oklch(.16 .012 60);--secondary: var(--graphite-100);--secondary-foreground: var(--graphite-800);--muted: var(--graphite-100);--muted-foreground: var(--graphite-600);--accent: var(--accent-500);--accent-foreground: oklch(.16 .012 230);--destructive: var(--danger-500);--destructive-foreground: oklch(.16 .012 28);--border: var(--graphite-200);--input: var(--graphite-200);--ring: var(--accent-500);--sidebar: var(--surface-raised);--sidebar-foreground: var(--graphite-950);--sidebar-primary: var(--brand-500);--sidebar-primary-foreground: oklch(.16 .012 60);--sidebar-accent: var(--graphite-100);--sidebar-accent-foreground: var(--graphite-800);--sidebar-border: var(--graphite-200);--sidebar-ring: var(--accent-500);--chart-1: var(--brand-500);--chart-2: var(--accent-500);--chart-3: var(--success-500);--chart-4: var(--warning-500);--chart-5: var(--graphite-400);--warning: var(--warning-500);--warning-foreground: oklch(.95 .03 80)}:root{--surface: var(--surface-raised);--surface-base: oklch(.985 .004 70);--subtle: var(--surface-sunken);--ink: var(--graphite-950);--muted: var(--graphite-600);--line: var(--graphite-200);--input-line: var(--graphite-400);--brand: var(--brand-500);--brand-hover: var(--brand-600);--brand-soft: var(--brand-100);--focus: var(--accent-500)}:root[data-theme=dark]{--surface: var(--surface-raised);--subtle: var(--surface-sunken);--ink: var(--graphite-950);--muted: var(--graphite-600);--line: var(--graphite-200);--input-line: var(--graphite-400);--brand: var(--brand-500);--brand-hover: var(--brand-600);--brand-soft: var(--brand-100);--focus: var(--accent-500)}.shell .account-nav .selected{background:var(--brand)}.shell .account-nav .selected:hover{background:var(--brand-hover)}.shell .account-nav .selected svg{color:inherit}.work-list{border:0;border-radius:0;background:transparent;overflow:visible}.work-list li{border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-bottom:16px}.work-list li:last-child{border-bottom:1px solid var(--line)}.panel .work-list li{border:0;border-radius:0;border-bottom:1px solid var(--line);padding-inline:0}.work-list li>div:not(.row-actions){min-width:0}.work-link.ui-button{white-space:normal}.spt-penetration button[aria-pressed=true]{color:var(--primary-foreground)}.ui-loading{display:flex;align-items:center;gap:10px;padding:24px 0}.ui-loading svg{width:20px;height:20px;stroke-width:1.75;color:var(--brand)}:root{--on-brand: #fff}:root[data-theme=dark]{--on-brand: #fff}.ui-button,.shell .account-nav .selected,.spt-penetration button[aria-pressed=true]{color:var(--on-brand)}button.secondary,button.ghost{color:var(--ink)}.shell .account-nav .selected{color:var(--on-brand)}button.avatar-button,button.work-link{color:var(--ink)}@media(max-width:1023px){.workspace-body{transition:none}}.sidebar-compact .sidebar-brand{height:64px;flex-direction:row;justify-content:center}.ui-button.danger{color:#fff}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);z-index:30;padding:6px 10px;border-radius:6px;color:var(--ink);background:var(--surface);border:1px solid var(--line);white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;font-size:13px}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{opacity:1;visibility:visible}@media(prefers-reduced-motion:no-preference){[data-tooltip]:after{transition:opacity .15s ease .2s,visibility .15s ease .2s}.work-list>li{transition:box-shadow .15s ease}.work-list>li:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}}.metre-navigation{max-width:620px;margin-block:24px}.field-checklist ul{list-style:none;padding:0;margin:0}.field-checklist li{display:flex;gap:12px;margin-block:12px;align-items:flex-start}.field-checklist svg{width:20px;height:20px;flex-shrink:0;margin-top:2px;color:var(--brand)}.field-checklist small{display:block;color:var(--muted)}.geotechnical-preview{max-width:960px}.geotechnical-preview>svg{width:100%;height:auto;max-height:600px;font:12px IBM Plex Sans,sans-serif;fill:var(--ink)}.profile-grid{stroke:var(--line);stroke-width:1}.profile-layer{fill:var(--brand-soft);stroke:var(--input-line)}.profile-layer.alternate{fill:var(--subtle)}.profile-point{fill:var(--brand);stroke:var(--surface);stroke-width:1}.profile-layer-list{padding-left:24px}.profile-layer-list li{margin-bottom:12px}.profile-layer-list p{margin-bottom:0}.table-scroll{max-width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums}caption{text-align:left;font-weight:600;margin-block:12px}th,td{padding:12px;border-bottom:1px solid var(--line)}th{font-size:13px;color:var(--muted)}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:24px 0;padding:0;color:var(--muted);font-size:13px}.breadcrumbs li{display:flex;align-items:center;gap:8px;min-width:0;overflow-wrap:anywhere}.breadcrumbs svg{width:14px;height:14px;flex-shrink:0}.breadcrumbs button{background:transparent;color:var(--ink);padding:0;min-height:32px;font-weight:500;font-size:inherit}.work-summary{display:flex;gap:16px 32px;flex-wrap:wrap;margin-block:24px;padding-block:20px;border-block:1px solid var(--line)}.work-summary dt{color:var(--muted);font-size:13px}.work-summary dd{margin:6px 0 0;font-size:22px;font-variant-numeric:tabular-nums}.notifications{position:relative;margin:0}.notifications summary{list-style:none;position:relative;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px}.notifications summary::-webkit-details-marker{display:none}.notifications summary:hover{background:var(--subtle)}.notifications summary[aria-disabled=true]{opacity:.5;cursor:not-allowed;background:transparent}.notifications summary>svg{width:20px;height:20px;stroke-width:1.75}.notification-count{position:absolute;right:-2px;top:-2px;min-width:16px;padding:0 3px;background:var(--error-text);color:var(--error-bg);font-size:11px;border-radius:8px;text-align:center}.notification-panel{position:absolute;right:0;top:calc(100% + 12px);width:min(360px,calc(100vw - 32px));padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--surface);z-index:40;max-height:70dvh;overflow-y:auto}.notification-panel .section-heading{flex-direction:row;align-items:center;gap:12px}.notification-panel ul{list-style:none;margin:16px 0 0;padding:0}.notification-panel li{border-top:1px solid var(--line)}.notification-panel .activity-link{display:block;background:transparent;color:var(--ink);text-align:left;width:100%;padding:14px 0;white-space:normal}.activity-link span span,.activity-link small{display:block;color:var(--muted);font-weight:400;margin-top:4px}@media(max-width:760px){.notification-panel{position:fixed;top:70px;right:16px}}.profile-graph-scroll{max-width:100%;overflow-x:auto}.profile-graph-scroll>svg{display:block;width:100%;min-width:540px;height:auto;max-height:600px;font:12px IBM Plex Sans,sans-serif;fill:var(--ink)}.profile-scroll-help{display:none}.profile-graph-scroll:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media(max-width:760px){.profile-scroll-help{display:block}}.hierarchy-browser{display:grid;grid-template-columns:320px minmax(0,1fr);align-items:start;gap:28px;margin-top:28px}.hierarchy-browser>section{min-width:0}.folder-tree{width:100%;border:1px solid var(--line);border-radius:8px;padding:24px;background:var(--surface);max-height:640px;overflow-y:auto}.folder-tree ul{list-style:none;padding:0;margin:0}.folder-tree .tree-children>ul{margin-left:11px;padding-left:11px;border-left:1px solid var(--line)}.folder-tree .tree-item{position:relative;margin-top:4px}.folder-tree .tree-item:before{content:"";position:absolute;left:-11px;top:14px;width:11px;height:1px;background:var(--line)}.folder-tree .tree-label,.folder-tree .file-item{display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:4px 8px;border:0;border-radius:4px;min-height:28px;height:auto;cursor:pointer;font:400 14px/1.4 IBM Plex Sans,sans-serif;color:var(--ink);background:transparent;text-align:left;width:100%;min-width:0}.folder-tree button span{min-width:0;overflow-wrap:anywhere}.folder-tree svg{width:16px;height:16px;color:var(--muted);flex-shrink:0;stroke-width:1.75}.folder-tree .tree-label:hover,.folder-tree .file-item:hover,.folder-tree .tree-action:hover{background:var(--subtle)}.folder-tree .is-selected{background:var(--subtle);font-weight:500}.folder-tree .tree-label[aria-expanded=true]>svg:not(.tree-chevron){color:var(--ink)}.folder-tree .tree-chevron{width:12px;height:12px}.folder-tree .tree-label[aria-expanded=true] .tree-chevron{transform:rotate(90deg)}.folder-tree .tree-work{font-weight:500}.tree-folder-row{display:flex;align-items:flex-start;gap:4px}.tree-node-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.folder-tree .tree-action,.folder-tree .tree-node-actions .trash-action>button{width:28px;min-height:28px;height:28px;padding:6px;margin:0;border:0;border-radius:4px;background:transparent;color:var(--muted)}.folder-tree .tree-node-actions .trash-action>button{font-size:0;gap:0}.tree-folder-row:has(.trash-confirm){flex-wrap:wrap}.tree-node-actions:has(.trash-confirm){flex-basis:100%;width:100%}.folder-tree .trash-confirm{width:100%;max-width:100%;padding:12px}.folder-tree .trash-confirm button{margin:6px 0;width:100%}.tree-children-wrapper{display:grid;grid-template-rows:0fr}.tree-children-wrapper.is-open{grid-template-rows:1fr}.tree-children{overflow:hidden;min-height:0}.folder-tree .tree-state{color:var(--muted);font-size:13px;padding:6px 8px;overflow-wrap:anywhere}.folder-tree .tree-state p{margin:0;color:inherit}@media(prefers-reduced-motion:no-preference){.tree-children-wrapper{transition:grid-template-rows .3s ease-in-out}.folder-tree .tree-chevron{transition:transform .2s ease}.folder-tree button{transition:background-color .2s ease}}@media(max-width:1100px){.hierarchy-browser{grid-template-columns:1fr}.folder-pane{max-width:480px}}@media(max-width:760px){.folder-pane{max-width:none}.folder-tree{padding:16px;max-height:440px}.folder-tree .tree-label,.folder-tree .file-item,.folder-tree .tree-action,.folder-tree .tree-node-actions .trash-action>button{min-height:44px}.folder-tree .tree-item:before{top:22px}.folder-tree .tree-node-actions .trash-action>button{height:44px}}@media(max-width:760px){.folder-tree .tree-action,.folder-tree .tree-node-actions .trash-action>button{width:44px}}.folder-tree .tree-node-actions .trash-action>button:hover{background:var(--subtle)}.interactive-sheet{margin-block:32px;min-width:0}.interactive-sheet h3{display:flex;align-items:center;gap:10px}.interactive-sheet h3 svg{width:22px;height:22px;flex-shrink:0}.interactive-sheet .section-heading{align-items:flex-start}.sheet-warnings{margin-block:16px;padding:12px 16px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.sheet-warnings ul{padding-left:20px;font-size:14px;color:var(--muted)}.sheet-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 0;border-block:1px solid var(--line);margin-bottom:20px}.sheet-toolbar select{width:auto;max-width:180px}.sheet-toolbar button:has(>svg:only-child){padding:8px;min-width:36px}.sheet-toolbar output{min-width:45px;text-align:center;font-variant-numeric:tabular-nums}.sheet-toolbar-divider{height:24px;width:1px;background:var(--line);margin-inline:4px}.sheet-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}.sheet-paper-panel{min-width:0}.sheet-viewport{width:100%;max-width:100%;max-height:85dvh;overflow:auto;background:var(--subtle);border:1px solid var(--line);padding:12px;border-radius:8px}.sheet-viewport:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sheet-paper-size{position:relative;background:#fff;margin-inline:auto;flex-shrink:0}.sheet-paper-size iframe{display:block;position:absolute;top:0;left:0;transform-origin:top left;border:0;background:#fff}.sheet-inspector{position:sticky;top:16px;max-height:calc(100dvh - 32px);overflow-y:auto;padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--surface);min-width:0}.sheet-inspector label{margin-top:0}.sheet-inspector h4{font-size:16px;margin:16px 0 10px}.sheet-inspector p{font-size:14px;margin-bottom:14px;overflow-wrap:anywhere}.sheet-inspector .ui-button{white-space:normal;text-align:left;justify-content:flex-start}.sheet-inspector-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:16px}.sheet-inspector-heading h4{margin:0}.sheet-facts{margin:16px 0;font-size:14px}.sheet-facts dt{color:var(--muted);font-size:13px;margin-top:10px}.sheet-facts dd{margin:2px 0 0;overflow-wrap:anywhere}.sheet-advance-table{font-size:14px}.sheet-advance-table th,.sheet-advance-table td{padding:8px 5px}.sheet-sum-first{color:#2155b5}.sheet-sum-final{color:#c62828}[data-theme=dark] .sheet-sum-first{color:#91b9ff}[data-theme=dark] .sheet-sum-final{color:#ffabab}.sheet-layer-details,.sheet-photos{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.sheet-photos>button{margin-bottom:8px;width:100%}.sheet-photo{margin:12px 0}.sheet-photo img{width:100%;height:auto;max-height:360px;object-fit:contain}.sheet-photo figcaption{font-size:13px;color:var(--muted);margin-top:6px}.sheet-mobile-nav{display:none}@media(max-width:1200px){.sheet-workspace{grid-template-columns:1fr}.sheet-inspector{position:static;max-height:none}.sheet-mobile-nav{display:flex;gap:8px;margin-bottom:16px}.sheet-workspace[data-mobile-tab=details] .sheet-paper-panel,.sheet-workspace[data-mobile-tab=sheet] .sheet-inspector{display:none}}@media(max-width:760px){.sheet-toolbar select{max-width:170px}.sheet-toolbar{gap:6px}.sheet-toolbar-divider{display:none}.sheet-inspector{padding:16px}}.analysis-field-strip{display:flex;flex-wrap:wrap;gap:24px;margin:0 0 24px;padding:16px 0;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.analysis-field-strip div{flex:1;min-width:180px}.analysis-field-strip dt{font-size:13px;color:var(--muted)}.analysis-field-strip dd{margin:4px 0 0;font-weight:600;font-size:15px}.analysis-legend{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;font-size:13px}.analysis-legend button{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid var(--line);padding:8px 12px;border-radius:6px;cursor:pointer;font:inherit;min-height:44px}.analysis-legend button[aria-pressed=false]{opacity:.55;text-decoration:line-through}.analysis-legend button span{width:22px;height:2px;background:currentColor}.analysis-legend>span{color:var(--muted);max-width:42ch}.analysis-legend-first{color:#2155b5}.analysis-legend-final{color:#c62828}.analysis-canvas-size{margin-inline:auto;position:relative}.analysis-canvas{transform-origin:top left;color:var(--ink);font-size:14px;font-variant-numeric:tabular-nums;background:var(--surface)}.analysis-track-head,.analysis-tracks{display:grid;grid-template-columns:70px 280px 160px 320px 110px}.analysis-track-head{height:64px;border-bottom:1px solid var(--line);align-items:center;background:var(--subtle);font-size:12px;font-weight:600}.analysis-track-head>span{padding:12px;display:flex;gap:6px;align-items:center}.analysis-tracks{position:relative;margin-bottom:0}.analysis-depth-track,.analysis-soil-track,.analysis-blows-track,.analysis-method-track{position:relative;border-right:1px solid var(--line);min-width:0}.analysis-depth-track>span{position:absolute;right:14px;transform:translateY(-100%);color:var(--muted);font-size:12px;padding-bottom:5px}.analysis-soil{position:absolute;left:0;width:100%;display:flex;align-items:center;gap:14px;text-align:left;border:0;border-bottom:1px solid var(--line);padding:0 14px 0 0;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;overflow:hidden;transition:background .2s ease}.analysis-soil:hover,.analysis-soil.is-active{background:var(--subtle)}.analysis-soil:focus-visible,.analysis-reading:focus-visible,.analysis-legend button:focus-visible{outline:2px solid var(--focus);outline-offset:-3px}.analysis-stratum{height:100%;flex:0 0 28px;align-self:stretch;color:#9d7946;background:#f7e6c5}.analysis-stratum svg circle{fill:currentColor}.analysis-stratum svg path{stroke:currentColor;stroke-width:.8;fill:none}.analysis-soil.clay .analysis-stratum{background:#efd0b5;color:#85512f}.analysis-soil.silt .analysis-stratum{background:#e4e1d7;color:#6b6655}.analysis-soil-copy{display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0;max-height:100%;overflow:hidden;padding:5px 0}.analysis-soil-copy>strong{font-size:14px}.analysis-soil-copy>span,.analysis-soil-copy small{font-size:12px;color:var(--muted)}.analysis-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.analysis-reading,.analysis-missing-row{position:absolute;left:0;width:100%;border:0;border-bottom:1px solid var(--line);background:var(--surface);padding:8px 12px;font:inherit;color:var(--ink);display:flex;justify-content:center;flex-direction:column;text-align:left}.analysis-reading{cursor:pointer;transition:background .2s ease}.analysis-reading:hover,.analysis-reading.is-active{background:var(--subtle)}.analysis-reading>span{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.analysis-reading strong{font-size:14px;font-weight:500}.analysis-reading small,.analysis-missing-row{font-size:11px;color:var(--muted)}.analysis-reading small{margin-top:5px}.analysis-method-track>span{position:absolute;left:0;width:100%;display:flex;align-items:center;justify-content:center;font-size:12px;border-bottom:1px solid var(--line)}.analysis-graph{overflow:visible}.analysis-grid-vertical{stroke:var(--line);stroke-width:.7}.analysis-grid-horizontal{stroke:var(--line);stroke-width:.7;stroke-dasharray:3 5}.analysis-axis-label{fill:var(--muted);font-size:11px}.analysis-curve-first{color:#2155b5}.analysis-curve-final{color:#c62828}.analysis-draw-curve{stroke:currentColor;stroke-width:2;fill:none;stroke-dasharray:1;stroke-dashoffset:0;animation:analysis-trace .9s cubic-bezier(.16,1,.3,1) both}.analysis-point{fill:currentColor;stroke:var(--surface);stroke-width:1.5;transition:r .2s ease}.analysis-point-hit{fill:transparent;cursor:pointer}.analysis-graph g[role=button]{cursor:pointer;outline:none}.analysis-graph g[role=button]:focus-visible .analysis-point{stroke:var(--ink);stroke-width:3}.analysis-crosshair{stroke:var(--muted);stroke-width:1;stroke-dasharray:4 4;pointer-events:none}.analysis-water,.analysis-termination{position:absolute;left:70px;right:0;height:0;border-top:1px dashed #2155b5;pointer-events:none}.analysis-water span,.analysis-termination span{position:absolute;right:5px;bottom:4px;display:flex;align-items:center;gap:4px;font-size:11px;background:var(--surface);padding:2px 5px;color:#2155b5}.analysis-termination{border-color:var(--muted)}.analysis-termination span{color:var(--ink);right:auto;left:30px;bottom:-24px}.analysis-track-empty{padding:20px;font-size:13px;color:var(--muted)}[data-theme=dark] .analysis-legend-first,[data-theme=dark] .analysis-curve-first{color:#91b9ff}[data-theme=dark] .analysis-legend-final,[data-theme=dark] .analysis-curve-final{color:#ffabab}[data-theme=dark] .analysis-water{border-color:#91b9ff}[data-theme=dark] .analysis-water span{color:#91b9ff}@keyframes analysis-trace{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.analysis-draw-curve{animation:none}.analysis-point,.analysis-reading,.analysis-soil{transition:none}}.analysis-depth-track>span{transform:translateY(-50%);padding-bottom:0}.analysis-soil,.analysis-reading{border-radius:0;box-shadow:none}.analysis-layer-range{fill:var(--brand);fill-opacity:.06;pointer-events:none}.analysis-soil{min-height:0}.analysis-surface-reading{height:44px;min-height:44px;width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;text-align:left;background:var(--subtle);color:var(--ink);font:inherit;padding:8px 16px;cursor:pointer}.analysis-water{left:510px}.analysis-termination{border:0}.analysis-termination:before,.analysis-termination:after{content:"";position:absolute;top:0;border-top:1px dashed var(--muted)}.analysis-termination:before{left:0;width:280px}.analysis-termination:after{left:440px;right:0}.furo-navigation{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 28px;padding-bottom:16px;border-bottom:1px solid var(--line)}.furo-navigation .ui-button{min-height:44px}@media(max-width:600px){.furo-navigation{display:grid;grid-template-columns:1fr 1fr}.furo-navigation .ui-button{font-size:13px;justify-content:flex-start;padding:10px}}.management-form{max-width:720px;margin-block:24px}.management-roles{padding:16px 0}.management-roles>label,.management-check{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:400}.management-roles input,.management-check input{width:18px;height:18px;flex:0 0 18px;margin:0;accent-color:var(--brand)}.furo-navigation-lock{border:0;padding:0;margin:0;min-width:0}.analysis-reading>span{position:absolute;top:50%;left:12px;right:12px;transform:translateY(-50%);line-height:20px}.analysis-reading small{position:absolute;left:12px;right:12px;bottom:3px;margin:0;line-height:14px}.soil-state{font-size:inherit}.analysis-reading small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.soil-state-reference{margin:0 0 20px;padding:12px 0;border-block:1px solid var(--line);font-size:14px}.soil-state-reference summary{cursor:pointer;font-weight:600;min-height:32px;display:list-item}.soil-state-tables{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:16px}.soil-state-tables table{font-size:14px}.soil-state-tables th,.soil-state-tables td{padding:8px;text-align:left}.soil-state-tables caption{text-align:left;font-weight:600;margin-bottom:8px}@media(max-width:760px){.soil-state-tables{grid-template-columns:1fr}}.furo-navigation{position:sticky;top:64px;z-index:8;background:var(--surface);padding:12px 0}.furo-navigation-lock{position:sticky;top:64px;z-index:8;background:var(--surface)}.furo-navigation-lock .furo-navigation{position:static}.ui-button.generate-report{background:#236b45;color:#fff;border-color:#236b45;transition:background-color .2s,box-shadow .2s}.ui-button.generate-report:hover:not(:disabled){background:#195334;border-color:#195334;box-shadow:0 3px 8px #123c2926}@media(prefers-reduced-motion:no-preference){.generate-report:not(:disabled):hover svg{animation:report-ready .45s ease-out both}.generate-report:disabled .ui-spinner{animation:report-working 1.2s ease-in-out infinite}@keyframes report-ready{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes report-working{0%,to{transform:rotate(0);opacity:.6}50%{transform:rotate(180deg);opacity:1}}}.spt-editor,.technical-screen section{scroll-margin-top:160px}@media(max-width:600px){.spt-editor,.technical-screen section{scroll-margin-top:280px}}.notice.review-return-note{margin-block:16px;border-radius:8px;padding:12px 16px;text-align:left;color:var(--warning-foreground);background:var(--warning-50)}.review-return-note p{max-width:none;margin:4px 0 0;color:inherit;overflow-wrap:anywhere;white-space:pre-wrap}.professional-profile>.ui-button{margin:0 0 24px}.professional-profile .status.pending,.profile-missing,.reviewer-blocked{color:var(--warning-foreground);background:var(--warning-50)}.profile-missing{border-radius:8px;padding:12px 16px;margin-bottom:8px}.professional-profile form{max-width:520px}.profile-section{margin-top:32px}.profile-section+.profile-section{padding-top:24px;border-top:1px solid var(--line)}.profile-section>h3{margin-bottom:4px}.profile-section>.help{margin:0 0 4px}.profile-field>label{margin-top:16px}.profile-field .help,.profile-field .field-error{margin:6px 0 0}.profile-field .field-error{font-size:13px;font-weight:500;color:var(--error-text)}.profile-field [aria-invalid=true]{border-color:var(--error-text)}.professional-profile .field-pair{grid-template-columns:minmax(0,1fr) 8.5rem;align-items:start}.profile-signature-preview{display:block;box-sizing:border-box;width:min(100%,260px);height:88px;margin-top:12px;padding:8px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:8px}.profile-example{white-space:nowrap;font-variant-numeric:tabular-nums}.professional-profile .profile-saved{margin:24px 0 0;border-radius:8px;padding:12px 16px;text-align:left}.reviewer-blocked,.reviewer-identity{max-width:780px;margin-block:16px;border-radius:8px;padding:12px 16px}.reviewer-blocked p{margin:0;color:inherit;max-width:70ch}.reviewer-blocked .ui-button,.reviewer-identity .ui-button{margin-top:12px}.reviewer-identity{border:1px solid var(--line);background:var(--surface)}.reviewer-identity h4{margin:0 0 4px;font-size:15px}.reviewer-identity .help{margin:0}.reviewer-identity dl{display:flex;flex-wrap:wrap;gap:8px 32px;margin:12px 0 0}.reviewer-identity dt{color:var(--muted);font-size:13px}.reviewer-identity dd{margin:2px 0 0;color:var(--ink);overflow-wrap:anywhere}@media(max-width:760px){.professional-profile .field-pair{grid-template-columns:1fr;gap:0}}.photo-slots .section-heading{flex-wrap:wrap;margin-bottom:8px}.photo-slots .section-heading h4{margin:0}.photo-slots-progress{margin:0 0 4px;font-variant-numeric:tabular-nums}.photo-slots>.help{margin:0 0 16px}.photo-slots-locked{margin:0 0 16px;border-radius:8px;padding:12px 16px;background:var(--subtle);color:var(--ink)}.photo-slot-list{margin-top:8px}.files-panel .photo-slot-list li.photo-slot{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:start;column-gap:16px;row-gap:12px}.photo-slot-position{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--line);font-weight:600;font-variant-numeric:tabular-nums}.photo-slot[data-state=READY] .photo-slot-position{border-color:transparent;background:var(--success-bg);color:var(--success-text)}.photo-slot-body h5,.photo-list h5{margin:0 0 6px;font-size:15px;font-weight:600;overflow-wrap:anywhere}.photo-slot-body p{margin:0}.photo-slot-body p+p{margin-top:4px}.photo-slot-state{display:inline-block;font-size:13px;font-weight:500;border-radius:20px;padding:2px 10px;background:var(--subtle);color:var(--ink)}.photo-slot-state[data-state=READY]{background:var(--success-bg);color:var(--success-text)}.photo-slot-state[data-state=EMPTY]{background:var(--warning-50);color:var(--warning-foreground)}.photo-slot-state[data-state=FAILED]{background:var(--error-bg);color:var(--error-text)}.photo-slot>.row-actions{max-width:none;justify-content:flex-end}.photo-slot>.photo-slot-form{grid-column:2 / -1;margin:0}.photo-slot-form legend{font-weight:600}.photo-untyped{margin-top:32px}.photo-untyped>h4{margin:0 0 4px}.photo-untyped>.help{margin:0 0 16px}@media(max-width:760px){.files-panel .photo-slot-list li.photo-slot{grid-template-columns:32px minmax(0,1fr)}.photo-slot>.row-actions{grid-column:1 / -1;justify-content:flex-start}.photo-slot>.photo-slot-form{grid-column:1 / -1}}.report-photo-order{margin:0 0 16px;padding-left:24px}.report-photo-order li{padding:2px 0}.report-untyped-photos{margin:0 0 20px}.report-untyped-photos>.help{margin:0 0 8px}.report-untyped-photos>ul{margin:0;padding-left:24px}.report-untyped-photos li{padding:2px 0}.brand-link{font-family:IBM Plex Sans,sans-serif;line-height:1}.brand-link.ui-button,.brand-link.ui-button:hover{min-height:0;padding:0;border:0;color:inherit;background:transparent}.metro-wordmark{display:block;width:164px;height:58px;object-fit:contain}.metro-icon{display:block}.brand-dark.metro-wordmark,[data-theme=dark] .brand-light.metro-wordmark{display:none}[data-theme=dark] .brand-dark.metro-wordmark{display:block}.sidebar-brand .metro-wordmark{width:144px;height:44px}.sidebar-brand{padding-top:8px;padding-bottom:8px}.login-brand .metro-wordmark{width:244px;height:86px}.shell-footer .metro-wordmark{width:136px;height:48px}:root[data-theme=dark]{--brand: #6552ff;--brand-hover: #5644e8;--brand-soft: #29224f;--primary-foreground: #fff;--sidebar-primary-foreground: #fff}[data-theme=dark] .work-link.ui-button:hover,[data-theme=dark] .breadcrumb button,[data-theme=dark] .ui-loading svg{color:#b2aaff}.company-logo{display:block;width:min(100%,280px);height:auto;max-height:76px;object-fit:contain;object-position:left center;margin-bottom:12px}
