.jlb{--jlb-ink:#0b3f73;--jlb-muted:#506479;--jlb-accent:#0b3f73;--jlb-border:#ccd9e6;--jlb-soft:#edf3f8;box-sizing:border-box;color:var(--jlb-ink);font:16px/1.55 "Source Sans Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#ffffff;border:1px solid var(--jlb-border);border-radius:0;padding:clamp(18px,3vw,40px);max-width:1250px;margin:28px auto;text-align:left;color-scheme:light}
.jlb *,.jlb *::before,.jlb *::after{box-sizing:border-box}.jlb h2,.jlb h3,.jlb p,.jlb fieldset,.jlb legend{padding:0;margin:0;color:inherit;font-family:inherit;text-transform:none;letter-spacing:normal}.jlb button,.jlb input{font:inherit;max-width:100%;margin:0}.jlb button{cursor:pointer}.jlb button:disabled{cursor:wait;opacity:.65}.jlb input:focus-visible,.jlb button:focus-visible{outline:3px solid #0b3f73;outline-offset:3px}.jlb [hidden]{display:none!important}
.jlb .jlb-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.jlb .jlb-eyebrow{font-size:10px;letter-spacing:.16em;font-weight:800;color:#b30909;display:block}.jlb .jlb-header h2{font-size:clamp(27px,3vw,39px);line-height:1.16;font-weight:750;margin:9px 0 10px;letter-spacing:-.035em}.jlb .jlb-header p{color:var(--jlb-muted);font-size:15px}.jlb .jlb-header-tag{font-size:11px;white-space:nowrap;padding:8px 12px;background:#e4edf5;border-radius:30px;color:#0b3f73;font-weight:600}.jlb-header-tag>span{color:#b30909;margin-right:5px}
.jlb .jlb-workspace{display:grid;grid-template-columns:minmax(250px,320px) minmax(0,1fr);gap:28px}.jlb .jlb-controls{display:flex;flex-direction:column;gap:18px;min-width:0}.jlb .jlb-card{min-width:0;border:1px solid var(--jlb-border);background:#fff;border-radius:0;padding:19px 20px 21px}.jlb .jlb-card legend{float:left;width:100%;display:flex;align-items:center;gap:10px;font-size:15px;font-weight:750;margin-bottom:10px}.jlb .jlb-card legend+p{clear:both}.jlb .jlb-card legend>span{font-size:10px;font-weight:700;color:#ffffff;background:#e4edf5;border-radius:2px;padding:5px 7px}.jlb .jlb-help{color:var(--jlb-muted);font-size:12px;line-height:1.6}.jlb .jlb-small{font-size:11px}.jlb .jlb-field{display:block;margin-top:13px;font-size:11px;font-weight:650;color:#0b3f73}.jlb .jlb-field input{display:block;width:100%;padding:11px 12px;background:#ffffff;color:#0b3f73;border:1px solid #bfcede;border-radius:2px;margin-top:4px;font-size:15px;line-height:1.35;box-shadow:none;height:auto}.jlb .jlb-field input:focus{border-color:#0b3f73}.jlb .jlb-field~.jlb-help{margin-top:12px}
.jlb .jlb-color-field{margin-top:17px}.jlb .jlb-color-field>label{font-size:12px;font-weight:750;display:block}.jlb .jlb-color-field small{display:block;font-size:10px;font-weight:400;color:var(--jlb-muted);margin-top:1px}.jlb .jlb-color-inputs{display:flex;gap:8px;align-items:center;margin-top:7px}.jlb input[type=color]{border:1px solid #bfcede;padding:3px;width:43px;height:38px;border-radius:2px;background:#fff;cursor:pointer;flex-shrink:0}.jlb input[type=color]::-webkit-color-swatch-wrapper{padding:1px}.jlb input[type=color]::-webkit-color-swatch{border:0;border-radius:3px}.jlb input[type=color]::-moz-color-swatch{border:0;border-radius:3px}.jlb input[data-hex]{width:110px;min-width:0;max-width:100%;height:38px;padding:8px 10px;color:var(--jlb-ink);background:#ffffff;border:1px solid #bfcede;border-radius:2px;font:12px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;box-shadow:none}.jlb input[aria-invalid=true]{border-color:#b30909;background:#fff4f4}
.jlb .jlb-contrast-card{border:1px solid var(--jlb-border);border-radius:0;padding:18px 20px;background:#e4edf5}.jlb .jlb-contrast-card h3{font-size:14px;font-weight:750;margin:0 0 13px}.jlb .jlb-background-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:15px;font-size:11px}.jlb .jlb-background-row .jlb-color-inputs{margin:0;gap:5px}.jlb .jlb-background-row input[type=color]{width:32px;height:30px}.jlb .jlb-background-row input[data-hex]{width:83px;height:30px;font-size:10px;padding:5px 7px}.jlb .jlb-ratio{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:10px;border-top:1px solid #c3d2e0;padding:10px 0;font-size:11px}.jlb .jlb-ratio strong{font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}.jlb .jlb-ratio>span:last-child{grid-column:1/-1;font-size:10px;margin-top:1px}.jlb .jlb-ratio-low>span:last-child{color:#8d4911}.jlb .jlb-ratio-good>span:last-child{color:#0b3f73}.jlb .jlb-contrast-card>.jlb-help{margin-top:6px}.jlb .jlb-reset{align-self:center;background:transparent;border:0;padding:5px 8px;text-decoration:underline;text-underline-offset:3px;color:var(--jlb-muted);font-size:11px;box-shadow:none}
.jlb .jlb-preview-column{min-width:0;display:flex;flex-direction:column}.jlb .jlb-preview-top{display:flex;justify-content:space-between;align-items:center;padding:5px 1px 15px}.jlb .jlb-live{font-size:10px;color:#0b3f73;display:flex;align-items:center;gap:6px}.jlb .jlb-live i{width:6px;height:6px;background:#b30909;border-radius:50%}.jlb .jlb-layouts{border:0;min-width:0;margin:0 0 18px}.jlb .jlb-layouts legend{font-size:11px;color:var(--jlb-muted);margin-bottom:8px}.jlb .jlb-layout-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.jlb .jlb-layout-option{position:relative;min-width:0;cursor:pointer;display:block}.jlb .jlb-layout-option input{position:absolute;width:1px;height:1px;opacity:0;top:1px;left:1px}.jlb .jlb-layout-tile{height:99px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:#fff;border:1px solid var(--jlb-border);border-radius:2px;padding:7px;transition:border-color .15s,background .15s}.jlb .jlb-layout-tile>[data-layout-thumb]{display:flex;width:100%;height:54px;align-items:center;justify-content:center}.jlb .jlb-layout-tile svg{width:100%;height:100%;display:block;object-fit:contain}.jlb .jlb-layout-tile>span:last-child{font-size:10px;font-weight:650;text-align:center;line-height:1.2}.jlb .jlb-layout-option input:checked+.jlb-layout-tile{border:2px solid #0b3f73;background:#eef4fa;padding:6px}.jlb .jlb-layout-option input:focus-visible+.jlb-layout-tile{outline:3px solid #0b3f73;outline-offset:3px}.jlb .jlb-layout-option input:disabled+.jlb-layout-tile{cursor:wait}
.jlb .jlb-stage{border:1px solid var(--jlb-border);border-radius:0;height:365px;background:#fff;display:flex;align-items:center;justify-content:center;padding:clamp(14px,2.5vw,34px);overflow:hidden;transition:none}.jlb .jlb-preview{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0}.jlb .jlb-preview svg{width:100%;height:100%;display:block;max-width:100%;max-height:100%;overflow:visible}.jlb .jlb-preview-footer{display:flex;justify-content:space-between;gap:12px;color:var(--jlb-muted);font-size:9px;padding:11px 2px 0}.jlb .jlb-preview-footer>span:first-child{font-weight:700;white-space:nowrap}.jlb .jlb-preview-footer>span:last-child{text-align:right}.jlb .jlb-status{min-height:46px;padding:12px 2px;font-size:11px;color:var(--jlb-muted);line-height:1.5;overflow-wrap:anywhere}.jlb .jlb-status.jlb-error{color:#b30909;font-weight:600}
.jlb .jlb-download-card{margin-top:auto;background:#0b3f73;color:#fff;border-radius:0;padding:25px 26px}.jlb .jlb-download-card .jlb-eyebrow{color:#dce8f5;font-size:9px}.jlb .jlb-download-card h3{font-size:22px;line-height:1.25;font-weight:650;letter-spacing:-.02em;margin:9px 0 10px;color:#fff}.jlb .jlb-download-copy>p{font-size:12px;color:#e8f0f8;line-height:1.7}.jlb .jlb-format-tags{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0 21px}.jlb .jlb-format-tags span{border:1px solid #7594b4;border-radius:2px;padding:4px 8px;font-size:9px;color:#ffffff}.jlb .jlb-download{display:flex;justify-content:center;align-items:center;gap:10px;width:100%;background:#ffffff;color:#0b3f73;border:0;border-radius:2px;padding:14px 10px;font-size:13px;font-weight:750;line-height:1.3;box-shadow:none;text-transform:none;letter-spacing:normal;transition:background .15s}.jlb .jlb-download:hover:not(:disabled){background:#e4edf5}.jlb .jlb-download>span{font-size:19px;line-height:1}.jlb .jlb-download-card .jlb-download-note{font-size:9px;color:#d5e3f1;text-align:center;margin-top:11px;line-height:1.6}.jlb progress{width:100%;height:8px;display:block;margin-top:15px;accent-color:#ffffff}
@media(max-width:800px){.jlb{padding:20px;border-radius:0}.jlb .jlb-workspace{grid-template-columns:260px minmax(0,1fr);gap:18px}.jlb .jlb-header-tag{display:none}.jlb .jlb-stage{height:310px;padding:15px}.jlb .jlb-layout-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jlb .jlb-layout-tile{height:83px}.jlb .jlb-layout-tile>[data-layout-thumb]{height:40px}.jlb .jlb-download-card{padding:20px}.jlb .jlb-preview-footer{flex-direction:column;gap:2px}.jlb .jlb-preview-footer>span:last-child{text-align:left}}
@media(max-width:620px){.jlb{margin:16px auto;padding:17px}.jlb .jlb-header{margin-bottom:22px}.jlb .jlb-header h2{font-size:28px}.jlb .jlb-header p{font-size:13px}.jlb .jlb-workspace{grid-template-columns:minmax(0,1fr);gap:26px}.jlb .jlb-controls{gap:14px}.jlb .jlb-card{padding:17px}.jlb .jlb-layout-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.jlb .jlb-layout-tile{padding:5px;height:81px}.jlb .jlb-layout-option input:checked+.jlb-layout-tile{padding:4px}.jlb .jlb-layout-tile>span:last-child{font-size:8px}.jlb .jlb-stage{height:300px;padding:17px}.jlb .jlb-preview-footer{flex-direction:row}.jlb .jlb-preview-footer>span:last-child{text-align:right;max-width:67%}.jlb .jlb-download-card h3{font-size:22px}}
.jlb{container-type:inline-size}
@container(max-width:700px){.jlb .jlb-workspace{grid-template-columns:minmax(0,1fr);gap:26px}.jlb .jlb-header-tag{display:none}.jlb .jlb-layout-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.jlb .jlb-layout-tile{height:92px}.jlb .jlb-stage{height:320px}.jlb .jlb-download-card{margin-top:0}}
@container(max-width:380px){.jlb .jlb-layout-tile>span:last-child{font-size:8px}.jlb .jlb-layout-tile{padding:5px;height:81px}.jlb .jlb-layout-option input:checked+.jlb-layout-tile{padding:4px}}
@media(prefers-reduced-motion:reduce){.jlb *{transition:none!important}}

/* Match the typography and blue/red palette of ev-jugend-westfalen.de.
   Fonts already provided by the host theme are reused; no font service is loaded. */
.jlb{border:0}
.jlb .jlb-header{border-bottom:3px solid #0b3f73;padding-bottom:25px;position:relative}
.jlb .jlb-header::after{content:"";position:absolute;bottom:-3px;left:0;width:84px;height:3px;background:#b30909}
.jlb .jlb-header h2,.jlb .jlb-download-card h3,.jlb .jlb-contrast-card h3,.jlb .jlb-card legend{font-family:HandVetica,"Source Sans Pro","Arial Narrow",sans-serif;letter-spacing:normal}
.jlb .jlb-header h2{font-weight:600;line-height:1.25}
.jlb .jlb-card{background:#e4edf5;border:0}
.jlb .jlb-card legend>span{background:#b30909;font-family:"Source Sans Pro",sans-serif}
.jlb .jlb-contrast-card{background:#edf3f8}
.jlb .jlb-header-tag{border-radius:2px;background:#e4edf5}
.jlb .jlb-layout-option input:checked+.jlb-layout-tile{border-bottom:3px solid #b30909;padding-bottom:5px}
.jlb .jlb-download-card{position:relative;margin-top:auto;border-top:4px solid #b30909}
.jlb .jlb-download{text-transform:uppercase;font-size:12px;letter-spacing:.025em}
.jlb .jlb-format-tags span{border-radius:0}
@container(max-width:700px){.jlb .jlb-download-card{margin-top:0}}
