:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#e4e9ef;background:#080c10;font-synthesis:none;--muted:#8e9ba8;--line:#ffffff16;--accent:#dfe8f2}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{color:inherit;background:transparent;border:1px solid var(--line);padding:10px 14px;border-radius:4px;cursor:pointer;transition:background .2s,border-color .2s}button:hover:not(:disabled){background:#ffffff0c;border-color:#ffffff40}button:disabled{opacity:.36;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid #bdd7f3;outline-offset:4px}[hidden]{display:none!important}header{height:80px;padding:0 4vw;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.wordmark{font-size:21px;font-weight:500;letter-spacing:.18em}.wordmark span{display:none}main{min-height:calc(100svh - 142px)}.showroom-open{height:100svh;overflow:hidden}.showroom-open main{height:calc(100svh - 80px);min-height:0}.showroom-open #error{position:fixed;bottom:20px;left:20px;right:20px;z-index:5}#car-picker{height:100%;background:radial-gradient(ellipse at 50% 47%,#29333e 0,#141d27 33%,#080c10 74%);overflow:hidden}.eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:400;color:var(--muted);margin:0 0 16px}.showroom-space{height:100%;position:relative}.showroom-world{position:absolute;top:0;right:0;bottom:110px;left:0;touch-action:none;cursor:grab}.showroom-world:active{cursor:grabbing}.showroom-world canvas{display:block;width:100%;height:100%}.showroom-caption{position:absolute;bottom:35px;left:0;right:0;text-align:center}.car-name{display:flex;align-items:center;justify-content:center;gap:28px}.car-name h2{font-size:32px;letter-spacing:-1px;font-weight:400;margin:0}.showroom-arrow{border:0;background:transparent!important;color:#b7c7d9;font-size:26px;font-weight:200;padding:6px 12px;filter:blur(.55px);opacity:.55;transition:filter .2s,opacity .2s;text-shadow:0 0 9px #b5cde966}.showroom-arrow:hover:not(:disabled),.showroom-arrow:focus-visible{filter:none;opacity:1}.showroom-arrow:disabled{opacity:.24}.showroom-open header{border-bottom:0}.car-entrance{position:fixed;z-index:20;pointer-events:none;object-fit:contain;transition:left .52s cubic-bezier(.22,.68,.24,1),top .52s cubic-bezier(.22,.68,.24,1),width .52s cubic-bezier(.22,.68,.24,1),height .52s cubic-bezier(.22,.68,.24,1),opacity .26s}.conversation{transition:opacity .45s ease,transform .55s ease}#viewport{transition:opacity .3s ease}.repair-entering .conversation{opacity:0;transform:translate(35px)}.repair-entering #viewport,.repair-entering .viewer-controls{opacity:0}.work-bar{height:54px;padding:0 4vw;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.work-bar button{border:0;padding:6px 0;font-size:10px;color:#a9b5c2}.work-bar .eyebrow{margin:0;font-size:8px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 390px;min-height:760px;height:calc(100svh - 134px)}.stage{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 48%,#28333f 0,#121c26 37%,#080c10 76%);min-width:0;min-height:600px}.stage:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(#080c1020,transparent 30%,transparent 60%,#080c1070)}.stage-heading{position:absolute;top:36px;left:4vw;right:25px;z-index:2;pointer-events:none}.stage-heading h2{font-size:clamp(24px,2.7vw,40px);font-weight:400;letter-spacing:-.045em;margin:0 0 13px}.stage-heading .eyebrow{margin-bottom:11px}#viewport{position:absolute;top:0;right:0;bottom:0;left:0}#viewport canvas{display:block;touch-action:none}.empty-state{position:absolute;top:140px;right:24px;bottom:200px;left:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2;text-align:center}.empty-symbol{font-size:34px;font-weight:200;color:#8b9cac}.empty-state h3{font-size:16px;font-weight:400;margin:18px 0 0}.empty-state p{font-size:11px;line-height:1.6;color:var(--muted);max-width:300px}.part-inspect{position:absolute;top:140px;right:24px;z-index:3;max-width:220px;border:1px solid #ffffff25;background:#0d141ee8;border-radius:4px;padding:12px;display:flex;flex-direction:column;gap:10px;font-size:12px}.part-inspect button{font-size:10px}.viewer-controls{position:absolute;bottom:49px;left:4vw;right:4vw;z-index:2;max-width:680px;border-top:1px solid #ffffff20;padding-top:13px}.control-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px;font-size:10px}.control-row button{font-size:10px;border:0;padding:4px 0;color:var(--muted)}.viewer-controls label{display:flex;justify-content:space-between;font-size:9px;color:#8a9caf}.viewer-controls output{color:#c8d6e5;font-variant-numeric:tabular-nums}.viewer-controls input{width:100%;height:18px;accent-color:#bdcbdc;cursor:ew-resize;margin:10px 0 3px}.viewer-controls p{font-size:8px;letter-spacing:.1px;color:#748697;margin:5px 0}.viewer-controls details{font-size:9px;margin-top:12px}.viewer-controls summary{cursor:pointer;color:#aebdcb}.viewer-controls details[open]{padding:12px;background:#101923f5;border:1px solid var(--line);max-height:150px;overflow:auto;border-radius:4px}#parts-list{display:flex;flex-wrap:wrap;gap:5px;padding-top:10px}.part-row{font-size:9px;padding:6px 8px}.part-row[aria-pressed=true]{background:#c4d2e3;color:#101820}.conversation{background:#0f141a;border-left:1px solid var(--line);display:flex;flex-direction:column;min-width:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#34414e transparent}.chat-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:26px 24px 21px;border-bottom:1px solid var(--line)}.chat-heading>div{display:flex;align-items:center;gap:12px}.astra-mark{width:30px;height:30px;border:1px solid #ffffff25;border-radius:50%;display:grid;place-items:center;font-size:21px;color:#becddd}.chat-heading h2{font-size:17px;font-weight:400;letter-spacing:-.3px;margin:0}#chat-log{min-height:185px;height:260px;flex:1 0 185px;overflow-y:auto;display:flex;flex-direction:column;gap:20px;padding:26px 24px;scrollbar-width:thin}.message{font-size:12px;line-height:1.75;max-width:100%}.message.user{align-self:flex-end;max-width:92%;background:#1d2631;border:1px solid #ffffff0b;border-radius:8px 8px 0;padding:12px 14px}.message b{font-size:8px;letter-spacing:1.5px;text-transform:uppercase;display:block;font-weight:400;color:#8698ac;margin-bottom:7px}.message p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.message small{font-size:9px;color:var(--muted)}.damage-review{border-top:1px solid var(--line);padding:18px 24px}.selection-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.selection-heading h3{font-size:11px;font-weight:400;margin:0}.selection-heading h3 span{font-size:9px;color:#91a1b2;margin-left:8px}#damage-selection{display:flex;flex-direction:column;gap:7px;margin-top:12px}.damage-chip{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#37212855;border:1px solid #9e5e663f;border-radius:4px;padding:9px 10px}.damage-chip .chip-focus{border:0;padding:0;text-align:left;font-size:11px}.damage-chip small{display:block;font-size:9px;line-height:1.5;color:#b59a9f;margin-top:4px}.damage-chip .remove-part{border:0;padding:4px;font-size:16px}.primary{color:#111820;background:#dfe6ef;border-color:#dfe6ef;font-size:12px}.primary:hover:not(:disabled){color:#080c10;background:#fff;border-color:#fff}#confirm-repair{width:100%;margin-top:9px;font-size:11px;padding:13px 10px}.composer{padding:18px 24px;border-top:1px solid var(--line);background:#10161e}.compose-label,.composer-footer{display:flex;justify-content:space-between;align-items:center;gap:10px}.compose-label{font-size:9px;color:#92a2b4;margin-bottom:11px}.attach-button{position:relative;cursor:pointer;color:#c0cddd}.attach-button input{position:absolute;opacity:0;width:1px;height:1px}.attach-button:focus-within{outline:2px solid #bdd7f3;outline-offset:4px}.composer textarea{width:100%;min-height:72px;resize:vertical;color:#e1e8f1;background:#0d131b;border:1px solid #ffffff1c;border-radius:5px;font-size:11px;line-height:1.7;padding:12px}.composer textarea::placeholder{color:#617184}.composer-footer{margin-top:10px}.composer-footer button{min-width:75px;font-size:11px}#photos{display:flex;flex-wrap:wrap;gap:9px}#photos:not(:empty){margin-bottom:16px}.photo{width:56px;height:56px;position:relative}.photo img{width:100%;height:100%;object-fit:cover;border:1px solid #ffffff30;border-radius:4px}.photo button{position:absolute;top:-6px;right:-6px;width:19px;height:19px;padding:0;border-radius:50%;background:#293441;font-size:11px}.working,.error{font-size:11px;line-height:1.6;margin:12px 24px;padding:10px}.working{color:#bdd1e7}.error{border:1px solid #ab62664f;background:#301c2350;color:#eeb6b9}#repair-downloads{padding:12px 24px;border-top:1px solid var(--line)}.download-card h3{font-size:12px;font-weight:400}.download-card button{font-size:9px;margin:0 5px 8px 0}@media(min-width:1600px){.workspace{grid-template-columns:minmax(0,1fr) 440px}.chat-heading,.composer,.damage-review{padding-left:30px;padding-right:30px}}@media(max-width:900px){.workspace{grid-template-columns:minmax(0,1fr) 300px}.stage-heading{left:24px}.viewer-controls{left:24px;right:24px}.chat-heading,.composer,.damage-review{padding-left:18px;padding-right:18px}#chat-log{padding:24px 18px}}@media(max-width:600px){header{height:70px;padding:0 22px}.wordmark{font-size:18px}.showroom-open main{height:calc(100svh - 70px)}.car-name h2{font-size:27px}.car-name{gap:20px}.workspace{display:flex;flex-direction:column;height:auto;min-height:0}.stage{height:640px;min-height:640px}.stage-heading{top:27px}.stage-heading h2{font-size:28px}.conversation{border-left:0;border-top:1px solid var(--line);overflow:visible}.work-bar{padding:0 22px}.work-bar .eyebrow{display:none}#chat-log{height:280px;flex:auto;max-height:400px}.chat-heading,.composer,.damage-review{padding:22px}.part-inspect{top:132px}.viewer-controls{bottom:52px}}@media(max-height:500px){.showroom-open header{height:50px}.showroom-open main{height:calc(100svh - 50px)}.car-name h2{font-size:24px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}#repair-workspace{overflow:hidden}#modified-parts{display:flex;gap:8px;overflow-x:auto;max-height:78px;margin-bottom:10px;scrollbar-width:thin}#modified-parts:empty{display:none}.modification-record{flex-shrink:0;text-align:left;border-color:#69b7e75c;background:#17354d99;font-size:12px;padding:8px 11px}.modification-record span{display:block;color:#a9c9e0;font-size:11px;margin-top:4px;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.part-row.modified{border-color:#69b7e7;color:#a9daff}.part-row.modified[aria-pressed=true]{color:#101820}#cad-status{font-size:11px;line-height:1.5;overflow-wrap:anywhere;color:#b2cce1}#cad-status:empty{display:none}.viewer-controls label,.viewer-controls summary,.control-row,.control-row button,.part-row,.compose-label,.composer-footer button,.selection-heading h3,.message b,.damage-chip small{font-size:12px}.message b{letter-spacing:.5px}.work-bar button{font-size:12px}.message-photos{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.message-photos img{width:64px;height:64px;object-fit:cover;border-radius:4px}.pending{color:#a9bdcf}.download-card img{display:block;width:100%;border:1px solid #ffffff20;border-radius:4px}.download-card p{font-size:12px;color:#b4c1ce;line-height:1.5}#saved-parts{width:100%;margin-top:10px;font-size:12px}.workspace{min-height:0}.stage{min-height:420px}.composer{position:sticky;bottom:0;z-index:3}.conversation{min-height:0}@media(max-width:600px){.stage{min-height:420px;height:52svh}.composer{position:static}}.scan-dialog{width:min(640px,94vw);max-height:92svh;overflow:auto;background:#10161e;color:#e4e9ef;border:1px solid #526173;border-radius:14px;padding:0;box-shadow:0 30px 120px #000b}.scan-dialog::backdrop{background:#02060bd9;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.scan-top{display:flex;justify-content:space-between;align-items:center;padding:22px 26px}.scan-top span{font-size:11px;letter-spacing:1.3px;color:#9cadbf}.scan-top h2{font-size:24px;font-weight:400;margin:8px 0 0}.scan-top button{border:0;font-size:24px}.scan-preview{height:280px;position:relative;overflow:hidden;background:radial-gradient(#304355,#10161e)}#scan-model{position:absolute;top:0;right:0;bottom:0;left:0}#scan-photo{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;opacity:.45}.scan-grid{position:absolute;top:18px;right:18px;bottom:18px;left:18px;border:1px solid #c7dfff40;background-image:linear-gradient(#b9d7f510 1px,transparent 1px),linear-gradient(90deg,#b9d7f510 1px,transparent 1px);background-size:26px 26px;pointer-events:none}.scan-beam{display:none;position:absolute;left:18px;right:18px;height:2px;background:#c3e1ff;box-shadow:0 0 30px 9px #a9d4ff70}.scanning .scan-beam{display:block;animation:scan-sweep 1.2s ease-in-out infinite alternate}@keyframes scan-sweep{0%{top:24px}to{top:255px}}.scan-bottom{padding:20px 26px 26px}.scan-bottom p{font-size:15px;line-height:1.6}.scan-options,.scan-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px}.scan-options label{font-size:13px}.scan-options select{padding:9px;background:#1d2937;border:1px solid #526173;color:#e4e9ef;border-radius:4px}.scan-actions{justify-content:flex-end}#scan-dimensions{font-size:13px;color:#bccbdb;margin-top:20px}.edit-annotation{position:absolute;z-index:4;background:#172332e8;border:1px solid #afc5dd80;color:#e4efff;font-size:12px;max-width:200px;text-align:left}.edit-annotation:before{content:"";position:absolute;right:100%;top:100%;width:55px;border-top:1px solid #b7d5ef;transform:rotate(-35deg);transform-origin:right top}.edit-annotation:after{content:"";position:absolute;right:calc(100% + 43px);top:calc(100% + 29px);width:5px;height:5px;border-radius:50%;background:#b7d5ef}@media(prefers-reduced-motion:reduce){.scanning .scan-beam{animation:none;top:140px}}
