:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#102d55;background:#eceae7;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at 50% 0,#fff 0,#f7f5f1 44%,#e7e5e1)}button,input{font:inherit}button{cursor:pointer}#app{min-height:100vh;display:grid;place-items:center;padding:28px 14px}.phone{width:min(100%,420px);min-height:800px;background:linear-gradient(140deg,#fff,#f5f2ed);border:1px solid #dedbd5;border-radius:19px;overflow:hidden;box-shadow:0 22px 55px #132d5021;position:relative;padding-bottom:100px}.phone.home-screen{padding-bottom:0}.entry-screen{width:min(100%,420px);height:min(100dvh,940px);min-height:800px;aspect-ratio:839 / 1876;overflow:hidden;position:relative;background:#061a3a var(--entry-image) center calc(50% - 35px) / cover no-repeat;border-radius:19px;box-shadow:0 22px 55px #132d5045}.entry-begin{position:absolute;inset:calc(78% - 35px) 0 0;width:100%;border:0;background:transparent;color:#ef2720;cursor:pointer;-webkit-tap-highlight-color:transparent;font-size:clamp(34px,11vw,48px);font-weight:900;letter-spacing:.045em;text-shadow:0 2px 10px #030b1db3}.entry-begin span,.entry-begin small{display:block}.entry-begin small{margin-top:4px;color:#fff;font-size:11px;letter-spacing:.18em;font-weight:700}.entry-begin:focus-visible{outline:3px solid #fff;outline-offset:-5px}body.entry-page-locked{overflow:hidden;height:100dvh;overscroll-behavior:none}body.entry-page-locked #app,body.entry-page-locked .entry-screen{overscroll-behavior:none;touch-action:manipulation}.phone.scrollable{height:min(100dvh,900px);min-height:0;overflow-y:auto;padding-bottom:0}.phone.scrollable .content{padding-bottom:176px}.phone.scrollable .bottom-actions{position:fixed;z-index:20;left:50%;bottom:0;width:min(100%,420px);margin:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));transform:translate(-50%);background:#fff;border-top:1px solid #e3e0db;box-shadow:0 -7px 18px #102d5514}.app-header{height:104px;background:#102d55;color:#fff;display:flex;align-items:center;justify-content:center;position:relative;padding:0 20px}.brand{width:min(66vw,280px);display:flex;align-items:center;justify-content:center}.brand img{display:block;width:100%;max-height:62px;object-fit:contain}.header-label{position:absolute;bottom:8px;font-size:9px;letter-spacing:.12em;font-weight:700}.progress-text{position:absolute;right:15px;font-size:11px;top:43px}.back{position:absolute;left:14px;top:50%;transform:translateY(-50%);background:none;color:#fff;border:0;font-size:30px;line-height:20px}.progress{display:flex;gap:4px;padding:8px 16px 0}.progress i{height:3px;border-radius:2px;background:#dedbd5;flex:1}.progress i.done{background:#ca241f}.home-topline{display:flex;align-items:center;justify-content:space-between;min-height:38px;margin:0 0 10px}.home-topline .eyebrow{margin:0}.app-menu-wrap{position:relative;width:176px;display:grid;justify-items:end}.app-menu-trigger{width:38px;height:34px;display:grid;align-content:center;gap:4px;padding:0 9px;border:1px solid #c6d0db;border-radius:8px;background:#fff;box-shadow:0 3px 10px #102d5518}.app-menu-trigger i{display:block;height:2px;border-radius:2px;background:#102d55}.app-menu{position:absolute;z-index:40;top:41px;right:0;display:grid;width:176px;padding:5px;border:1px solid #d8dee5;border-radius:10px;background:#fff;box-shadow:0 10px 24px #102d5526}.app-menu button{min-height:38px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:#102d55;font-size:13px;font-weight:700;text-align:left}.app-menu button:hover,.app-menu button:focus-visible{background:#f0f4f8}.app-menu button:nth-last-child(-n+2){color:#5c6d7e}.content{padding:27px 16px 18px}.eyebrow{color:#ca241f;letter-spacing:.105em;font-size:11px;font-weight:800;margin:0 0 10px}.content h1{color:#102d55;font-size:clamp(27px,7.5vw,35px);line-height:1.02;letter-spacing:-.045em;margin:0 0 19px}.muted{color:#6c7787;line-height:1.45;font-size:14px}.center{text-align:center}.notice,.demo-user{background:#fff;border:1px solid #e3e0db;box-shadow:0 2px 7px #102d550a;border-radius:11px;padding:15px;display:flex;gap:11px;align-items:flex-start;font-size:14px}.notice span{color:#ca241f;font-size:19px}.bottom-actions{position:absolute;inset:auto 16px 17px}.button{min-height:48px;width:100%;border-radius:8px;border:1px solid transparent;font-weight:800;font-size:14px}.primary{background:linear-gradient(#d62d24,#b91d18);color:#fff;box-shadow:0 4px 8px #b91d1830}.primary:disabled{opacity:.35;cursor:not-allowed}.secondary{background:#fff;color:#102d55;border-color:#102d55}.field-label{display:block;font-size:12px;font-weight:800;margin:21px 0 6px}.field,.review-card input{display:block;width:100%;height:49px;border:1px solid #dedbd5;border-radius:9px;padding:0 13px;color:#102d55;background:#fff;outline-color:#ca241f}.part-list{background:#fff;border:1px solid #e4e0db;border-radius:10px;overflow:hidden;margin-top:13px}.part-row{width:100%;padding:13px;display:grid;grid-template-columns:1fr auto;text-align:left;border:0;border-bottom:1px solid #ece8e3;background:#fff;color:#102d55}.part-row:last-child{border:0}.part-row b,.part-row small{grid-column:1}.part-row small,.view-card small,.review-card small,.demo-user small{color:#6c7787;font-size:12px;margin-top:3px}.part-row span{grid-column:2;grid-row:1 / 3;align-self:center;font-size:22px}.part-row.selected{background:#fff6f5;box-shadow:inset 3px 0 #ca241f}.text-button{background:none;border:0;color:#102d55;font-weight:800;padding:17px 0;font-size:14px}.marker-demo{margin:13px 0 12px;padding:9px 10px 8px;border:1px solid #dce3e8;border-radius:11px;background:#fff;overflow:hidden}.marker-views{display:grid;grid-template-columns:1fr 1fr;gap:4px}.marker-demo svg{display:block;width:100%;height:120px}.marker-demo p{margin:2px 3px 0;color:#5c6d7e;font-size:12px;line-height:1.35}.marker-demo p b{color:#102d55}.view-label{fill:#6c7787;font-size:10px;font-weight:800;letter-spacing:.1em}.part-edge{fill:none;stroke:#52646e;stroke-width:2.5}.casting-rib{fill:none;stroke:url(#rib-metal);stroke-width:8;stroke-linecap:round;opacity:.95}.casting-inset{fill:#6e7d85;opacity:.5;stroke:#53646c;stroke-width:2}.casting-boss{fill:#c6d0d3;stroke:#5f717a;stroke-width:2}.casting-hole{fill:#53636b}.side-part{fill:#a7b3b7}.side-rib{stroke:#6d7d85;stroke-width:8}.side-channel{stroke:#e6ecee;stroke-width:6}.part-flaw{fill:#34424c;opacity:.85}.marker-line{fill:none;stroke:#ca241f;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:145;stroke-dashoffset:145;animation:draw-marker 3.6s ease-in-out infinite}.marker-line.two{animation-delay:1.05s}@keyframes draw-marker{0%,12%{stroke-dashoffset:145;opacity:0}18%{opacity:1}40%,to{stroke-dashoffset:0;opacity:1}}.marker-demo{display:none}.real-marker-demo{position:relative;margin:13px 0 12px;border:1px solid #dce3e8;border-radius:11px;overflow:hidden;background:#fff}.real-marker-demo img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover}.real-marker-demo svg{position:absolute;inset:0;width:100%;height:auto;pointer-events:none}.real-marker-demo p{margin:0;padding:8px 10px;color:#5c6d7e;font-size:11px;line-height:1.35;background:#fff}.real-marker-demo p b{color:#102d55}.real-marker-line{fill:none;stroke:#ca241f;stroke-width:4;stroke-linecap:round;stroke-dasharray:125;stroke-dashoffset:125;animation:draw-real-marker 3.6s ease-in-out infinite}.real-marker-line.two{animation-delay:1.05s}@keyframes draw-real-marker{0%,12%{stroke-dashoffset:125;opacity:0}18%{opacity:1}40%,to{stroke-dashoffset:0;opacity:1}}.marked-photo-example{margin:10px 0 0;border:1px solid #dce3e8;border-radius:11px;overflow:hidden;background:#fff}.marked-photo-example img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover}.marked-photo-example figcaption{padding:8px 10px;color:#5c6d7e;font-size:11px;line-height:1.35}.camera{height:min(62dvh,460px);overflow:hidden;background:linear-gradient(150deg,#2c3138,#06080b);border-radius:9px;position:relative;display:grid;place-items:center;color:#c3c7cd;font-size:13px}.camera-live{height:100%;width:100%;object-fit:cover}.camera.photo-ready{background:#111820}.corner{position:absolute;height:41px;width:35px;border-color:#fff;border-style:solid;pointer-events:none}.tl{top:23px;left:20px;border-width:4px 0 0 4px}.tr{top:23px;right:20px;border-width:4px 4px 0 0}.bl{bottom:23px;left:20px;border-width:0 0 4px 4px}.br{bottom:23px;right:20px;border-width:0 4px 4px 0}.camera>span{position:absolute;text-align:center;padding:18px}.flash-toggle{position:absolute;top:12px;right:12px;z-index:2;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid rgba(255,255,255,.85);border-radius:50%;background:#0a1018b8;color:#fff}.flash-toggle svg{width:18px;height:18px}.flash-toggle.is-on{border-color:#f2c544;background:#f2c544;color:#102d55}.flash-toggle:disabled{opacity:.45}.camera-enable{width:100%;margin-top:10px;border:1px solid #102d55;background:#fff;color:#102d55;border-radius:7px;min-height:42px;font-size:13px;font-weight:800}.camera-actions{display:flex;align-items:center;justify-content:space-between;margin:12px 5px}.link-button{border:0;background:none;color:#102d55;font-size:13px;font-weight:800}.link-button:disabled{opacity:.35}.shutter{height:51px;width:51px;border-radius:50%;border:3px solid #ca241f;background:#fff;box-shadow:inset 0 0 0 8px #fff}.quality{font-size:13px;color:#288552;text-align:center}.quality.bad{color:#b91d18;font-weight:800;line-height:1.35}.view-list{display:grid;gap:10px}.view-card{min-height:91px;border:1px solid #e4e0db;border-radius:10px;background:#fff;padding:10px;display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center}.reference,.photo-tile{background:#272d36;color:#e9e8e6;border-radius:7px;display:grid;place-items:center;text-align:center;font-size:10px;min-height:58px}.mini-button{border:2px solid #102d55;border-radius:6px;background:#fff;color:#102d55;padding:7px 8px;font-size:12px;font-weight:800}.tile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.photo-tile,.add-tile{aspect-ratio:1;min-height:auto}.add-tile{border:2px dashed #5d718c;border-radius:7px;background:transparent;color:#102d55;font-size:26px}.more-card{margin-top:13px;padding:14px;border-radius:10px;background:#102d55;color:#fff}.more-card b{display:block;line-height:1.2}.more-card div{display:grid;grid-template-columns:1fr 1.3fr;gap:9px;margin-top:11px}.more-card .button{min-height:40px;font-size:12px}.more-card .secondary{color:#fff;border-color:#fff;background:transparent}.camera-copy{margin-bottom:12px}.camera-copy h1{margin-bottom:0}.photo-strip{display:flex;gap:6px;overflow:hidden;margin-bottom:15px}.photo-strip span{flex:0 0 52px;height:52px;border-radius:7px;background:#282e36;color:#fff;display:grid;place-items:center;font-size:10px}.review-card{border:1px solid #e2ded9;background:#fff;border-radius:10px;padding:12px;display:grid;grid-template-columns:1fr auto;gap:9px 10px}.review-card button{background:none;color:#102d55;font-size:12px;font-weight:800;border:0}.review-card label{grid-column:1 / -1;color:#102d55;font-weight:800;font-size:12px}.review-card input{margin-top:5px;height:41px;font-weight:400}.routing{font-size:12px;line-height:1.5;color:#687586}.routing span{color:#6c7787}.send-note{text-align:center;font-size:11px;color:#687586}.sent{margin-top:38px}.check{height:49px;width:49px;border:4px solid #102d55;border-radius:50%;display:grid;place-items:center;font-size:28px;font-weight:800}.reviewer-list{background:#fff;border:1px solid #e2ded9;border-radius:10px;overflow:hidden;margin:18px 0}.reviewer-row{width:100%;display:grid;grid-template-columns:38px 1fr auto;gap:9px;align-items:center;background:#fff;border:0;border-bottom:1px solid #ebe7e2;text-align:left;padding:11px;color:#102d55}.reviewer-row:last-child{border-bottom:0}.reviewer-row .avatar{width:34px;height:34px}.reviewer-row small{display:block;color:#6c7787;margin-top:2px;font-size:11px}.status{font-size:10px;font-weight:800;font-style:normal;color:#9a6c18}.status.approved{color:#288552}.status.changes-requested{color:#ca241f}.review-summary{background:#fff;border:1px solid #e2ded9;border-radius:10px;padding:15px;color:#102d55}.review-summary b{font-size:11px;letter-spacing:.06em;text-transform:uppercase}.review-summary p{margin:5px 0 15px;line-height:1.4}.review-summary p:last-child{margin-bottom:0}.review-summary span{color:#6c7787}.review-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.login-mark{background:#102d55;color:#fff;margin:-27px -16px 0;min-height:238px;display:flex;align-items:center;justify-content:center;flex-direction:column;letter-spacing:.15em;font-size:30px}.login-mark b{color:#f2c544}.login-copy{margin:30px 0 22px}.login-copy h1{margin-bottom:8px}.login-copy p:last-child{color:#6c7787;line-height:1.5}.avatar{width:40px;height:40px;background:#d8e1eb;border-radius:50%;display:grid;place-items:center;color:#102d55;font-size:12px;font-weight:800}.side-preview{width:54px;height:58px;object-fit:cover;border:1px solid #dce3e8;border-radius:7px;display:block}.home-actions{position:static;width:auto;margin:20px 0 18px;padding:0;transform:none;background:transparent;box-shadow:none}.profile-home-link{color:#a7adb5;padding-top:12px}.sign-out-button{justify-self:center;width:auto;min-height:32px;padding:0 14px;border:1px solid #bdc7d3;border-radius:999px;background:transparent;color:#53677d;font-size:12px;font-weight:700;letter-spacing:.01em}.sign-out-button:hover,.sign-out-button:focus-visible{border-color:#102d55;color:#102d55;background:#f6f8fa}.welcome-home{margin:18px 0 10px;color:#102d55;font-size:30px;line-height:1.05}.defect-preview{width:100%;object-fit:cover}.defect-add{margin-top:12px}.defect-entry-list{display:grid;gap:8px;margin:16px 0 10px}.defect-entry{display:flex;align-items:center;gap:12px;padding:9px;border:1px solid #d7dde4;border-radius:10px;background:#fff;color:#12345b}.defect-entry b,.defect-entry small{display:block}.defect-entry small{color:#627180;margin-top:3px}.defect-entry-preview{width:62px;height:62px;flex:0 0 62px;border-radius:6px;object-fit:cover;background:#edf1f5}.test-preview{display:grid;place-items:center;color:#627180;font-size:11px;line-height:1.15;text-align:center}.reviewer-name-only{grid-template-columns:1fr}.password-field{position:relative}.password-field .field{padding-right:48px}.password-toggle{position:absolute;inset:0 0 0 auto;width:47px;border:0;border-radius:0 9px 9px 0;background:transparent;color:#53677d;display:grid;place-items:center}.password-toggle:hover,.password-toggle:focus-visible{color:#102d55;background:#f5f7f8;outline:2px solid #ca241f;outline-offset:-2px}.password-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.view-card small{display:block;margin-top:7px}.captured-status{color:#ca241f!important;font-weight:800}.view-actions{display:grid;gap:5px;justify-items:end}.demo-user>div{display:grid;gap:3px}.demo-user small,.review-card small{display:block}.review-card>div b{display:block}.profile-entry{width:100%;margin-bottom:18px;color:#102d55;text-align:left;cursor:pointer}.profile-entry span:nth-child(2){display:grid;gap:3px}.profile-entry em{margin-left:auto;align-self:center;font-size:24px;font-style:normal}.profile-identity{display:flex;align-items:center;gap:11px;padding:14px;border-radius:11px;background:#102d55;color:#fff;margin-bottom:13px}.profile-identity .avatar{background:#d9e5f0}.profile-identity b,.profile-identity small{display:block}.profile-identity small{color:#d2dce8;margin-top:2px;font-size:12px}.profile-card{margin-top:10px;padding:13px;border:1px solid #e2ded9;border-radius:10px;background:#fff}.profile-card>div{display:grid;gap:2px;padding:8px 0;border-bottom:1px solid #eeeae5}.profile-card>div:last-of-type{border-bottom:0;padding-bottom:0}.profile-card small{color:#6c7787;font-size:11px}.profile-card b{font-size:14px}.profile-section-label{color:#ca241f;font-size:10px;font-weight:800;letter-spacing:.1em;margin:0 0 3px}.access-card p:last-child{color:#6c7787;font-size:12px;line-height:1.4;margin:12px 0 0}.profile-card label{display:block;color:#6c7787;font-size:11px;padding:8px 0;border-bottom:1px solid #eeeae5}.profile-card label input,.profile-card label select{display:block;width:100%;height:38px;margin-top:4px;border:1px solid #dedbd5;border-radius:7px;padding:0 9px;color:#102d55;background:#fff;font-size:13px}.profile-actions{display:grid;gap:8px;margin-top:18px}.delete-link{border:0;background:transparent;color:#b91d18;font-size:12px;font-weight:800;padding:8px}.delete-profile{margin-top:18px;padding:13px;border:1px solid #e5aaa6;border-radius:10px;background:#fff7f6;color:#712420}.delete-profile p{margin:6px 0 12px;font-size:12px;line-height:1.4}.delete-profile div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.danger{background:#b91d18;color:#fff;box-shadow:0 4px 8px #b91d1830}.profile-locked-fields{margin-bottom:8px}.profile-locked-fields div{display:grid;gap:2px;padding:8px 0;border-bottom:1px solid #eeeae5}.profile-locked-fields small{color:#6c7787;font-size:11px}.profile-locked-fields b{color:#102d55;font-size:14px}.address-entry{padding:11px 0 4px}.address-entry-label{display:block;color:#ca241f;font-size:10px;font-weight:800;letter-spacing:.1em;margin-bottom:2px}.address-entry em{color:#8a96a4;font-size:10px;font-style:normal}.address-city-state{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:8px}.address-city-state label{min-width:0}.profile-save-message{margin:-5px 0 13px;color:#28714e;font-size:13px;font-weight:700}.bottom-actions .button+.button{margin-top:8px}.admin-link{display:block;width:100%;border:0;background:transparent;color:#102d55;font-size:12px;font-weight:800;text-align:center;padding:14px 0 0}.code-input{font-size:22px;letter-spacing:.16em;text-align:center}.org-choices{display:grid;gap:8px;margin:14px 0 4px}.org-choice{width:100%;min-width:0;border:1px solid #e2ded9;background:#fff;border-radius:10px;padding:12px;display:flex;gap:10px;align-items:flex-start;cursor:pointer}.org-choice span{min-width:0;flex:1}.org-choice b{display:block;line-height:1.2}.org-choice input{flex:0 0 auto;accent-color:#ca241f;width:18px;height:18px;margin:1px 0 0}.org-choice small{display:block;color:#6c7787;margin-top:3px}.latest-code{width:100%;margin-top:9px;border:0;background:transparent;color:#102d55;font-size:12px;text-align:center;padding:7px}.latest-code b{letter-spacing:.08em}.admin-actions{bottom:47px}.email-draft{margin-top:13px;padding:12px;border:1px solid #d9e0e7;border-radius:10px;background:#f5f8fb;font-size:12px;line-height:1.35;color:#304b69}.email-draft-label{color:#ca241f;font-size:10px;font-weight:800;letter-spacing:.1em;margin:0 0 5px}.email-draft>b{color:#102d55;display:block}.email-draft p{margin:7px 0 0}.email-code-slot{padding:8px 9px;border-radius:6px;background:#fff;border:1px dashed #9aa8b6;color:#102d55;font-weight:800}.email-code-slot span{color:#6c7787;letter-spacing:.06em}.request-list{display:grid;gap:10px;margin:8px 0 20px}.access-request-card{border:1px solid #dce3ea;border-radius:12px;background:#fff;padding:14px;box-shadow:0 4px 12px #102d550d}.access-request-card b,.access-request-card small{display:block;color:#102d55}.access-request-card small{color:#657182;margin-top:3px}.access-request-card p{margin:8px 0;color:#536277;font-size:13px;line-height:1.35}.access-request-card .button{margin-top:4px;font-size:13px;padding:11px 12px}.admin-workspace{padding-bottom:18px}.admin-intro{margin:-8px 0 18px}.admin-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 18px}.admin-summary>div{min-width:0;padding:11px 10px;border:1px solid #d9e1e9;border-radius:9px;background:#fff}.admin-summary b{display:block;color:#102d55;font-size:21px;line-height:1}.admin-summary small{display:block;margin-top:5px;color:#67778f;font-size:10px;line-height:1.22}.admin-panel{overflow:hidden;border:1px solid #d9e1e9;border-radius:12px;background:#fff;box-shadow:0 4px 18px #12345b0d}.admin-panel>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:15px;border-bottom:1px solid #d9e1e9}.admin-panel h2{margin:0;color:#102d55;font-size:18px}.admin-panel>header span{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:#fbe9e6;color:#a52b23;font-size:10px;font-weight:800}.admin-request-row{display:grid;grid-template-columns:1.2fr 1fr;gap:12px;padding:15px;border-bottom:1px solid #d9e1e9}.admin-request-row:last-child{border-bottom:0}.admin-person{grid-column:1 / -1}.admin-person b{display:block;color:#102d55;font-size:16px}.admin-person small{display:block;margin-top:3px;color:#67778f;font-size:12px;line-height:1.35}.admin-organization,.admin-access-level{min-width:0}.admin-organization span,.admin-access-level span{display:block;margin-bottom:5px;color:#67778f;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.admin-org-select,.admin-role-select{width:100%;min-height:39px;border:1px solid #bdc9d6;border-radius:7px;padding:0 8px;background:#fff;color:#102d55;font-size:12px}.admin-approve{grid-column:1 / -1;min-height:41px;border:1px solid #c9372c;border-radius:7px;background:#c9372c;color:#fff;font-size:13px;font-weight:800}.admin-empty{padding:26px 15px;color:#67778f;font-size:14px}.admin-delivery-note{margin-top:16px;padding:13px 14px;border-left:4px solid #c9372c;background:#fff;color:#4b5d75;font-size:12px;line-height:1.45}.admin-delivery-note b{color:#102d55}.email-app-link{color:#102d55;font-weight:900;letter-spacing:.08em;text-decoration:underline}.select-divider{margin:9px 0 -4px;color:#6c7787;font-size:12px;font-weight:700;text-align:left}.review-card select{display:block;width:100%;height:41px;margin-top:5px;border:1px solid #dedbd5;border-radius:9px;padding:0 13px;color:#102d55;background:#fff;font-weight:400;outline-color:#ca241f}.sent .check{position:relative;top:-20px}.report-generation-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:#041123ad}.report-generation-dialog{width:min(330px,100%);padding:25px 23px 22px;border:1px solid #d9e2eb;border-radius:15px;background:#fff;box-shadow:0 18px 48px #00000052;text-align:center}.report-generation-dialog .eyebrow{margin:13px 0 7px}.report-generation-dialog h2{margin:0;color:#102d55;font-size:21px;line-height:1.16}.report-generation-dialog p:last-child{margin:10px 0 0;color:#526477;font-size:13px;line-height:1.45}.report-spinner{display:inline-block;width:29px;height:29px;border:3px solid #d9e2eb;border-top-color:#ca241f;border-radius:50%;animation:report-spinner .85s linear infinite}@keyframes report-spinner{to{transform:rotate(360deg)}}.start-notice{background:linear-gradient(135deg,#fff7f6,#fff);border-color:#e6a8a4;box-shadow:0 0 #ca241f29;animation:notice-pulse 2.8s ease-in-out infinite}@keyframes notice-pulse{0%,to{border-color:#e6a8a4;box-shadow:0 0 #ca241f14}50%{border-color:#ca241f;box-shadow:0 0 0 6px #ca241f1a}}@media(prefers-reduced-motion:reduce){.start-notice{animation:none}}@media(max-width:430px){html,body,#app{min-height:100%;height:auto;overflow-x:hidden}#app{min-height:100dvh;padding:0;display:block}.phone{border-radius:0;width:100%;min-height:100dvh;height:auto;border:0;overflow:visible;padding-bottom:calc(142px + env(safe-area-inset-bottom))}.entry-screen{width:100%;height:100dvh;min-height:0;border-radius:0;box-shadow:none}.phone.home-screen{height:100dvh;min-height:0;overflow:hidden;padding-bottom:0}.phone.home-screen .content{margin-top:5px;padding:0 16px 8px}.phone.home-screen .welcome-home{margin:5px 0 7px;font-size:25px}.phone.home-screen .single-marker-demo{margin-top:8px}.phone.home-screen .single-marker-demo img{aspect-ratio:1.7 / 1;object-fit:contain;padding:2px}.phone.home-screen .single-marker-demo figcaption{padding:5px 9px;font-size:10px}.phone.home-screen .sample-directions{margin-top:5px;font-size:12.5px;line-height:1.24}.phone.home-screen .sample-directions ol{margin-top:3px}.phone.home-screen .sample-directions li+li{margin-top:2px}.phone.home-screen .home-actions{margin:7px 0 0}.phone.scrollable{height:auto;min-height:100dvh;overflow:visible;padding-bottom:0}.phone.scrollable .content{padding-bottom:calc(176px + env(safe-area-inset-bottom))}.phone.scrollable .bottom-actions{width:100%;padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.app-header{height:94px}.back{top:50%}.progress-text{top:23px}.content{padding-top:0;padding-bottom:142px;margin-top:10px}.admin-access-eyebrow{margin-top:15px}.content h1{font-size:27px;margin-bottom:13px}.field-label{margin-top:14px}.bottom-actions{bottom:max(19px,env(safe-area-inset-bottom))}.admin-actions{bottom:calc(49px + env(safe-area-inset-bottom))}.button{min-height:43px}.bottom-actions>.button{transform:translateY(-5px)}.home-actions>.button{transform:none}.phone.scrollable .bottom-actions>.button{transform:none}.bottom-actions .button+.button{margin-top:6px}.admin-link{padding-top:9px;color:#a7adb5}.login-mark{min-height:110px;margin-top:0}.login-copy{margin:5px 0 13px}.camera{height:min(60dvh,440px)}}.request-form{display:grid;gap:0}.welcome-back{min-height:0;display:flex;flex-direction:column;justify-content:flex-start;padding-top:18px}.welcome-back h1{margin:0}.welcome-actions{display:grid;gap:9px;margin-top:28px}.welcome-summary{margin-top:22px;padding:13px;border:1px solid #e2ded9;border-radius:10px;background:#fff}.welcome-summary div{display:grid;gap:2px;padding:7px 0;border-bottom:1px solid #eeeae5}.welcome-summary div:last-child{border-bottom:0}.welcome-summary small{color:#6c7787;font-size:11px}.welcome-summary b{color:#102d55;font-size:14px}.request-form .field-label{margin-top:13px}.request-form select.field{appearance:auto;padding-right:10px}.request-location{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8px}.request-location>label{display:block;min-width:0}.request-location .location-city{grid-column:1 / -1}.request-location .field-label{min-width:0;display:block}.consent{display:flex;gap:9px;align-items:flex-start;margin-top:14px;color:#526477;font-size:12px;line-height:1.4}.consent input{flex:0 0 auto;width:18px;height:18px;margin:0;accent-color:#ca241f}.consent u{color:#102d55;font-weight:800}.real-marker-demo,.marked-photo-example{display:none}.marked-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:13px 0 0}.marked-photo-grid figure{margin:0;overflow:hidden;border:1px solid #dce3e8;border-radius:9px;background:#fff}.marked-photo-grid img{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover}.marked-photo-grid figcaption{padding:5px 7px;color:#5c6d7e;font-size:10px;font-weight:800;text-align:center}.sample-directions{margin:9px 0 0;color:#526477;font-size:12px;line-height:1.4}.sample-directions b{color:#102d55}.sample-directions ol{margin:5px 0 0;padding-left:18px}.sample-directions li+li{margin-top:3px}.single-marker-demo{margin:13px 0 0;overflow:hidden;border:1px solid #dce3e8;border-radius:11px;background:#fff}.single-marker-demo>div{position:relative}.single-marker-demo img{display:block;width:100%;aspect-ratio:3 / 2;object-fit:cover}.single-marker-demo svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.common-defect-circle{fill:none;stroke:#ca241f;stroke-width:19;stroke-linecap:round;stroke-dasharray:1200;stroke-dashoffset:1200;filter:drop-shadow(0 1px 1px #ffffffcc);animation:mark-common-defect 4s ease-in-out infinite}.lower-defect-circle{animation-delay:.7s}.single-marker-demo figcaption{padding:7px 10px;color:#526477;font-size:11px;font-weight:800;line-height:1.35}@keyframes mark-common-defect{0%,14%{stroke-dashoffset:1200;opacity:0}22%{opacity:1}46%,to{stroke-dashoffset:0;opacity:1}}.part-choice{min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left}.part-choice b,.part-choice small{display:block}.part-info,.workspace-chevron{color:#102d55;font-size:25px;line-height:1;font-weight:400}.part-info{grid-column:2;grid-row:1 / 3;align-self:center;min-width:42px;min-height:42px;border:0;background:transparent}.part-details-card{margin:4px 0 15px;overflow:hidden;border:1px solid #e3e0db;border-radius:11px;background:#fff}.part-details-card div{padding:12px 14px;border-bottom:1px solid #ece8e3}.part-details-card div:last-child{border-bottom:0}.part-details-card small{display:block;color:#6c7787;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.part-details-card b{display:block;margin-top:3px;color:#102d55;font-size:15px}.part-details-card p{margin:3px 0 0;color:#526477;font-size:13px;line-height:1.4}.test-data-note{margin:-8px 0 13px;color:#6c7787;font-size:12px;line-height:1.4}.part-history-card{margin:13px 0 0;padding:13px;border:1px solid #dce3e8;border-radius:11px;background:#f8fafc}.part-history-card .profile-section-label{margin:0 0 9px}.history-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px}.history-metrics div{padding:9px;border-radius:8px;background:#fff}.history-metrics b,.history-metrics small{display:block}.history-metrics b{color:#102d55;font-size:18px}.history-metrics small,.latest-case small{color:#6c7787;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.latest-case{margin-top:10px;padding-top:10px;border-top:1px solid #dce3e8}.latest-case b{display:block;margin-top:3px;color:#102d55;font-size:13px}.latest-case p{margin:3px 0;color:#526477;font-size:13px}.part-conditions{margin:13px 0 0;overflow:hidden;border:1px solid #e3e0db;border-radius:11px;background:#fff}.part-conditions .profile-section-label{margin:0;padding:12px 13px 8px}.part-conditions div{padding:10px 13px;border-top:1px solid #ece8e3}.part-conditions b,.part-conditions small{display:block}.part-conditions b{color:#102d55;font-size:13px}.part-conditions small{margin-top:2px;color:#6c7787;font-size:11px}.part-conditions p{margin:3px 0 0;color:#526477;font-size:13px}.historic-defect-intelligence{margin:13px 0 0;padding:13px;border:1px solid #dce3e8;border-radius:11px;background:#f8fafc}.historic-defect-intelligence .profile-section-label{margin:0 0 7px}.historic-map-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#102d55;font-size:14px}.historic-map-heading span{flex:0 0 auto;padding:5px 7px;border:1px solid #bdc9d6;border-radius:7px;background:#fff;color:#526477;font-size:10px;font-weight:800}.historic-map-placeholder{position:relative;display:grid;min-height:185px;margin-top:11px;overflow:hidden;place-items:center;border:1px solid #cbd5df;border-radius:9px;background:linear-gradient(145deg,#edf2f5,#dce5ec)}.historic-part-silhouette{width:70%;height:44%;border:15px solid #9ba9b5;border-radius:46% 39% 43% 34%;transform:rotate(-5deg);box-shadow:inset 0 0 0 8px #ced6dc}.historic-map-placeholder p{position:absolute;inset:auto 13px 11px;margin:0;color:#536477;font-size:11px;line-height:1.35;text-align:center}.historic-legend{margin:11px 0}.historic-legend small{display:block;margin-bottom:6px;color:#6c7787;font-size:10px;font-weight:800;letter-spacing:.04em}.historic-legend>div{display:grid;gap:6px}.historic-legend span{display:flex;align-items:flex-start;gap:6px;color:#526477;font-size:11px;line-height:1.3}.historic-legend-dot{flex:0 0 auto;width:9px;height:9px;margin-top:3px;border-radius:50%;background:#c9372c}.historic-legend-dot.dot-2{background:#e2941b}.historic-legend-dot.dot-3{background:#2d62aa}.historic-legend-dot.dot-4{background:#6b4fa2}.historic-evidence-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.historic-evidence-metrics div{min-width:0;padding:9px;border-radius:8px;background:#fff}.historic-evidence-metrics b,.historic-evidence-metrics small{display:block}.historic-evidence-metrics b{color:#102d55;font-size:18px}.historic-evidence-metrics small{margin-top:3px;color:#6c7787;font-size:10px;font-weight:800;line-height:1.2;text-transform:uppercase}.library-button{display:inline-flex;align-items:center;min-height:32px;color:#102d55;font-size:12px;font-weight:800;cursor:pointer}.photo-library-input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.admin-users-panel{margin-top:16px}.admin-add-user,.admin-user-row{display:grid;gap:9px;padding:14px;border-bottom:1px solid #d9e1e9}.admin-add-user{grid-template-columns:1fr 1fr;background:#f7f9fb}.admin-add-user label:first-child,.admin-add-user label:nth-child(2),.admin-user-email{grid-column:1 / -1}.admin-add-user label,.admin-user-row label{min-width:0}.admin-add-user span,.admin-user-row span{display:block;margin-bottom:4px;color:#67778f;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.admin-add-user input,.admin-add-user select,.admin-user-row input,.admin-user-row select{width:100%;min-height:38px;border:1px solid #bdc9d6;border-radius:7px;padding:0 8px;background:#fff;color:#102d55;font-size:12px}.admin-user-add{grid-column:1 / -1;min-height:39px;border:1px solid #102d55;border-radius:7px;background:#102d55;color:#fff;font-size:13px;font-weight:800}.admin-user-row{grid-template-columns:1fr 1fr}.admin-user-row>label:first-child{grid-column:1 / -1}.admin-user-email{color:#67778f;font-size:12px;overflow-wrap:anywhere}.admin-user-actions{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:8px}.admin-user-save,.admin-user-remove{min-height:38px;border-radius:7px;font-size:12px;font-weight:800}.admin-user-save{border:1px solid #102d55;background:#fff;color:#102d55}.admin-user-remove{border:1px solid #c9372c;background:#fff7f6;color:#b5251f}.send-note:empty{display:none}.workspace-intro{margin:22px 0 26px}.workspace-paths{display:grid;gap:18px}.workspace-path{width:100%;display:grid;grid-template-columns:84px minmax(0,1fr) 18px;align-items:center;gap:13px;padding:18px 12px;border:1px solid #dedbd5;border-radius:14px;background:#fff;color:#102d55;text-align:left;box-shadow:0 4px 14px #102d5509}.workspace-path:hover{border-color:#ca241f}.workspace-path:focus-visible{outline:3px solid #ca241f;outline-offset:3px}.workspace-path.is-disabled,.workspace-path:disabled{opacity:.46;cursor:not-allowed;filter:grayscale(.72);box-shadow:none}.workspace-path.is-disabled:hover,.workspace-path:disabled:hover{border-color:#dedbd5}.workspace-path b{display:block;font-size:17px;line-height:1.2}.workspace-path small{display:block;margin-top:8px;color:#667183;font-size:12px;line-height:1.4}.workspace-icon{position:relative;display:block;width:84px;height:84px;overflow:hidden;border-radius:10px;background:#193455;isolation:isolate}.workspace-icon img{position:absolute;display:block;max-width:none;width:100.0333%;height:87.9121%;left:-2.2145%;top:7.2428%;filter:url(#workspace-remove-matte)}.workspace-photo-icon img{width:368.6888%;height:82.9746%;left:6.5558%;top:7.9909%;clip-path:inset(0 77.85% 0 0)}.workspace-return{min-height:44px;border:0;padding:0;background:transparent;color:#102d55;font-weight:700}.model-workspace-intro{margin:14px 0 24px}.model-workspace-intro>img{width:100px;height:88px;object-fit:contain;border-radius:10px;margin-bottom:20px}.workspace-actions{display:grid;gap:12px;margin-top:24px}@media(max-width:360px){.workspace-path{grid-template-columns:66px minmax(0,1fr) 18px;gap:10px}.workspace-icon{width:66px;height:66px}.workspace-path b{font-size:15px}}.model-workflow-frame{display:block;width:100%;height:100dvh;min-height:100vh;border:0;background:#f7f6f3}.phone:has(.model-workflow-frame) .content{padding-bottom:16px}.phone .model-workflow-frame{height:calc(100dvh - 180px);min-height:580px;background:transparent}.phone.model-camera-active .home-topline{display:none}.phone.model-camera-active .model-workflow-frame{height:calc(100dvh - 120px);min-height:0}.phone.model-camera-active .content{padding-top:0}.phone:has(.model-workflow-frame) .home-topline{margin-bottom:2px}.workspace-video-icon{background:#031429}.workspace-video-icon img{width:100%;height:100%;left:0;top:0;object-fit:contain;filter:none}.workspace-icon.card-art{background:#031429}.workspace-icon.card-art img{height:auto;max-width:none;object-fit:initial;filter:none;clip-path:none}.workspace-icon.card-art-photo img{width:91.4516%;left:3.6694%;top:6.2097%}.workspace-icon.card-art-model img{width:91.1469%;left:4.9095%;top:.9859%}.workspace-icon.card-art-video img{width:102.2622%;left:.1028%;top:-2.6735%}.engineering-documents{margin:20px 0;padding:18px;background:#fff;border:1px solid #e2ded9;border-radius:12px}.engineering-documents h2{margin:0 0 12px}.engineering-documents ul{list-style:none;padding:0;margin:0}.engineering-documents li{border-bottom:1px solid #e2ded9;padding:10px 0;overflow-wrap:anywhere}.engineering-documents li span{display:block;font-weight:700}.engineering-documents .text-button{padding:10px 0;min-height:44px}.engineering-documents p{line-height:1.5}.invite-note{grid-column:1 / -1;margin:0;color:#526579;font-size:13px;line-height:1.5}.invite-heading{margin:16px 14px 8px;font-size:17px}.request-profile-details{grid-column:1 / -1;font-size:13px;overflow-wrap:anywhere}.camera-left-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:130px}.capture-complete-link{border:0;background:none;padding:0;color:#ca241f;font-size:13px;font-weight:800}.cast-calendar{background:#fff;border:1px solid #dedbd5;border-radius:10px;padding:10px}.cal-head{display:grid;grid-template-columns:36px 1.4fr 1fr 36px;gap:6px;align-items:center}.cal-head .field{height:40px;padding:0 8px;appearance:auto;font-weight:700}.cal-nav{height:40px;border:1px solid #dedbd5;border-radius:8px;background:#fff;color:#102d55;font-size:22px;line-height:1}.cal-nav:disabled{opacity:.3}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:10px}.cal-dow{text-align:center;font-size:11px;font-weight:800;color:#6c7787;padding:4px 0}.cal-day{height:38px;border:0;border-radius:8px;background:#f3f5f7;color:#102d55;font-weight:700;font-size:14px}.cal-day.selected{background:#ca241f;color:#fff}.cal-day:disabled{opacity:.3;cursor:not-allowed}.cal-selected{margin:10px 2px 0;font-size:13px;color:#6c7787}.cal-selected b{color:#102d55}.camera-live.zoomable{object-fit:contain;cursor:crosshair}.zoom-hint{margin:8px 4px 0;font-size:12.5px;color:#44536a;line-height:1.4}.zoom-hint .link-button{padding:0 0 0 6px;color:#ca241f}.defect-notes{height:84px;padding:10px 13px;resize:vertical;font:inherit}
