@font-face{font-family:'Bib DejaVu';src:url('vendor/tfpdf/font/unifont/DejaVuSansCondensed.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:'Bib DejaVu';src:url('vendor/tfpdf/font/unifont/DejaVuSansCondensed-Bold.ttf') format('truetype');font-weight:700 900;font-display:swap}
.bib-page{min-width:0}.bib-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;align-items:start}.bib-editor-layout .panel{min-width:0}.bib-workspace-head{display:flex;justify-content:space-between;align-items:start;gap:15px;flex-wrap:wrap}.bib-workspace-head h2{margin-bottom:6px}.bib-workspace-head p{margin-bottom:18px}.bib-workspace-head .btn{font-size:12px;padding:10px 12px}.bib-paper-wrap{padding:22px;background:var(--soft);border:1px solid var(--line);border-radius:8px}.bib-canvas{display:block;width:100%;height:auto;aspect-ratio:210/148.5;background:#fff;box-shadow:0 4px 15px #0002;overflow:visible;touch-action:none;user-select:none;font-family:'Bib DejaVu',Arial,sans-serif;color-scheme:light}.bib-safe-guide{fill:none;stroke:#b9c2bf;stroke-width:.15;stroke-dasharray:1 1;pointer-events:none}.bib-number-reserve{fill:#f6f8f7;stroke:#b4c5bc;stroke-width:.3;stroke-dasharray:2 1.5;pointer-events:none}.bib-center-caption{fill:#688073;font-family:Arial,sans-serif;font-size:2.1px;letter-spacing:.5px;pointer-events:none}.bib-number{fill:#000;font-size:62.0889px;font-weight:700;font-family:'Bib DejaVu',Arial,sans-serif;pointer-events:none}.bib-element{cursor:move;outline:0}.bib-element-hit{fill:#ffffff00;pointer-events:all}.bib-element-outline{fill:none;stroke:transparent;stroke-width:.4;pointer-events:none}.bib-element:hover .bib-element-outline{stroke:#85ac99;stroke-dasharray:1 1}.bib-element.is-selected .bib-element-outline,.bib-element:focus-visible .bib-element-outline{stroke:#18754d;stroke-dasharray:none}.bib-element svg{pointer-events:none}.bib-resize-handle{fill:#18754d;stroke:#fff;stroke-width:.4;cursor:nwse-resize}.bib-canvas-help{font-size:12px;color:var(--muted);line-height:1.6;margin:13px 0 20px}.bib-toolbox{gap:8px;align-items:end}.bib-toolbox>.btn{font-size:12px;padding:10px 11px;cursor:pointer}.bib-upload-button{position:relative;overflow:hidden}.bib-upload-button input{position:absolute;width:1px;height:1px;opacity:0;left:0;bottom:0}.bib-upload-button:focus-within{outline:3px solid var(--green);outline-offset:2px}.bib-field-select{display:grid;gap:6px;font-size:11px;color:var(--muted)}.bib-field-select select{border:1px solid var(--line);border-radius:7px;padding:10px;background:var(--surface);color:var(--ink);font-size:12px;max-width:100%}.bib-toolbox+.form-note{margin:14px 0}.bib-inspector{position:sticky;top:20px}.bib-inspector h2{font-size:19px}.bib-inspector .form{gap:13px}.bib-inspector .form .row{gap:10px;grid-template-columns:1fr 1fr}.bib-inspector .form input,.bib-inspector .form select{font-size:12px;padding:9px}.bib-inspector .form label{font-size:11px;gap:5px}.bib-inspector .form input[type=color]{padding:3px;height:35px}.bib-inspector .actions .btn{font-size:11px;padding:8px}.bib-inspector .small{overflow-wrap:anywhere}.bib-inspector .form-note{font-size:11px}.bib-layer{display:flex;align-items:center;gap:10px;text-align:left;width:100%;padding:10px;border:1px solid var(--line);border-radius:5px;margin:6px 0;background:var(--surface);color:var(--ink);font-size:12px;overflow-wrap:anywhere;word-break:break-word}.bib-layer span{display:grid;place-items:center;width:25px;min-width:25px;height:25px;border-radius:4px;background:var(--soft);font-weight:bold}.bib-layer.active{border-color:var(--green);box-shadow:inset 3px 0 var(--green)}.bib-save-state{font-size:12px;color:var(--muted);align-self:center}.bib-save-state.bib-unsaved{color:#ad6c12}.bib-section-heading{display:flex;align-items:start;gap:15px;margin-bottom:18px}.bib-section-heading h2{margin:0 0 6px}.bib-section-heading p{margin:0;color:var(--muted)}.bib-step{display:grid;place-items:center;border:1px solid var(--line);background:var(--soft);width:43px;height:43px;min-width:43px;border-radius:50%;font-weight:750;color:var(--green)}.bib-order-layout{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:35px}.bib-order-layout .form .row{grid-template-columns:1fr 1fr;gap:14px}.bib-order-layout .form textarea{min-height:80px}.bib-order-layout .notice p{margin:10px 0 0}.bib-order-layout .notice{font-size:13px}.bib-price-table{margin-bottom:16px}.bib-price-table td,.bib-price-table th{padding:12px 8px;font-size:12px;white-space:nowrap}.bib-price-table td:not(:first-child){font-weight:750}.bib-quote-result{display:grid;gap:5px;padding:20px;border:1px solid var(--green);border-radius:8px;background:var(--soft)}.bib-quote-result strong{font-size:28px}.bib-quote-result span{font-size:14px}.bib-quote-result small{color:var(--muted)}.bib-orders{display:grid;gap:15px}.bib-order-row{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:8px 0 20px}.bib-order-row:last-child{border-bottom:0}.bib-order-row>div:last-child{text-align:right}.bib-order-row strong{overflow-wrap:anywhere;font-size:14px}.bib-order-row p{margin:5px 0 12px}.bib-order-dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px 0;font-size:14px}.bib-order-dl dt{color:var(--muted)}.bib-order-dl dd{text-align:right;margin:0}.bib-address{white-space:pre-line;font-size:14px;overflow-wrap:anywhere}.bib-order-detail h3{font-size:17px;margin-top:23px}.bib-order-detail>.actions{margin:20px 0}.bib-order-detail>.form{margin-top:25px}.bib-admin-pricing>summary{cursor:pointer;font-size:19px;font-weight:700}.bib-admin-pricing>.form{margin-top:24px}.bib-tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.bib-media{border-top:1px solid var(--line);padding-top:15px;margin-top:15px}.bib-media summary{cursor:pointer;font-size:13px;font-weight:650}.bib-media #bib-assets{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.bib-asset{display:grid;width:90px;border:1px solid var(--line);border-radius:6px;padding:7px;background:var(--surface);color:var(--ink);gap:7px}.bib-asset img{width:74px;height:50px;object-fit:contain;background:white}.bib-asset span{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bib-creation-offer p{margin:8px 0 0}.bib-page [hidden]{display:none!important}html[data-theme=dark] .bib-save-state.bib-unsaved{color:#f0cf83}
@media(max-width:1100px){.bib-editor-layout{grid-template-columns:minmax(0,1fr) 245px}.bib-workspace{padding:18px}.bib-paper-wrap{padding:12px}.bib-order-layout{gap:24px}.bib-inspector{padding:18px}.bib-tier-grid{gap:12px}}
@media(max-width:850px){.bib-editor-layout{grid-template-columns:1fr}.bib-inspector{position:static}.bib-inspector .form{grid-template-columns:1fr 1fr;align-items:start}.bib-inspector .form>.actions,.bib-inspector .form>.error,.bib-inspector .form>.form-note{grid-column:1/-1}.bib-inspector #bib-layers{display:flex;flex-wrap:wrap;gap:8px}.bib-layer{width:auto;max-width:100%}.bib-order-layout{grid-template-columns:1fr}.bib-workspace-head{align-items:center}.bib-workspace-head p{font-size:12px}.bib-paper-wrap{padding:18px}}
@media(max-width:500px){.bib-workspace{padding:12px}.bib-paper-wrap{padding:9px}.bib-workspace-head h2{font-size:20px}.bib-workspace-head .btn{margin-bottom:14px}.bib-inspector .form{grid-template-columns:1fr}.bib-toolbox .btn{flex:1 1 auto}.bib-field-select{width:100%}.bib-field-select select{width:100%}.bib-tier-grid{grid-template-columns:1fr}.bib-order-layout .form .row{grid-template-columns:1fr}.bib-order-row{flex-direction:column}.bib-order-row>div:last-child{text-align:left}.bib-section-heading p{font-size:13px}.bib-section-heading h2{font-size:21px}.bib-step{width:35px;min-width:35px;height:35px;font-size:13px}.bib-order-dl{font-size:12px}.bib-price-table td,.bib-price-table th{font-size:11px}.bib-save-state{width:100%;align-self:start}.bib-inspector .form .row{grid-template-columns:1fr 1fr}.bib-order-panel{padding:18px 14px}}
@media(prefers-reduced-motion:reduce){.bib-page *{scroll-behavior:auto!important}}

.bib-event-chooser{display:flex;flex-wrap:wrap;gap:12px}.bib-order-panel [type=submit]:disabled{cursor:not-allowed}

.bib-job-status p{overflow-wrap:anywhere}.bib-job-status a{text-decoration:underline}

/* Only the event creation/editing dialog is expanded for the bib offer. */
#modal:has(#event-form){width:min(1040px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
#event-form .bib-create-offer{min-width:0;margin:0;padding:22px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}
#event-form .bib-create-offer>legend{padding:0 8px;font-weight:700}
#event-form .bib-create-layout{display:grid;grid-template-columns:minmax(220px,340px) minmax(0,1fr);gap:28px;align-items:center}
#event-form .bib-create-visual{display:grid;place-items:center;min-width:0;aspect-ratio:1;padding:12px;background:var(--soft);border:1px solid var(--line);border-radius:12px}
#event-form .bib-create-visual img{display:block;width:100%;height:auto;max-width:340px;aspect-ratio:1;object-fit:contain}
#event-form .bib-create-copy{display:grid;gap:18px;min-width:0}
#event-form .bib-create-copy p{margin:0}
#event-form .bib-create-copy .check{gap:10px}
@media(max-width:760px){#event-form .bib-create-layout{grid-template-columns:1fr;gap:20px}#event-form .bib-create-visual{width:min(100%,320px);justify-self:center}#event-form .bib-create-offer{padding:18px 16px}}

/* Editing controls stay together above the bib preview. */
.bib-editor-tools{min-width:0;margin:0 0 22px;padding:18px;border:1px solid var(--line);border-radius:10px;background:var(--soft);color:var(--ink)}
.bib-editor-tools .bib-toolbox{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin:0}
.bib-editor-tools .bib-toolbox>.btn{flex:1 1 130px;min-width:0;min-height:46px;padding:12px 15px;border:1px solid #624784;border-radius:8px;background:#624784;color:#fff;font-size:14px;font-weight:700;line-height:1.4;text-align:center;white-space:normal}
.bib-editor-tools .bib-toolbox>.bib-upload-button{border-color:#16684c;background:#16684c;color:#fff}
.bib-editor-tools .bib-toolbox>.bib-upload-button:has([data-bib-upload=logo]){border-color:#225f89;background:#225f89;color:#fff}
.bib-editor-tools .bib-toolbox>.btn:hover{background:#4f356e;border-color:#4f356e;color:#fff}
.bib-editor-tools .bib-toolbox>.bib-upload-button:hover{background:#0d513a;border-color:#0d513a;color:#fff}
.bib-editor-tools .bib-toolbox>.bib-upload-button:has([data-bib-upload=logo]):hover{background:#17496c;border-color:#17496c;color:#fff}
.bib-editor-tools .bib-field-select{flex:1 1 230px;min-width:0;width:auto;gap:7px;margin:0;color:var(--ink);font-size:13px;font-weight:650;line-height:1.4}
.bib-editor-tools .bib-field-select select{width:100%;min-width:0;min-height:46px;padding:11px 12px;border:1px solid #8465a6;border-radius:8px;background:#f4edf9;color:#402657;font-size:14px;font-weight:600;line-height:1.4;cursor:pointer}
.bib-editor-tools .bib-field-select select:hover{border-color:#624784;background:#ebe0f4}
.bib-editor-tools .bib-toolbox+.form-note{margin:14px 0 0;font-size:13px;line-height:1.65;color:var(--muted)}
.bib-editor-tools .bib-media{margin-top:16px;padding-top:14px}
.bib-editor-tools .bib-media>summary{min-height:44px;padding:11px 12px;border-radius:7px;background:var(--surface);color:var(--ink);font-size:14px;font-weight:650;line-height:1.5;overflow-wrap:anywhere}
.bib-editor-tools .bib-media>summary:hover{background:var(--canvas)}
.bib-editor-tools .bib-media #bib-assets{margin-top:12px}
.bib-editor-tools .bib-asset{min-height:44px}
.bib-editor-tools .bib-asset span{font-size:13px;line-height:1.4}
.bib-editor-tools :is(button,select,summary):focus-visible,.bib-editor-tools .bib-upload-button:focus-within{outline:3px solid var(--ink);outline-offset:3px}
html[data-theme=dark] .bib-editor-tools .bib-toolbox>.btn{border-color:#cbb0ed;background:#cbb0ed;color:#332047}
html[data-theme=dark] .bib-editor-tools .bib-toolbox>.bib-upload-button{border-color:#95dfb9;background:#95dfb9;color:#123b28}
html[data-theme=dark] .bib-editor-tools .bib-toolbox>.bib-upload-button:has([data-bib-upload=logo]){border-color:#9acbed;background:#9acbed;color:#17334b}
html[data-theme=dark] .bib-editor-tools .bib-toolbox>.btn:hover{border-color:#decbf5;background:#decbf5;color:#332047}
html[data-theme=dark] .bib-editor-tools .bib-toolbox>.bib-upload-button:hover{border-color:#b0efcf;background:#b0efcf;color:#123b28}
html[data-theme=dark] .bib-editor-tools .bib-toolbox>.bib-upload-button:has([data-bib-upload=logo]):hover{border-color:#bcdef6;background:#bcdef6;color:#17334b}
html[data-theme=dark] .bib-editor-tools .bib-field-select select{border-color:#b79bd9;background:#3d304d;color:#f1e6ff}
html[data-theme=dark] .bib-editor-tools .bib-field-select select:hover{border-color:#d3b9f2;background:#4a385e}
@media(max-width:520px){.bib-editor-tools{padding:14px 12px;margin-bottom:18px}.bib-editor-tools .bib-toolbox{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.bib-editor-tools .bib-toolbox>.btn{width:100%;min-height:46px;padding:11px 9px}.bib-editor-tools .bib-field-select{grid-column:1/-1;width:100%;margin-top:3px}.bib-editor-tools .bib-media>summary{padding:11px 9px}}
@media(max-width:360px){.bib-editor-tools .bib-toolbox{grid-template-columns:1fr}}

/* Text capacity follows the selected field and its actual print layout. */
.bib-canvas text{font-kerning:none}
.bib-inspector .form>.bib-text-capacity{grid-column:1/-1}
.bib-text-capacity{display:grid;gap:9px;min-width:0;padding:14px;border:1px solid #ead9a9;border-radius:8px;background:#fff9e9;color:#182520;font-size:12px;line-height:1.55;overflow-wrap:anywhere}
.bib-text-capacity>strong{font-size:13px}
.bib-text-capacity .bib-capacity-total{font-size:16px;font-weight:750;line-height:1.35}
.bib-text-capacity p{margin:0}
.bib-text-capacity .bib-capacity-note{color:#655a40;font-size:11px}
.bib-text-capacity .bib-capacity-status{padding:10px;border:1px solid transparent;border-radius:6px}
.bib-text-capacity .is-ok{background:#e2f2e9;color:#145039;border-color:#aacdbb}
.bib-text-capacity .is-warning{background:#fff0cc;color:#704609;border-color:#d7b776}
.bib-text-capacity .is-error{background:#fce6e3;color:#8c2d24;border-color:#dba9a2;font-weight:650}
html[data-theme=dark] .bib-text-capacity{background:#3b321e;border-color:#8c7644;color:#f7e6bc}
html[data-theme=dark] .bib-text-capacity .bib-capacity-note{color:#e2cfa3}
html[data-theme=dark] .bib-text-capacity .is-ok{background:#183d2e;color:#b3eed0;border-color:#40735b}
html[data-theme=dark] .bib-text-capacity .is-warning{background:#493b21;color:#ffe0a1;border-color:#8f784b}
html[data-theme=dark] .bib-text-capacity .is-error{background:#4a2928;color:#ffcac3;border-color:#9b5d57}

/* Official sponsor layer: fixed print dimensions, removable with its discount. */
.bib-brand-offer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;margin:0 0 20px;border:1px solid var(--line);border-radius:9px;background:var(--soft);color:var(--ink);font-size:13px;line-height:1.5}
.bib-brand-offer:empty{display:none}
.bib-brand-offer strong{font-size:14px}
.bib-brand-offer p{margin:5px 0 0;color:var(--muted)}
.bib-brand-offer .btn{flex-shrink:0;min-height:44px;font-size:13px}
.bib-brand-element{cursor:pointer}
.bib-brand-details{display:grid;gap:14px;font-size:13px;line-height:1.55}
.bib-brand-details p{margin:0}
.bib-brand-details img{display:block;width:100%;height:auto;padding:10px;background:white;border-radius:5px}
.bib-brand-details dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
.bib-brand-details dt{color:var(--muted)}
.bib-brand-details dd{margin:0;text-align:right}
.bib-brand-discount{margin:10px 0;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--soft);color:var(--ink);font-size:13px;line-height:1.5}
.bib-quote-result .bib-brand-discount strong{font-size:13px}
@media(max-width:600px){.bib-brand-offer{align-items:stretch;flex-direction:column;padding:14px}.bib-brand-offer .btn{width:100%}}

.bib-quote-breakdown{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 14px;margin:12px 0;font-size:14px}
.bib-quote-breakdown dt{margin:0;color:var(--muted)}
.bib-quote-breakdown dd{margin:0;text-align:right;font-weight:700;white-space:nowrap}

/* Bib contribution to registration: one chipped bib per pilot. */
.bib-registration-settings{display:grid;gap:14px;min-width:0;margin:0;padding:18px;border:1px solid var(--line);border-radius:9px;background:var(--soft);color:var(--ink)}
.bib-registration-settings>legend{padding:0 7px;font-weight:750;font-size:15px}
.bib-registration-settings p{margin:0}
.bib-registration-settings .form-note{font-size:13px;line-height:1.55}
.bib-registration-settings [hidden]{display:none!important}
.bib-registration-modes{display:grid;gap:8px}
.bib-registration-modes>.check{display:flex;align-items:center;gap:10px;min-height:44px;margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font-size:14px;line-height:1.4;cursor:pointer}
.bib-registration-modes>.check:has(input:checked){border-color:var(--green,#17674f);box-shadow:inset 3px 0 0 var(--green,#17674f)}
.bib-registration-modes input[type=radio]{width:18px;height:18px;flex:0 0 18px;margin:0;accent-color:var(--green,#17674f)}
.bib-registration-modes>.check:focus-within{outline:2px solid var(--ink);outline-offset:2px}
.bib-registration-price{display:grid;gap:12px;min-width:0}
.bib-registration-price label{display:grid;gap:8px;font-size:14px}
.bib-registration-price input{width:100%;min-width:0;min-height:44px}
.bib-registration-price .btn{justify-self:start;min-height:44px;max-width:100%;white-space:normal;font-size:13px}
.bib-registration-example{padding:12px;border-left:3px solid var(--green,#17674f);border-radius:4px;background:var(--surface);color:var(--ink);font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.bib-registration-panel .form{max-width:780px}
.bib-registration-panel h2{margin-top:0}
.bib-registration-snapshot{padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--soft);line-height:1.55}
.bib-registration-quote-error .btn{display:block;margin-top:12px;min-height:44px;font-size:14px}
html[data-theme=dark] .bib-registration-modes>.check:has(input:checked){border-color:#88daba;box-shadow:inset 3px 0 0 #88daba}
html[data-theme=dark] .bib-registration-modes input[type=radio]{accent-color:#88daba}
html[data-theme=dark] .bib-registration-example{border-left-color:#88daba}
@media(max-width:520px){.bib-registration-settings{padding:14px 12px}.bib-registration-modes>.check{padding:10px}.bib-registration-price .btn{width:100%;justify-self:stretch}.bib-registration-panel{padding:18px 14px}}

.manifestation-tools{padding:16px}
.category-pricing small{display:block}
