@font-face{font-display:swap;font-family:Nunito;font-style:normal;font-weight:400 800;src:url(../fonts/Nunito-Variable.woff2) format("woff2")}:root{--palette-1:#f06a8a;--palette-2:#8fbddf;--palette-3:#f0f1df;--palette-4:#f48e35;--palette-5:#fae360}:root{--derived-bg:color-mix(in oklch,var(--palette-3) 15%,#fff);--derived-bg-alt:color-mix(in oklch,var(--palette-4) 15%,var(--derived-bg));--derived-surface:var(--derived-bg);--derived-surface-alt:color-mix(in oklch,var(--palette-2) 12%,var(--derived-bg));--derived-text:color-mix(in oklch,var(--palette-1) 85%,#000);--derived-text-muted:color-mix(in oklch,var(--derived-text) 55%,var(--derived-bg));--derived-text-light:color-mix(in oklch,var(--derived-text) 35%,var(--derived-bg));--derived-border:color-mix(in oklch,var(--palette-2) 25%,var(--derived-bg));--derived-border-light:color-mix(in oklch,var(--palette-2) 15%,var(--derived-bg));--derived-shadow-color:color-mix(in oklch,var(--palette-1) 35%,var(--palette-2));--derived-primary-dark:color-mix(in oklch,var(--palette-1) 80%,#000);--derived-primary-light:color-mix(in oklch,var(--palette-1) 15%,var(--derived-bg));--derived-primary-alpha:color-mix(in oklch,var(--palette-1) 30%,transparent);--derived-cat-1:var(--palette-4);--derived-cat-2:var(--palette-2);--derived-cat-3:color-mix(in oklch,var(--palette-1) 50%,var(--palette-3));--derived-cat-4:var(--palette-5);--derived-cat-5:color-mix(in oklch,var(--palette-4) 60%,var(--palette-5));--derived-block-1:var(--palette-1);--derived-block-2:var(--palette-4);--derived-block-3:var(--palette-5);--derived-block-4:var(--palette-2);--derived-block-5:color-mix(in oklch,var(--palette-4) 70%,var(--palette-5));--derived-progress:color-mix(in oklch,var(--palette-1) 70%,var(--palette-5));--derived-progress-end:color-mix(in oklch,var(--palette-5) 80%,var(--palette-1))}:root{--color-bg:var(--derived-bg);--color-bg-alt:var(--derived-bg-alt);--color-bg-gradient:linear-gradient(135deg,var(--derived-bg) 0%,var(--derived-bg-alt) 100%);--color-surface:var(--derived-surface);--color-surface-alt:var(--derived-surface-alt);--color-text:var(--derived-text);--color-text-muted:var(--derived-text-muted);--color-text-light:var(--derived-text-light);--color-primary:var(--palette-1);--color-primary-dark:var(--derived-primary-dark);--color-primary-hover:var(--derived-primary-dark);--color-primary-light:var(--derived-primary-light);--color-primary-alpha:var(--derived-primary-alpha);--color-border:var(--derived-border);--color-border-light:var(--derived-border-light);--color-wort:var(--derived-cat-1);--color-logik:var(--derived-cat-2);--color-visual:var(--derived-cat-3);--color-mathe:var(--derived-cat-4);--color-raum:var(--derived-cat-5);--color-pink:var(--derived-cat-1);--color-purple:var(--derived-cat-2);--color-blue:var(--derived-cat-3);--color-mint:var(--derived-cat-4);--color-yellow:var(--derived-cat-5);--color-orange:color-mix(in oklch,var(--palette-4) 80%,var(--palette-5));--color-block-1:var(--derived-block-1);--color-block-2:var(--derived-block-2);--color-block-3:var(--derived-block-3);--color-block-4:var(--derived-block-4);--color-block-5:var(--derived-block-5);--color-block-1-light:color-mix(in oklch,var(--color-block-1) 70%,#fff);--color-block-2-light:color-mix(in oklch,var(--color-block-2) 70%,#fff);--color-block-3-light:color-mix(in oklch,var(--color-block-3) 70%,#fff);--color-block-4-light:color-mix(in oklch,var(--color-block-4) 70%,#fff);--color-progress:var(--derived-progress);--color-progress-end:var(--derived-progress-end);--color-shadow:var(--derived-shadow-color);--region-color-0:color-mix(in oklch,var(--palette-4) 25%,var(--derived-bg));--region-color-1:color-mix(in oklch,var(--palette-5) 25%,var(--derived-bg));--region-color-2:color-mix(in oklch,var(--palette-1) 20%,var(--derived-bg));--region-color-3:color-mix(in oklch,var(--palette-2) 25%,var(--derived-bg));--region-color-4:color-mix(in oklch,var(--palette-4) 15%,color-mix(in oklch,var(--palette-5) 15%,var(--derived-bg)));--region-color-5:color-mix(in oklch,var(--palette-1) 15%,color-mix(in oklch,var(--palette-2) 15%,var(--derived-bg)));--region-color-6:color-mix(in oklch,var(--palette-4) 35%,var(--derived-bg));--region-color-7:color-mix(in oklch,var(--palette-5) 35%,var(--derived-bg));--region-color-8:color-mix(in oklch,var(--palette-2) 35%,var(--derived-bg));--region-color-9:color-mix(in oklch,var(--palette-1) 30%,var(--derived-bg));--region-color-10:color-mix(in oklch,var(--palette-4) 20%,color-mix(in oklch,var(--palette-2) 20%,var(--derived-bg)));--region-color-11:color-mix(in oklch,var(--palette-5) 20%,color-mix(in oklch,var(--palette-1) 20%,var(--derived-bg)));--color-mine-1:var(--palette-1);--color-mine-2:var(--palette-5);--color-mine-3:var(--palette-4);--color-mine-4:var(--derived-primary-dark);--color-mine-5:color-mix(in oklch,var(--palette-4) 60%,#000);--color-mine-6:color-mix(in oklch,var(--palette-5) 60%,var(--palette-1));--color-mine-7:var(--derived-text);--color-mine-8:var(--derived-text-muted);--color-correct:#16a34a;--color-correct-bg:#dcfce7;--color-present:#ca8a04;--color-present-bg:#fef9c3;--color-absent:#64748b;--color-absent-bg:#f1f5f9;--color-empty:transparent;--color-error:#ef4444;--color-error-light:rgba(239,68,68,.15);--color-error-alpha:rgba(239,68,68,.3);--color-error-bg:#fee2e2;--color-success:var(--color-correct);--color-success-bg:var(--color-correct-bg);--color-warning:#f59e0b;--color-warning-light:rgba(245,158,11,.15);--color-info:#0ea5e9;--color-info-bg:#e0f2fe;--color-info-border:#7dd3fc;--color-timer-normal:var(--color-mathe);--color-timer-warning:var(--color-raum);--color-timer-critical:var(--color-orange);--color-timer-panic:#ef4444;--color-text-primary:var(--color-text);--color-text-secondary:var(--color-text-light);--color-surface-hover:var(--color-surface-alt);--color-surface-raised:var(--color-surface-alt);--color-surface-dim:var(--color-bg-alt);--color-bg-muted:var(--color-bg-alt);--color-bg-soft:var(--color-bg-alt);--color-background:var(--color-bg);--color-focus:var(--color-primary-alpha);--color-correct-light:var(--color-correct-bg);--color-green:var(--color-correct);--color-on-primary:#fff;--color-warning-bg:#fef3c7;--clay-bg:var(--color-surface);--clay-shadow-sm:var(--clay-shadow-soft);--shadow-clay:var(--clay-shadow);--shadow-clay-inset:inset 2px 2px 4px rgba(0,0,0,.06),inset -1px -1px 3px hsla(0,0%,100%,.5);--color-blue-light:color-mix(in oklch,var(--color-blue) 30%,#fff);--color-orange-light:color-mix(in oklch,var(--color-orange) 30%,#fff);--color-purple-light:color-mix(in oklch,var(--color-purple) 30%,#fff)}.track-lex-editorial{--track-accent:var(--palette-3,#8b7355)}.track-lex-reward{--track-accent:var(--palette-5,#e8a030)}.track-num-quiet{--track-accent:var(--palette-1,#6366f1)}.track-region-nature{--track-accent:var(--palette-4,#22c55e)}.track-tactile-board{--track-accent:var(--palette-3,#a0845c)}.track-signal-tech{--track-accent:var(--palette-2,#0ea5e9)}.track-system-workbench{--track-accent:var(--palette-2,#64748b)}.track-scan-combo{--track-accent:var(--palette-5,#f59e0b)}.track-arcade-light{--track-accent:var(--palette-5,#ef4444)}.track-experimental-sim{--track-accent:var(--palette-2,#7c3aed)}:root{--font-primary:"Nunito",system-ui,-apple-system,sans-serif;--font-display:"Nunito",system-ui,-apple-system,sans-serif;--font-mono:"Nunito",ui-monospace,system-ui,sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-hero:clamp(2.5rem,6vw,4rem);--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--font-black:900;--font-size-xs:var(--text-xs);--font-size-sm:var(--text-sm);--font-size-base:var(--text-base);--font-size-lg:var(--text-lg);--font-size-xl:var(--text-xl);--font-size-2xl:var(--text-2xl);--font-size-3xl:var(--text-3xl);--font-size-md:var(--text-base);--text-md:var(--text-base);--text-4xl:2.5rem;--text-muted:var(--color-text-muted);--text-secondary:var(--color-text-light);--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--radius-xs:4px;--radius-sm:12px;--radius-md:20px;--radius-lg:30px;--radius-xl:40px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.2s ease;--transition-slow:.3s ease;--toast-top:80px;--header-height:60px;--bottom-nav-height:56px;--bottom-nav-height-safe: calc(56px + env(safe-area-inset-bottom, 0px)) ;--transition-slide:.3s cubic-bezier(.25,.46,.45,.94)}:root{--clay-shadow:8px 8px 16px color-mix(in oklch,var(--color-shadow) 40%,transparent),-4px -4px 12px color-mix(in oklch,#fff 90%,transparent),inset 2px 2px 4px color-mix(in oklch,#fff 60%,transparent),inset -1px -1px 3px color-mix(in oklch,var(--color-shadow) 20%,transparent);--clay-shadow-hover:12px 12px 24px color-mix(in oklch,var(--color-shadow) 50%,transparent),-6px -6px 16px color-mix(in oklch,#fff 100%,transparent),inset 2px 2px 4px color-mix(in oklch,#fff 70%,transparent),inset -1px -1px 3px color-mix(in oklch,var(--color-shadow) 30%,transparent);--clay-shadow-pressed:4px 4px 8px color-mix(in oklch,var(--color-shadow) 30%,transparent),-2px -2px 6px color-mix(in oklch,#fff 80%,transparent),inset 4px 4px 8px color-mix(in oklch,var(--color-shadow) 30%,transparent),inset -2px -2px 4px color-mix(in oklch,#fff 50%,transparent);--clay-shadow-soft:4px 4px 8px color-mix(in oklch,var(--color-shadow) 30%,transparent),-2px -2px 6px color-mix(in oklch,#fff 80%,transparent),inset 1px 1px 2px color-mix(in oklch,#fff 50%,transparent),inset -1px -1px 2px color-mix(in oklch,var(--color-shadow) 15%,transparent)}.clay{background:var(--color-bg);border-radius:var(--radius-md);box-shadow:var(--clay-shadow);transition:box-shadow var(--transition-normal),transform var(--transition-normal)}.clay:hover{box-shadow:var(--clay-shadow-hover)}.clay.pressed,.clay:active{box-shadow:var(--clay-shadow-pressed);transform:translateY(2px)}.clay-card{background:var(--color-bg);border-radius:var(--radius-lg);box-shadow:var(--clay-shadow);padding:var(--space-lg);transition:box-shadow var(--transition-normal),transform var(--transition-normal)}.clay-card:hover{box-shadow:var(--clay-shadow-hover)}.clay-button{align-items:center;background:var(--color-bg);border:none;border-radius:var(--radius-md);box-shadow:var(--clay-shadow);color:var(--color-text);cursor:pointer;display:inline-flex;font-family:var(--font-primary);font-size:var(--text-base);font-weight:var(--font-bold);gap:var(--space-sm);justify-content:center;min-height:48px;min-width:48px;padding:var(--space-sm) var(--space-lg);touch-action:manipulation;transition:box-shadow var(--transition-normal),transform var(--transition-fast);-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.clay-button:hover{box-shadow:var(--clay-shadow-hover)}.clay-button:active{box-shadow:var(--clay-shadow-pressed);transform:scale(.95) translateY(2px)}.clay-button:disabled{cursor:not-allowed;opacity:.5}.clay-button--primary{background:var(--color-primary);color:#fff}.clay-button--secondary{background:var(--color-purple);color:#fff}.clay-input{background:var(--color-bg);border:none;border-radius:var(--radius-md);box-shadow:var(--clay-shadow-pressed);color:var(--color-text);font-family:var(--font-primary);font-size:var(--text-base);outline:none;padding:var(--space-md);transition:box-shadow var(--transition-normal)}.clay-input:focus{box-shadow:var(--clay-shadow-pressed),0 0 0 3px var(--color-purple)}.clay-cell{align-items:center;background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);display:flex;font-family:var(--font-primary);font-size:var(--text-2xl);font-weight:var(--font-extrabold);height:56px;justify-content:center;text-transform:uppercase;transition:background-color var(--transition-slow),transform var(--transition-fast),border-color var(--transition-fast);width:56px}@media(min-width:768px){.clay-cell{height:64px;width:64px}}.clay-cell--correct{background:var(--color-correct);border-color:var(--color-correct);color:#fff}.clay-cell--present{background:var(--color-present);border-color:var(--color-present);color:#fff}.clay-cell--absent{background:var(--color-absent);border-color:var(--color-absent);color:#fff}.clay-cell--empty{background:transparent;border-color:var(--color-border)}.clay-cell--tbd{background:var(--color-bg);border:2.5px solid var(--color-primary)}.clay-cell--active{transform:scale(1.05)}.clay-key{box-shadow:var(--clay-shadow-soft)}.clay-key:active{box-shadow:var(--clay-shadow-pressed);transform:scale(.92)}.mobile-only-input{display:block}@media(min-width:768px){.mobile-only-input{display:none}}.cell-state--selected{box-shadow:inset 0 0 0 2px var(--track-accent,var(--color-primary));z-index:1}.cell-state--conflict{animation:cell-state-shake .3s ease;box-shadow:inset 0 0 0 2px var(--color-error)}.cell-state--hint{background:var(--color-info-bg)!important;border-color:var(--color-info)!important}.cell-state--locked{cursor:default;opacity:.7;pointer-events:none}.cell-state--success{background:var(--color-correct-bg)!important;border-color:var(--color-correct)!important}.cell-state--disabled{cursor:not-allowed;opacity:.3;pointer-events:none}.cell-state--highlight{background:color-mix(in oklch,var(--track-accent,var(--color-primary)) 10%,var(--color-surface))}.cell-state--error{animation:cell-state-shake .4s ease;background:var(--color-error-bg)!important;box-shadow:0 0 0 2px var(--color-error)}@keyframes cell-state-shake{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}.cell-state--focused:focus-visible{outline:2px solid var(--track-accent,var(--color-primary));outline-offset:-2px}.grid-family--number-first{--grid-cell-font-weight:700;--grid-cell-border:1px solid var(--color-border);--grid-cell-radius:var(--radius-xs);--grid-gap:1px;--grid-highlight:inset 0 0 0 2px var(--track-accent,var(--color-primary))}.grid-family--region-loop{--grid-cell-font-weight:600;--grid-cell-border:1px solid var(--color-border-light);--grid-cell-radius:0;--grid-gap:0;--grid-highlight:var(--color-correct-bg)}.grid-family--abstract-tactile{--grid-cell-font-weight:800;--grid-cell-border:1px solid var(--color-border);--grid-cell-radius:var(--radius-sm);--grid-gap:2px;--grid-highlight:0 0 8px var(--track-accent,var(--color-primary))}.a11y-focus-ring:focus-visible{outline:2px solid var(--track-accent,var(--color-primary));outline-offset:-2px;z-index:1}.a11y-touch-target{min-height:44px;min-width:44px}.a11y-touch-target--dense{min-height:32px;min-width:32px}.sr-only{border-width:0;margin:-1px;padding:0;white-space:nowrap}.a11y-live-region,.sr-only{height:1px;overflow:hidden;position:absolute;width:1px;clip:rect(0,0,0,0)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--color-bg-gradient);color:var(--color-text);font-family:var(--font-primary);font-size:var(--text-base);font-weight:var(--font-bold);line-height:1.6;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-extrabold);line-height:1.2}h1{font-size:var(--text-hero)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}[role=button],[role=gridcell],a,button,input,select,textarea{touch-action:manipulation}:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.container{margin:0 auto;max-width:1200px;padding:0 var(--space-md);width:100%}@media(min-width:768px){.container{padding:0 var(--space-xl)}}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}.puzzle-game{align-items:center;display:flex;flex-direction:column;gap:var(--space-md);margin:0 auto;max-width:720px;padding:var(--space-md);width:100%}@media(max-width:767px){.puzzle-game{gap:var(--space-xs);padding:var(--space-sm) var(--space-sm) var(--space-xl)}}.error-page[data-v-24344e3c]{align-items:center;background:#f8f9fa;color:#1a1a2e;display:flex;flex-direction:column;font-family:system-ui,-apple-system,sans-serif;justify-content:center;min-height:100vh;padding:2rem;text-align:center}.error-code[data-v-24344e3c]{color:#6366f1;font-size:4rem;font-weight:800;margin:0}.error-message[data-v-24344e3c]{color:#4a4a6a;font-size:1.25rem;margin:.5rem 0}.error-hint[data-v-24344e3c]{color:#8a8aaa;font-size:.9rem;margin:0 0 1.5rem}.error-btn[data-v-24344e3c]{background:#6366f1;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem}.error-btn[data-v-24344e3c]:active{transform:scale(.97)}
