:root{color:#20252c;background:#eef0f2;font-family:Arial,Helvetica,sans-serif;scrollbar-gutter:stable}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}.app-shell{max-width:1200px;margin:0 auto;padding:48px 24px}.page-header{max-width:650px;margin-bottom:28px}.eyebrow{margin:0 0 8px;color:#6a737d;font-size:.72rem;font-weight:700;letter-spacing:.12em}h1,h2,h3,p{margin-top:0}h1{margin-bottom:10px;font-size:clamp(2rem,5vw,3rem);letter-spacing:-.04em}h2{margin-bottom:22px;font-size:1rem;text-transform:uppercase;letter-spacing:.06em}h3{margin:0;font-size:.9rem}.page-header>p:last-child{margin:0;color:#56616d;line-height:1.5}.app-grid{display:grid;grid-template-columns:minmax(280px,370px) minmax(0,1fr);gap:22px;align-items:start}.panel{background:#fff;border:1px solid #d8dce0;border-radius:12px;box-shadow:0 12px 28px #1e262e0f}.controls{padding:24px}.format-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 26px;padding:0;border:0}.format-picker legend{grid-column:1 / -1;margin-bottom:9px;color:#56616d;font-size:.8rem;font-weight:700}.format-picker label{cursor:pointer}.format-picker input{position:absolute;opacity:0}.format-picker span{display:block;padding:11px 12px;border:1px solid #cbd1d6;border-radius:8px;font-weight:700}.format-picker small{display:block;margin-top:3px;color:#69737d;font-size:.72rem;font-weight:400}.format-picker input:checked+span{border-color:#20252c;background:#e5eaee;color:#20252c}.format-picker input:checked+span small{color:#56616d}.format-picker input:focus-visible+span,.drop-zone:focus-visible,button:focus-visible{outline:3px solid #8eb5d6;outline-offset:2px}.section-heading,.preview-heading,.logo-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading span,.preview-heading span{color:#6a737d;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.drop-zone{display:grid;place-items:center;min-height:145px;margin:11px 0;padding:20px;border:1px dashed #9aa3ab;border-radius:9px;background:#fafbfb;cursor:pointer;text-align:center}.drop-zone.dragging{border-color:#20252c;background:#f0f3f5}.drop-zone strong{margin-bottom:5px;font-size:.9rem}.drop-zone span,.hint,#file-name,.status{color:#65707a;font-size:.8rem;line-height:1.45}.logo-actions{margin-bottom:10px}.fpl-section{margin-bottom:26px}.fpl-slots{display:grid;gap:8px;margin-top:11px}.fpl-slot{min-height:68px;padding:12px;border:1px solid #d8dce0;border-radius:8px;background:#fafbfb}.fpl-slot-empty{min-height:0;padding-block:8px}.fpl-slot-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}.fpl-slot-empty .fpl-slot-heading{margin-bottom:0}.fpl-slot h4{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}.fpl-slot p{margin:0;overflow:hidden;color:#56616d;font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.fpl-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}#pick-logo{flex:0 0 108px;white-space:nowrap}#delete-logo{flex:0 0 62px}#file-name{flex:1 1 auto;min-width:0;margin:0;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.hint{margin-bottom:0}button{border:0;border-radius:7px;cursor:pointer;font-weight:700}.secondary{padding:9px 11px;border:1px solid #cbd1d6;background:#fff;color:#20252c;font-size:.82rem}.download{width:100%;margin-top:26px;padding:13px 16px;background:#20252c;color:#fff}.download:disabled{background:#cbd1d6;cursor:not-allowed}.status{min-height:18px;margin:10px 0 0}.status.error{color:#9d2525}.preview-panel{padding:20px}.preview-heading{margin-bottom:16px}.preview-heading h2{margin:0}.preview-frame{display:grid;aspect-ratio:297 / 210;overflow:hidden;place-items:center;container-type:size;border:1px solid #d8dce0;border-radius:7px;background:#cfd5da}.preview-paper{position:relative;height:100%}.preview-paper.a4{width:100%}.preview-paper.a5{width:49.83165%}#preview-image{display:block;width:100%;height:100%}#preview-logos,#preview-values{position:absolute;inset:0}.preview-logo{position:absolute;object-fit:contain}.preview-value,.preview-value-large{position:absolute;color:#292929;font-family:Courier New,Courier,monospace;font-weight:600;line-height:1.25;white-space:nowrap}.preview-value{font-size:1.3cqh}.preview-value-large{font-size:1.5cqh}.preview-panel>.hint{margin:12px 0 0;text-align:right}dialog{width:min(600px,calc(100vw - 32px));padding:0;border:1px solid #d8dce0;border-radius:12px;color:#20252c;box-shadow:0 18px 60px #1e262e3d}dialog::backdrop{background:#191f2675}.dialog-form{padding:24px}.dialog-heading h2{margin-bottom:8px}.dialog-heading p{margin-bottom:18px;color:#56616d;font-size:.9rem}#fpl-input{display:block;width:100%;min-height:210px;padding:12px;border:1px solid #aeb6be;border-radius:8px;color:#20252c;font-family:SFMono-Regular,Consolas,monospace;font-size:.82rem;line-height:1.45;resize:vertical}#fpl-input:focus{outline:3px solid #8eb5d6;outline-offset:2px}.fpl-error{min-height:18px;margin:10px 0 0;color:#9d2525;font-size:.8rem;line-height:1.4}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.dialog-actions .download{width:auto;margin:0;padding:9px 14px}@media(max-width:760px){.app-shell{padding:28px 16px}.app-grid{grid-template-columns:1fr}.preview-panel{order:-1}}
