/* BodyBoard 1.0.0 — couches produit extraites du kit fourni.
   La couche `docs` de l'explorateur n'est PAS reprise : elle ne sert qu'au site
   de documentation. Aucune valeur n'a été modifiée. */

@layer tokens, base, components, patterns, utilities;

@layer tokens {
:root {
  color-scheme: dark;
  --ds-bg: #050b13;
  --ds-scene: #010711;
  --ds-surface: #0c1923;
  --ds-surface-raised: #10232f;
  --ds-surface-input: #0a1b28;
  --ds-panel: rgba(4,20,33,.96);
  --ds-overlay: rgba(1,8,12,.72);
  --ds-line: #233746;
  --ds-line-cyan: rgba(57,187,239,.26);
  --ds-line-control: #52758a;
  --ds-cyan: #64e6f5;
  --ds-cyan-hover: #a1f5ff;
  --ds-volt: #d7ff3e;
  --ds-volt-hover: #e9ff94;
  --ds-ink: #06202b;
  --ds-ink-volt: #111705;
  --ds-text: #e7f2f7;
  --ds-secondary: #b7d3df;
  --ds-muted: #8aa1af;
  --ds-success: #9ed6c7;
  --ds-success-bg: #102b29;
  --ds-warning: #f2c879;
  --ds-warning-bg: #302719;
  --ds-danger: #ffb5b2;
  --ds-danger-bg: #352023;
  --ds-info-bg: #102a39;
  --ds-disabled: #6e8492;
  --ds-white: #ffffff;
  --ds-transparent: transparent;
  --ds-neon: #23c8f1;
  --ds-neon-dim: #0d4665;
  --ds-ghost: rgba(100,230,245,.065);
  --ds-selection: #1c7586;
  --ds-shadow-color: rgba(0,0,0,.55);
  --ds-scanline: rgba(0,0,0,.055);
  --ds-glow-color: rgba(0,191,255,.12);
  --ds-focus-surface: #050b13;
  --ds-space-0: 0;
  --ds-space-1: 4px;
  --ds-space-2: 8px;
  --ds-space-3: 12px;
  --ds-space-4: 16px;
  --ds-space-5: 20px;
  --ds-space-6: 24px;
  --ds-space-8: 32px;
  --ds-space-10: 40px;
  --ds-space-12: 48px;
  --ds-space-16: 64px;
  --ds-space-20: 80px;
  --ds-space-24: 96px;
  --ds-radius-xs: 4px;
  --ds-radius-sm: 8px;
  --ds-radius-md: 12px;
  --ds-radius-lg: 16px;
  --ds-radius-xl: 24px;
  --ds-radius-pill: 999px;
  --ds-control-sm: 44px;
  --ds-control-md: 48px;
  --ds-control-lg: 52px;
  --ds-icon-sm: 16px;
  --ds-icon-md: 20px;
  --ds-icon-lg: 24px;
  --ds-font-xs: 11px;
  --ds-font-sm: 12px;
  --ds-font-label: 13px;
  --ds-font-body: 14px;
  --ds-font-input: 16px;
  --ds-font-title: 18px;
  --ds-font-h3: 24px;
  --ds-font-h2: 32px;
  --ds-font-h1: 48px;
  --ds-layout-content: 1200px;
  --ds-layout-reading: 680px;
  --ds-layout-sidebar: 248px;
  --ds-sheet-width: 400px;
  --ds-modal-width: 480px;
  --ds-frame-inset: 12px;
  --ds-hud-inset: 40px;
  --ds-z-base: 0;
  --ds-z-scene: 1;
  --ds-z-pins: 3;
  --ds-z-hud: 10;
  --ds-z-sticky: 20;
  --ds-z-overlay: 30;
  --ds-z-dialog: 31;
  --ds-z-toast: 50;
  --ds-z-tooltip: 60;
  --ds-weight-normal: 400;
  --ds-weight-medium: 500;
  --ds-weight-semibold: 600;
  --ds-weight-bold: 700;
  --ds-line-tight: 1.15;
  --ds-line-heading: 1.3;
  --ds-line-body: 1.6;
  --ds-line-label: 1.4;
  --ds-font-ui: "Geist Variable", "Space Grotesk", Arial, "Helvetica Neue", sans-serif;
  --ds-font-display: "Space Grotesk", "Geist Variable", Arial, sans-serif;
  --ds-font-clock: Orbitron, "Space Grotesk", ui-monospace, monospace;
  --ds-font-mono: ui-monospace, SFMono-Regular, Consolas, monospace;
  --ds-duration-fast: 120ms;
  --ds-duration-base: 180ms;
  --ds-duration-slow: 260ms;
  --ds-ease: cubic-bezier(.2,.75,.2,1);
  --ds-shadow-panel: 0 24px 80px var(--ds-shadow-color);
  --ds-shadow-action: 0 0 22px var(--ds-glow-color);
  --ds-focus-ring: 0 0 0 2px var(--ds-focus-surface), 0 0 0 4px var(--ds-accent);
  --ds-accent: var(--ds-cyan);
  --ds-accent-hover: var(--ds-cyan-hover);
  --ds-action-ink: var(--ds-ink);
}
[data-theme="volt"] { --ds-accent:var(--ds-volt); --ds-accent-hover:var(--ds-volt-hover); --ds-action-ink:var(--ds-ink-volt); }
[data-font="bodyboard"] { --ds-font-ui:"Space Grotesk", Arial, sans-serif; }
}

@layer base {
 *,:before,:after{box-sizing:border-box}
 html{background:var(--ds-bg);color:var(--ds-text);font-family:var(--ds-font-ui);font-size:var(--ds-font-body);line-height:var(--ds-line-body);-webkit-font-smoothing:antialiased;scrollbar-color:var(--ds-line-control) var(--ds-bg)}
 body{margin:0}button,input,textarea,select{font:inherit;color:inherit}button,a,label,input,summary{touch-action:manipulation}button{cursor:pointer}a{color:var(--ds-accent);text-underline-offset:4px}button{border:0;background:none}button:disabled,input:disabled,textarea:disabled,select:disabled{cursor:not-allowed}svg,img{vertical-align:middle}img{max-width:100%}h1,h2,h3,h4,p{margin:0}h1,h2,h3{line-height:var(--ds-line-heading);text-wrap:balance}p{max-width:75ch}fieldset{min-inline-size:0}::selection{background:var(--ds-selection);color:var(--ds-white)}:focus-visible{outline:2px solid var(--ds-accent);outline-offset:4px}[hidden]{display:none!important}
 @media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
}

@layer components {
 .bb-sprite{position:absolute;width:0;height:0;overflow:hidden}.bb-icon{width:var(--ds-icon-md);height:var(--ds-icon-md);fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.bb-icon--sm{width:var(--ds-icon-sm);height:var(--ds-icon-sm)}
 .bb-brand{display:inline-flex;gap:10px;align-items:center;font-size:14px;font-weight:700;letter-spacing:1.4px;color:var(--ds-text);text-decoration:none}.bb-brand>svg{width:30px;height:30px;color:var(--ds-accent)}
 .bb-btn{--button-bg:var(--ds-accent);--button-text:var(--ds-action-ink);display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:var(--ds-control-md);padding:12px 18px;border:1px solid var(--ds-transparent);border-radius:var(--ds-radius-sm);font-size:var(--ds-font-label);line-height:1.35;font-weight:600;background:var(--button-bg);color:var(--button-text);text-decoration:none;transition:background var(--ds-duration-base),border-color var(--ds-duration-base),transform var(--ds-duration-base);position:relative;white-space:normal;text-align:center}
 .bb-btn:hover:not(:disabled):not([aria-disabled=true]){background:var(--ds-accent-hover)}.bb-btn:active:not(:disabled){transform:translateY(1px)}.bb-btn:focus-visible{outline:none;box-shadow:var(--ds-focus-ring)}.bb-btn--secondary{--button-bg:var(--ds-surface);--button-text:var(--ds-text);border-color:var(--ds-line-control)}.bb-btn--secondary:hover:not(:disabled){background:var(--ds-surface-raised);border-color:var(--ds-accent)}.bb-btn--ghost{--button-bg:var(--ds-transparent);--button-text:var(--ds-secondary)}.bb-btn--ghost:hover:not(:disabled){background:var(--ds-ghost);color:var(--ds-text)}.bb-btn--danger{--button-bg:var(--ds-danger);--button-text:var(--ds-ink)}.bb-btn--danger:hover:not(:disabled){background:var(--ds-danger);filter:brightness(1.08)}.bb-btn--sm{min-height:var(--ds-control-sm);padding:8px 14px;font-size:12px}.bb-btn--lg{min-height:var(--ds-control-lg);padding:14px 22px;font-size:14px}.bb-btn--block{width:100%}.bb-btn--glow{box-shadow:var(--ds-shadow-action)}.bb-btn--icon{width:var(--ds-control-sm);height:var(--ds-control-sm);min-height:var(--ds-control-sm);padding:10px;flex-shrink:0}
 .bb-btn:disabled,.bb-btn[aria-disabled=true]{opacity:.48;box-shadow:none;pointer-events:none}.bb-btn[aria-busy=true]{cursor:wait}.bb-btn[aria-busy=true] .bb-btn__label{opacity:.75}.bb-spinner{width:16px;height:16px;display:inline-block;border:2px solid currentColor;border-right-color:var(--ds-transparent);border-radius:50%;animation:bb-spin .8s linear infinite;flex-shrink:0}@keyframes bb-spin{to{transform:rotate(1turn)}}
 .bb-text-link{display:inline-flex;gap:6px;align-items:center;min-height:44px;color:var(--ds-accent);font-size:13px;text-decoration:underline;text-underline-offset:4px;background:none;padding:0}.bb-text-link:hover{color:var(--ds-accent-hover)}
 .bb-segmented{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--ds-line);border-radius:var(--ds-radius-sm);background:var(--ds-bg)}.bb-segmented button{padding:7px 14px;min-height:38px;min-width:44px;border-radius:5px;color:var(--ds-muted);font-size:12px}.bb-segmented button[aria-pressed=true]{background:var(--ds-surface-raised);color:var(--ds-text)}
 .bb-tabs{display:flex;gap:20px;border-bottom:1px solid var(--ds-line);overflow:auto}.bb-tab{min-height:48px;padding:10px 2px;border-bottom:2px solid var(--ds-transparent);color:var(--ds-muted);font-weight:500;white-space:nowrap}.bb-tab[aria-selected=true]{color:var(--ds-accent);border-bottom-color:var(--ds-accent)}.bb-tabpanel{padding:20px 0;color:var(--ds-secondary)}
 .bb-badge{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 8px;border:1px solid var(--ds-line);border-radius:5px;background:var(--ds-surface);color:var(--ds-secondary);font-size:11px;font-weight:500;line-height:1.4;white-space:nowrap}.bb-badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.bb-badge--available,.bb-badge--info{color:var(--ds-accent);background:var(--ds-info-bg);border-color:var(--ds-line-cyan)}.bb-badge--reserved{color:var(--ds-warning);background:var(--ds-warning-bg)}.bb-badge--success{color:var(--ds-success);background:var(--ds-success-bg)}.bb-badge--danger{color:var(--ds-danger);background:var(--ds-danger-bg)}.bb-badge--plain:before{display:none}
 .bb-avatar{display:inline-grid;place-items:center;border:1px solid var(--ds-line-control);background:var(--ds-surface-raised);border-radius:50%;width:44px;height:44px;font-size:12px;color:var(--ds-secondary);overflow:hidden;flex-shrink:0}.bb-avatar--sm{width:32px;height:32px;font-size:10px}.bb-avatar--lg{width:64px;height:64px;font-size:18px}.bb-avatar img{width:100%;height:100%;object-fit:cover}.bb-person{display:flex;gap:10px;align-items:center}.bb-person strong{font-size:13px;font-weight:600;display:block}.bb-person small{color:var(--ds-muted);font-size:11px;display:block}
 .bb-logo{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:64px;height:64px;background:var(--ds-surface-raised);border:1px solid var(--ds-line);border-radius:12px;color:var(--ds-accent);font-size:18px;font-weight:700;letter-spacing:-1px}.bb-logo--light{background:var(--ds-text);color:var(--ds-ink)}.bb-logo--large{width:128px;height:128px;border-radius:20px;font-size:36px}.bb-logo img{max-width:80%;max-height:80%;object-fit:contain}
 .bb-field{display:flex;flex-direction:column;gap:7px}.bb-field label,.bb-field legend,.bb-label{font-size:13px;font-weight:500;color:var(--ds-secondary)}.bb-field__top{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.bb-field__top small{font-size:11px;color:var(--ds-muted)}.bb-input{display:block;width:100%;min-height:48px;padding:11px 12px;border:1px solid var(--ds-line-control);border-radius:8px;background:var(--ds-surface-input);font-size:16px;line-height:1.5;color:var(--ds-text)}.bb-input::placeholder{color:var(--ds-muted);opacity:1}.bb-input:focus-visible{outline:2px solid var(--ds-accent);outline-offset:2px}.bb-input[aria-invalid=true]{border-color:var(--ds-danger)}.bb-input:disabled{opacity:.5}.bb-field__hint{font-size:12px;line-height:1.6;color:var(--ds-muted)}.bb-field__error{font-size:12px;color:var(--ds-danger)}textarea.bb-input{resize:vertical;min-height:104px}select.bb-input{padding-right:34px}.bb-fieldset{border:0;margin:0;padding:0;display:grid;gap:10px}.bb-fieldset legend{padding:0 0 12px;font-size:13px;color:var(--ds-secondary)}
 .bb-check,.bb-radio{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--ds-secondary);min-height:44px;padding:8px 0;cursor:pointer}.bb-check input,.bb-radio input{width:18px;height:18px;accent-color:var(--ds-accent);margin:2px 0 0;flex-shrink:0}.bb-check small,.bb-radio small{display:block;font-size:11px;color:var(--ds-muted);margin-top:4px}.bb-radio-card{padding:14px;border:1px solid var(--ds-line-control);border-radius:8px;cursor:pointer}.bb-radio-card:has(input:checked){border-color:var(--ds-accent);background:var(--ds-ghost)}
 .bb-switch{display:flex;gap:12px;align-items:center;font-size:13px;min-height:44px;cursor:pointer}.bb-switch input{position:absolute;opacity:0;width:1px;height:1px}.bb-switch__track{position:relative;width:40px;height:24px;border:1px solid var(--ds-line-control);background:var(--ds-surface-raised);border-radius:20px;flex-shrink:0}.bb-switch__track:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;background:var(--ds-muted);border-radius:50%;transition:transform var(--ds-duration-base),background var(--ds-duration-base)}.bb-switch input:checked+.bb-switch__track{background:var(--ds-accent);border-color:var(--ds-accent)}.bb-switch input:checked+.bb-switch__track:after{transform:translateX(16px);background:var(--ds-action-ink)}.bb-switch input:focus-visible+.bb-switch__track{outline:2px solid var(--ds-accent);outline-offset:4px}.bb-switch input:disabled~*{opacity:.5}
 .bb-input-group{display:flex;align-items:center;border:1px solid var(--ds-line-control);border-radius:8px;background:var(--ds-surface-input);overflow:hidden}.bb-input-group>span{padding-left:14px;font-size:16px;color:var(--ds-muted)}.bb-input-group .bb-input{border:0;background:none;outline-offset:-3px}.bb-upload{display:flex;align-items:center;gap:16px;padding:20px;border:1px dashed var(--ds-line-control);border-radius:12px;background:var(--ds-surface-input);position:relative;cursor:pointer;min-height:100px}.bb-upload:focus-within{outline:2px solid var(--ds-accent);outline-offset:3px}.bb-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.bb-upload img{width:52px;height:52px;object-fit:contain;flex-shrink:0}.bb-upload strong{display:block;font-size:13px}.bb-upload small{color:var(--ds-muted);display:block;margin-top:4px;font-size:11px}.bb-upload>.bb-icon{width:28px;height:28px;color:var(--ds-muted)}.bb-upload.is-dragging{border-color:var(--ds-accent);background:var(--ds-ghost)}
 .bb-alert{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--ds-info-bg);border:1px solid var(--ds-line-cyan);border-radius:10px;color:var(--ds-secondary);font-size:13px}.bb-alert>.bb-icon{color:var(--ds-cyan);margin-top:1px}.bb-alert strong{display:block;color:var(--ds-text);font-size:13px;margin-bottom:3px}.bb-alert--success{background:var(--ds-success-bg);border-color:var(--ds-line)}.bb-alert--success>.bb-icon{color:var(--ds-success)}.bb-alert--warning{background:var(--ds-warning-bg);border-color:var(--ds-line)}.bb-alert--warning>.bb-icon{color:var(--ds-warning)}.bb-alert--danger{background:var(--ds-danger-bg);border-color:var(--ds-line)}.bb-alert--danger>.bb-icon{color:var(--ds-danger)}
 .bb-toasts{position:fixed;z-index:var(--ds-z-toast);right:24px;bottom:24px;display:grid;gap:8px;max-width:min(400px,calc(100vw - 32px))}.bb-toast{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 18px;background:var(--ds-surface-raised);border:1px solid var(--ds-line-control);box-shadow:var(--ds-shadow-panel);border-radius:10px;font-size:13px;animation:bb-arrive var(--ds-duration-base) var(--ds-ease)}.bb-toast>.bb-icon{color:var(--ds-success)}.bb-toast>.bb-btn{margin-left:auto}.bb-toast--danger>.bb-icon{color:var(--ds-danger)}@keyframes bb-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
 .bb-progress{appearance:none;width:100%;height:5px;border:0;border-radius:8px;background:var(--ds-line);overflow:hidden;display:block}.bb-progress::-webkit-progress-bar{background:var(--ds-line)}.bb-progress::-webkit-progress-value{background:var(--ds-accent)}.bb-progress::-moz-progress-bar{background:var(--ds-accent)}.bb-progress__label{display:flex;justify-content:space-between;margin-bottom:12px;font-size:12px;color:var(--ds-muted)}.bb-progress__label strong{color:var(--ds-text)}
 .bb-skeleton{display:block;background:var(--ds-surface-raised);border-radius:5px;min-height:14px;animation:bb-pulse 1.8s ease-in-out infinite}.bb-skeleton--short{width:40%}.bb-skeleton--medium{width:70%}.bb-skeleton--circle{width:44px;height:44px;border-radius:50%}.bb-skeleton--button{height:48px;width:100%}@keyframes bb-pulse{50%{opacity:.45}}.bb-empty{padding:32px 24px;text-align:center;border:1px dashed var(--ds-line-control);border-radius:12px;display:grid;justify-items:center;gap:12px}.bb-empty>.bb-icon{width:30px;height:30px;color:var(--ds-muted)}.bb-empty h3{font-size:18px}.bb-empty p{font-size:13px;color:var(--ds-muted);max-width:40ch}.bb-empty>.bb-btn{margin-top:8px}
 .bb-dialog{color:var(--ds-text);background:var(--ds-panel);border:1px solid var(--ds-line-control);border-radius:16px;width:calc(100% - 32px);max-width:var(--ds-modal-width);max-height:calc(100dvh - 40px);padding:0;box-shadow:var(--ds-shadow-panel);overscroll-behavior:contain;animation:bb-arrive var(--ds-duration-base) var(--ds-ease)}.bb-dialog::backdrop{background:var(--ds-overlay);backdrop-filter:blur(4px)}.bb-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 18px 14px 24px;border-bottom:1px solid var(--ds-line)}.bb-dialog__header h2{font-size:18px;font-weight:500}.bb-dialog__body{padding:24px;display:grid;gap:20px}.bb-dialog__footer{padding:16px 24px 24px;display:flex;justify-content:flex-end;gap:10px}.bb-dialog__footer--stack{flex-direction:column}.bb-dialog--sheet{max-width:var(--ds-sheet-width);margin:auto 24px auto auto}.bb-dialog--wide{max-width:760px}.bb-dialog [data-bb-dialog-focus]{outline-offset:4px}.bb-dialog__description{font-size:13px;color:var(--ds-muted)}
 .bb-tooltip-wrap{display:inline-flex;position:relative}.bb-tooltip{visibility:hidden;opacity:0;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);z-index:var(--ds-z-tooltip);width:max-content;max-width:220px;padding:8px 11px;background:var(--ds-surface-raised);border:1px solid var(--ds-line-control);border-radius:6px;font-size:12px;color:var(--ds-text);box-shadow:var(--ds-shadow-panel);transition:opacity var(--ds-duration-fast);pointer-events:none}.bb-tooltip-wrap:not([data-tooltip-dismissed]):hover .bb-tooltip,.bb-tooltip-wrap:not([data-tooltip-dismissed]):focus-within .bb-tooltip{visibility:visible;opacity:1;pointer-events:auto}
 .bb-accordion{border:1px solid var(--ds-line);border-radius:10px;overflow:hidden}.bb-accordion details+details{border-top:1px solid var(--ds-line)}.bb-accordion summary{padding:16px 18px;min-height:52px;cursor:pointer;color:var(--ds-text);font-size:13px}.bb-accordion details>div{padding:0 18px 18px;color:var(--ds-muted);font-size:13px}.bb-accordion summary:hover{color:var(--ds-accent)}
 .bb-countdown{display:flex;gap:12px;font-variant-numeric:tabular-nums;align-items:baseline;color:var(--ds-cyan)}.bb-countdown__unit{display:flex;gap:4px;align-items:baseline}.bb-countdown strong{font-family:var(--ds-font-clock);font-size:24px;font-weight:500;line-height:1;text-shadow:0 0 14px var(--ds-glow-color)}.bb-countdown small{font-size:10px;color:var(--ds-muted)}.bb-countdown__digits{display:flex;gap:2px}.bb-countdown__digits svg{width:16px;height:23px;fill:currentColor}.bb-countdown--compact .bb-countdown__digits svg{width:12px;height:18px}.bb-countdown--compact{gap:9px}
 .bb-live{display:flex;gap:8px;align-items:center;color:var(--ds-secondary);font-size:12px}.bb-live__dot{width:6px;height:6px;background:var(--ds-cyan);border-radius:50%;flex-shrink:0}.bb-live strong{color:var(--ds-text);font-variant-numeric:tabular-nums}.bb-live small{color:var(--ds-muted);font-size:10px;margin-left:6px}.bb-live--offline .bb-live__dot{background:var(--ds-disabled)}
 .bb-marker{width:44px;height:44px;padding:0;border-radius:50%;display:inline-grid;place-items:center;position:relative;color:var(--ds-accent);background:var(--ds-transparent)}.bb-marker:before{content:"";width:12px;height:12px;border-radius:50%;border:1px solid currentColor;background:var(--ds-info-bg);transition:transform var(--ds-duration-base)}.bb-marker:hover:before{transform:scale(1.25)}.bb-marker[aria-pressed=true]:before{background:currentColor;box-shadow:0 0 0 5px var(--ds-ghost)}.bb-marker[data-status=RESERVE]{color:var(--ds-warning)}.bb-marker[data-status=VENDU]{color:var(--ds-muted)}.bb-marker[data-status=RETIRE]{color:var(--ds-disabled)}.bb-marker[data-status=RETIRE]:before{border-style:dashed}
 .bb-slot-row{display:flex;gap:12px;align-items:center;min-height:72px;padding:14px 0;border-bottom:1px solid var(--ds-line);text-align:left;text-decoration:none;color:var(--ds-text);width:100%}.bb-slot-row>.bb-icon:first-child{color:var(--ds-muted);width:18px;height:18px}.bb-slot-row__body{flex:1;min-width:0}.bb-slot-row__body strong{display:block;font-size:13px;font-weight:500}.bb-slot-row__body small{display:block;font-size:11px;color:var(--ds-muted);margin-top:4px}.bb-slot-row__price{font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--ds-accent)}button.bb-slot-row:hover{color:var(--ds-accent);background:var(--ds-ghost)}.bb-slot-row[aria-disabled=true]{cursor:default}.bb-slot-row[aria-disabled=true] .bb-slot-row__price{color:var(--ds-muted)}
 .bb-card{border:1px solid var(--ds-line);border-radius:16px;background:var(--ds-surface);padding:24px;min-width:0}.bb-card--outline{background:var(--ds-transparent)}.bb-sponsor{display:flex;align-items:center;gap:16px}.bb-sponsor>div:nth-child(2){min-width:0;flex:1}.bb-sponsor h3{font-size:16px}.bb-sponsor p{font-size:12px;color:var(--ds-muted);margin-top:5px}.bb-sponsor .bb-logo{width:52px;height:52px;font-size:16px}.bb-campaign{display:grid;gap:18px}.bb-campaign__visual{min-height:140px;border:1px solid var(--ds-line);border-radius:10px;background:radial-gradient(ellipse at 50% 90%,var(--ds-info-bg),var(--ds-bg));display:grid;place-items:center;position:relative;overflow:hidden}.bb-campaign__visual>svg{color:var(--ds-cyan);width:66px;height:80px}.bb-campaign__visual>.bb-badge{position:absolute;top:12px;left:12px}.bb-campaign h3{font-size:20px}.bb-campaign p{font-size:12px;color:var(--ds-muted)}.bb-campaign__footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--ds-line);padding-top:14px;font-size:12px;color:var(--ds-muted)}.bb-stat{display:grid;gap:7px}.bb-stat__label{font-size:12px;color:var(--ds-muted)}.bb-stat__value{font-size:32px;line-height:1.2;letter-spacing:-1px;font-variant-numeric:tabular-nums;font-weight:500}.bb-stat__note{font-size:11px;color:var(--ds-muted)}
 .bb-stepper{display:flex;gap:12px;list-style:none;margin:0;padding:0}.bb-stepper li{display:flex;gap:8px;align-items:center;flex:1;font-size:12px;color:var(--ds-muted)}.bb-stepper li:before{content:attr(data-step);display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--ds-line-control);border-radius:50%;flex-shrink:0;font-size:11px}.bb-stepper li[aria-current=step]{color:var(--ds-text)}.bb-stepper li[aria-current=step]:before{border-color:var(--ds-accent);color:var(--ds-accent)}.bb-stepper li[data-complete=true]:before{background:var(--ds-accent);color:var(--ds-action-ink);border-color:var(--ds-accent)}
 .bb-feed{list-style:none;padding:0;margin:0;display:grid;gap:12px}.bb-feed li{display:flex;align-items:flex-start;gap:12px;font-size:12px}.bb-feed time{margin-left:auto;white-space:nowrap;color:var(--ds-muted);font-size:11px}.bb-feed p{color:var(--ds-secondary)}.bb-feed small{display:block;color:var(--ds-muted);font-size:11px}.bb-feed__dot{margin-top:6px;flex-shrink:0;width:6px;height:6px;border-radius:50%;background:var(--ds-cyan)}
 .bb-table-wrap{overflow:auto;border:1px solid var(--ds-line);border-radius:12px}.bb-table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}.bb-table caption{text-align:left;padding:16px;font-size:14px;font-weight:600;color:var(--ds-text)}.bb-table th{text-align:left;padding:12px 16px;color:var(--ds-muted);font-weight:400;border-bottom:1px solid var(--ds-line);background:var(--ds-bg)}.bb-table td{padding:12px 16px;border-bottom:1px solid var(--ds-line)}.bb-table tr:last-child td{border-bottom:0}.bb-table tbody tr:hover{background:var(--ds-ghost)}.bb-table th[aria-sort] button{font:inherit;color:inherit;padding:0;min-height:30px}.bb-table .bb-btn{min-height:40px}.bb-pagination{display:flex;gap:6px;align-items:center;justify-content:space-between;font-size:12px;color:var(--ds-muted)}.bb-pagination__buttons{display:flex;gap:4px}.bb-pagination [aria-current=page]{border-color:var(--ds-accent);color:var(--ds-accent)}
 .bb-app-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;gap:20px;border-bottom:1px solid var(--ds-line);background:var(--ds-bg)}.bb-app-header nav{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.bb-app-header nav a{color:var(--ds-muted);font-size:12px;text-decoration:none;min-height:44px;display:flex;align-items:center}.bb-app-header nav a[aria-current=page]{color:var(--ds-accent)}
 .bb-amounts{margin:0;display:grid;gap:12px}.bb-amounts>div{display:flex;justify-content:space-between;gap:16px;font-size:13px}.bb-amounts dt{color:var(--ds-muted)}.bb-amounts dd{margin:0;font-variant-numeric:tabular-nums}.bb-amounts__total{border-top:1px solid var(--ds-line);padding-top:14px}.bb-amounts__total dt{color:var(--ds-text)}.bb-amounts__total dd{color:var(--ds-accent);font-weight:600}
}

@layer patterns {
 .bb-arena{position:relative;isolation:isolate;overflow:hidden;border:1px solid var(--ds-line-cyan);border-radius:16px;min-height:420px;background:radial-gradient(ellipse at 50% 40%,var(--ds-info-bg),var(--ds-scene) 70%)}
 .bb-arena__canvas{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}
 .bb-arena__photo{position:absolute;left:50%;top:11%;height:77%;max-width:70%;width:auto;transform:translateX(-50%);object-fit:contain;pointer-events:none;z-index:2;filter:saturate(.65) brightness(.9)}
 .bb-arena__frame{position:absolute;inset:12px;border:1px solid var(--ds-line-cyan);border-radius:2px;pointer-events:none;z-index:3}
 .bb-arena__header{position:absolute;left:24px;right:24px;top:24px;z-index:4;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.bb-arena__header h3{font-size:15px;letter-spacing:-.3px}.bb-arena__header p{font-size:11px;color:var(--ds-secondary);margin-top:4px}.bb-arena__cta{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);width:240px;z-index:4}.bb-arena__signature{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:1.5px;color:var(--ds-muted);z-index:4}.bb-arena__pin-layer{position:absolute;inset:0;width:100%;height:100%;z-index:3;overflow:visible;pointer-events:none}.bb-arena__pin-layer foreignObject{overflow:visible;pointer-events:none}.bb-arena__pin-layer button{pointer-events:auto}
 .bb-arena__controls{position:absolute;top:108px;left:22px;z-index:4}.bb-arena__controls .bb-btn{min-height:36px;width:36px;height:36px;padding:8px}.bb-arena__controls .bb-icon{width:14px;height:14px}
 .bb-checkout-summary{padding:20px;border-radius:12px;border:1px solid var(--ds-line);background:var(--ds-bg);display:grid;gap:16px}.bb-demo-label{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:1.3px;text-transform:uppercase;color:var(--ds-warning)}
 .bb-studio{border:1px solid var(--ds-line);border-radius:16px;overflow:hidden}.bb-studio__body{padding:24px;display:grid;gap:24px}.bb-studio__title{display:flex;align-items:center;justify-content:space-between;gap:16px}.bb-studio__title h2{font-size:24px}.bb-studio__title p{font-size:12px;color:var(--ds-muted);margin-top:5px}
 .bb-onboarding{max-width:620px;margin:auto}.bb-onboarding__step{display:grid;gap:20px}.bb-onboarding__step h3{font-size:24px}.bb-onboarding__step>p{font-size:13px;color:var(--ds-muted)}.bb-onboarding footer{display:flex;justify-content:space-between;gap:16px;margin-top:24px}.bb-onboarding .bb-stepper{margin-bottom:28px}
 .bb-editor{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(240px,1.15fr);gap:24px;align-items:start}.bb-body-map{display:block;width:100%;max-height:430px;background:radial-gradient(ellipse at 50% 50%,var(--ds-info-bg),var(--ds-bg));border:1px solid var(--ds-line);border-radius:12px;touch-action:none}.bb-body-map .bb-body-shape{fill:var(--ds-surface-raised);stroke:var(--ds-line-control);stroke-width:1.2}.bb-body-map .bb-body-guide{fill:none;stroke:var(--ds-line-cyan);stroke-width:.65}.bb-body-map foreignObject{overflow:visible}.bb-body-map .bb-marker{touch-action:none}.bb-editor__form{display:grid;gap:16px}.bb-coordinate-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
 .bb-mod-row{display:grid;grid-template-columns:1fr auto;gap:16px;padding:20px;border:1px solid var(--ds-line);border-radius:12px;background:var(--ds-surface)}.bb-mod-row__actions{display:flex;align-items:center;gap:8px}.bb-mod-row p{font-size:12px;color:var(--ds-muted);margin-top:8px}.bb-mod-row.is-resolved{background:var(--ds-bg)}
 .bb-token-value{font-family:var(--ds-font-mono);font-size:11px}
 @media(max-width:700px){.bb-editor{grid-template-columns:1fr}.bb-body-map{max-height:340px}.bb-arena{min-height:470px}.bb-arena__header{left:18px;right:18px;top:22px}.bb-arena__header .bb-countdown{gap:5px}.bb-arena__header .bb-countdown__digits svg{width:9px;height:14px}.bb-arena__photo{height:73%;top:16%}.bb-mod-row{grid-template-columns:1fr}.bb-mod-row__actions{justify-content:flex-end}.bb-studio__body{padding:16px}.bb-studio__title{align-items:flex-start;flex-direction:column}}
}

@layer utilities {
 .bb-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.bb-stack{display:grid;gap:16px}.bb-stack--sm{gap:8px}.bb-stack--lg{gap:24px}.bb-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.bb-between{display:flex;align-items:center;justify-content:space-between;gap:12px}.bb-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.bb-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.bb-muted{color:var(--ds-muted)}.bb-accent{color:var(--ds-accent)}.bb-small{font-size:12px}.bb-micro{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--ds-muted)}.bb-rule{border:0;border-top:1px solid var(--ds-line);margin:20px 0}.bb-numeric{font-variant-numeric:tabular-nums}.bb-center{text-align:center}.bb-grow{flex:1}.bb-kbd{font-family:var(--ds-font-mono);font-size:11px;border:1px solid var(--ds-line-control);border-radius:4px;padding:2px 5px;min-width:20px;text-align:center;color:var(--ds-muted)}.bb-code{font-family:var(--ds-font-mono);font-size:12px;line-height:1.7;background:var(--ds-bg);border:1px solid var(--ds-line);border-radius:8px;padding:18px;color:var(--ds-secondary);overflow:auto;white-space:pre;tab-size:2;max-width:100%}.bb-skip{position:fixed;top:8px;left:8px;z-index:100;transform:translateY(-160%)}.bb-skip:focus{transform:none}
 @media(max-width:700px){.bb-grid-2,.bb-grid-3{grid-template-columns:1fr}.bb-dialog--sheet{max-width:none;width:calc(100% - 24px);max-height:85dvh;margin:auto 12px 12px;border-radius:16px;padding-bottom:env(safe-area-inset-bottom)}.bb-dialog__body{padding:20px}.bb-dialog__header{padding-left:20px}.bb-toasts{bottom:16px;right:16px}.bb-stepper{gap:8px}.bb-stepper li{font-size:11px;gap:6px}.bb-app-header{flex-wrap:wrap;padding:12px 16px}.bb-stat__value{font-size:28px}}
}
