*{box-sizing:border-box}body{margin:0;background:#f7f8fa;color:#192d3a;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px}button,input{font:inherit}button{cursor:pointer;color:inherit;border:1px solid #d7dfe5;background:white;border-radius:7px;padding:10px 14px;transition:background .15s}button:hover{background:#edf3f7}button:disabled{opacity:.45;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #4593bb;outline-offset:3px}header{height:76px;display:flex;align-items:center;gap:12px;padding:0 26px;background:#fff;border-bottom:1px solid #dce3e8}.brand{font-weight:700;font-size:21px;text-decoration:none;color:#172e3e;letter-spacing:-.7px}.brand span{color:#2584ad}.project{margin-left:50px;flex:1;color:#526674}.project span{margin:0 15px;color:#a3adb5}.primary{background:#126b91;color:white;border-color:#126b91}.primary:hover{background:#0a5579}.notice{display:flex;align-items:center;gap:12px;padding:12px 26px;background:#eef3f7;font-size:12px;color:#526674}.notice strong{color:#304b61;white-space:nowrap}.notice a{margin-left:auto;white-space:nowrap;color:#315f7b}.dot{width:7px;height:7px;border-radius:50%;background:#51829e}main{display:grid;grid-template-columns:245px minmax(400px,1fr) 240px;min-height:calc(100vh - 116px)}aside{padding:27px 22px;background:white}aside:first-child{border-right:1px solid #e0e5e9}.section-head{display:flex;align-items:center;justify-content:space-between}h1,h2{font-size:16px;margin:0;font-weight:650}.section-head span{font-size:10px;color:#748590}.intro{font-size:12px;line-height:1.6;color:#75818c;margin:12px 0 24px}label{display:block;font-size:12px;font-weight:600;margin:20px 0 9px}label span{float:right;color:#7b8993;font-family:monospace}input[type=color]{width:100%;height:35px;border:1px solid #d9e1e7;padding:3px;background:white;border-radius:6px}input[type=text]{width:100%;padding:10px;border:1px solid #d9e1e7;border-radius:6px}input[type=range]{width:100%;accent-color:#126b91}.styles{display:flex;gap:6px}.styles button{width:33.33%;padding:5px;font-size:10px}.styles i{display:block;height:38px;margin-bottom:7px;background:#c9dce4;border-radius:3px}.styles i.stripe{background:linear-gradient(150deg,#dbe5e9 40%,#126b91 40%,#126b91 60%,#dbe5e9 60%)}.styles i.split{background:linear-gradient(115deg,#dbe5e9 45%,#126b91 45%)}.styles button.selected{border-color:#126b91;background:#f0f7fa}.rule{border-top:1px solid #edf0f2;margin:24px 0}.wide{width:100%;font-size:12px}.small{font-size:11px;line-height:1.6;color:#7b8993}.credit{margin-top:35px;font-size:10px;line-height:1.8;color:#86939d}.credit a{color:#55768a}.workspace{min-width:0}.stage{height:530px;position:relative;background:#e9edf0;overflow:hidden}#viewer{position:absolute;inset:0}#viewer canvas{display:block;width:100%;height:100%}.stage-title{position:absolute;z-index:1;top:27px;left:30px;pointer-events:none}.stage-title strong{display:block;font-size:27px;font-weight:500;letter-spacing:-.8px}.stage-title span{font-size:11px;color:#80909a;display:block;margin-top:6px}.views{position:absolute;bottom:23px;left:50%;transform:translateX(-50%);display:flex;background:#ffffffdc;border:1px solid #d9e1e5;border-radius:8px;padding:4px;gap:2px}.views button{border:0;background:transparent;padding:8px 12px;font-size:11px}.views button.active{background:#1e4055;color:#fff}.drag{position:absolute;bottom:77px;left:0;right:0;text-align:center;font-size:10px;color:#8a97a0;pointer-events:none}#loading{position:absolute;top:45%;width:100%;text-align:center;color:#698090}.artwork{padding:25px 28px}.artwork-head{display:flex;justify-content:space-between;gap:20px;align-items:start}.artwork-head p{font-size:11px;line-height:1.5;color:#80909a;max-width:380px}.artwork-head button{font-size:11px;white-space:nowrap}#panels{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:16px}.panel canvas{width:100%;display:block;border-radius:5px;border:1px solid #d5e0e5}.panel span{display:block;margin:8px 0;font-size:11px;color:#657887;text-transform:capitalize}.inspection{border-left:1px solid #e0e5e9}.check{border-bottom:1px solid #e9eef1;padding:21px 0 17px}.check strong{display:block;font-size:12px;margin-top:10px}.check p{font-size:11px;line-height:1.6;color:#7a8c97;margin-bottom:0}.status{font-size:10px;border-radius:4px;padding:4px 7px}.pending{background:#edf1f5;color:#677986}.pass{background:#e5f2ed;color:#297354}.blocked{background:#f6efdf;color:#8e743b}details{margin-top:24px;font-size:11px}details img{width:100%;margin:15px 0;background:#1b2730}details a{color:#39789e}summary{cursor:pointer}.export-note{margin-top:30px;background:#f4f7f9;padding:14px;border-radius:7px;font-size:12px}.export-note p,.export-note small{font-size:11px;line-height:1.6;color:#758895}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#173d52;color:white;padding:12px 22px;border-radius:8px;z-index:10;display:none;font-size:12px;max-width:90vw}@media(min-width:1600px){.stage{height:650px}}@media(max-width:1100px){main{grid-template-columns:220px minmax(350px,1fr)}.inspection{grid-column:1/-1;display:flex;gap:20px;padding:20px;flex-wrap:wrap}.inspection .check{max-width:200px}.inspection details{max-width:150px}.project{margin-left:20px}.notice span:not(.dot){max-width:60%}}@media(max-width:700px){header{padding:12px;height:auto;flex-wrap:wrap}.brand{font-size:18px;flex:1}.project{display:none}.notice{padding:10px 12px;flex-wrap:wrap;gap:8px}.notice span:not(.dot){max-width:100%;line-height:1.5}.notice a{margin:0}main{display:flex;flex-direction:column}.workspace{order:0}.stage{height:390px}aside:first-child{order:1}.inspection{order:2}.artwork{padding:20px 14px}.artwork-head{flex-wrap:wrap}.views button{padding:8px 9px}#panels{gap:5px}.stage-title{left:20px;top:20px}.credit{margin-top:20px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
#vehicle-select{max-width:310px;border:1px solid #d7dfe5;border-radius:7px;background:#f8fafb;padding:10px;font:inherit;margin-left:20px;color:#29495d}header .project{margin-left:8px;font-size:12px}body.template-mode main,body.template-mode .notice,body.template-mode header #save,body.template-mode header #export{display:none}#template-workspace[hidden]{display:none}.vehicle-overview{display:flex;justify-content:space-between;align-items:center;padding:25px 50px;background:#e9edf0;min-height:210px}.vehicle-overview h1{font-size:38px;letter-spacing:-1px;margin:8px 0}.vehicle-overview p{color:#667e8d;margin:8px 0 14px}.vehicle-overview a{font-size:12px;color:#126b91}.vehicle-overview img{width:290px;height:160px;object-fit:contain}.mode-label{font-size:11px;color:#698698}.template-layout{display:grid;grid-template-columns:250px minmax(300px,1fr) 240px}.template-stage{padding:25px;display:flex;align-items:center;justify-content:center;background:#dce3e8;min-height:580px}.template-stage canvas{width:100%;max-width:660px;max-height:660px;object-fit:contain;box-shadow:0 4px 25px #102d3d15}.template-layout select{width:100%;padding:10px;border:1px solid #d7dfe5;border-radius:6px;background:white}.template-layout input:not([type=color]){width:100%;padding:10px;border:1px solid #d7dfe5;border-radius:6px}.template-layout .small{line-height:1.8}.template-layout aside{border:1px solid #e0e6eb}@media(max-width:1000px){header .project{display:none}.template-layout{grid-template-columns:220px 1fr}.template-layout>aside:last-child{grid-column:1/-1}.vehicle-overview{padding:24px}.template-stage{min-height:400px}}@media(max-width:700px){#vehicle-select{margin:0;max-width:100%;width:100%;order:3}.template-layout{display:flex;flex-direction:column}.template-stage{order:-1;min-height:300px;padding:14px}.vehicle-overview{padding:20px;gap:12px;min-height:160px}.vehicle-overview h1{font-size:28px}.vehicle-overview img{width:140px;height:110px}.vehicle-overview p{font-size:12px}.template-stage canvas{max-height:380px}}

.template-stage{flex-direction:column;gap:16px;position:relative;justify-content:flex-start}#vehicle-3d{width:100%;height:440px;min-height:320px}#vehicle-3d iframe{border:0;width:100%;height:100%;border-radius:10px;background:#e9edf0}#vehicle-views{position:static;display:flex;flex-wrap:wrap;transform:none}#vehicle-views[hidden],#vehicle-3d[hidden]{display:none}body.template-mode .template-stage canvas{max-width:420px;max-height:420px}@media(max-width:700px){#vehicle-3d{height:320px}body.template-mode .template-stage canvas{max-height:280px}}

#vehicle-3d{position:relative}#vehicle-3d[data-loading="true"]:after{content:"Loading vehicle 3D…";position:absolute;inset:0;display:grid;place-items:center;background:#e9edf0;color:#486578;border-radius:10px;font-size:14px}
