.dfsp,.dfsp-text{color:var(--dfsp-ink)}.dfsp,.dfsp-actions,.dfsp-map,.dfsp-row,.dfsp-stage{display:flex}.dfsp-chip,.dfsp-size-label{white-space:nowrap}.dfsp-heavy-btn:not(.is-ready),.dfsp-mock[hidden],.dfsp-more-btn:not(.is-ready){display:none}.dfsp{--dfsp-ink:#111;--dfsp-muted:#555;--dfsp-line:#e4e4e1;--dfsp-soft:#f3f3f1;--dfsp-accent:#2b4bff;margin:2rem 0;flex-direction:column;gap:14px}.dfsp *{box-sizing:border-box}.dfsp-title{margin:0;font-size:1.35rem;line-height:1.25}.dfsp-subtitle{margin:10px 0 0;font-size:1.1rem;line-height:1.3}.dfsp-controls{margin:0;display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:14px;background:var(--dfsp-soft)}.dfsp-label{font-size:.875rem;font-weight:600}.dfsp-text{width:100%;height:48px;padding:0 14px;border:1px solid #cfcfcb;border-radius:10px;background:#fff;font:inherit;font-size:16px}.dfsp-btn:focus-visible,.dfsp-pick:focus,.dfsp-size:focus-visible,.dfsp-text:focus{outline:2px solid var(--dfsp-accent);outline-offset:2px}.dfsp-row{flex-wrap:wrap;align-items:center;gap:8px 12px}.dfsp-size{flex:1 1 140px;min-width:0;height:44px;accent-color:var(--dfsp-ink)}.dfsp-btn{min-height:44px;padding:0 16px;border:1px solid var(--dfsp-ink);border-radius:10px;background:var(--dfsp-ink);color:#fff;font:inherit;font-size:.9375rem;font-weight:600;cursor:pointer}.dfsp-btn-light{background:#fff;color:var(--dfsp-ink);border-color:#cfcfcb}.dfsp-btn:disabled{opacity:.6;cursor:wait}.dfsp-stage{flex-direction:column;border:1px solid var(--dfsp-line);border-radius:14px;overflow:hidden;background:#fff;color:#111}.dfsp-stage[data-theme=dark]{background:#111;color:#fff;border-color:#111}.dfsp-style{margin:0;padding:18px 16px 14px;border-top:1px solid var(--dfsp-line)}.dfsp-stage[data-theme=dark] .dfsp-style{border-color:#2a2a2a}.dfsp-dl dt:first-of-type,.dfsp-dl dt:first-of-type+dd,.dfsp-style:first-child{border-top:0}.dfsp-sample{margin:0;min-height:1.3em;font-size:44px;line-height:1.25;overflow-wrap:anywhere;word-break:break-word}.dfsp-caption{margin-top:8px;font-size:.8125rem;color:var(--dfsp-muted)}.dfsp-stage[data-theme=dark] .dfsp-caption{color:#bdbdbd}.dfsp-actions{flex-wrap:wrap;align-items:center;gap:8px;min-height:44px}.dfsp-actions:not(.is-ready){visibility:hidden}.dfsp-pick{height:44px;padding:0 10px;border:1px solid #cfcfcb;border-radius:10px;background:#fff;font:inherit}.dfsp-desc,.dfsp-summary{margin:0;font-size:1rem;line-height:1.6;color:#333}.dfsp-map{flex-direction:column;gap:14px}.dfsp-group-label{margin:0 0 6px;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:.8125rem;font-weight:600;color:var(--dfsp-muted)}.dfsp-chars{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:6px}.dfsp-chars span{display:flex;align-items:center;justify-content:center;height:52px;border-radius:8px;background:var(--dfsp-soft);font-size:26px;line-height:1;overflow:hidden}.dfsp-download{display:flex;align-items:center;justify-content:center;min-height:52px;padding:0 20px;border-radius:12px;background:var(--dfsp-accent);color:#fff!important;font-weight:700;text-decoration:none!important;text-align:center}.dfsp-download:hover{filter:brightness(.92)}.dfsp-text-row{flex-wrap:nowrap}.dfsp-text-row .dfsp-text{flex:1;min-width:0}.dfsp-text-row .dfsp-btn{flex:none;height:48px}.dfsp-variants{display:flex;flex-direction:column;gap:6px}.dfsp-variant-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.dfsp-variant{width:100%;min-height:76px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;border:1px solid var(--dfsp-line);border-radius:12px;background:#fff;color:var(--dfsp-ink);font:inherit;text-align:left;cursor:pointer}.dfsp-variant[aria-pressed=true]{border:2px solid var(--dfsp-ink);padding:9px 11px}.dfsp-variant-sample{font-size:24px;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dfsp-variant-name{font-size:.75rem;color:var(--dfsp-muted)}.dfsp-btn-accent{background:var(--dfsp-accent);border-color:var(--dfsp-accent)}.dfsp-dl dt,.dfsp-mock{background:var(--dfsp-soft)}.dfsp-mock{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:14px}.dfsp-mock-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.dfsp-mock-tabs::-webkit-scrollbar{display:none}.dfsp-chip{flex:none;min-height:40px;padding:0 14px;border:1px solid #cfcfcb;border-radius:999px;background:#fff;color:var(--dfsp-ink);font:inherit;font-size:.875rem;font-weight:600;cursor:pointer}.dfsp-ed,.dfsp-faq{flex-direction:column;display:flex}.dfsp-chip[aria-pressed=true]{background:var(--dfsp-ink);border-color:var(--dfsp-ink);color:#fff}.dfsp-mock-colors{display:flex;gap:10px}.dfsp-swatch{width:36px;height:36px;border-radius:50%;border:2px solid #cfcfcb;cursor:pointer;padding:0}.dfsp-swatch[aria-pressed=true]{outline:3px solid var(--dfsp-accent);outline-offset:2px}.dfsp-mock-view{border-radius:12px;overflow:hidden;background:#fff;line-height:0}.dfsp-mock-view svg{display:block;width:100%;height:auto}.dfsp-mock .dfsp-btn,.dfsp-more-btn{align-self:flex-start}.dfsp-intro{margin:0;font-size:1.0625rem;line-height:1.65;color:#222}.dfsp-faq{gap:0;margin-top:6px}.dfsp-faq .dfsp-subtitle{margin-bottom:6px}.dfsp-q{border-top:1px solid var(--dfsp-line);padding:12px 0}.dfsp-q:last-child{border-bottom:1px solid var(--dfsp-line)}.dfsp-q summary{cursor:pointer;font-weight:600;font-size:1rem;line-height:1.4;min-height:28px}.dfsp-q p{margin:8px 0 0;font-size:.9375rem;line-height:1.6;color:#333}.dfsp-mock[aria-busy=true]{min-height:120px}.dfsp-mock-view:focus-visible{outline:2px solid var(--dfsp-accent);outline-offset:2px}.dfsp-ed-text{cursor:move;touch-action:none}.dfsp-mock-view.is-dragging{cursor:grabbing}.dfsp-ed-hint{margin:0;font-size:.8125rem;color:var(--dfsp-muted)}.dfsp-ed{gap:12px}.dfsp-ed-field{display:flex;flex-direction:column;gap:6px;min-width:0}.dfsp-ed .dfsp-size{flex:none;width:100%;height:32px}.dfsp-ed-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:4px 16px}.dfsp-ed .dfsp-mock-colors{flex-wrap:wrap;align-items:center}.dfsp-ed .dfsp-chip{min-height:36px}.dfsp-color{width:44px;height:36px;padding:0;border:1px solid #cfcfcb;border-radius:8px;background:#fff;cursor:pointer}.dfsp-btn-light[aria-pressed=true]{background:var(--dfsp-ink);color:#fff;border-color:var(--dfsp-ink)}.dfsp-ed-more{font-size:.875rem;font-weight:600;color:var(--dfsp-accent)}.dfsp-details{display:flex;flex-direction:column;gap:10px}.dfsp-dl{margin:0;display:grid;grid-template-columns:auto 1fr;border:1px solid var(--dfsp-line);border-radius:12px;overflow:hidden}.dfsp-dl dd,.dfsp-dl dt{margin:0;padding:10px 14px;border-top:1px solid var(--dfsp-line);font-size:.9375rem;line-height:1.5}.dfsp-dl dt{font-weight:600;color:var(--dfsp-muted)}.dfsp-dl a,.dfsp-more summary{color:var(--dfsp-accent)}.dfsp-dl dd{overflow-wrap:anywhere}.dfsp-more{margin-top:6px}.dfsp-more summary{cursor:pointer;font-weight:600;min-height:32px}.dfsp-more p{margin:6px 0 0;font-size:.8125rem;line-height:1.55;color:var(--dfsp-muted);max-height:240px;overflow:auto}@media (min-width:768px){.dfsp-title{font-size:1.6rem}.dfsp-controls{padding:16px 18px}.dfsp-style{padding:24px 24px 16px}.dfsp-chars{grid-template-columns:repeat(auto-fill,minmax(56px,1fr))}.dfsp-chars span{height:60px;font-size:30px}.dfsp-download{align-self:flex-start}}@media (prefers-reduced-motion:no-preference){.dfsp-btn,.dfsp-download{transition:filter .15s,opacity .15s}}.dfsp-heavy-btn{margin-top:10px}
.dfsp-license{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border:1px solid var(--dfsp-line);border-radius:14px;background:var(--dfsp-soft)}.dfsp-license .dfsp-subtitle{margin:0}.dfsp-license-text{margin:0;font-size:.9375rem;line-height:1.6;color:#333}.dfsp-license-text a{color:var(--dfsp-accent);font-weight:600}.dfsp-badge{display:inline-block;margin:0 6px 4px 0;padding:3px 10px;border-radius:999px;font-size:.8125rem;font-weight:700;line-height:1.5;vertical-align:middle;background:#e6f4ea;color:#14532d}.dfsp-license-personal .dfsp-badge,.dfsp-license-demo .dfsp-badge,.dfsp-license-default .dfsp-badge{background:#fff4e0;color:#7a4100}.dfsp-license-unknown .dfsp-badge{background:#ececec;color:#333}

.dfsp-top-dl{display:flex;flex-direction:column;gap:6px;margin:0 0 4px}.dfsp-top-dl .dfsp-download{align-self:stretch;font-size:1.0625rem}@media(min-width:640px){.dfsp-top-dl .dfsp-download{align-self:flex-start;min-width:280px}}.dfsp-dl-note{margin:0;font-size:.8125rem;color:#555}.dfsp-dl-note a{color:inherit;font-weight:600}#font-license{scroll-margin-top:80px}
