.cleanup-dialog{--cl-bg:#101318;--cl-panel:#1b222d;--cl-line:#333e50;--cl-text:#f4f7fc;--cl-muted:#aab7ca;--cl-blue:#168bff;width:min(1280px,96vw);height:min(880px,94dvh);max-width:96vw;max-height:94dvh;padding:0;border:1px solid var(--cl-line);border-radius:12px;background:var(--cl-bg);color:var(--cl-text);font:16px/1.55 "Microsoft YaHei UI",sans-serif;overflow:hidden}
.cleanup-dialog::backdrop{background:#020812b8;backdrop-filter:blur(5px)}
.cleanup-dialog *{box-sizing:border-box}.cleanup-top{height:50px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid var(--cl-line);background:#171c23}.cleanup-top strong{font-size:17px}.cleanup-layout{display:grid;grid-template-columns:200px minmax(0,1fr);height:calc(100% - 50px)}.cleanup-sidebar{padding:26px 12px;display:flex;flex-direction:column;gap:12px;background:#171c23;border-right:1px solid var(--cl-line)}.cleanup-sidebar button{text-align:left;font-size:18px}.cleanup-help{margin-top:auto}.cleanup-main{padding:26px 32px;overflow:auto;min-width:0}.cleanup-main h1{font-size:32px;line-height:1.3;margin:0 0 8px;letter-spacing:0}.cleanup-main h2{font-size:22px;margin:18px 0 12px}.cleanup-main h3{font-size:18px;margin:0 0 6px}.cleanup-main p{margin:0 0 14px;color:var(--cl-muted)}.cleanup-subtitle{font-size:17px}.cleanup-dialog button{cursor:pointer;font-family:inherit;white-space:normal;line-height:1.5}.cleanup-button,.cleanup-primary{padding:11px 17px;border-radius:9px;border:1px solid var(--cl-line);background:transparent;color:var(--cl-text);font-size:15px;transition:background .15s}.cleanup-button:hover{background:#1a3048}.cleanup-primary{background:#087cff;border-color:#168bff;color:white;font-size:18px;font-weight:600;padding:12px 28px}.cleanup-dialog button:disabled{opacity:.45;cursor:default}.cleanup-dialog button:focus-visible,.cleanup-dialog input:focus-visible{outline:3px solid #81beff;outline-offset:3px}.cleanup-steps{display:flex;justify-content:center;gap:34px;margin:24px 0}.cleanup-steps>span{display:flex;align-items:center;gap:12px;color:var(--cl-muted)}.cleanup-steps b{border-radius:50%;width:35px;height:35px;display:grid;place-items:center;background:#414d62;color:white}.cleanup-steps .is-current{color:var(--cl-blue);font-weight:600}.cleanup-steps .is-current b{background:#087cff}.cleanup-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.cleanup-product{display:flex;flex-direction:column;align-items:center;gap:5px;padding:16px 8px;background:var(--cl-panel)}.cleanup-product img{width:72px;height:72px;object-fit:contain}.cleanup-product strong{font-size:18px}.cleanup-product small{font-size:11px}.cleanup-dialog .is-selected{border-color:var(--cl-blue);background:#12345b;color:white;box-shadow:inset 0 0 0 1px var(--cl-blue)}.cleanup-card{border:1px solid var(--cl-line);border-radius:10px;background:var(--cl-panel);padding:19px}.cleanup-option{display:flex;gap:18px;align-items:center;margin:14px 0}.cleanup-option input{width:24px;height:24px;accent-color:var(--cl-blue);flex-shrink:0}.cleanup-option strong{display:block;font-size:19px}.cleanup-option small{display:block;color:var(--cl-muted);margin-top:4px}.cleanup-years{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;margin-bottom:16px}.cleanup-years button{padding:9px 5px}.cleanup-note{padding:16px 20px!important;background:#14273c;border:1px solid #27486d;border-radius:9px;color:#b8d9ff!important;margin:16px 0!important}.cleanup-actions{border-top:1px solid var(--cl-line);display:flex;align-items:center;justify-content:flex-end;gap:15px;padding:18px 0 0;margin-top:18px;flex-wrap:wrap}.cleanup-actions>span{margin-right:auto;color:var(--cl-muted);font-size:14px}.cleanup-hero{text-align:center;margin:14px 0 25px}.cleanup-hero h2{font-size:29px;margin:8px 0}.cleanup-broom{color:var(--cl-blue);background:#132a43;border-radius:50%;height:145px;width:145px;margin:auto;padding:17px}.cleanup-broom svg{width:100%;height:100%}.cleanup-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cleanup-features p{font-size:14px;margin:0}.cleanup-main progress{width:100%;height:16px;accent-color:var(--cl-blue);margin:24px 0}.cleanup-result-row{display:grid;grid-template-columns:minmax(150px,1.5fr) minmax(120px,1fr);gap:5px 15px;padding:18px;border:1px solid var(--cl-line);border-radius:9px;background:var(--cl-panel);margin-bottom:10px;overflow-wrap:anywhere}.cleanup-result-row>span{text-align:right;color:var(--cl-blue)}.cleanup-result-row small{grid-column:1/-1;color:var(--cl-muted)}.cleanup-main>.cleanup-button{margin:5px}
@media(max-width:850px){.cleanup-layout{grid-template-columns:150px minmax(0,1fr)}.cleanup-sidebar{padding:18px 8px}.cleanup-sidebar button{font-size:15px;padding:9px}.cleanup-main{padding:22px}.cleanup-steps{gap:14px;font-size:13px}.cleanup-products{grid-template-columns:repeat(2,minmax(0,1fr))}.cleanup-years{grid-template-columns:repeat(4,minmax(0,1fr))}.cleanup-features{grid-template-columns:1fr}.cleanup-hero h2{font-size:23px}}
@media(max-width:550px){.cleanup-layout{display:flex;flex-direction:column}.cleanup-sidebar{flex-direction:row;border-right:0;border-bottom:1px solid var(--cl-line);padding:8px;gap:6px}.cleanup-help{margin-top:0;margin-left:auto}.cleanup-main{padding:18px}.cleanup-main h1{font-size:26px}.cleanup-steps{gap:10px}.cleanup-steps>span{gap:5px}.cleanup-steps b{width:25px;height:25px}.cleanup-actions .cleanup-primary{width:100%}.cleanup-result-row{grid-template-columns:1fr}.cleanup-result-row>span{text-align:left}}

.cleanup-main{display:flex;flex-direction:column;overflow:hidden}.cleanup-page-scroll{overflow:auto;min-height:0;flex:1;padding-right:2px}.cleanup-main>.cleanup-actions{flex-shrink:0;background:var(--cl-bg);margin-top:12px}.cleanup-page-scroll>.cleanup-button{margin:5px}

/* Keep the selection page complete at ordinary desktop sizes. */
.cleanup-dialog{box-sizing:border-box;width:min(1280px,calc(100vw - 32px));height:min(840px,calc(100dvh - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}
.cleanup-main{min-height:0;padding:20px 26px}
.cleanup-main h1{font-size:28px}.cleanup-main h2{font-size:20px;margin:14px 0 10px}.cleanup-subtitle{font-size:15px}
.cleanup-steps{margin:16px 0;gap:26px}.cleanup-steps b{width:30px;height:30px}.cleanup-steps>span{gap:8px}
.cleanup-products{grid-template-columns:repeat(var(--cleanup-product-count,4),minmax(0,1fr));max-width:calc(var(--cleanup-product-count,4)*230px)}
.cleanup-product{flex-direction:row;justify-content:center;gap:12px;padding:14px 12px;min-height:92px}.cleanup-product img{width:52px;height:58px}.cleanup-product small:empty{display:none}
.cleanup-option{margin:14px 0;padding:13px 16px;gap:12px}.cleanup-option strong{font-size:17px}.cleanup-option input{width:20px;height:20px}
.cleanup-year-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 10px}.cleanup-year-heading h2{margin:0}.cleanup-year-heading button{padding:6px 11px;font-size:13px}
.cleanup-years{margin-bottom:12px}.cleanup-choice-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--cl-line);border-radius:9px;background:var(--cl-panel)}.cleanup-choice-summary p{margin:0;font-size:14px}.cleanup-choice-summary button{flex-shrink:0;padding:7px 12px;font-size:14px}
.cleanup-main>.cleanup-actions{padding-top:12px}.cleanup-actions .cleanup-primary{padding:10px 22px}
@media(min-width:851px) and (max-height:720px){.cleanup-main{padding:14px 22px}.cleanup-main h1{font-size:25px}.cleanup-main h2{font-size:18px;margin:10px 0 8px}.cleanup-main p{margin-bottom:8px}.cleanup-steps{margin:10px 0}.cleanup-product{min-height:76px;padding:9px}.cleanup-product img{width:44px;height:50px}.cleanup-product strong{font-size:16px}.cleanup-option{margin:10px 0;padding:10px 14px}.cleanup-year-heading{margin:12px 0 8px}.cleanup-year-heading h2{margin:0}.cleanup-years button{padding:7px 4px}.cleanup-choice-summary{padding:9px 12px}.cleanup-choice-summary p{margin:0}.cleanup-main>.cleanup-actions{margin-top:8px;padding-top:10px}}
@media(max-width:850px){.cleanup-products{grid-template-columns:repeat(var(--cleanup-narrow-count,2),minmax(0,1fr))}.cleanup-product{padding:12px 8px;gap:8px}.cleanup-product strong{font-size:16px}.cleanup-main{padding:18px}.cleanup-choice-summary{flex-wrap:wrap}.cleanup-steps{gap:12px}}
@media(max-width:550px){.cleanup-dialog{width:calc(100vw - 12px);max-width:calc(100vw - 12px);height:calc(100dvh - 12px);max-height:calc(100dvh - 12px)}.cleanup-main{flex:1;padding:14px}.cleanup-main h1{font-size:24px}.cleanup-top{padding:0 14px}.cleanup-product{min-height:82px;flex-direction:column;gap:5px}.cleanup-product img{width:42px;height:46px}.cleanup-year-heading{gap:8px}.cleanup-year-heading button{font-size:12px;padding:5px 8px}.cleanup-steps{font-size:12px;gap:8px}.cleanup-steps b{width:24px;height:24px;flex-shrink:0}.cleanup-actions{gap:8px}.cleanup-actions>span{font-size:12px}.cleanup-sidebar button{font-size:13px;padding:7px}.cleanup-choice-summary{padding:10px}}

@media(min-width:851px) and (max-height:640px){.cleanup-top{height:44px}.cleanup-layout{height:calc(100% - 44px)}.cleanup-main{padding:10px 20px}.cleanup-main h1{font-size:23px}.cleanup-subtitle{font-size:14px}.cleanup-steps{margin:6px 0;font-size:13px}.cleanup-steps b{width:24px;height:24px}.cleanup-main h2{margin:8px 0;font-size:17px}.cleanup-product{min-height:62px;padding:7px}.cleanup-product img{width:36px;height:42px}.cleanup-option{margin:8px 0;padding:8px 12px}.cleanup-option strong{font-size:15px}.cleanup-option small{font-size:12px;margin-top:2px}.cleanup-year-heading{margin:8px 0}.cleanup-year-heading h2{margin:0}.cleanup-years{margin-bottom:8px}.cleanup-choice-summary{padding:7px 10px}.cleanup-choice-summary button{padding:5px 9px}}

@media(max-width:550px){.cleanup-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));flex-shrink:0}.cleanup-sidebar .cleanup-help{margin:0}.cleanup-sidebar button{min-width:0}}

/* Navigation follows the approved icon, flat row, and blue active marker. */
.cleanup-sidebar{padding:26px 8px 18px 0;gap:10px}
.cleanup-sidebar .cleanup-nav-button{display:flex;align-items:center;gap:14px;min-height:56px;padding:12px 14px 12px 22px;border:0;border-left:4px solid transparent;border-radius:0 9px 9px 0;font-size:17px;white-space:nowrap}
.cleanup-nav-button svg{width:25px;height:25px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cleanup-sidebar .cleanup-nav-button.is-active{color:#168bff;background:#192c43;border-left-color:#168bff;font-weight:600}
@media(max-width:850px){.cleanup-sidebar .cleanup-nav-button{font-size:14px;gap:9px;padding:10px 7px 10px 10px}.cleanup-nav-button svg{width:22px;height:22px}}
@media(max-width:550px){.cleanup-sidebar{padding:6px;gap:4px}.cleanup-sidebar .cleanup-nav-button{font-size:13px;min-height:42px;padding:7px 8px;border-radius:6px;gap:8px}.cleanup-nav-button svg{width:20px;height:20px}}

/* Task557: keep new categories and the official wide wordmark readable. */
.cleanup-product.cleanup-product-solidworks{flex-direction:column;gap:3px}.cleanup-product.cleanup-product-solidworks img{width:130px;max-width:100%;height:34px}.cleanup-result-row>.cleanup-option{margin:0;padding:0;gap:12px;min-width:0}.cleanup-result-row>.cleanup-option strong{font-size:16px}
@media(max-width:550px){.cleanup-sidebar{flex-wrap:wrap}.cleanup-sidebar .cleanup-help{margin-left:0}.cleanup-product.cleanup-product-solidworks img{width:110px;height:30px}}
