.asciiart-page{--ascii-accent:#087f6d;--ascii-accent-soft:#eaf5f1;--ascii-line:#d7e2e7;color:#1d2d3b}
.asciiart-page *{box-sizing:border-box;letter-spacing:0}
.asciiart-page-heading h1{font-size:36px!important;line-height:1.3!important;margin:0 0 14px!important}
.asciiart-page-heading>p:last-child,.asciiart-guide-heading>p:last-child{font-size:16px!important;line-height:1.8!important}
.asciiart-page .asciiart-eyebrow{color:var(--ascii-accent)!important;font-size:12px!important}
.asciiart-upload-panel.is-dragging{border-color:var(--ascii-accent);background:var(--ascii-accent-soft)}
.asciiart-file-button{border-color:var(--ascii-accent)!important;background:var(--ascii-accent)!important}.asciiart-file-button:hover{background:#066958!important}
.asciiart-controls{display:grid;grid-template-columns:1.2fr 1fr 1.2fr auto;align-items:end;gap:16px;margin:18px 0 0;padding:20px;border:1px solid var(--ascii-line);border-radius:8px;background:#fff}
.asciiart-controls label{display:grid;gap:9px;margin:0!important;color:#34495a;font-size:13px;font-weight:700}.asciiart-controls strong{color:var(--ascii-accent);font-size:12px}.asciiart-controls select{height:46px!important;margin:0!important;border:1px solid #cad8df!important;border-radius:6px!important;background-color:#fff!important;color:#203a4a!important;font-size:14px!important}.asciiart-controls input[type=range]{appearance:none;-webkit-appearance:none;width:100%;height:4px;margin:8px 0!important;border:0!important;border-radius:999px;background:#d6e1e5!important;accent-color:var(--ascii-accent)}.asciiart-controls input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border:3px solid #fff;border-radius:50%;background:var(--ascii-accent);box-shadow:0 0 0 1px #9cbcb5;cursor:pointer}.asciiart-controls input[type=range]::-moz-range-thumb{width:13px;height:13px;border:3px solid #fff;border-radius:50%;background:var(--ascii-accent);box-shadow:0 0 0 1px #9cbcb5;cursor:pointer}
.asciiart-controls .asciiart-check{display:flex;min-height:46px;align-items:center;gap:8px;white-space:nowrap}.asciiart-check input{width:18px!important;height:18px!important;margin:0!important;accent-color:var(--ascii-accent)!important}
.asciiart-output-panel>header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:4px 16px}.asciiart-output-panel>header h2,.asciiart-output-panel>header p{grid-column:1}.asciiart-output-actions{display:flex;grid-column:2;grid-row:1/3;gap:7px}.asciiart-output-actions button{width:auto!important;min-height:38px!important;margin:0!important;padding:7px 11px!important;border:1px solid var(--ascii-line)!important;border-radius:6px!important;background:#fff!important;color:#31505d!important;font-size:12px!important;font-weight:700;line-height:1.3!important}.asciiart-output-actions button:hover:not(:disabled){border-color:var(--ascii-accent)!important;background:var(--ascii-accent-soft)!important}.asciiart-output-actions button:disabled{opacity:.45;cursor:not-allowed}
.asciiart-page #asciiart-summary{margin:0!important;color:#64748b!important;font-size:13px!important;line-height:1.6!important}
.asciiart-page :focus-visible{outline:2px solid var(--ascii-accent)!important;outline-offset:3px}.asciiart-guide h2{font-size:23px!important;line-height:1.45!important}.asciiart-guide-grid h3{font-size:17px!important}.asciiart-guide-grid p{font-size:14px!important;line-height:1.8!important}.asciiart-faq{margin-top:34px}.asciiart-faq h2{margin-bottom:12px!important}.asciiart-faq details{border-top:1px solid var(--ascii-line)}.asciiart-faq summary{padding:16px 0;font-size:15px;font-weight:700;cursor:pointer}.asciiart-faq p{margin:0 0 16px!important;color:#5f6d80;font-size:14px!important;line-height:1.8!important}
@media(max-width:900px){.asciiart-controls{grid-template-columns:1fr 1fr}.asciiart-output-panel>header{display:block}.asciiart-output-actions{margin-top:14px}}
@media(max-width:600px){.asciiart-page-heading h1{font-size:28px!important}.asciiart-page-heading>p:last-child,.asciiart-guide-heading>p:last-child{font-size:15px!important;line-height:1.75!important}.asciiart-controls{grid-template-columns:1fr;padding:16px}.asciiart-output-actions{display:grid;grid-template-columns:1fr 1fr 1fr}.asciiart-output-actions button{padding-inline:6px!important}.asciiart-guide h2{font-size:21px!important}}
