:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#122448;background:#f2f5fa;font-size:16px;line-height:1.55;--blue:#1a5de8;--line:#dce4f1;--muted:#60718c}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);background:white;color:inherit;padding:11px 18px;border-radius:12px;min-height:46px;font-weight:600}button:hover,a.button:hover{background:#eaf1ff}button:disabled{opacity:.55;cursor:wait}a{color:var(--blue)}a.button{display:inline-block;text-decoration:none;border:1px solid var(--line);background:white;padding:11px 18px;border-radius:12px;font-weight:600}.primary{background:var(--blue)!important;color:white;border-color:var(--blue)}.soft{background:#eaf1ff;border-color:transparent}.header{max-width:1440px;margin:auto;padding:25px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#122448;font-weight:750;font-size:28px;letter-spacing:-1px}.brand span{font-size:12px;max-width:120px;line-height:1.35;color:var(--muted);letter-spacing:0;font-weight:500;margin-left:10px}#account{display:flex;align-items:center;gap:15px;font-size:14px}main{max-width:1296px;margin:auto;padding:38px 32px 70px;min-height:75vh}h1,h2,h3,p{margin:0}h1{font-size:clamp(34px,4vw,55px);letter-spacing:-1.8px;line-height:1.13;font-weight:650}h2{font-size:28px;line-height:1.25;letter-spacing:-.7px}h3{font-size:18px}.eyebrow{font-size:11px;letter-spacing:1.9px;font-weight:750;color:var(--blue);margin-bottom:16px}.intro{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:32px}.intro p{color:var(--muted);margin-top:14px;max-width:560px}.badge{border:1px solid #d6e3ff;border-radius:30px;padding:6px 12px;background:#eef4ff;font-size:12px;white-space:nowrap;display:inline-block}.grid{display:grid;grid-template-columns:1fr 330px;gap:28px}.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px}.card+.card{margin-top:20px}.card p{color:var(--muted);margin-top:9px}.steps{display:flex;gap:20px;margin:34px 0}.step{flex:1;border-top:2px solid var(--line);padding-top:12px;color:var(--muted);font-size:13px}.step.active{color:var(--blue);border-color:var(--blue)}.step b{display:block;font-size:15px}.hero{min-height:340px;display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center;background:#e8f0ff}.hero h2{font-size:38px;max-width:420px}.hero p{max-width:440px;margin:17px 0 25px}.hero-art{width:100%;max-width:310px;margin:auto}.tiny{font-size:11px;color:var(--muted)}.small{font-size:13px;color:var(--muted)}.stack{display:grid;gap:14px}.row{display:flex;align-items:center;justify-content:space-between;gap:14px}.wrap{flex-wrap:wrap}.section-title{margin-bottom:20px}.empty{padding:28px 0;text-align:center}.empty h3{margin-bottom:10px}.empty p{max-width:400px;margin:0 auto 22px}.project-button{width:100%;display:flex;text-align:left;justify-content:space-between;align-items:center;background:white;padding:24px;border-radius:16px}.project-button small{display:block;color:var(--muted);font-weight:400}.project-button strong{font-size:21px}.project-list{display:grid;gap:15px;margin-top:25px}.stats{display:flex;gap:35px;flex-wrap:wrap;margin:24px 0}.stat b{display:block;font-size:29px;line-height:1.2;letter-spacing:-.8px}.stat span{font-size:12px;color:var(--muted)}.room-tabs{display:flex;gap:8px;overflow:auto;padding:0 0 16px}.room-tabs button{white-space:nowrap}.room-tabs button[aria-pressed=true]{background:var(--blue);color:white;border-color:var(--blue)}.plan{width:100%;height:360px;border-radius:14px;background:#f3f7fd;display:block}.plan-label{font:600 11px sans-serif;fill:#385274;paint-order:stroke;stroke:#f3f7fd;stroke-width:4px;stroke-linejoin:round}.legend{font-size:12px;color:var(--muted);margin:12px 0 18px}.wall{stroke:#1a5de8;stroke-width:5;stroke-linecap:round}.floor{fill:#e7efff;stroke:#9fbcf5;stroke-width:1.5}.opening{stroke:#e6a44a;stroke-width:6}.warning{background:#fff7e9;border:1px solid #ead9b7;color:#795c25;border-radius:12px;padding:15px;font-size:13px;margin:15px 0}.file{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}.file button{font-size:13px;padding:8px 12px}.file small{display:block;color:var(--muted)}label{display:block;font-size:14px;font-weight:600;margin:15px 0}input{width:100%;border:1px solid #b6c8e4;border-radius:10px;padding:12px;background:white;margin-top:7px;min-height:48px}input:focus{outline:3px solid #b6d0ff;outline-offset:1px}details{border:1px solid var(--line);background:white;border-radius:14px;margin:12px 0;overflow:hidden}summary{padding:18px;cursor:pointer;font-weight:650}.table-scroll{overflow:auto;padding:0 18px 18px}table{border-collapse:collapse;width:100%;font-size:13px}th,td{padding:12px;text-align:left;border-bottom:1px solid var(--line);min-width:100px;vertical-align:top}th{color:var(--muted);background:#f3f7fd}.error{color:#a3322a!important}.success{color:var(--blue)}#notice:not(:empty){position:sticky;top:0;z-index:5;background:#122448;color:white;padding:13px 5%;text-align:center}dialog{border:1px solid var(--line);border-radius:22px;padding:32px;width:min(500px,94vw);color:#122448}dialog::backdrop{background:#122448aa;backdrop-filter:blur(4px)}dialog h2{margin-top:15px}dialog p{margin:18px 0}.close{position:absolute;right:15px;top:13px;border:0;font-size:25px}.muted{color:var(--muted)}footer{max-width:1296px;padding:24px 32px;margin:auto;border-top:1px solid var(--line);display:flex;gap:25px;align-items:center;color:var(--muted);font-size:12px}footer span:last-child{margin-left:auto}.breadcrumb{margin-bottom:25px;font-size:14px}.invitations{margin-top:20px}.invite-row{padding:12px 0;border-top:1px solid var(--line);font-size:13px;word-break:break-word}.invite-row button{margin-top:8px;font-size:12px}#share-link{word-break:break-all;font-size:12px} .room-meta{margin-top:15px}.hidden,[hidden]{display:none!important}@media(max-width:900px){.grid{grid-template-columns:1fr}.hero{grid-template-columns:1fr 1fr}.brand span{display:none}.intro{flex-direction:column}.grid>aside{display:grid;gap:18px}.grid>aside .card+.card{margin:0}.stats{gap:20px}.header{padding:18px 24px}}@media(max-width:580px){main{padding:25px 17px 40px}.hero{grid-template-columns:1fr}.hero-art{max-height:200px}.hero h2{font-size:30px}.card{padding:20px}.header{padding:17px}#account .user-name{display:none}.steps{gap:12px}.step{font-size:11px}.step b{font-size:13px}.plan{height:280px}.brand{font-size:25px}.intro{gap:18px}footer{padding:20px;flex-wrap:wrap;gap:10px}footer span:last-child{margin:0;width:100%}h1{font-size:36px}.stats .stat b{font-size:25px}dialog{padding:26px 20px}.row.wrap>*{max-width:100%}}

.invite-gate{max-width:640px;margin:24px auto;text-align:center;padding:40px}.invite-gate h2{margin:22px 0 14px}.invite-gate .primary{margin-top:24px;width:100%}.lock-mark{display:grid;place-items:center;width:72px;height:72px;border-radius:22px;background:#eaf1ff;color:var(--blue);margin:auto;font-size:30px;font-weight:700}.card{box-shadow:0 8px 30px #12244804}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #1a5de8;outline-offset:3px}.hero{background:linear-gradient(135deg,#eaf2ff,#dfebff)}.invite-row b{overflow-wrap:anywhere}

.project-tabs{display:flex;gap:10px;margin:14px 0 26px;flex-wrap:wrap}.project-tabs button[aria-pressed=true]{background:var(--blue);color:white;border-color:var(--blue)}.offers-view{max-width:1000px}.offer-total{font-size:27px;color:var(--blue);overflow-wrap:anywhere}.offer-card .table-scroll{padding:0;margin-top:20px}.offer-notes{white-space:pre-wrap;overflow-wrap:anywhere}.agreement-card{border-color:#a5bff4;background:#edf4ff}.check-label{display:flex;align-items:flex-start;gap:12px;margin:24px 0}.check-label input{width:22px;height:22px;min-height:22px;margin:0;flex-shrink:0;accent-color:var(--blue)}.offer-editor{padding:22px}.offer-rows{display:grid;gap:18px;margin:20px 0}.offer-item{padding:20px;border:1px solid var(--line);background:#f6f9ff;border-radius:16px}.item-numbers{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px}.item-numbers>*{min-width:0}select,textarea{font:inherit;color:inherit;width:100%;background:white;border:1px solid #b6c8e4;border-radius:10px;padding:12px;min-height:48px;margin-top:7px}textarea:focus,select:focus{outline:3px solid #b6d0ff;outline-offset:1px}.offer-editor>.primary{width:100%}@media(max-width:580px){.project-tabs button{flex:1;font-size:14px;padding:10px}.offer-editor{padding:16px}.offer-item{padding:15px}.offer-total{font-size:24px}}
#notice:not(:empty){display:flex;gap:16px;align-items:center;justify-content:center}#notice span{flex:1}#notice button{background:transparent;color:white;border-color:#60718c;min-width:44px;padding:6px;font-size:23px}

.invite-gate>button{display:block;margin:12px auto;min-width:220px;max-width:100%}.optional-name{margin:18px 0}.optional-name label{padding:0 18px 12px}.optional-name summary{font-size:14px}.work-import{padding:16px;border-radius:14px;background:#eaf1ff;margin:18px 0}.work-import p{margin:10px 0 0}#auth-change{display:block;margin-top:12px;width:100%}

.corrections-view{max-width:1000px}.correction-editor{padding:22px}.correction-editor>.primary{width:100%;margin-top:20px}.correction-card{margin:18px 0}.correction-card>button{margin:12px 12px 0 0}.correction-values{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);gap:15px;margin:20px 0;padding:18px;background:#edf4ff;border-radius:14px;align-items:center}.correction-values strong{display:block;font-size:25px;overflow-wrap:anywhere}.correction-values small{color:var(--muted)}.correction-arrow{color:var(--blue);font-size:24px}.correction-note{white-space:pre-wrap;overflow-wrap:anywhere}.correction-card h3{overflow-wrap:anywhere}.correction-editor select{max-width:100%}@media(max-width:580px){.correction-editor{padding:16px}.correction-values{padding:12px;gap:8px}.correction-values strong{font-size:20px}.project-tabs button{flex:1 1 auto}}

.deletion-card{max-width:760px;margin:24px auto}.deletion-card>button{margin:10px 10px 0 0}.deletion-card li{margin:10px 0}.danger{color:#a12620;border-color:#d6aaa8;background:#fff6f5}.deletion-card>strong{overflow-wrap:anywhere}

/* Public help is readable without JavaScript, sign-in or access to a project. */
.help-page{max-width:960px}.help-nav{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 36px}.help-nav .button{min-height:48px}.help-section{scroll-margin-top:24px;margin:36px 0}.help-section h2{margin-bottom:18px}.help-answer{padding:0 22px 22px;overflow-wrap:anywhere}.help-answer p+p{margin-top:14px}.help-answer ol{padding-left:24px;margin:0}.help-answer li+li{margin-top:16px}.help-answer li{padding-left:4px}.help-note{margin:20px 0}footer a{min-height:44px;display:inline-flex;align-items:center}a:focus-visible,summary:focus-visible{outline:3px solid #8cb3ff;outline-offset:4px}
@media(max-width:600px){.help-page{padding:28px 18px 48px}.help-nav{display:grid;grid-template-columns:1fr;width:100%}.help-nav a{text-align:center}.help-answer{padding:0 18px 20px}.help-section h2{font-size:26px}.help-page summary{font-size:17px}.help-page h1{font-size:36px}.header:has(+.help-page){flex-wrap:wrap}}

.next-step{border-color:#aec7f7;background:#edf4ff}.next-step .eyebrow{margin-bottom:10px}.next-step h2{font-size:25px}.next-step p{max-width:760px}

/* Room tabs and report tables scroll inside their card, not the whole page. */
.grid>*{min-width:0}.room-tabs{max-width:100%}.room-tabs button{flex-shrink:0}
.plan-label{font-size:18px}@media(max-width:580px){.plan-label{font-size:26px}}

/* Private contractor workspace */
.workspace-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.workspace-tools select{max-width:320px}.workspace-tools label{display:flex;gap:8px;align-items:center;margin:0}.workspace-tools input[type=checkbox]{width:auto}.workspace-status{color:#234f95;margin-bottom:0}.workspace-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;margin-top:18px}.workspace-stage{height:650px;min-width:0;position:relative;border:1px solid #d6e3f7;border-radius:22px;overflow:hidden;background:#f2f6fd}.workspace-stage canvas{display:block}.workspace-panel{margin:0;max-height:850px;overflow:auto}.workspace-panel form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.workspace-panel form button,.workspace-panel form .error{grid-column:1/-1}.workspace-panel label{font-size:13px;margin:0}.workspace-panel input,.workspace-panel select{min-width:0;width:100%;box-sizing:border-box}.workspace-panel>button,.workspace-panel>select{width:100%;margin:8px 0}.workspace-groups{display:grid;gap:8px;margin-bottom:12px}.workspace-panel details form{margin-top:12px}.questions-page textarea{display:block;width:100%;box-sizing:border-box;resize:vertical;padding:14px;border:1px solid #ccd8eb;border-radius:12px;font:inherit;margin:8px 0}.questions-page label{display:block;margin:12px 0}.questions-page h3,.questions-page p{white-space:pre-wrap;overflow-wrap:anywhere}.questions-page select{display:block;width:100%;max-width:600px}.questions-page .stack{margin-top:16px}.file+button,aside .card>button{margin-bottom:12px}.project-tabs{flex-wrap:wrap}
@media(max-width:900px){.workspace-layout{grid-template-columns:1fr}.workspace-stage{height:480px}.workspace-panel{max-height:none}.workspace-tools>*{flex:1 1 160px}.workspace-tools select{max-width:100%}}
@media(max-width:600px){main:has(.workspace) .intro{margin:16px 0}main:has(.workspace) .intro h1{font-size:26px}main:has(.workspace) .intro .eyebrow,main:has(.workspace) .intro>.badge{display:none}.workspace>.card{padding:18px}.workspace h2{font-size:22px}.workspace-tools>*{flex:1 1 125px}.workspace-stage{height:400px}}

#auth{width:min(560px,calc(100vw - 24px));max-height:90dvh;overflow:auto}#profile-fields{border:0;padding:0;margin:0;min-width:0}.auth-modes{display:flex;gap:8px;margin:18px 0}.auth-modes button{flex:1}.auth-modes button[aria-pressed=true]{background:#e5edff;color:#174cc8;border-color:#1a5de8}.consent-check{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.5}.consent-check input{width:22px;height:22px;flex:0 0 22px;margin:2px 0 0}.consent-check a{color:#1959dc}#profile-fields small{display:block;font-size:12px;font-weight:400;color:#536078;margin-top:6px}#profile-fields[hidden]{display:none}

.registration-roles{display:grid;gap:12px;border:0;padding:0;margin:0 0 20px}.registration-roles legend{font-weight:700;margin-bottom:10px}.registration-roles label{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid #b9cdf3;border-radius:16px;background:#f4f7ff;cursor:pointer}.registration-roles input{width:22px;min-width:22px;height:22px;margin:2px 0;accent-color:#1a5de8}.registration-roles small{display:block;margin-top:5px}.registration-roles label:has(input:checked){border:2px solid #1a5de8;padding:15px;background:#eaf1ff}.auth-modes [aria-pressed=true]{background:#1a5de8;color:white}

/* Companies: one task per card, touch-friendly on narrow screens. */
.company-hero{background:linear-gradient(135deg,#123eae,#246af0);color:white;border-radius:28px;padding:clamp(24px,5vw,50px);margin:20px 0}.company-hero h1{font-size:clamp(30px,5vw,48px);max-width:780px}.company-hero p{max-width:760px}.company-hero .eyebrow,.company-hero .small{color:#dce8ff}.company-tabs{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.company-tabs [aria-pressed=true]{background:#175be9;color:white}.company-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:20px}.company-card{display:flex;flex-direction:column;gap:10px;overflow-wrap:anywhere}.company-card h2{font-size:24px;margin:0}.company-card button{margin-top:auto;min-height:48px}.company-trades{color:#1d51b3}.company-filters{display:flex;gap:14px;align-items:end;flex-wrap:wrap}.company-filters label{flex:1;min-width:150px}.company-form{max-width:760px;margin:24px auto}.company-form fieldset{border:1px solid #dce4f2;border-radius:16px;padding:16px}.company-form .consent-check{margin:12px 0}.company-request{border-top:1px solid #e1e7f1;padding:18px 0}.companies-view dialog select,.companies-view select{min-height:48px}.company-card p{margin:3px 0}

/* A clear entry for each role; sign-in stays separate from registration. */
.entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.entry-grid .card+.card{margin-top:0}.entry-card{display:flex;flex-direction:column;min-width:0;background:linear-gradient(145deg,#fff,#edf4ff)}.entry-card h2{font-size:30px}.entry-card p{margin-bottom:24px}.entry-actions{display:grid;gap:12px;margin-top:auto}.entry-actions>*{text-align:center;min-height:50px}.entry-login{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:22px}.entry-login p{margin-top:6px}.auth-delivery{background:#edf4ff;border:1px solid #bdd1f8;border-radius:12px;padding:15px;overflow-wrap:anywhere;font-weight:650}#auth-form[aria-busy=true] #auth-submit{cursor:wait}#auth-submit{width:100%;min-height:50px}@media(max-width:700px){.entry-grid{grid-template-columns:1fr}.entry-login{flex-direction:column;align-items:stretch}.entry-card h2{font-size:27px}.entry-login button{width:100%}}
/* Browser measurement editor */
.measurement{max-width:1440px;margin:auto}.measure-heading{display:flex;justify-content:space-between;align-items:start;gap:24px}.measure-heading h1{font-size:clamp(26px,4vw,38px);margin:10px 0}.measurement label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:600;color:#294366}.measurement input,.measurement select,.measurement textarea{min-height:46px;width:100%;max-width:100%;font:inherit;padding:10px 12px;border:1px solid #c8d5eb;border-radius:12px;background:white;color:#20344e}.measurement button{min-height:44px}.measure-actions,.measure-toolbar,.measure-roombar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.measure-actions{margin-top:14px}.measure-status{font-size:13px;color:#5a6d88;margin:12px 0 0}.measure-nav{display:flex;overflow:auto;gap:8px;padding:8px 0 16px;scrollbar-width:thin}.measure-nav button{flex-shrink:0;white-space:nowrap}.measure-nav button[aria-pressed=true]{background:#185de6;color:white;border-color:#185de6}.measure-roombar{margin:4px 0 14px}.measure-roombar select{max-width:320px}.measure-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.measure-stat{background:#eaf1ff;border:1px solid #d7e4fd;border-radius:16px;padding:14px 18px;display:flex;flex-direction:column;gap:4px}.measure-stat b{font-size:22px;color:#1b56b4}.measure-stat span{font-size:13px;color:#496487}.measure-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr);gap:20px;align-items:start}.measure-visual{position:sticky;top:12px;border:1px solid #d8e3f6;border-radius:22px;overflow:hidden;background:#f3f7fe}.measure-stage{height:480px;min-width:0;position:relative}.measure-stage canvas{display:block;width:100%;height:100%}.measure-toolbar{padding:12px}.measure-toolbar .small{width:100%;margin:0}.measure-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;color:#5a6d88;padding:10px 16px}.measure-panel{min-width:0;padding:22px;margin:0}.measure-panel h2{font-size:23px}.measure-panel details{border:1px solid #dce5f4;border-radius:14px;padding:12px;margin:10px 0;overflow-wrap:anywhere}.measure-panel summary{cursor:pointer;padding:4px 0;font-weight:650;color:#285690;min-height:30px}.measure-panel form{margin:14px 0 20px;padding-bottom:8px;border-bottom:1px solid #edf1f7}.measure-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.measure-fields label:has(textarea){grid-column:1/-1}.measure-panel .primary,.measure-panel>.soft{margin:4px 3px 4px 0}.measure-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #e8eef8;padding:12px 0;font-size:14px}.measure-item small{width:100%;color:#64748b}.measure-list-button{display:block;width:100%;text-align:left;background:#f1f5fc;margin:7px 0;border:0;color:#285690;border-radius:10px}.measure-total{background:#edf4ff;border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:10px;margin:15px 0}.measure-total strong{font-size:28px;color:#1b5de5}.measure-total p{font-size:13px;margin:0}.measurement .error{color:#ac2727}.measure-saving{opacity:.7;pointer-events:none}.web-drafts:empty{display:none}.web-drafts{padding:6px 0 20px}.web-drafts button{margin:4px}.measurement .warning{font-size:13px}.measurement select{overflow:hidden;text-overflow:ellipsis}.measurement .card{margin-bottom:16px}
@media(max-width:850px){.measure-layout{grid-template-columns:1fr}.measure-visual{position:relative;top:0}.measure-stage{height:340px}.measure-panel{padding:18px}.measure-heading{display:block}.measure-stats{gap:7px}.measure-stat{padding:12px 10px}.measure-stat b{font-size:18px}.measure-nav{position:sticky;top:0;background:#f6f8fd;z-index:30;padding-top:10px}.measure-fields{gap:10px}.measure-heading .breadcrumb{margin:5px 0}.measure-roombar select{flex:1;min-width:150px}.measurement .small{font-size:13px}.measure-stage{touch-action:none}}
@media(max-width:390px){.measure-fields{grid-template-columns:1fr}.measure-stat b{font-size:16px}.measure-panel{padding:14px}}
/* Camera starts before any room dimensions are requested. */
.camera-start{width:100%;min-height:64px!important;font-size:20px;margin:8px 0 14px!important}
.camera-capture{position:fixed;inset:0;z-index:1000;background:#f3f7ff;color:#193855;display:flex;flex-direction:column;justify-content:space-between;padding: max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));overflow:auto}
.camera-capture:fullscreen,.camera-capture:xr-overlay{background:transparent}
.camera-top,.camera-bottom{position:relative;z-index:2;background:rgba(244,248,255,.96);border:1px solid #d6e3fc;border-radius:20px;padding:16px;max-width:700px;width:100%;margin:0 auto;box-shadow:0 4px 25px #172e5420}
.camera-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.camera-top h2{font-size:22px;margin:0}.camera-bottom{margin-top:auto}.camera-bottom p{margin:8px 0;line-height:1.45}.camera-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.camera-actions button,.camera-actions a{min-height:48px;text-align:center;display:flex;align-items:center;justify-content:center}.camera-actions .primary{flex:1 1 220px}.camera-capture button:disabled{opacity:.5;cursor:default}.camera-capture label{display:flex;flex-direction:column;gap:8px}.camera-capture input{width:100%;min-height:48px;padding:10px;font:inherit;background:white;border:1px solid #b7ccec;border-radius:12px;color:#18355b}.camera-capture form{display:grid;gap:12px}.camera-status{font-weight:650;color:#2559a3;font-size:15px}.camera-xr-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.camera-fields{margin:12px 0}.camera-capture :focus-visible{outline:3px solid #195ee9;outline-offset:3px}
@media(max-width:500px){.camera-capture{padding: max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom))}.camera-bottom,.camera-top{padding:13px}.camera-top h2{font-size:19px}.camera-actions{gap:8px}.camera-actions button{font-size:14px}.camera-bottom p{font-size:14px}}

.measure-empty .measure-layout{grid-template-columns:1fr}.measure-empty .measure-visual,.measure-empty .measure-stats{display:none}
.camera-message{justify-content:flex-start}.camera-message .camera-bottom{margin-top:0}.camera-actions a{border-radius:12px;text-decoration:none;padding:12px 16px}
/* Execution stays inside the selected project's collaboration flow. */
.execution-panel{display:grid;gap:16px}.execution-phase>summary{display:grid;gap:8px;cursor:pointer;list-style-position:inside}.execution-phase>summary strong{font-size:1.15rem;overflow-wrap:anywhere}.execution-phase[open]>summary{margin-bottom:18px}.execution-task{padding:14px 0;border-top:1px solid var(--line,#dce3ed)}.execution-task h4{margin:0 0 8px}.execution-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.execution-plan-rows{display:grid;gap:16px}.execution-plan-row{border:1px solid var(--line,#dce3ed);border-radius:16px;padding:16px;display:grid;gap:12px}.execution-proof-image{display:block;max-width:100%;max-height:70vh;object-fit:contain;margin:16px auto}.execution-plan-editor label{display:grid;gap:6px}.execution-plan-editor textarea{min-height:110px}.execution-lifecycle,.completion-slot{margin-top:16px}

/* Language selection stays accessible on narrow screens and never overlays the account button. */
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
[data-language-picker] select{max-width:165px;min-height:44px;margin:0;padding:8px 30px 8px 12px;border:1px solid #c9d3e5;border-radius:12px;background:#fff;color:#18365c;font:inherit}
.language-scope{max-width:1180px;margin:0 auto;padding:10px 24px;font-size:13px;color:#53647c}
@media(max-width:600px){.header{flex-wrap:wrap;gap:12px}.header-actions{width:100%;justify-content:space-between}.language-scope{padding:8px 16px}}

#auth .close{position:sticky;top:0;float:right;z-index:2;min-width:44px;min-height:44px;background:white;box-shadow:0 2px 8px #12244815}

.measure-pending{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px;border:1px solid #b7cafa;border-radius:12px;background:#edf3ff;color:#123b85}.measure-pending[hidden]{display:none}

@media(max-width:850px){
 .measure-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));position:static;overflow:visible}
 .measure-nav button{white-space:normal;min-height:44px;min-width:0;padding:10px 8px}
 .measurement[data-mode="works"] .measure-panel,.measurement[data-mode="report"] .measure-panel,.measurement[data-mode="site"] .measure-panel{grid-row:1}
 .measurement[data-mode="works"] .measure-visual,.measurement[data-mode="report"] .measure-visual,.measurement[data-mode="site"] .measure-visual{grid-row:2}
}
