:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#26313a;background:#f4f5f7;font-synthesis:none;--muted:#7b848b;--line:#e2e5e8;--blue:#637c9d;--orange:#bc8d68}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #769fc4;outline-offset:4px}header{height:72px;display:flex;align-items:center;padding:0 30px;gap:24px;background:#fafbfc;border-bottom:1px solid var(--line)}.brand{text-decoration:none;color:#26313a;font-size:13px;letter-spacing:1.8px;font-weight:750;display:flex;gap:9px;align-items:center}.brand-mark{font-size:27px;margin-right:6px;font-weight:400}.brand-slash{color:#a1a8ad;font-weight:400}.header-title{margin-left:auto;font-size:13px;font-weight:600}.header-title span{font-weight:400;color:var(--muted);margin-left:9px}.icon-button{border:1px solid var(--line);border-radius:50%;background:transparent;width:30px;height:30px;color:#66717a;font-size:17px}main{display:grid;grid-template-columns:minmax(0,1fr) 308px;height:calc(100dvh - 72px);min-height:650px}#stage{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 50%,#fafbfc,#eef0f3);min-width:0}#viewer{display:block;width:100%;height:100%;touch-action:none;outline:none}.model-tag{position:absolute;top:28px;z-index:2;display:flex;align-items:center;gap:9px;font-size:12px;pointer-events:none}.tag-before{left:30px}.tag-after{right:30px}.model-tag strong{font-size:15px;font-weight:600;letter-spacing:.2px}.model-tag>span:last-child{color:var(--muted);font-size:11px}.dot{height:7px;width:7px;border-radius:50%;display:block}.old{background:var(--blue)}.new{background:var(--orange)}#seam{position:absolute;top:0;bottom:0;width:1px;background:linear-gradient(transparent,rgba(110,123,134,.4) 18%,rgba(110,123,134,.4) 82%,transparent);pointer-events:none;z-index:3}#seam-handle{position:absolute;top:50%;left:0;transform:translate(-50%,-50%);pointer-events:auto;touch-action:none;width:47px;height:47px;display:flex;justify-content:center;gap:10px;align-items:center;background:rgba(255,255,255,.93);backdrop-filter:blur(8px);border:1px solid #d6dce1;border-radius:50%;box-shadow:0 3px 12px #26313a0c;color:#63717b;font-size:23px;line-height:1}#seam-handle:hover{background:white;box-shadow:0 3px 18px #26313a20}.stage-bottom{position:absolute;bottom:25px;left:30px;right:30px;display:flex;align-items:center;justify-content:space-between;gap:16px;pointer-events:none;font-size:10px;color:#8a9299}.stage-bottom i{font-style:normal;margin:0 7px;color:#bcc1c6}.mouse-icon{font-size:15px;margin-right:5px}.alignment{font-size:10px;display:flex;align-items:center;gap:5px}.aligned-icon{font-size:15px}aside{background:#fafbfc;border-left:1px solid var(--line);overflow-y:auto;display:flex;flex-direction:column;padding:27px 25px 20px}.eyebrow{font-size:9px;font-weight:650;letter-spacing:1.8px;color:#929aa1}.panel-head h1{font-size:24px;line-height:1.23;font-weight:500;letter-spacing:-.8px;margin:13px 0 11px}.panel-head p{font-size:12px;line-height:1.7;color:var(--muted);margin:0 0 24px;max-width:230px}.control-section{border-top:1px solid var(--line);padding:21px 0}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}h2{font-size:12px;font-weight:600;margin:0}output{font-size:10px;font-variant-numeric:tabular-nums;color:#8b949c}.text-button{font-size:10px;color:#8a939a;border:0;background:none;padding:0}.text-button:hover{color:#26313a}.small-note{font-size:11px;color:var(--muted);margin:-4px 0 19px;line-height:1.5}input[type=range]{display:block;appearance:none;-webkit-appearance:none;width:100%;height:4px;border-radius:3px;background:#dfe4e8;cursor:ew-resize;margin:16px 0;accent-color:#667d92}input[type=range]::-webkit-slider-thumb{appearance:none;width:13px;height:13px;border:3px solid #fff;background:#667d92;border-radius:50%;box-shadow:0 0 0 1px #b8c3cd,0 1px 3px #0002}input[type=range]::-moz-range-thumb{width:9px;height:9px;border:3px solid #fff;background:#667d92;border-radius:50%;box-shadow:0 0 0 1px #b8c3cd}#wipe{background:linear-gradient(to right,#9cacc1,#d6c0ae);height:5px}.range-labels{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#9da5ab}.range-labels button{border:0;background:none;padding:0;color:#6a7783;font-size:10px}.plane{margin-bottom:17px}.plane-top{display:flex;align-items:center;gap:8px}.axis-chip{height:22px;width:22px;display:grid;place-items:center;border-radius:5px;background:var(--axis-bg);color:var(--axis);font-size:10px;font-weight:600}.plane-name{font-size:11px;font-weight:500}.toggle{margin-left:auto;display:flex;cursor:pointer}.toggle input{appearance:none;position:absolute;width:26px;height:16px;opacity:0;margin:0;cursor:pointer}.toggle i{position:relative;width:26px;height:15px;border-radius:12px;background:#e0e4e8;transition:.18s}.toggle i:after{content:"";position:absolute;left:2px;top:2px;width:11px;height:11px;background:white;border-radius:50%;box-shadow:0 1px 2px #0001;transition:.18s}.toggle input:checked+i{background:var(--axis)}.toggle input:checked+i:after{transform:translateX(11px)}.toggle input:focus-visible+i{outline:3px solid #769fc4;outline-offset:3px}.plane-adjust{display:flex;align-items:center;gap:10px;padding-left:30px;transition:opacity .18s}.plane-adjust input{flex:1;min-width:0;margin:13px 0 3px}.plane-adjust output{font-size:9px;min-width:48px;text-align:right;padding-top:9px;color:#6f7e89}.flip-button{border:0;background:#eff1f3;color:#6d7c89;border-radius:4px;font-size:13px;width:23px;height:21px;flex:none;margin-top:8px}.plane.off .plane-adjust{opacity:.35}.plane.off .plane-adjust input,.plane.off .plane-adjust button{cursor:default}.check-label{display:flex;align-items:center;gap:7px;color:#7c8790;font-size:10px;margin:12px 0 0;cursor:pointer}.check-label input{width:12px;height:12px;accent-color:#637c92;margin:0}.view-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:4px}.view-grid button{border:1px solid #e0e4e8;background:transparent;border-radius:5px;padding:9px 8px;text-align:left;color:#87929b;font-size:12px;display:flex;gap:9px;align-items:center}.view-grid button span{font-size:10px}.view-grid button.selected{color:#4f6577;background:#eaf0f5;border-color:#cbd7e0}.view-grid button:hover{border-color:#aab9c6}.panel-footer{margin-top:auto;padding-top:16px;display:flex;gap:8px;align-items:flex-start;color:#9ba2a8;font-size:9px;line-height:1.8}.tiny-dot{width:4px;height:4px;background:#b5bfc7;border-radius:50%;margin-top:6px}.panel-footer .text-button{font-size:9px}#loading{position:absolute;inset:0;background:#f3f5f7;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;z-index:5;transition:opacity .4s}#loading.loaded{opacity:0;pointer-events:none}#loading strong{font-size:15px;font-weight:500}#loading span{font-size:11px;color:var(--muted)}.loader-icon{font-size:44px;color:#8e9fac;animation:pulse 1.4s ease-in-out infinite}.load-track{width:150px;height:3px;background:#e1e6ea;border-radius:3px;margin-top:6px;overflow:hidden}.load-track i{height:100%;display:block;width:0;background:#879eaf;transition:width .3s}@keyframes pulse{50%{opacity:.4}}dialog{max-width:510px;width:calc(100% - 36px);border:1px solid #dce2e7;border-radius:14px;padding:29px;background:#fafbfc;color:#34414b;box-shadow:0 25px 100px #15243030}dialog::backdrop{background:#25344155;backdrop-filter:blur(4px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between}dialog h2{font-size:25px;letter-spacing:-.7px;font-weight:500;margin:20px 0}dialog p{font-size:12px;line-height:1.8;color:#75818a}dialog small{font-size:9px;color:#9aa3aa;line-height:1.6}.source-links{display:grid;gap:10px;margin:22px 0}.source-links a{font-size:11px;color:#56758c;text-decoration:none}.source-links a:hover{text-decoration:underline}@media(max-height:830px) and (min-width:761px){main{min-height:580px}aside{padding-top:20px}.panel-head h1{font-size:22px}.panel-head p{margin-bottom:17px}.control-section{padding:16px 0}.plane{margin-bottom:12px}.small-note{margin-bottom:13px}.view-grid button{padding:7px}}@media(max-width:1020px){main{grid-template-columns:minmax(0,1fr) 270px}aside{padding-left:20px;padding-right:20px}.stage-bottom{left:20px;right:20px}.alignment{display:none}.model-tag>span:last-child{display:none}}@media(max-width:760px){header{height:58px;padding:0 18px;gap:12px}.brand{font-size:10px;gap:5px;letter-spacing:1px}.brand-mark{font-size:22px;margin-right:2px}.header-title{font-size:11px}.header-title span{display:none}main{display:flex;flex-direction:column;height:auto;min-height:calc(100dvh - 58px)}#stage{height:58dvh;min-height:340px;flex:none}.tag-before{left:19px}.tag-after{right:19px}.model-tag{top:20px}.model-tag strong{font-size:13px}aside{border-left:0;border-top:1px solid var(--line);padding:22px;overflow:visible;display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.panel-head{display:none}.compare-control{grid-column:1/-1;border-top:0;padding-top:0}.compare-control .section-heading{margin-bottom:8px}.compare-control input{margin:11px 0}.control-section{padding-top:18px}.panel-footer{grid-column:1/-1;margin-top:0;padding-top:0}.small-note{font-size:10px}.stage-bottom{bottom:17px;left:19px;right:19px;font-size:9px}.stage-bottom i{margin:0 4px}.plane-adjust{padding-left:0}.plane-name{font-size:10px}.panel-footer br{display:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

@media(max-width:760px){.toggle{min-height:26px;align-items:center}.toggle input{height:28px;width:30px}input[type=range]{height:6px}input[type=range]::-webkit-slider-thumb{width:16px;height:16px}}

#loading[hidden]{display:none}

/* Full-width viewer with controls available on demand. */
header h1{font-size:20px;font-weight:600;letter-spacing:-.5px;margin:0;line-height:1.2}
.header-actions{margin-left:auto;display:flex;gap:12px;align-items:center}
.controls-button{border:1px solid #dce2e7;background:transparent;color:#526573;border-radius:7px;padding:8px 13px;font-size:12px}
.controls-button:hover{background:#edf1f4}
main{display:block;height:calc(100dvh - 72px);min-height:0}
#stage{height:100%;min-height:0}
#controls-panel{width:340px;max-width:calc(100% - 36px);max-height:calc(100dvh - 36px);padding:22px 25px;overflow-y:auto}
#controls-panel .dialog-heading{margin-bottom:20px}
#controls-title{font-size:17px;letter-spacing:-.3px;font-weight:600;margin:0}
#controls-panel .section-heading h2{font-size:12px;letter-spacing:0;margin:0;font-weight:600}
#controls-panel .control-section{padding:18px 0}
#controls-panel .small-note{font-size:11px;line-height:1.5;margin:-4px 0 19px}
#controls-panel .panel-footer{margin-top:0}
@media(max-width:760px){header{height:64px;padding:0 16px;gap:12px}header h1{font-size:16px;max-width:210px;letter-spacing:-.35px}.header-actions{gap:8px}.controls-button{padding:8px 10px;font-size:11px}.header-actions .icon-button{width:28px;height:28px;flex:none}main{height:calc(100dvh - 64px);min-height:0}#stage{height:100%;min-height:0}#controls-panel .compare-control{border-top:1px solid var(--line)}#controls-panel .plane-adjust{padding-left:30px}.stage-bottom{bottom:18px}}
@media(max-width:380px){header h1{font-size:14px}.header-actions{gap:6px}header{padding:0 12px}}

header h1{max-width:none}

.sidepulse-promo{position:absolute;left:30px;bottom:58px;z-index:4;display:flex;align-items:center;gap:13px;padding:10px 16px 10px 10px;background:rgba(250,251,252,.9);backdrop-filter:blur(12px);border:1px solid #dfe4e8;border-radius:12px;color:#26313a;text-decoration:none;box-shadow:0 4px 18px #26313a08;max-width:calc(100% - 60px);transition:border-color .15s,box-shadow .15s}
.sidepulse-promo:hover{border-color:#aebac5;box-shadow:0 5px 20px #26313a12}
.sidepulse-promo img{width:60px;height:60px;object-fit:cover;border-radius:7px;flex:none}
.sidepulse-copy{display:flex;flex-direction:column;gap:6px;min-width:0}
.sidepulse-copy strong{font-size:13px;font-weight:650;letter-spacing:-.15px}
.sidepulse-copy strong span{color:#8a959e;font-weight:400;margin-left:5px}
.sidepulse-copy>span{font-size:12px;color:#71808b;line-height:1.4}
@media(max-width:760px){.sidepulse-promo{left:16px;bottom:48px;max-width:calc(100% - 32px);gap:11px;padding:9px 13px 9px 9px}.sidepulse-promo img{width:52px;height:52px}.sidepulse-copy strong{font-size:12px}.sidepulse-copy>span{font-size:11px}}
