:root{--tool-ink:#163c66;--tool-muted:#6283a5;--tool-line:#c6ddf5;--tool-blue:#2478e9}.practical-tools-section{margin-top:62px;margin-bottom:58px}.practical-tools-section .section-heading{align-items:end}.practical-tools-section h2{font-size:34px;color:#153b65}.practical-tools-section .section-heading p{max-width:380px}.practical-tools-filters{display:flex;gap:8px;margin:22px 0}.practical-tools-filters button{border:1px solid #bdd7f3;background:#f4faff;color:#4475a7;border-radius:10px;padding:10px 20px}.practical-tools-filters button[aria-pressed=true]{background:#2379ee;color:#fff;border-color:#2379ee;box-shadow:0 5px 14px #2b74ce22}.practical-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.practical-tool-card{display:flex;flex-direction:column;text-decoration:none!important;color:#173f6c;background:linear-gradient(145deg,#ffffffef,#f2f9fff2);border:1px solid #c3ddf5;border-radius:20px;padding:23px;min-height:198px;box-shadow:0 8px 22px #3d709812;transition:transform .18s,box-shadow .18s}.practical-tool-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #3d709822;border-color:#7bb3ef}.practical-card-top{display:flex;justify-content:space-between;align-items:center}.practical-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#dbeeff,#e6f8ff);color:#2677d6}.practical-icon svg{width:26px;height:26px}.practical-type{font-size:10px;letter-spacing:1px;color:#6b8bac}.practical-tool-card h3{margin:17px 0 8px;font-size:17px}.practical-tool-card p{margin:0;color:#6b87a6;font-size:12px;line-height:1.7}.practical-card-bottom{display:flex;justify-content:space-between;margin-top:auto;padding-top:20px;font-size:11px;color:#3a7fcb}.practical-card-bottom b{font-size:15px}.tools-page{margin:0;background:radial-gradient(ellipse at 10% 0%,#c9eaff,transparent 60%),linear-gradient(120deg,#edf7ff,#f2f9ff);color:var(--tool-ink);font-family:Arial,'Microsoft YaHei',sans-serif;min-height:100vh}.tools-page *{box-sizing:border-box}.tools-page [hidden]{display:none!important}.tools-page button,.tools-page input,.tools-page textarea,.tools-page select{font:inherit}.tools-page button,.tools-page a{touch-action:manipulation}.tools-page button{cursor:pointer}.tools-page button:disabled{cursor:default;opacity:.5}.tools-top{margin:20px auto 0;max-width:1440px;padding:18px 24px;display:flex;align-items:center;gap:24px;background:#ffffffc9;border:1px solid white;border-radius:22px}.tools-top>a{color:#4277b0;font-size:12px;text-decoration:none}.tools-top #tools-account{margin-left:auto}.tools-brand{display:flex;align-items:center;gap:10px}.tools-brand img{width:32px;height:32px;object-fit:contain}.tools-brand strong{color:#173f6b;font-size:21px}.tools-brand span{font-size:8px;letter-spacing:1.7px}.tools-main{max-width:1440px;margin:0 auto;padding:32px 20px 60px}.tools-heading{display:flex;align-items:center;justify-content:space-between;margin:10px 0 28px}.tools-eyebrow{font-size:9px;letter-spacing:2px;color:#3a85cf}.tools-heading h1{font-size:32px;margin:10px 0;color:#163d67}.tools-heading p:last-child{font-size:13px;color:#6484a6}.tool-kind{border:1px solid #bed9f6;padding:8px 12px;border-radius:20px;color:#3b79b7;background:#f8fcff;font-size:11px}.tools-layout{display:grid;grid-template-columns:190px minmax(300px,390px) minmax(320px,1fr);gap:18px;align-items:start}.tools-sidebar{max-height:800px;overflow:auto;padding-right:5px;position:sticky;top:20px}.tools-sidebar>label{display:none}.tools-sidebar button{display:flex;align-items:center;gap:10px;border:0;border-radius:12px;padding:12px 10px;background:transparent;color:#53789c;width:100%;text-align:left;font-size:12px;margin-bottom:4px}.tools-sidebar button svg{height:19px;width:19px;flex-shrink:0}.tools-sidebar button.active{background:#dceeff;color:#1a66bd;font-weight:bold}.tools-panel{background:#fafdffed;border:1px solid #c5def6;border-radius:20px;padding:22px;box-shadow:0 10px 30px #315f8d0b}.tools-panel h2{font-size:16px;margin:0 0 18px}.tool-upload{border:1px dashed #9fc6ed;background:#f0f8ff;border-radius:13px;padding:24px 12px;text-align:center;cursor:pointer;outline-offset:4px;display:flex;flex-direction:column;align-items:center;gap:9px}.upload-plus{font-size:30px;font-weight:200;color:#468ed5}.tool-upload strong{font-size:13px}.tool-upload small{font-size:10px;color:#7594b2}.tool-upload.compact{padding:18px 12px}.tool-upload.drag{background:#dceeff;border-color:#3c89db}.tool-upload img{max-width:100%;max-height:150px;border-radius:8px}.tool-requirement{display:block;font-size:12px;font-weight:bold;margin-top:22px}.tool-requirement textarea{display:block;width:100%;margin-top:10px;border:1px solid #bad8f4;border-radius:11px;padding:13px;background:#f9fcff;color:#2a527b;line-height:1.8;font-size:12px;resize:vertical;min-height:125px}.tool-settings{display:flex;gap:12px;margin:16px 0}.tool-settings label{font-size:11px;color:#6685a4;flex:1}.tool-settings select,.tools-sidebar select{display:block;margin-top:7px;width:100%;background:#f6fbff;border:1px solid #c3ddf5;border-radius:9px;padding:10px;color:#285b8b;font-size:12px}.tools-primary{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(120deg,#318aee,#2169ce);border:0;border-radius:11px;padding:13px 20px;color:#fff!important;text-decoration:none;box-shadow:0 5px 14px #2873c524;font-weight:bold;font-size:12px}.tools-input>.tools-primary{width:100%;margin-top:8px}.tool-key-hint{display:block;text-align:center;margin:10px 0 0;font-size:10px;color:#8ba1b6}#tool-status{font-size:12px;line-height:1.8;color:#4c79a6;margin-bottom:0}.tools-output{display:flex;flex-direction:column;gap:18px}.output-panel>header,.tool-history>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.output-panel>header h2,.tool-history>header h2{margin:0}.output-panel>header span{font-size:10px;color:#7a97b3}.tool-empty,.tool-progress{min-height:380px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;border-radius:14px;background:linear-gradient(145deg,#eaf6ff,#f5faff);padding:25px}.tool-empty>span{font-size:45px;color:#5a99d8}.tool-empty h3,.tool-progress h3{font-size:17px;color:#2c68a1}.tool-empty p,.tool-progress p{font-size:12px;color:#6c8dad;line-height:1.9;max-width:280px}.tool-progress>i{width:44px;height:44px;border:3px solid #d0e6fa;border-top-color:#2c85dc;border-radius:50%;animation:tool-spin 1s linear infinite}@keyframes tool-spin{to{transform:rotate(360deg)}}#tool-result-image{display:block;width:100%;height:auto;max-height:680px;object-fit:contain;background:#edf6ff;border-radius:12px}#tool-result-text{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.9 Arial,'Microsoft YaHei',sans-serif;color:#2c5275;margin:0;max-height:650px;overflow:auto;padding:16px;background:#f3f9ff;border:1px solid #d8e7f7;border-radius:12px}.output-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.output-actions button,.input-image-actions button,#refresh-tool-history{border:1px solid #bcd8f3;border-radius:9px;background:#f5faff;color:#2e70b3;padding:10px 13px;font-size:11px}.tool-error{background:#fff3f2;border:1px solid #efc2bd;border-radius:12px;padding:18px;line-height:1.8;color:#a24540;font-size:13px}.tool-history header button{padding:6px 10px}.tool-history p{font-size:12px;color:#7b96af}.tool-history-item{display:flex;gap:12px;width:100%;text-align:left;align-items:center;padding:13px 0;border:0;border-bottom:1px solid #dfebf7;background:none;color:#365d83}.tool-history-item:last-child{border-bottom:0}.tool-history-item>img{width:62px;height:43px;object-fit:cover;border-radius:6px}.tool-history-item>span:first-child{width:62px;flex-shrink:0;text-align:center;font-size:20px;color:#5d93c9}.tool-history-item strong{display:block;font-size:11px;margin-bottom:5px}.tool-history-item small{font-size:10px;color:#7a98b4}.tool-history-item>em{margin-left:auto;font-size:10px;font-style:normal;color:#437bb1}.base-plane{position:relative;line-height:0;width:100%;overflow:hidden;border:1px solid #c8dff4;border-radius:12px}.base-plane>img{display:block;width:100%;height:auto;user-select:none}.base-plane.marking{touch-action:none;cursor:crosshair}#region-box{position:absolute;border:2px solid #f04661;background:#f0466112;pointer-events:none}.input-image-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.input-image-actions .active{background:#2879dc;color:#fff}#region-help{display:block;color:#6c8dac;font-size:10px;margin-top:9px;line-height:1.6}#reference-area h3{font-size:12px;margin:20px 0 10px}#reference-area h3 small{font-weight:normal;color:#8da1b3}.text-button{background:none;border:0;color:#5286b6;font-size:11px;margin-top:5px}.tool-notice{font-size:12px;line-height:1.8;padding:12px;border-radius:11px;background:#e9f3ff;color:#306ca8;margin-bottom:16px}#tools-toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);padding:12px 20px;border-radius:12px;background:#214d78;color:white;box-shadow:0 7px 25px #204b7533;opacity:0;pointer-events:none;font-size:12px;transition:opacity .2s;z-index:1000}#tools-toast.show{opacity:1}@media(max-width:1150px){.tools-layout{grid-template-columns:minmax(290px,390px) minmax(300px,1fr)}.tools-sidebar{grid-column:1/-1;position:static;max-height:none;padding:0}.tools-sidebar>label{display:block;font-size:11px;color:#6485a6}.tools-sidebar #tool-list{display:none}.tools-sidebar select{max-width:400px;margin-top:6px}.practical-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.tools-top{margin:12px;padding:14px;gap:12px}.tools-brand span{display:none}.tools-brand strong{font-size:17px}.tools-top>a{font-size:10px}.tools-main{padding:20px 14px 40px}.tools-heading h1{font-size:26px}.tools-layout{grid-template-columns:1fr}.tools-sidebar{grid-column:auto}.tools-panel{padding:18px}.tool-empty,.tool-progress{min-height:260px}.practical-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.practical-tool-card{padding:17px;min-height:195px}.practical-tool-card h3{font-size:15px}.practical-type{font-size:8px;letter-spacing:0}.practical-tools-section h2{font-size:27px}.practical-tools-filters button{padding:9px 13px;font-size:11px}.practical-tools-section .section-heading{display:block}}@media(prefers-reduced-motion:reduce){.practical-tool-card{transition:none}.tool-progress>i{animation:none}}

.tool-history-item>span:first-child svg{width:24px;height:24px}

/* Compact photo covers with tool-specific visual cues. */
.practical-tool-card{padding:0;overflow:hidden;min-height:0}
.practical-card-body{padding:17px 19px 18px;display:flex;flex-direction:column;flex:1}
.practical-card-top{gap:12px}.practical-icon{width:28px;height:28px;border-radius:9px}.practical-icon svg{width:18px;height:18px}
.practical-tool-card h3{margin:10px 0 7px}.practical-card-bottom{padding-top:15px}
.practical-cover{position:relative;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(140deg,#e6f2fa,#d7eaf6);border-bottom:1px solid #cde2f4;isolation:isolate}
.practical-cover>img,.cover-pair img,.cover-inset img,.blend-first img,.blend-second img,.story-frames img{width:100%;height:100%;display:block;object-fit:cover}
.practical-cover>img{transition:transform .45s}.practical-tool-card:hover .practical-cover>img{transform:scale(1.035)}
.practical-cover .cover-contain{object-fit:contain;padding:4px;background:#eaf3f8}
.cover-chip{position:absolute;left:11px;bottom:10px;padding:5px 8px;border:1px solid #ffffffa8;border-radius:7px;background:#ffffffdc;backdrop-filter:blur(8px);color:#285473;font-size:9px;line-height:1.2;letter-spacing:.5px;z-index:4;box-shadow:0 2px 8px #183f6510}
.cover-pair{display:grid;grid-template-columns:1fr 1fr;height:100%;gap:2px;background:#ffffffbd}.cover-pair img{min-width:0}
.cover-divider{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);display:grid;place-items:center;width:28px;height:28px;background:#fffefb;border:1px solid #d5e6f4;box-shadow:0 3px 12px #173c7026;border-radius:50%;color:#3474a7;font-size:17px;z-index:3}
.cover-swatches{position:absolute;right:11px;bottom:11px;display:flex;padding:4px;border:1px solid #ffffffa8;border-radius:8px;background:#ffffffdd;gap:3px;z-index:4}.cover-swatches i{width:15px;height:20px;background:#ece6d9;border-radius:3px}.cover-swatches i:nth-child(2){background:#d6c6ae}.cover-swatches i:nth-child(3){background:#ad8f70}.cover-swatches i:nth-child(4){background:#7d8c86}.cover-swatches i:nth-child(5){background:#344b59}
.cover-select{position:absolute;border:1.5px dashed #fff;box-shadow:0 0 0 1px #377bc5aa;border-radius:5px;background:#68baff0d}.cover-select b{position:absolute;right:-10px;top:-10px;display:grid;place-items:center;border-radius:50%;width:22px;height:22px;background:#247ee8;color:white;font-size:12px;box-shadow:0 2px 6px #183e7244}.sofa-select{left:7%;top:43%;width:44%;height:42%}.local-select{left:44%;top:52%;width:31%;height:25%;border-color:#ff6475;box-shadow:0 0 0 1px #ffffff8c}.erase-select{left:54%;top:58%;width:18%;height:25%}
.material-samples{position:absolute;right:12px;bottom:11px;display:flex;gap:5px;padding:4px;border-radius:8px;background:#ffffffd9}.material-samples i{height:34px;width:27px;border-radius:4px;background:repeating-linear-gradient(105deg,#e1d8c9 0px,#eee8de 7px,#c8bfaf 8px,#eee8de 9px)}.material-samples i:nth-child(2){background:repeating-linear-gradient(90deg,#9e7955 0px,#b28a60 4px,#8c6846 5px)}.material-samples i:nth-child(3){background:linear-gradient(140deg,#bcbdb9,#e5e5de,#a3a7a5)}
.light-trace{position:absolute;left:0;right:0;top:0;height:27%;background:linear-gradient(#ffd78133,transparent);pointer-events:none}
.cover-drawing{position:absolute;inset:0;width:100%;height:100%;color:#4c7c9b;background:linear-gradient(140deg,#f3f8fb,#dfedf6)}.cover-sketch{background-image:linear-gradient(#e5eff7 1px,transparent 1px),linear-gradient(90deg,#e5eff7 1px,transparent 1px);background-size:16px 16px}.cover-inset{position:absolute;width:34%;height:57%;right:10px;top:13px;border:4px solid white;box-shadow:0 5px 16px #36638822;border-radius:8px;overflow:hidden}.cover-plan{width:100%;height:100%;display:block;background:#f1f6f9}
.cover-product{object-position:58% 42%}.product-corners{position:absolute;inset:18px 33px;border:1px solid #ffffffba;border-radius:7px;box-shadow:0 0 0 100px #20496d0b}
.detail-lens{position:absolute;right:11px;top:13px;width:68px;height:68px;border:4px solid white;border-radius:50%;overflow:hidden;box-shadow:0 4px 14px #153b6940}.detail-lens img{height:100%;width:190%;max-width:none;object-fit:cover;object-position:right;transform:translateX(-42%)}
.blend-first,.blend-second{position:absolute;width:66%;height:74%;top:10%;left:4%;border:4px solid #fff;border-radius:8px;overflow:hidden;box-shadow:0 4px 16px #1d48732b}.blend-second{width:47%;height:62%;left:auto;right:5%;top:24%}.blend-plus{position:absolute;left:49%;top:36%;background:#267bd6;color:white;border:3px solid #eff8ff;border-radius:50%;height:27px;width:27px;display:grid;place-items:center;font-size:17px}
.cover-paper{position:absolute;right:12px;top:16px;width:36%;height:69%;background:#fffffff2;border:1px solid white;border-radius:9px;padding:12px;box-shadow:0 5px 18px #193d6420;transform:rotate(3deg)}.cover-paper b{font-size:18px;color:#4c94d4}.cover-paper i{display:block;height:4px;background:#c7dbe9;border-radius:3px;margin-top:8px}.cover-paper i:last-child{width:66%}
.analysis-pins{position:absolute;inset:0}.analysis-pins i{position:absolute;top:38%;left:31%;height:19px;width:19px;border:2px solid white;background:#2b80c6;color:white;font:9px/15px Arial;text-align:center;border-radius:50%;box-shadow:0 2px 8px #274a6f30;font-style:normal}.analysis-pins i:nth-child(2){top:55%;left:57%}.analysis-pins i:nth-child(3){top:30%;left:73%}
.story-frames{display:flex;position:absolute;inset:26px 12px 35px;gap:6px}.story-frames>span{position:relative;flex:1;min-width:0;overflow:hidden;border-radius:6px;box-shadow:0 2px 8px #23517416;border:2px solid white}.story-frames b{position:absolute;left:5px;top:5px;background:#173f68a6;color:white;font:8px Arial;padding:3px;border-radius:3px}.story-timeline{position:absolute;left:13px;right:13px;bottom:23px;display:flex;gap:5px;height:4px}.story-timeline i{flex:1;background:#7dadd4;border-radius:2px}.cover-storyboard .cover-chip{bottom:auto;top:5px;padding:3px 6px;font-size:8px}
@media(max-width:760px){.practical-card-body{padding:13px 14px 15px}.practical-tool-card h3{margin-top:9px;font-size:14px}.practical-tool-card p{font-size:11px}.practical-type{font-size:8px}.cover-chip{font-size:8px;left:7px;bottom:7px;padding:4px 6px}.cover-swatches{right:7px;bottom:7px}.cover-swatches i{width:9px;height:14px}.material-samples i{width:16px;height:24px}.detail-lens{width:46px;height:46px;right:8px;top:8px}.story-frames{inset:23px 8px 23px;gap:3px}.story-timeline{bottom:14px}.cover-paper{padding:7px;top:10px}.cover-paper i{height:3px;margin-top:6px}.cover-paper b{font-size:12px}}
@media(prefers-reduced-motion:reduce){.practical-cover>img{transition:none}}
/* Motion covers: each tool demonstrates its own action; pause outside viewport. */
.cover-motion{isolation:isolate}.cover-motion img{transition:none!important}.cover-motion:hover img{transform:none!important}.motion-demo-tag{position:absolute;z-index:8;right:9px;top:9px;border:1px solid #ffffffbf;background:#f6fbffe8;box-shadow:0 2px 9px #183c6020;padding:4px 7px;border-radius:6px;font-size:9px;letter-spacing:.07em;color:#52728b}.motion-state{position:absolute;top:10px;left:10px;z-index:8;min-width:60px;height:24px;font-size:10px;color:#fff}.motion-state i,.motion-state b{position:absolute;white-space:nowrap;left:0;top:0;font-style:normal;font-weight:500;padding:5px 8px;border-radius:6px;background:#163d64d9;backdrop-filter:blur(5px)}.motion-state i{animation:demo-first 6s infinite}.motion-state b{opacity:0;animation:demo-second 6s infinite}.cover-motion .cover-chip{z-index:8;background:#ffffffed;box-shadow:0 2px 8px #17354f17}
.motion-pair{display:block!important;position:absolute;inset:0}.motion-pair img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover}.motion-pair img:last-child{animation:demo-reveal 6s infinite;clip-path:inset(0 100% 0 0)}.motion-wipe-line{position:absolute;z-index:4;top:0;bottom:0;width:2px;background:#fff;box-shadow:0 0 8px #fff;animation:demo-line 6s infinite}
.soft-hotspot{position:absolute;width:20px;height:20px;border:1px solid white;box-shadow:0 0 0 7px #2979bb38;border-radius:50%;background:#fff7;animation:demo-hotspot 6s infinite}.soft-hotspot.h1{left:28%;top:55%}.soft-hotspot.h2{left:69%;top:35%;animation-delay:.6s}.soft-hotspot.h3{left:60%;top:72%;animation-delay:1.2s}.cover-soft .cover-swatches i,.cover-palette .cover-swatches i{animation:demo-swatch 6s infinite}.cover-soft .cover-swatches i:nth-child(2),.cover-palette .cover-swatches i:nth-child(2){animation-delay:1s}.cover-soft .cover-swatches i:nth-child(3),.cover-palette .cover-swatches i:nth-child(3){animation-delay:2s}.cover-soft .cover-swatches i:nth-child(4),.cover-palette .cover-swatches i:nth-child(4){animation-delay:3s}
.cover-furniture .sofa-select{background:#dcefff00;animation:demo-selection 6s infinite}.cover-furniture .sofa-select b{position:absolute;right:-10px;top:-10px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;color:#fff;background:#2787df;animation:demo-second 6s infinite}.furniture-reference{position:absolute;right:13px;bottom:40px;padding:7px 10px;background:#fffffff2;color:#35688f;border-radius:7px;font-size:10px;animation:demo-float 6s infinite}.material-area{position:absolute;left:15%;right:15%;bottom:0;height:36%;background:linear-gradient(110deg,#d5c3a522,#b7a58d77);clip-path:polygon(14% 0,85% 0,100% 100%,0 100%);animation:demo-material 6s infinite;mix-blend-mode:color}.material-samples i{animation:demo-swatch 6s infinite}.material-samples i:nth-child(2){animation-delay:2s}.material-samples i:nth-child(3){animation-delay:4s}.cover-lighting>img{animation:demo-light 6s infinite}.cover-lighting .light-trace{animation:demo-glow 6s infinite}.day-night{position:absolute;right:14px;bottom:39px;display:grid;place-items:center;background:#173c64bf;border:1px solid #ffffff99;border-radius:50%;width:33px;height:33px;color:#fff;font-size:21px}.day-night i,.day-night b{position:absolute;font-style:normal;font-weight:400}.day-night i{animation:demo-first 6s infinite}.day-night b{animation:demo-second 6s infinite}
.demo-clutter{position:absolute;left:55%;top:52%;width:46px;height:36px;background:linear-gradient(120deg,#bd9064,#d8b38a);box-shadow:4px 5px 6px #0003;transform:rotate(-6deg);border:1px solid #a57b55;animation:demo-disappear 6s infinite}.demo-clutter i:first-child{position:absolute;left:45%;height:100%;width:8px;background:#ead6a7}.demo-clutter i:nth-child(2){position:absolute;top:10%;width:100%;height:2px;background:#866442}.demo-clutter b{position:absolute;bottom:4px;left:9px;font-size:9px;color:#724c2d}.cover-remove .erase-select{left:51%;top:44%;width:25%;height:33%;animation:demo-first 6s infinite}.demo-eraser{position:absolute;top:37%;left:42%;display:grid;place-items:center;width:29px;height:29px;background:#fff;border-radius:9px;box-shadow:0 2px 8px #0003;color:#2279ba;font-size:24px;animation:demo-erase 6s infinite}.cover-local .local-select{animation:demo-selection 6s infinite}.local-color{position:absolute;left:42%;top:51%;width:28%;height:26%;border-radius:7px;background:#b7c7a7;mix-blend-mode:color;animation:demo-second 6s infinite}
.renovation-before,.render-white,.enhance-before,.sketch-result{position:absolute;inset:0;overflow:hidden}.renovation-before img,.render-white img,.enhance-before img,.sketch-result img{width:100%;height:100%;object-fit:cover}.renovation-before{filter:sepia(.7) saturate(.4) brightness(.78);animation:demo-uncover 6s infinite}.render-white{filter:grayscale(1) brightness(1.9) contrast(.55);animation:demo-uncover 6s infinite}.render-white img{object-fit:contain}.cover-sketch .cover-drawing path,.cover-elevation .cover-drawing path{stroke-dasharray:1100;stroke-dashoffset:1100;animation:demo-draw 6s infinite}.sketch-result{animation:demo-reveal 6s infinite;clip-path:inset(0 100% 0 0)}.cover-plan-color .cover-plan{animation:demo-plan 6s infinite}.cover-white-model>img{animation:demo-white 6s infinite}.white-model-color{position:absolute;inset:0;background:linear-gradient(140deg,#bda98b55,#acc3bc33);mix-blend-mode:color;animation:demo-first 6s infinite}.enhance-before{filter:blur(2px) contrast(.8);animation:demo-uncover 6s infinite}.cover-enhance .detail-lens{animation:demo-lens 6s infinite}.cover-product .product-corners{animation:demo-focus 6s infinite}.cover-product>img{animation:demo-product 6s infinite}.product-flash{position:absolute;inset:0;background:#fff;opacity:0;animation:demo-flash 6s infinite}.cover-blend .blend-first{animation:demo-blend-left 6s infinite}.cover-blend .blend-second{animation:demo-blend-right 6s infinite}.cover-blend .blend-plus{animation:demo-hotspot 6s infinite}.dimension-line{position:absolute;left:25%;right:10%;top:76%;border-top:1px dashed #4e7f9d;color:#4b7292;padding-top:4px;font-size:8px;animation:demo-second 6s infinite}.palette-tint{position:absolute;inset:0;background:#799fab;mix-blend-mode:color;animation:demo-palette 6s infinite}.cover-reverse .cover-paper{animation:demo-paper 6s infinite}.cover-paper i{transform-origin:left;animation:demo-type 6s infinite}.cover-paper i:nth-of-type(2){animation-delay:.25s}.cover-paper i:nth-of-type(3){animation-delay:.5s}.cover-paper small{display:block;margin-top:7px;color:#6685a0;font-size:7px}.analysis-pins i{animation:demo-hotspot 6s infinite}.analysis-pins i:nth-child(2){animation-delay:1s}.analysis-pins i:nth-child(3){animation-delay:2s}.analysis-route{position:absolute;left:38%;top:35%;width:30%;height:37%;border:2px dashed #1c91dc;border-left:0;border-top:0;animation:demo-route 6s infinite;transform:rotate(12deg)}.cover-storyboard .story-frames>span{animation:demo-frame 6s infinite}.cover-storyboard .story-frames>span:nth-child(2){animation-delay:2s}.cover-storyboard .story-frames>span:nth-child(3){animation-delay:4s}.cover-storyboard .story-timeline:after{content:'';position:absolute;left:0;right:0;top:0;bottom:0;transform-origin:left;background:#277dcc;animation:demo-timeline 6s linear infinite}.cover-storyboard .story-timeline{position:absolute}
@keyframes demo-first{0%,40%{opacity:1}48%,88%{opacity:0}96%,100%{opacity:1}}@keyframes demo-second{0%,40%{opacity:0}48%,88%{opacity:1}96%,100%{opacity:0}}@keyframes demo-reveal{0%,18%,100%{clip-path:inset(0 100% 0 0)}55%,85%{clip-path:inset(0 0 0 0)}}@keyframes demo-uncover{0%,18%,100%{clip-path:inset(0 0 0 0)}55%,85%{clip-path:inset(0 0 0 100%)}}@keyframes demo-line{0%,18%,100%{left:0;opacity:0}20%{opacity:1}55%,85%{left:100%;opacity:1}90%{opacity:0}}@keyframes demo-hotspot{0%,15%,85%,100%{opacity:.2;scale:.8}35%,65%{opacity:1;scale:1.1}}@keyframes demo-swatch{0%,12%,100%{translate:0 0;box-shadow:none}20%,34%{translate:0 -4px;box-shadow:0 0 0 2px #fff,0 0 0 4px #308cdb}}@keyframes demo-selection{0%,15%,100%{border-color:#fff;background:#97c7e000}35%,70%{border-color:#2485da;background:#c9e6ff55}}@keyframes demo-float{0%,100%{translate:0 4px;opacity:.5}45%,75%{translate:0 -3px;opacity:1}}@keyframes demo-material{0%,25%,100%{background:#bf967a55}55%,85%{background:#afbbc188}}@keyframes demo-light{0%,22%,100%{filter:brightness(1.08) saturate(.9)}50%,80%{filter:brightness(.48) saturate(1.2)}}@keyframes demo-glow{0%,25%,100%{opacity:0}50%,80%{opacity:.9}}@keyframes demo-disappear{0%,30%,100%{opacity:1;scale:1}45%,85%{opacity:0;scale:.85}}@keyframes demo-erase{0%,15%,100%{translate:0 0;opacity:0}22%{opacity:1}44%{translate:80px 30px;opacity:1}55%,85%{translate:90px 10px;opacity:0}}@keyframes demo-draw{0%,10%,100%{stroke-dashoffset:1100}45%,88%{stroke-dashoffset:0}}@keyframes demo-plan{0%,22%,100%{filter:grayscale(1)}55%,85%{filter:grayscale(0)}}@keyframes demo-white{0%,20%,100%{filter:none}50%,85%{filter:grayscale(1) brightness(2.1) contrast(.5)}}@keyframes demo-lens{0%,100%{translate:-24px 0;scale:.8;opacity:.4}40%,75%{translate:5px -5px;scale:1.1;opacity:1}}@keyframes demo-focus{0%,100%{scale:1.12;opacity:.3}40%,80%{scale:.88;opacity:1}}@keyframes demo-product{0%,100%{scale:1;filter:none}45%,80%{scale:1.1;filter:brightness(1.13)}}@keyframes demo-flash{0%,45%,55%,100%{opacity:0}48%{opacity:.7}}@keyframes demo-blend-left{0%,100%{translate:0 0;rotate:-6deg}50%,80%{translate:20px 0;rotate:0deg}}@keyframes demo-blend-right{0%,100%{translate:0 0;rotate:7deg;opacity:1}50%,80%{translate:-23px 0;rotate:0deg;opacity:.8}}@keyframes demo-palette{0%,20%,100%{opacity:0}45%,80%{opacity:.8}}@keyframes demo-paper{0%,15%,100%{translate:15px 12px;opacity:.3}40%,85%{translate:0 0;opacity:1}}@keyframes demo-type{0%,25%,100%{scale:0 1}60%,85%{scale:1 1}}@keyframes demo-route{0%,15%,100%{clip-path:inset(0 100% 0 0)}65%,85%{clip-path:inset(0 0 0 0)}}@keyframes demo-frame{0%,30%,100%{filter:brightness(.8);box-shadow:none}10%,25%{filter:brightness(1.1);box-shadow:0 0 0 2px #297fd0;scale:1.03}}@keyframes demo-timeline{0%{scale:0 1}90%,100%{scale:1 1}}
.cover-motion *{animation-play-state:paused!important}.cover-motion.is-in-view *{animation-play-state:running!important}
@media(prefers-reduced-motion:reduce){.cover-motion *{animation:none!important}.motion-state b{display:none}.cover-motion .cover-drawing path{stroke-dashoffset:0}.motion-pair img:last-child,.sketch-result{clip-path:inset(0 0 0 50%)}.motion-wipe-line{display:none}.render-white,.renovation-before,.enhance-before{clip-path:inset(0 50% 0 0)}.cover-motion .cover-paper{opacity:1}.cover-motion .product-flash{display:none}}

.cover-motion .cover-drawing .drawing-base path{animation:none!important;stroke-dasharray:none!important;stroke-dashoffset:0!important;opacity:.3}
.cover-motion *::before,.cover-motion *::after{animation-play-state:paused!important}.cover-motion.is-in-view *::before,.cover-motion.is-in-view *::after{animation-play-state:running!important}
.new-demo-chat{position:absolute;left:9%;bottom:22%;padding:10px 14px;border-radius:12px;background:#ffffffeb;color:#1f4c76;font-size:13px;box-shadow:0 5px 20px #23496b22;animation:demo-float 6s infinite}.new-demo-chat span{display:block;color:#528d79;font-size:11px;margin-top:6px}.new-demo-furniture{position:absolute;width:35%;height:45%;right:12%;bottom:20%;border:2px dashed #297cdb;background:#fff;animation:demo-blend-right 6s infinite}.new-demo-furniture img{width:100%;height:100%;object-fit:cover}.new-demo-views{position:absolute;inset:12% 5% 17%;display:flex;gap:6px}.new-demo-views img{position:static!important;width:32%!important;height:100%!important;object-fit:cover!important;border-radius:7px;animation:demo-frame 6s infinite}.new-demo-views img:nth-child(2){animation-delay:2s}.new-demo-zoom{position:absolute;right:13%;bottom:26%;font-size:34px;font-weight:700;color:white;filter:drop-shadow(0 2px 6px #214564);animation:demo-lens 6s infinite}.new-demo-zoom b{font-size:16px;margin-left:8px}.new-demo-checker{position:absolute;inset:0;background:repeating-conic-gradient(#dce7ed 0% 25%,#fff 0% 50%) 0/24px 24px}.new-demo-cutout{position:absolute;inset:12% 22%;overflow:hidden;border-radius:40%;box-shadow:0 8px 20px #31495422;animation:demo-product 6s infinite}.new-demo-cutout img{width:100%;height:100%;object-fit:cover}.new-demo-board{position:absolute;inset:7% 18%;padding:12px;background:#f5f0e7;box-shadow:0 5px 18px #25496922;rotate:-3deg;animation:demo-paper 6s infinite}.new-demo-board>b,.new-demo-board>span{display:block;font-size:9px;color:#5a5146}.new-demo-board img{width:100%;height:72%;object-fit:cover;margin:5px 0}.new-demo-shop{position:absolute;inset:0;width:100%;height:100%;animation:demo-light 6s infinite}.new-demo-route{position:absolute;left:30%;top:25%;width:40%;height:45%;border:3px dashed #2990de;border-left:0;border-bottom:0;color:#147ad0;font-size:40px;animation:demo-route 6s infinite}.new-demo-route b{font-size:10px;display:block;background:#ffffffdd;padding:5px}.hub-card-image .practical-cover{height:100%;border-radius:10px}.hub-grid .cover-motion *{animation-play-state:running!important}
.new-demo-furniture .furniture-cutout-art{width:100%;height:100%}.new-demo-furniture{background:#ffffff22}.new-demo-cutout{inset:4% 10%;border-radius:0;box-shadow:none}.new-demo-cutout .furniture-cutout-art{width:100%;height:100%}.new-demo-checker{animation:demo-first 6s infinite}

/* Shared empty upload targets: same dimensions in every practical tool. */
.tools-input #base-drop,.tools-input #reference-drop{box-sizing:border-box;width:100%;height:140px;min-height:140px;padding:20px 12px;justify-content:center;gap:9px}
.tools-input #reference-drop:has(img:not([hidden])){height:auto}
.tools-input #reference-drop:has(img:not([hidden]))>span,.tools-input #reference-drop:has(img:not([hidden]))>strong,.tools-input #reference-drop:has(img:not([hidden]))>small{display:none}
.tools-input #reference-drop img{display:block;max-width:100%;max-height:180px;object-fit:contain}
.tools-input #reference-drop img[hidden]{display:none}

.cover-isometric{background:#deddd9}.cover-isometric>img{object-fit:contain!important;animation:demo-float 6s infinite}

/* Four featured covers explain inputs and outputs with a repeating reveal. */
.workflow-demo{background:#f2f5f5}.workflow-demo .flow-before,.workflow-demo .flow-after{position:absolute;inset:0;overflow:hidden}.workflow-demo .flow-before>img,.workflow-demo .flow-after>img{width:100%;height:100%;object-fit:cover;display:block}.workflow-demo .flow-before{animation:workflow-before 8s infinite}.workflow-demo .flow-after{opacity:0;animation:workflow-after 8s infinite}.flow-interior .flow-before>img,.flow-interior .flow-after>img,.flow-birdseye .flow-before>img,.flow-birdseye .flow-after>img,.flow-isometric .flow-after>img,.flow-ppt .flow-after>img{object-fit:contain;box-sizing:border-box;padding:7px 8px 27px;background:#f2f5f5}.flow-stage{position:absolute;left:10px;top:10px;z-index:6;font-size:10px;color:#fff}.flow-stage i,.flow-stage b{position:absolute;left:0;top:0;white-space:nowrap;padding:5px 8px;border-radius:6px;background:#23496bdc;font-style:normal;font-weight:500}.flow-stage i{animation:workflow-before 8s infinite}.flow-stage b{opacity:0;animation:workflow-after 8s infinite}.flow-caption{position:absolute;left:8px;right:8px;bottom:7px;z-index:6;display:block;width:max-content;max-width:calc(100% - 16px);font-size:9px;line-height:1.4;padding:4px 7px;border:1px solid #ffffffa8;border-radius:6px;background:#fffffff0;color:#285473}.flow-caption em{font-style:normal;color:#2383df;padding:0 3px}.flow-scan{position:absolute;top:0;bottom:0;left:0;width:2px;z-index:5;background:#65bbff;box-shadow:0 0 15px #2e91ff;opacity:0;animation:workflow-scan 8s infinite}.flow-input-gallery{height:100%;display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:1fr 1fr;gap:5px;padding:23px 12px 30px;box-sizing:border-box;background:#e8f0f6}.flow-input-gallery img{width:100%;height:100%;object-fit:cover;min-height:0;border-radius:5px;box-shadow:0 2px 5px #23496b22}.flow-input-gallery img:first-child{grid-row:span 2}.workflow-demo .motion-demo-tag{font-size:8px}
@keyframes workflow-before{0%,30%{opacity:1}42%,85%{opacity:0}97%,100%{opacity:1}}@keyframes workflow-after{0%,30%{opacity:0}42%,85%{opacity:1}97%,100%{opacity:0}}@keyframes workflow-scan{0%,30%{opacity:0;left:0}32%{opacity:1;left:0}43%{opacity:1;left:100%}44%,100%{opacity:0;left:100%}}
@media(prefers-reduced-motion:reduce){.workflow-demo .flow-before,.workflow-demo .flow-stage i{animation:none;opacity:0}.workflow-demo .flow-after,.workflow-demo .flow-stage b{animation:none;opacity:1}.workflow-demo .flow-scan{animation:none;display:none}}
.tools-page [hidden]{display:none!important}

.tools-page[data-template="isometric"] .tool-requirement,.tools-page[data-template="isometric"] .tool-key-hint{display:none!important}

.can-preview{cursor:zoom-in}.can-preview:focus-visible{outline:3px solid #287dec;outline-offset:3px}.tool-image-dialog{width:calc(100vw - 32px);max-width:1500px;height:calc(100vh - 32px);max-height:100vh;padding:0;border:1px solid #b8d6ed;border-radius:16px;background:#f5faff;color:#244c70;overflow:hidden;box-sizing:border-box}.tool-image-dialog::backdrop{background:#12314cc7}.tool-image-dialog header{height:58px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 16px;border-bottom:1px solid #d2e3f1}.tool-image-dialog header span{display:flex;gap:7px;align-items:center}.tool-image-dialog button,.tool-image-dialog a{border:1px solid #bdd6eb;background:#fff;color:#246498;border-radius:7px;padding:8px 11px;font-size:12px;text-decoration:none;cursor:pointer}.tool-image-viewport{height:calc(100% - 59px);overflow:auto;display:grid;place-items:center;box-sizing:border-box;padding:12px;background:repeating-conic-gradient(#e6edf2 0% 25%,#f3f7fa 0% 50%) 0/24px 24px}.tool-image-viewport img{display:block;max-width:100%;max-height:100%;object-fit:contain;flex:none}@media(max-width:600px){.tool-image-dialog header{padding:0 8px;gap:5px}.tool-image-dialog header strong{display:none}.tool-image-dialog button,.tool-image-dialog a{padding:7px}}
