.df-home-entry{display:grid;gap:12px;max-width:430px}.df-photo-button{position:relative;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1px solid var(--dui-control-border);color:var(--dui-paper);cursor:pointer;font-size:15px}.df-photo-button input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.df-photo-button:focus-within{outline:2px solid var(--dui-paper);outline-offset:3px}.df-photo-note{font-size:14px!important;margin:0!important;line-height:1.5;color:inherit}.df-home-photo{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.df-home-photo[hidden]{display:none}.df-home-photo img{width:80px;height:55px;object-fit:cover}.df-home-photo span{font-size:14px}.df-home-photo button{font-size:14px;text-decoration:underline;color:inherit}.df-dialog{width:min(780px,calc(100% - 28px));max-height:calc(100dvh - 28px);padding:32px;border:0;background:var(--dui-paper);color:var(--dui-ink);overflow:auto}.df-dialog::backdrop{background:rgba(var(--dui-scrim),.62)}.df-dialog-head{display:flex;justify-content:space-between;align-items:center;font-size:14px;text-transform:uppercase;letter-spacing:.08em}.df-dialog-head button{font-size:28px;min-width:44px;min-height:44px}.df-dialog h2{font-size:clamp(25px,4vw,36px);font-weight:700;margin:15px 0}.df-dialog p{line-height:1.6}.df-families{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.df-families a{display:flex;flex-direction:column;gap:10px;padding:20px;border:1px solid var(--dui-control-border);color:var(--dui-ink);background:#fff;text-decoration:none}.df-families a:hover,.df-families a:focus-visible{border-color:var(--dui-ink);outline:2px solid var(--dui-ink);outline-offset:2px}.df-families svg{width:100%;height:110px;fill:none;stroke:var(--dui-ink);stroke-width:2}.df-families strong{font-size:20px}.df-families span,.df-families small{font-size:14px}.df-help-button{border:1px solid var(--dui-control-border);padding:12px 16px;min-height:44px}.df-help{background:var(--dui-paper-2);padding:16px;margin-top:12px}.df-help select{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid var(--dui-control-border);background:#fff}.df-local-note{font-size:14px;color:var(--dui-grafite);margin-top:24px}.df-progress{padding:20px;background:var(--dui-paper);border:1px solid var(--dui-line);margin:0 0 24px;scroll-margin-top:110px}.df-progress header{display:flex;justify-content:space-between;gap:12px;font-size:14px;margin-bottom:12px}.df-progress header strong{font-weight:700}.df-progress ol{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;list-style:none;padding:0;margin:0}.df-progress button{display:flex;flex-direction:column;gap:6px;align-items:flex-start;border-top:3px solid var(--dui-control-border);padding:12px 3px 2px;width:100%;text-align:left;font-size:14px;min-height:54px}.df-progress button[aria-current="step"]{border-color:var(--dui-ink);font-weight:700}.df-progress button[data-complete="true"]{border-color:var(--dui-ink)}.df-progress small{font-size:14px;color:var(--dui-grafite)}.df-progress p{margin:12px 0 0;font-size:14px;line-height:1.5}.df-preview-card{border:1px solid var(--dui-control-border);background:var(--dui-paper);padding:20px;margin:20px 0;display:grid;gap:12px;text-align:left;color:var(--dui-ink)}.df-preview-card h3{font-size:22px;margin:0;font-weight:700}.df-preview-card p{font-size:14px;line-height:1.6;margin:0}.df-preview-card .dsim-launch{width:100%;min-height:48px;justify-content:center}.df-preview-card img{max-height:90px;width:100%;object-fit:contain}.df-preview-card [data-df-context]{font-weight:700}.df-pdp-mount-link{display:inline-block;font-size:14px;text-decoration:underline;margin:0 0 16px}.dsim[data-dsim-contextual="true"]>.dsim-shell{display:none}.dsim[data-dsim-contextual="true"]{padding:0;margin:0}.dsim-dialog .df-settings{display:grid;gap:18px}.df-settings fieldset{border:1px solid var(--dui-control-border);padding:16px;margin:0;min-width:0}.df-settings legend{font-weight:700}.df-settings label{display:block;padding:8px 0;font-size:14px;line-height:1.5}.df-settings select,.df-settings textarea{width:100%;padding:12px;border:1px solid var(--dui-control-border);background:#fff;color:var(--dui-ink)}.df-settings textarea{min-height:85px}.df-settings input[type="radio"],.df-settings input[type="checkbox"]{accent-color:var(--dui-ink);margin-right:8px}.df-settings small{display:block;font-size:14px;color:var(--dui-grafite);line-height:1.6}.dsim-dialog [data-dsim-restored] img{max-height:140px;width:100%;object-fit:contain}.df-selection-note{padding:12px;background:var(--dui-paper);font-size:14px;line-height:1.5}.df-result-ready{background:var(--dui-paper-2);padding:12px}.df-stale{background:var(--dui-paper-2);padding:12px}.df-preview-card [hidden],.df-settings [hidden]{display:none!important}
@media(max-width:749px){.df-dialog{padding:20px;width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.df-families{gap:10px}.df-families a{padding:12px}.df-families svg{height:80px}.df-families strong{font-size:17px}.df-families span,.df-families small{font-size:14px}.df-progress{padding:14px}.df-progress button{font-size:14px}.df-progress header{font-size:14px}.df-progress small{font-size:14px}.df-preview-card{padding:16px}.dsim-dialog{max-height:calc(100dvh - 12px)}.df-home-entry{max-width:100%}.df-settings fieldset{padding:12px}.df-progress ol{gap:6px}}
@media(prefers-reduced-motion:reduce){.df-dialog,.df-progress,.df-preview-card{scroll-behavior:auto}}

.df-dialog{font:400 16px/1.55 var(--dui-sans);border:1px solid var(--dui-control-border);border-radius:var(--dui-r);box-sizing:border-box}
.df-dialog *{box-sizing:border-box}
.df-dialog{max-width:none}
.df-dialog-head{font-weight:700;letter-spacing:.13em;gap:16px}
.df-dialog-head button{background:transparent;border:0;color:var(--dui-ink)}
.df-dialog h2{line-height:1.15;letter-spacing:-.025em}
.df-families{grid-template-columns:repeat(2,minmax(0,1fr))}
.df-families a{min-width:0;border-radius:var(--dui-r);line-height:1.5}
.df-families strong{font-weight:700;letter-spacing:-.02em}
.df-help-button{background:var(--dui-paper);color:var(--dui-ink);border-radius:var(--dui-r-btn);font:700 14px/1.5 var(--dui-sans)}
.df-help select,.df-settings select,.df-settings textarea{font:400 16px/1.5 var(--dui-sans);min-height:48px;border-radius:var(--dui-r-btn)}
.df-dialog :focus-visible,.df-settings :focus-visible{outline:2px solid var(--dui-focus);outline-offset:3px}
.df-progress button{background:transparent;color:var(--dui-ink);font-family:var(--dui-sans);border-radius:0}
.df-progress button[data-complete="true"] small{color:var(--dui-ink)}
.df-preview-card [data-df-context]{font-weight:700;overflow-wrap:anywhere}
.df-result-ready,.df-stale{border-left:2px solid var(--dui-ink);line-height:1.5}
.df-home-entry .df-photo-button{min-height:48px;font-weight:400;border-radius:var(--dui-r-btn)}
.df-home-entry .df-home-photo button{min-height:44px;padding:8px 0;background:none;border:0}
@media(max-width:749px){.df-progress ol{grid-template-columns:repeat(2,minmax(0,1fr))}.df-progress button{font-size:14px}.df-progress small{font-size:12px}.df-families{grid-template-columns:minmax(0,1fr)}.df-families a{display:grid;grid-template-columns:88px minmax(0,1fr);gap:6px 12px;padding:16px}.df-families svg{grid-column:1;grid-row:1/4;height:84px;align-self:center}.df-families strong,.df-families span,.df-families small{grid-column:2}.df-families strong{font-size:18px}.df-families span,.df-families small{font-size:14px}}
@media(max-width:359px){.df-families a{grid-template-columns:64px minmax(0,1fr);padding:12px;gap:6px 10px}.df-families svg{height:68px}}
