:root{color-scheme:light;--text:#101828;--muted:#586579;--accent:#2563b5;--border:#e3e8ef;--surface:#f7f8fa}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:#fff;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.65}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #4b88db;outline-offset:4px}h1,h2,h3{line-height:1.25}h2{font-size:30px;margin:0 0 20px;font-weight:700;letter-spacing:-.5px}h3{font-size:17px;margin:13px 0 15px;font-weight:650}p{margin:0 0 20px}.container{width:100%;max-width:1000px;margin-inline:auto;padding-inline:24px}.site-header{position:sticky;top:0;z-index:10;background:#ffffffed;backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.header-inner{min-height:65px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--text);white-space:nowrap}.brand img{object-fit:contain}.brand:hover{text-decoration:none}nav{display:flex;align-items:center;gap:20px}nav a{font-size:14px;color:var(--muted);white-space:nowrap}nav a:hover{color:var(--accent)}.hero{padding:44px 0 35px;background:radial-gradient(ellipse 70% 55% at 50% 0%,#eaf0ff 0%,#f4f8fd 55%,transparent 100%)}.hero-logo{display:block;width:152px;height:auto;margin:0 auto 18px}h1{font-size:41px;letter-spacing:-.8px;margin:0 auto;text-align:center;line-height:1.27;font-weight:750}.authors{text-align:center;color:var(--muted);margin:18px 0 0;font-size:17px}.title-divider{width:110px;height:3px;margin:24px auto 33px;background:linear-gradient(90deg,transparent,#4484d4,transparent)}.abstract{font-size:17px;line-height:1.8;margin-bottom:24px}.abstract strong{font-weight:650}.resource-links{display:flex;gap:10px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:8px 14px;background:var(--surface);border:1px solid var(--border);border-radius:7px;color:var(--text);font-size:14px;box-shadow:0 2px 5px #0f172a06;transition:background .15s,border-color .15s}.button:hover{background:#edf3fc;border-color:#b8cce6;text-decoration:none}.button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.section{padding-top:52px;padding-bottom:15px}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px;box-shadow:0 3px 12px #16253e05}.feature-icon{color:var(--accent);height:26px}.feature-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.feature p{color:var(--muted);font-size:15px;line-height:1.65;margin:0}.section-description{color:#465265;line-height:1.8}.layout-figure{margin:25px 0 20px}.layout-example{display:grid;grid-template-columns:1fr 1.15fr;border:1px solid var(--border);border-radius:10px;overflow:hidden}.layout-preview{background:#fbfcfe;border-right:1px solid var(--border)}.panel-heading{min-height:48px;padding:10px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--border);font-size:13px;font-weight:600;background:var(--surface)}.dimension{font-size:11px;font-weight:400;color:var(--muted)}.canvas{position:relative;width:78%;max-width:320px;aspect-ratio:1;margin:30px auto 22px;border:1px solid #dce3ed;background-color:white;background-image:linear-gradient(#e6ecf480 1px,transparent 1px),linear-gradient(90deg,#e6ecf480 1px,transparent 1px);background-size:6.25% 6.25%}.box{position:absolute;display:flex;align-items:center;justify-content:center}.text-box{top:9.375%;left:12.5%;width:75%;height:12.5%;background:#eaf1ffcc;border:1.5px solid #6a93d4;color:#2c5795}.text-box strong{font-size:23px;letter-spacing:2px;font-weight:600}.object-box{top:31.25%;left:21.875%;width:56.25%;height:56.25%;background:#eef6f4cc;border:1.5px solid #64a28e;color:#397260}.box-label{position:absolute;left:-1px;top:-21px;font-family:monospace;font-size:11px}.object-description{text-align:center;font-size:15px}.origin{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#758698;font-size:13px;opacity:.6}.axis{position:absolute;right:calc(100% + 5px);font:9px monospace;color:#8995a6}.axis-top{top:-4px}.axis-bottom{bottom:-4px}.preview-note{text-align:center;font-size:11px;color:var(--muted);padding:0 15px;margin-bottom:22px}pre{margin:0;font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace;font-size:12px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}code{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace;font-size:.9em}.layout-code pre{padding:18px 20px;max-height:396px;overflow:auto;color:#344863;font-size:12px}.layout-code pre code,pre code{font-size:inherit}figcaption{font-size:13px;line-height:1.7;color:var(--muted);margin-top:13px}.copy-button{border:1px solid #d3dce7;background:#fff;color:#526176;border-radius:5px;padding:4px 9px;font-size:11px;font-weight:500;white-space:nowrap}.copy-button:hover{background:#ecf3ff;color:#245b9d}.usage-details{border:1px solid var(--border);border-radius:7px;padding:13px 18px;font-size:14px;margin-top:18px}.usage-details summary{cursor:pointer;color:var(--accent);font-weight:500}.usage-details[open] summary{margin-bottom:15px}.usage-details p{font-size:14px}.usage-details pre{padding:15px;background:var(--surface);border-radius:4px}.table-wrap{border:1px solid var(--border);border-radius:8px;overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}th,td{padding:15px 18px;line-height:1.5}thead{background:var(--surface)}thead th{font-weight:600;font-size:13px}tbody th{font-weight:600;white-space:nowrap}tbody tr{border-top:1px solid var(--border)}td a{white-space:nowrap}.table-note{font-size:12px;color:var(--muted);margin:13px 0 0}.code-block{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:#fafbfd}.code-block pre{padding:20px 22px;font-size:13px;color:#28374c}.usage-note{font-size:14px;color:var(--muted);margin:17px 0}.settings{margin:0;font-size:13px}.settings>div{display:grid;grid-template-columns:170px 1fr;padding:9px 0;border-bottom:1px solid var(--border);gap:20px}.settings>div:last-child{border-bottom:0}.settings dt{font-weight:600}.settings dd{margin:0;color:var(--muted)}#citation{padding-bottom:65px}.site-footer{border-top:1px solid var(--border);background:#fafbfd;color:var(--muted);font-size:12px}.footer-inner{padding-block:25px;display:flex;justify-content:space-between;gap:20px}.footer-inner>div{display:flex;gap:25px}.footer-inner a{color:var(--muted)}.skip-link{position:fixed;top:-100px;left:10px;z-index:50;padding:10px;background:white}.skip-link:focus{top:10px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#243249;color:white;padding:10px 18px;border-radius:7px;font-size:13px;box-shadow:0 3px 15px #0002;z-index:30;max-width:calc(100% - 32px);text-align:center}.toast:empty{display:none}
@media(max-width:800px){.header-inner{gap:15px;flex-wrap:wrap;padding-block:14px}nav{gap:20px;flex-wrap:wrap}h1{font-size:35px}.features-grid{gap:12px}.feature{padding:18px}.feature h3{font-size:16px}.feature p{font-size:14px}.layout-example{grid-template-columns:1fr 1fr}.text-box strong{font-size:19px}.canvas{margin-block:38px}.wide-only{display:none}}
@media(max-width:600px){html{scroll-padding-top:120px}.container{padding-inline:20px}.header-inner{gap:12px}.brand{font-size:15px}.brand img{width:29px;height:21px}nav{width:100%;justify-content:space-between;gap:8px}nav a{font-size:11px}.hero{padding-top:30px}.hero-logo{width:118px;margin-bottom:19px}h1{font-size:29px;letter-spacing:-.5px}.authors{font-size:15px;margin-top:15px}.title-divider{margin-block:22px 26px}.abstract{font-size:15px;line-height:1.8}.resource-links{gap:8px}.button{font-size:12px;padding:8px 10px;min-height:40px}.button svg{width:15px;height:15px}.section{padding-top:36px}h2{font-size:25px}.features-grid{grid-template-columns:1fr;gap:13px}.feature{padding:20px}.feature h3{font-size:17px;margin:10px 0}.feature p{font-size:15px}.section-description{font-size:15px}.layout-example{grid-template-columns:1fr}.layout-preview{border-right:0;border-bottom:1px solid var(--border)}.canvas{margin-block:30px 20px;width:76%}.text-box strong{font-size:23px}.layout-code pre{max-height:310px;font-size:11px;padding:16px}th,td{padding:12px;font-size:12px}.table-wrap table{min-width:560px}.code-block pre{font-size:11px;padding:16px}.panel-heading{padding-inline:14px}.settings>div{grid-template-columns:1fr;gap:2px}.footer-inner{flex-direction:column;gap:10px}#citation{padding-bottom:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Current repository branding and full-image showcases. */
.hero-logo{width:min(520px,100%);height:auto;margin:0 auto 28px}
.brand img{width:36px;height:36px}
.showcase-figure{margin:24px 0}
.showcase-figure img{display:block;width:100%;height:auto;border:1px solid var(--border);border-radius:8px}
.code-block+.code-block{margin-top:20px}

/* Preserve the README's showcase compositions at their original proportions. */
#showcase{max-width:1320px}
.showcase-mosaics{display:grid;gap:16px}
.showcase-mosaics a,.model-comparison a{display:block}
.showcase-mosaics img,.model-comparison img{display:block;width:100%;height:auto}
.comparison-heading{margin-top:32px}
.model-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.model-comparison figure{margin:0}
.model-comparison figcaption{margin:0 0 12px;font-weight:600;color:var(--text)}
#comfyui{margin-top:28px}
@media(max-width:600px){.model-comparison{grid-template-columns:1fr}.showcase-mosaics{gap:8px}#showcase{padding-inline:8px}#showcase>h2,#showcase>.section-description{padding-inline:12px}}
