@charset "UTF-8";:root{--maroon: #661416;--bone: #ede9e1;--ink: #1a1a1a;--white: #fff;--primary: var(--maroon);--primary-hover: #7c181a;--primary-pressed: #4f0f11;--primary-disabled: #b99a9b;--primary-subtle: #f5e7e7;--primary-border: #e4c4c4;--on-primary: var(--white);--primary-glow: rgb(102 20 22 / 12%);--surface-canvas: var(--white);--surface-raised: var(--white);--surface-sunken: #f3efe8;--border: #e3ded4;--border-strong: #c4bcac;--divider: #ebe6dc;--text-primary: var(--ink);--text-secondary: #525252;--text-muted: #6b6b6b;--text-on-dark: #f3f1ec;--focus-ring: #7c181a;--focus-ring-offset: var(--white);--success-bg: #e8f3ec;--success-border: #a5d3b8;--success-solid: #1f8a5a;--success-text: #14663f;--error-bg: #fceae7;--error-border: #f2b3ab;--error-solid: #de3a2c;--error-text: #b02a1e;--warning-bg: #fcf3e3;--warning-border: #efd199;--warning-solid: #d9962a;--warning-text: #8a5a10;--info-bg: #e9f0f6;--info-border: #a9c7e0;--info-solid: #2c6fa6;--info-text: #1e4e77;--shadow-sm: 0 1px 2px rgb(26 20 18 / 6%);--shadow-md: 0 4px 20px rgb(26 20 18 / 8%);--shadow-lg: 0 12px 40px rgb(26 20 18 / 12%);--font-display: "League Spartan", "Arial Narrow", sans-serif;--font-body: "DM Sans", "Helvetica Neue", arial, sans-serif;--weight-display: 800;--weight-title: 700;--weight-heading: 600;--weight-body: 400;--weight-caption: 500;--size-display: 32px;--lh-display: 1.1;--tracking-display: -.03em;--size-title: 22px;--lh-title: 1.2;--tracking-title: -.02em;--size-heading: 16px;--lh-heading: 1.3;--tracking-heading: -.01em;--size-body: 16px;--lh-body: 1.55;--tracking-body: 0;--size-caption: 12px;--lh-caption: 1.4;--tracking-caption: .01em;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--color-brand: var(--primary);--color-brand-light: var(--primary-hover);--color-brand-dark: var(--primary-pressed);--color-brand-glow: var(--primary-glow);--color-primary-50: var(--primary-subtle);--color-primary-100: #f0d9d9;--color-primary-200: var(--primary-border);--color-primary-300: #d4a0a1;--color-primary-400: var(--primary-disabled);--color-primary-500: var(--primary-hover);--color-primary-600: var(--primary);--color-primary-700: var(--primary-pressed);--color-primary-800: #3a0b0d;--color-primary-900: #2a0809;--color-primary-950: #1a0506;--colour-orange: var(--primary);--colour-orange-light: var(--primary-subtle);--colour-orange-border: var(--primary-border);--colour-orange-dark: var(--primary-pressed);--colour-border: var(--border);--colour-border-light: var(--surface-sunken);--colour-slate-light: var(--text-muted);--colour-slate: var(--text-secondary);--colour-navy: var(--ink);--colour-white: var(--white);--colour-green: var(--success-solid);--colour-green-light: var(--success-bg);--colour-green-border: var(--success-border);--colour-green-dark: var(--success-text);--colour-amber: var(--warning-text);--colour-amber-light: var(--warning-bg);--colour-amber-border: var(--warning-border);--colour-amber-dark: var(--warning-text);--color-secondary-50: var(--surface-canvas);--color-secondary-100: var(--surface-sunken);--color-secondary-200: var(--divider);--color-secondary-300: var(--border);--color-secondary-400: var(--border-strong);--color-secondary-500: var(--text-muted);--color-secondary-600: var(--text-secondary);--color-secondary-700: #3d3d3d;--color-secondary-800: var(--ink);--color-secondary-900: #0f0f0f;--color-secondary-950: #050505;--color-success: var(--success-solid);--color-success-light: var(--success-bg);--color-success-dark: var(--success-text);--color-warning: var(--warning-solid);--color-warning-light: var(--warning-bg);--color-warning-dark: var(--warning-text);--color-danger: var(--error-solid);--color-danger-light: var(--error-bg);--color-danger-dark: var(--error-text);--color-blue-50: var(--info-bg);--color-blue-600: var(--info-solid);--color-purple-50: #faf5ff;--color-purple-100: #f3e8ff;--color-purple-600: #9333ea;--color-pink-100: #fce7f3;--color-pink-600: #db2777;--color-green-50: var(--success-bg);--color-green-500: var(--success-solid);--color-green-700: var(--success-text);--color-green-900: #0f3d26;--color-pill-brand-bg: var(--primary-subtle);--color-pill-brand-border: var(--primary-border);--color-pill-purple-bg: #f5f0f8;--color-pill-purple-border: #d9c9e3;--color-pill-purple-text: #7a5c8a;--color-pill-success-bg: var(--success-bg);--color-pill-success-border: var(--success-border);--color-pill-success-text: var(--success-text);--color-superset-yellow: #fbbf24;--color-superset-green: var(--success-solid);--color-superset-blue: var(--info-solid);--color-superset-purple: #8b5cf6;--color-superset-pink: #ec4899;--color-superset-orange: #f97316;--color-superset-teal: #14b8a6;--color-superset-red: var(--error-solid);--color-neutral-50: var(--surface-canvas);--color-neutral-100: var(--surface-sunken);--color-neutral-200: var(--divider);--color-neutral-300: var(--border);--color-neutral-400: var(--border-strong);--color-neutral-500: var(--text-muted);--color-neutral-600: var(--text-secondary);--color-neutral-700: #3d3d3d;--color-neutral-800: #262626;--color-neutral-900: var(--ink);--color-neutral-950: #0a0a0a;--color-white: var(--white);--color-surface-background: var(--surface-canvas);--color-surface-foreground: var(--ink);--color-surface-card: var(--surface-raised);--color-surface-elevated: var(--surface-raised);--color-surface-border: var(--border);--color-surface-input: var(--surface-raised);--color-surface-hover: var(--surface-sunken);--color-surface-pressed: var(--border);--color-surface-selected: var(--primary-subtle);--color-surface-disabled: var(--surface-sunken);--color-text-primary: var(--text-primary);--color-text-secondary: var(--text-secondary);--color-text-tertiary: var(--text-muted);--color-text-disabled: var(--border-strong);--color-text-inverse: var(--on-primary);--color-text-brand: var(--primary);--color-text-success: var(--success-text);--color-text-warning: var(--warning-text);--color-text-danger: var(--error-text);--text-purple-900: #9333ea;--text-blue-900: var(--info-text);--text-green-900: var(--success-text);--spacing-0: 0;--spacing-0-5: 2px;--spacing-1: var(--space-1);--spacing-1-5: 6px;--spacing-2: var(--space-2);--spacing-2-5: 10px;--spacing-3: var(--space-3);--spacing-3-5: 14px;--spacing-4: var(--space-4);--spacing-4-5: 18px;--spacing-5: var(--space-5);--spacing-6: var(--space-6);--spacing-7: 28px;--spacing-8: var(--space-8);--spacing-9: 36px;--spacing-10: var(--space-10);--spacing-11: 44px;--spacing-12: 48px;--spacing-16: 64px;--spacing-20: 80px;--spacing-24: 96px;--spacing-32: 128px;--spacing-touch-target: var(--spacing-11);--spacing-card-padding: var(--spacing-4);--spacing-section-gap: var(--spacing-6);--spacing-page-margin: var(--spacing-4);--spacing-header-height: 56px;--spacing-bottom-nav: var(--spacing-16);--spacing-safe-bottom: 80px;--font-primary: var(--font-body);--font-mono: "Space Mono", "Courier New", monospace;--font-size-xs: var(--size-caption);--font-size-sm: 14px;--font-size-base: var(--size-body);--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: var(--size-display);--font-size-4xl: 36px;--font-size-display: var(--size-display);--font-size-heading: var(--size-title);--font-size-subheading: var(--size-heading);--font-size-body: var(--size-body);--font-size-caption: var(--size-caption);--font-size-overline: var(--size-caption);--font-size-notification-title: 13px;--font-size-notification-message: 11px;--font-size-weight-display: 20px;--font-size-rep-count: var(--size-body);--font-size-timer: var(--size-display);--font-size-set-number: 18px;--font-weight-light: 300;--font-weight-normal: var(--weight-body);--font-weight-medium: var(--weight-caption);--font-weight-semibold: var(--weight-heading);--font-weight-bold: var(--weight-title);--font-weight-extrabold: var(--weight-display);--line-height-tight: var(--lh-display);--line-height-snug: var(--lh-heading);--line-height-normal: var(--lh-body);--line-height-relaxed: 1.7;--border-width-0: 0;--border-width-1: 1px;--border-width-2: 2px;--border-width-4: 4px;--border-radius-none: 0;--border-radius-sm: 2px;--border-radius-base: 4px;--border-radius-md: var(--radius-sm);--border-radius-lg: var(--radius-sm);--border-radius-xl: var(--radius-md);--border-radius-2xl: var(--radius-lg);--border-radius-full: var(--radius-pill);--border-radius-button: var(--radius-md);--border-radius-card: var(--radius-lg);--border-radius-input: var(--radius-md);--border-radius-pill: var(--radius-pill);--border-radius-notification: var(--radius-md);--border-radius-sheet-top: 36px;--border-width-sheet: 1.5px;--shadow-sheet-up: 0 -8px 40px rgb(26 20 18 / 12%);--size-sheet-icon-tile: 56px;--blur-sheet-modal-backdrop: var(--spacing-8);--shadow-base: var(--shadow-sm);--shadow-xl: var(--shadow-lg);--shadow-card: var(--shadow-sm);--shadow-card-hover: var(--shadow-md);--shadow-button: var(--shadow-sm);--shadow-modal: var(--shadow-lg);--shadow-floating: var(--shadow-md);--gradient-brand: linear-gradient( 135deg, var(--primary) 0%, var(--primary-hover) 100% );--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--transition-all: all var(--transition-base);--transition-colors: color, background-color, border-color var(--transition-base);--transition-transform: transform var(--transition-base);--transition-opacity: opacity var(--transition-base);--z-index-base: 0;--z-index-dropdown: 10;--z-index-sticky: 20;--z-index-fixed: 30;--z-index-modal: 1000;--z-index-popover: 1010;--z-index-tooltip: 1020;--z-index-toast: 1030;--z-index-loading: 1040}.dark{--surface-canvas: var(--ink);--surface-raised: #262626;--surface-sunken: #1f1f1f;--border: #404040;--border-strong: #525252;--divider: #333;--text-primary: var(--text-on-dark);--text-secondary: #d4d4d4;--text-muted: #a3a3a3;--focus-ring-offset: var(--surface-canvas);--primary-subtle: rgb(102 20 22 / 35%);--primary-border: rgb(124 24 26 / 55%);--color-surface-background: var(--surface-canvas);--color-surface-foreground: var(--text-on-dark);--color-surface-card: var(--surface-raised);--color-surface-elevated: #333;--color-surface-border: var(--border);--color-surface-input: var(--surface-raised);--color-surface-hover: #333;--color-surface-pressed: #404040;--color-surface-selected: var(--primary-subtle);--color-surface-disabled: #262626;--color-text-primary: var(--text-primary);--color-text-secondary: var(--text-secondary);--color-text-tertiary: var(--text-muted);--color-text-disabled: #525252;--color-text-inverse: var(--ink);--shadow-sm: 0 1px 2px rgb(0 0 0 / 30%);--shadow-md: 0 4px 20px rgb(0 0 0 / 40%);--shadow-lg: 0 12px 40px rgb(0 0 0 / 50%);--shadow-base: var(--shadow-sm);--shadow-xl: var(--shadow-lg);--shadow-card: var(--shadow-sm);--shadow-card-hover: var(--shadow-md);--shadow-modal: var(--shadow-lg);--shadow-floating: var(--shadow-md)}.bg-brand{background-color:var(--color-brand)}.bg-brand-light{background-color:var(--color-brand-light)}.bg-brand-dark{background-color:var(--color-brand-dark)}.text-brand{color:var(--color-brand)}.text-brand-light{color:var(--color-brand-light)}.text-brand-dark{color:var(--color-brand-dark)}.bg-surface{background-color:var(--color-surface-background)}.bg-surface-card{background-color:var(--color-surface-card)}.bg-surface-elevated{background-color:var(--color-surface-elevated)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-success{color:var(--color-text-success)}.text-warning{color:var(--color-text-warning)}.text-danger{color:var(--color-text-danger)}.bg-success{background-color:var(--color-success)}.bg-warning{background-color:var(--color-warning)}.bg-danger{background-color:var(--color-danger)}.text-display{font-family:var(--font-display);font-size:var(--size-display);font-weight:var(--weight-display);letter-spacing:var(--tracking-display);line-height:var(--lh-display)}.text-title{font-family:var(--font-display);font-size:var(--size-title);font-weight:var(--weight-title);letter-spacing:var(--tracking-title);line-height:var(--lh-title)}.text-heading,.text-subheading{font-family:var(--font-display);font-size:var(--size-heading);font-weight:var(--weight-heading);letter-spacing:var(--tracking-heading);line-height:var(--lh-heading)}.text-body{color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--size-body);font-weight:var(--weight-body);letter-spacing:var(--tracking-body);line-height:var(--lh-body)}.text-caption{font-family:var(--font-body);font-size:var(--size-caption);font-weight:var(--weight-caption);letter-spacing:var(--tracking-caption);line-height:var(--lh-caption)}.p-card{padding:var(--spacing-card-padding)}.p-page{padding:var(--spacing-page-margin)}.gap-section{gap:var(--spacing-section-gap)}.h-header{height:var(--spacing-header-height)}.h-touch{height:var(--spacing-touch-target)}.min-h-touch{min-height:var(--spacing-touch-target)}.rounded-button{border-radius:var(--border-radius-button)}.rounded-card{border-radius:var(--border-radius-card)}.rounded-input{border-radius:var(--border-radius-input)}.rounded-pill{border-radius:var(--border-radius-pill)}.shadow-card{box-shadow:var(--shadow-card)}.shadow-card-hover{box-shadow:var(--shadow-card-hover)}.shadow-button{box-shadow:var(--shadow-button)}.shadow-floating{box-shadow:var(--shadow-floating)}.transition-all{transition:var(--transition-all)}.transition-colors{transition:var(--transition-colors)}.transition-transform{transition:var(--transition-transform)}.transition-opacity{transition:var(--transition-opacity)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{background:var(--white);overflow-x:clip;overscroll-behavior-x:none;scroll-behavior:smooth;scroll-padding-top:5.5rem}body{background:var(--white);color:var(--ink);font-family:var(--font-display);-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:clip;overscroll-behavior-x:none;position:relative;touch-action:pan-y;width:100%}::selection{background:var(--maroon);color:var(--white)}.visually-hidden{border:0;clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.skip-link{background:var(--ink);border-radius:0 0 8px 8px;color:var(--white);font-size:14px;font-weight:var(--weight-heading);left:var(--spacing-8);padding:12px 18px;position:absolute;text-decoration:none;top:0;transform:translateY(-120%);transition:transform .2s ease;z-index:200}.skip-link:focus{transform:translateY(0)}.skip-link:focus-visible{outline:3px solid var(--info-solid);outline-offset:2px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.skip-link{transition:none}}
