/* Creative workspace and local visual generator. */

.visual-intro{max-width:880px;margin:0 0 28px}.visual-kicker{font-size:10px;line-height:1.6;letter-spacing:.13em;font-weight:650;color:#6256c2;margin:0 0 11px}.visual-intro h1{font-size:clamp(30px,3.4vw,46px);line-height:1.12;letter-spacing:-.05em;margin:0 0 15px;color:#172033;max-width:none}.visual-intro>p:last-child{font-size:13px;line-height:1.85;color:#58657b;max-width:800px}.visual-app{display:grid;grid-template-columns:290px minmax(0,1fr);gap:25px;align-items:start}.visual-controls, .visual-output{min-width:0;border:1px solid #e0e5ef;background:#fff;border-radius:16px;padding:24px}.visual-controls{position:sticky;top:20px}.visual-controls h2, .visual-output h2{font-size:18px;letter-spacing:-.03em;line-height:1.4;margin:0 0 18px}.visual-controls label{display:block;margin:16px 0;font-size:12px;line-height:1.6;font-weight:550;color:#4d5d76}.visual-controls input, .visual-controls select, .visual-controls textarea{display:block;width:100%;max-width:100%;box-sizing:border-box;border:1px solid #d6deec;border-radius:8px;background:#fbfcff;color:#172033;padding:10px;font-size:13px;margin-top:7px;min-height:42px}.visual-controls textarea{resize:vertical}.visual-controls details{border-top:1px solid #e4e8f2;margin-top:20px;padding-top:15px}.visual-controls summary{min-height:42px;cursor:pointer;font-size:12px;font-weight:600;color:#4c5875}.visual-controls button, .visual-export-actions button{min-height:42px;padding:10px 13px;border:1px solid #dce1f0;border-radius:8px;background:#fff;color:#475471;font-size:12px;line-height:1.6;cursor:pointer}.visual-controls button:hover, .visual-export-actions button:hover{background:#f1efff;border-color:#c7bff3}.visual-controls #visual-generate{background:#5146d8;color:#fff;border-color:#5146d8}.visual-form-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:13px}.visual-note{font-size:11px!important;line-height:1.85;color:#627088!important;font-weight:400}.visual-output-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:20px}.visual-output-heading .visual-kicker{font-size:8px;margin-bottom:6px}.visual-output-heading h2{margin:0}.visual-local-badge{font-size:10px;color:#4a6b5f;background:#f0f8f4;border:1px solid #d5e9dd;border-radius:20px;padding:7px 10px;white-space:nowrap}.visual-variants{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}.visual-variants button{position:relative;min-width:0;overflow:hidden;padding:4px;border:2px solid transparent;background:#f4f6fb;border-radius:10px;cursor:pointer;transition:border-color .18s,transform .2s}.visual-variants button[aria-pressed=true]{border-color:#7666e4;background:#f2f0ff}.visual-variants button:hover{transform:translateY(-2px)}.visual-variants img{display:block;width:100%;height:98px;object-fit:cover;border-radius:5px}.visual-variants span{position:absolute;bottom:9px;left:10px;background:#ffffffeb;color:#3d4863;font-size:10px;border-radius:5px;padding:3px 5px}.visual-preview{margin:0;background:#f4f5fa;border:1px solid #e7eaf3;border-radius:11px;overflow:hidden;padding:18px}.visual-preview img{display:block;width:100%;height:430px;max-height:54dvh;object-fit:contain}.visual-preview figcaption{font-size:11px;color:#65728a;text-align:center;padding:15px 4px 0;line-height:1.6}.visual-export-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.visual-export-actions #visual-png{background:#5146d8;color:#fff;border-color:#5146d8}.visual-output #visual-status{font-size:12px;line-height:1.8;color:#5e548e;min-height:22px;margin:18px 0 11px}.visual-app :focus-visible{outline:3px solid #7968df;outline-offset:3px}.visual-app button:disabled{opacity:.55;cursor:wait}
.studio-design .design-hero{background:#fff;border-color:#e1e5f0;border-radius:20px;box-shadow:0 8px 30px #17203304}.studio-design .design-hero:before{background:radial-gradient(circle,#bcb4f829,transparent 66%);right:-160px}.studio-design .design-hero:after{background:radial-gradient(circle,#c4dcea20,transparent 68%)}.studio-design .design-hero .design-eyebrow{color:#6a5ac6}.studio-design .design-hero-copy h1{font-size:clamp(32px,3.05vw,49px);color:#19253d;line-height:1.12}.studio-design .design-hero-copy h1 em{color:#6b57d6}.studio-design .design-hero-description{color:#5b6880;font-size:13px}.studio-design .design-hero-actions button:not(.studio-primary){background:#fff;border:1px solid #dce2f0;color:#52617b}.studio-design .design-hero-actions button:not(.studio-primary):hover{background:#f4f3ff;border-color:#d0c9f2}.studio-design .design-quick-panel{background:#f8f9fd;border:1px solid #e6e9f3;box-shadow:none}.studio-design .design-quick-label{color:#6c7690}.studio-design button.design-quick-action{border-top-color:#e8ebf4}.studio-design button.design-quick-action:hover{background:#fff}.studio-design .design-quick-text strong{color:#32405b}.studio-design .design-quick-text small{color:#65728b}.studio-design .design-quick-action>.design-icon{color:#7a6bd3}.studio-design .design-quick-action>.design-icon:last-child{color:#8a91ad}.studio-design .studio-sidebar>button[data-studio-tool="strumento-archiviato.html"]{color:#5d4cc8!important}.studio-design .studio-sidebar>button[data-studio-tool="strumento-archiviato.html"] .design-icon{color:#7865df}.studio-design .design-start-card{box-shadow:0 3px 12px #17203303}.studio-design .design-start-card>p{font-size:12px;line-height:1.75}
@media(max-width:1100px){.visual-app{grid-template-columns:260px minmax(0,1fr);gap:19px}.visual-controls, .visual-output{padding:20px}}
@media(max-width:850px){.visual-app{grid-template-columns:minmax(0,1fr)}.visual-controls{position:static}.visual-output{padding:21px}.visual-controls details{margin-top:16px}.visual-controls #visual-interpret{width:100%}.visual-form-actions{grid-template-columns:1fr 1fr}.visual-preview img{height:360px}}
@media(max-width:650px){.visual-intro h1{font-size:31px}.visual-intro>p:last-child{font-size:12px}.visual-controls, .visual-output{padding:18px;border-radius:12px}.visual-output-heading{align-items:flex-start;gap:10px}.visual-output h2{font-size:17px}.visual-local-badge{font-size:8px;padding:6px 8px}.visual-variants{gap:8px;margin-bottom:15px}.visual-variants img{height:76px}.visual-preview{padding:11px}.visual-preview img{height:310px;max-height:44dvh}.visual-preview figcaption{font-size:10px}.visual-export-actions button{flex:1 1 135px;min-height:44px}.visual-form-actions button{font-size:11px;min-height:44px}.studio-design .design-hero-copy h1{font-size:32px}.studio-design .design-hero-description{font-size:13px}}
@media(prefers-reduced-motion:reduce){.visual-app *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.visual-variants button:hover{transform:none}}
@media print{.visual-controls, .visual-export-actions, .visual-variants{display:none!important}.visual-app{display:block}.visual-output{border:0}.visual-preview{padding:0;background:#fff}.visual-preview img{height:auto;max-height:none}}

.design-first-steps{margin:22px 0 0;padding:0 22px;border:1px solid #e0e5ef;background:#fff;border-radius:12px;color:#172033}
.design-first-steps summary{cursor:pointer;padding:17px 0;min-height:44px;box-sizing:border-box;font-size:13px;font-weight:600;line-height:1.6}
.design-first-steps ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin:8px 0 22px;padding-left:20px}
.design-first-steps li{padding-left:3px;font-size:12px;color:#58657b;line-height:1.8}
.design-first-steps strong{display:block;color:#24324b;font-size:13px;font-weight:600;margin-bottom:6px}
.design-first-steps span{display:block}
.design-first-steps>button{margin:0 0 20px}
@media(max-width:760px){.design-first-steps{padding-inline:18px}.design-first-steps ol{grid-template-columns:1fr;gap:16px}.studio-tool-page :is(input,select,textarea),.studio-design :is(input,select,textarea){font-size:16px!important}}
