/* Existing homepage illustrations. Brand sources and component behavior are unchanged. */
.home-page .home-library-card{display:flex;flex-direction:column}
.home-page .dsf-scene{order:-1;flex:1;display:flex;flex-direction:column;min-width:0;margin:0;background:#fafafa;border-bottom:1px solid #e7e7e7;color:#262626;isolation:isolate}
.dsf-top,.dsf-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 28px;font-size:13px;line-height:20px;color:#666;background:#fff}
.dsf-top{border-bottom:1px solid #e7e7e7}.dsf-top>span:last-child{font:13px/20px SFMono-Regular,Consolas,monospace;color:#666}
.dsf-stage{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:540px;padding:36px;overflow:hidden;background:linear-gradient(90deg,transparent calc(50% - .5px),#e7e7e7 calc(50% - .5px),#e7e7e7 calc(50% + .5px),transparent calc(50% + .5px))}
.dsf-stage:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle,#c6c6c6 1px,transparent 1.2px) 0 0/8px 8px;mask-image:linear-gradient(transparent,#000 50%,transparent);opacity:.28}
.dsf-paper{position:relative;width:100%;max-width:440px;border:1px solid #e7e7e7;background:#fff;box-shadow:0 16px 30px -24px #26262640}
.dsf-paper-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:50px;padding:14px 20px;border-bottom:1px solid #e7e7e7;font-size:13px;line-height:20px;color:#666}.dsf-paper-bar img{display:block;width:104px;height:auto;flex:none}
.dsf-composition{padding:24px}.dsf-label{display:block;font:13px/20px SFMono-Regular,Consolas,monospace;letter-spacing:0;color:#666}
.dsf-display{display:block;font-size:32px;line-height:36px;letter-spacing:-.035em;font-weight:500;margin-top:12px}.dsf-display em{color:#fe4a23;font-style:normal}
.dsf-piece{position:relative;padding:12px;transition:background .6s ease}.dsf-piece+.dsf-piece{border-top:1px solid #eee;margin-top:16px;padding-top:16px}
.dsf-art img{display:block;width:100%;height:auto;max-height:145px;object-fit:contain;margin:4px auto}
.dsf-cta{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fe4a23;color:#fff;margin-top:12px;padding:12px 14px;font-size:15px;line-height:22px;letter-spacing:0}.dsf-cta svg{flex:0 0 24px}
.dsf-paper-note{padding:14px 20px;border-top:1px solid #e7e7e7;font-size:13px;line-height:21px;color:#666}
.dsf-assets-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;max-width:440px}
.dsf-assets-inputs>div{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:12px;min-height:140px;background:#fff;border:1px solid #e7e7e7;padding:14px 8px;transition:background .6s,border-color .6s}
.dsf-assets-inputs strong{font-size:36px;line-height:40px;letter-spacing:-.04em;font-weight:500}.dsf-assets-inputs>div>span:last-child{font-size:13px;line-height:20px}.dsf-assets-inputs img{display:block;width:44px;height:auto;margin:auto}.dsf-swatch{height:32px;width:32px;background:#fe4a23;display:block;margin:auto}
.dsf-vertical-route{height:56px;display:flex;justify-content:center;align-items:center;position:relative;color:#fe4a23}.dsf-vertical-route i{position:absolute;height:100%;width:1px;background:#ddd}.dsf-vertical-route span{position:relative;background:#fafafa;padding:3px;font-size:22px;line-height:24px}
.dsf-brand-layout{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:32px 24px}.dsf-brand-layout>img{max-width:23%;height:auto}.dsf-brand-layout .dsf-display{font-size:30px;line-height:34px}
.dsf-report-source,.dsf-report-observation,.dsf-report-result{position:relative;padding:22px 24px;transition:background .6s ease;}
.dsf-report-observation,.dsf-report-result{border-top:1px solid #e7e7e7}.dsf-label>b{display:inline-grid;place-items:center;min-width:24px;min-height:24px;margin-right:6px;background:#fff2ed;color:#262626;font-weight:400}
.dsf-source-outline{display:flex;align-items:center;gap:6px;margin:16px 0;color:#666;font-size:14px;line-height:22px}.dsf-source-outline>span{border:1px solid #e7e7e7;padding:6px 8px;background:#fff}.dsf-source-outline i{flex:1;height:1px;background:#ddd}.dsf-source-outline>span:last-child{color:#fe4a23}
.dsf-report-source p{font-size:15px;line-height:23px;margin:12px 0 0;color:#666}.dsf-report-observation>strong,.dsf-report-result>strong{display:block;font-size:25px;line-height:29px;letter-spacing:-.025em;font-weight:500;margin-top:14px}
.dsf-inline-result{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #e7e7e7;padding:12px;margin-top:20px;font-size:14px;background:#fff}.dsf-inline-result .dsf-cta{margin:0;font-size:13px;padding:8px;gap:8px}
.dsf-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #e7e7e7;background:#fff}
.dsf-steps>span{padding:16px 12px;display:flex;align-items:center;justify-content:center;gap:9px;min-width:0;font-size:14px;line-height:22px;transition:background .6s}.dsf-steps>span+span{border-left:1px solid #e7e7e7}.dsf-steps b{font:13px/20px SFMono-Regular,Consolas,monospace;color:#fe4a23}
.dsf-foot{border-top:1px solid #e7e7e7;min-height:62px}.dsf-foot button{background:none;border:0;border-radius:0;color:#262626;font:inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer;padding:4px 0;flex:none}.dsf-foot button:focus-visible{outline:2px solid #fe4a23;outline-offset:4px}
.dsf-scene[data-enhanced=true][data-finished=false][data-phase="0"] [data-dsf-part="0"],.dsf-scene[data-enhanced=true][data-finished=false][data-phase="1"] [data-dsf-part="1"],.dsf-scene[data-enhanced=true][data-finished=false][data-phase="2"] [data-dsf-part="2"]{background:#fff2ed}
@media(max-width:1100px){.dsf-stage{padding:26px}.dsf-composition{padding:18px}.dsf-top,.dsf-foot{padding-inline:22px}.dsf-steps>span{gap:6px;font-size:13px}.dsf-brand-layout{padding:26px 20px}.dsf-display{font-size:30px;line-height:34px}}
@media(max-width:900px){.home-page .home-library-grid,.home-page .home-template-grid{grid-template-columns:1fr}.home-page .home-library-card:first-child,.home-page .home-template-card:first-child{border-right:0;border-bottom:1px solid #e7e7e7}.dsf-stage{min-height:0;padding:36px 24px}.dsf-paper,.dsf-assets-inputs{max-width:480px}.dsf-art img{max-height:180px}.dsf-steps>span{font-size:15px}.dsf-top,.dsf-foot{font-size:14px;line-height:22px}.dsf-top>span:last-child,.dsf-label,.dsf-assets-inputs>div>span:last-child,.dsf-paper-bar{font-size:14px;line-height:22px}}
@media(max-width:480px){.dsf-top{align-items:flex-start;flex-direction:column;gap:6px;padding:18px 20px}.dsf-top>span:last-child{font-size:14px}.dsf-stage{padding:26px 20px}.dsf-composition{padding:12px}.dsf-piece{padding:10px}.dsf-display{font-size:28px;line-height:32px}.dsf-paper-bar{padding:14px 16px;font-size:14px}.dsf-paper-bar img{width:90px}.dsf-art img{max-height:none;margin:12px 0}.dsf-cta{font-size:16px;line-height:24px;padding:12px}.dsf-paper-note{font-size:14px;line-height:22px;padding:14px 16px}.dsf-brand-layout{padding:24px 16px;gap:12px}.dsf-brand-layout .dsf-display{font-size:26px;line-height:30px}.dsf-brand-layout>img{max-width:18%}.dsf-assets-inputs{gap:6px}.dsf-assets-inputs>div{padding:12px 5px;min-height:142px}.dsf-assets-inputs>div>span:last-child{text-align:center;font-size:14px}.dsf-assets-inputs .dsf-label{font-size:14px}.dsf-report-source,.dsf-report-observation,.dsf-report-result{padding:20px 16px}.dsf-report-source p{font-size:16px;line-height:24px}.dsf-report-observation>strong,.dsf-report-result>strong{font-size:24px;line-height:28px}.dsf-inline-result{flex-direction:column;align-items:stretch;font-size:16px;gap:12px;padding:14px}.dsf-inline-result .dsf-cta{font-size:15px;padding:10px}.dsf-source-outline{gap:4px;font-size:14px}.dsf-source-outline>span{padding:6px}.dsf-steps>span{flex-direction:column;align-items:flex-start;gap:4px;padding:14px 10px;font-size:14px;line-height:21px}.dsf-steps b{font-size:14px}.dsf-foot{padding:16px 20px;align-items:flex-start;flex-direction:column;gap:8px}.dsf-label{font-size:14px;line-height:22px}}
@media(prefers-reduced-motion:reduce){.dsf-scene *{transition:none!important;animation:none!important}}
