@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";.trailer-sim-container{background-color:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin:var(--spacing-xl) 0;box-shadow:var(--shadow-md);display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-lg)}.trailer-sim-header{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text);margin-bottom:var(--spacing-md)}.trailer-sim-visual{width:100%;max-width:600px;height:150px;background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);display:flex;justify-content:center;align-items:center;padding:var(--spacing-md);position:relative;overflow:hidden;transition:background-color .3s ease}.sim-svg-car,.sim-svg-trailer{transition:fill .3s ease,stroke .3s ease}.trailer-sim-visual.legal .sim-svg-car,.trailer-sim-visual.legal .sim-svg-trailer,.trailer-sim-visual.legal .sim-svg-towbar{fill:transparent;stroke:var(--color-success)}.trailer-sim-visual.illegal .sim-svg-trailer,.trailer-sim-visual.illegal .sim-svg-towbar{fill:transparent;stroke:var(--color-error)}.sim-image-car{width:200px;height:80px;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center bottom;mask-position:center bottom;transition:background-color .3s ease}.trailer-sim-visual.legal .sim-image-car{background-color:var(--color-success)}.trailer-sim-visual.illegal .sim-image-car{background-color:var(--color-error)}.sim-svg-wheel{fill:transparent;stroke:var(--color-text)}.sim-svg-wheel-hub{fill:var(--color-text)}.trailer-sim-details{width:100%;display:flex;flex-direction:column;gap:var(--spacing-sm);text-align:center;font-size:var(--font-size-base);color:var(--color-text)}.trailer-sim-details-total{font-size:var(--font-size-lg);font-weight:700;color:var(--color-primary)}.trailer-sim-explanation-box{width:100%;padding:var(--spacing-lg);border-radius:var(--radius-md);border-left:6px solid transparent;transition:all .3s ease;background-color:var(--color-bg-secondary);text-align:left}.trailer-sim-explanation-box.legal{border-left-color:var(--color-success);background-color:#0596690d}.trailer-sim-explanation-box.illegal{border-left-color:var(--color-error);background-color:#dc26260d}.trailer-sim-status-title{font-size:var(--font-size-lg);font-weight:700;margin-bottom:var(--spacing-sm)}.trailer-sim-status-title.legal{color:var(--color-success)}.trailer-sim-status-title.illegal{color:var(--color-error)}.trailer-sim-text{font-size:var(--font-size-base);color:var(--color-text);line-height:1.6}.trailer-sim-controls{width:100%;display:flex;flex-direction:column;gap:var(--spacing-lg);background-color:var(--color-bg-secondary);padding:var(--spacing-lg);border-radius:var(--radius-lg);margin-top:var(--spacing-md)}.trailer-sim-control-group{display:flex;flex-direction:column;text-align:left;gap:var(--spacing-xs)}.trailer-sim-control-label{display:flex;justify-content:space-between;font-weight:600;color:var(--color-text)}.trailer-sim-control-value{color:var(--color-primary);font-weight:700}.trailer-sim-slider{width:100%;margin:var(--spacing-sm) 0;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:8px;background:var(--color-border);border-radius:var(--radius-sm);outline:none;transition:background .2s}.trailer-sim-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:var(--color-primary);cursor:pointer;box-shadow:var(--shadow-sm);transition:transform .1s ease}.trailer-sim-slider::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:none;box-shadow:var(--shadow-sm);transition:transform .1s ease}.trailer-sim-slider::-webkit-slider-thumb:hover,.trailer-sim-slider::-moz-range-thumb:hover{transform:scale(1.1)}body.dark-mode .trailer-sim-slider::-webkit-slider-thumb,body.dark-mode .trailer-sim-slider::-moz-range-thumb{background:var(--color-accent-glow);box-shadow:0 0 10px #3b82f680}.dashboard-sim-container{background-color:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin:var(--spacing-xl) 0;box-shadow:var(--shadow-md);display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-lg);animation:fadeIn .5s ease-out}.dashboard-sim-header{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text);margin-bottom:var(--spacing-md)}.dashboard-display{width:100%;max-width:500px;background:#f8f9fa;border:1px solid rgba(0,0,0,.1);border-radius:20px;padding:30px 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;justify-items:center;align-items:center;margin-bottom:25px;box-shadow:0 4px 12px #0000000d,inset 0 0 15px #fff;position:relative;overflow:hidden;transition:all .3s ease}body.dark-mode .dashboard-display{background:radial-gradient(circle at center,#1e2024,#0a0a0a);border-color:#ffffff26;box-shadow:0 20px 40px #0006,inset 0 0 20px #00000080}body.dark-mode .dashboard-display:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 0%,rgba(255,255,255,.03) 45%,rgba(255,255,255,.05) 50%,rgba(255,255,255,.03) 55%,transparent 100%);pointer-events:none;transform:rotate(-20deg)}.dashboard-lamp-svg{width:50px;height:50px;display:flex;align-items:center;justify-content:center;transition:all .4s cubic-bezier(.4,0,.2,1)}.dashboard-lamp-svg.active{opacity:1;transform:scale(1.1)}.dashboard-lamp-svg.active.red{color:#ff3b30;filter:drop-shadow(0 0 10px rgba(255,59,48,.4))}.dashboard-lamp-svg.active.yellow{color:#fc0;filter:drop-shadow(0 0 10px rgba(255,204,0,.4))}.dashboard-lamp-svg.inactive{color:#d1d5db;opacity:.8}body.dark-mode .dashboard-lamp-svg.inactive{color:#2a2a2a;opacity:1}.dashboard-lamp-svg .lamp-icon{width:100%;height:100%;display:block}.dashboard-lamp-svg .lamp-icon text{stroke:none!important}.dashboard-sim-controls{width:100%;display:flex;flex-direction:column;gap:var(--spacing-lg);background-color:var(--color-bg-secondary);padding:var(--spacing-lg);border-radius:var(--radius-lg);margin-top:var(--spacing-sm)}.dashboard-question{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);margin-bottom:var(--spacing-sm)}.dashboard-action-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:center}.dashboard-btn{padding:12px 24px;border-radius:var(--radius-md);font-weight:700;font-size:var(--font-size-base);cursor:pointer;transition:all .2s ease;border:2px solid transparent;display:flex;align-items:center;gap:10px;flex:1;min-width:200px;justify-content:center}.dashboard-btn{padding:12px 24px;border-radius:var(--radius-md);font-weight:700;font-size:var(--font-size-base);cursor:pointer;transition:all .2s ease;border:1px solid var(--color-border);background-color:var(--color-bg);color:var(--color-text);display:flex;align-items:center;gap:10px;flex:1;min-width:200px;justify-content:center}.dashboard-btn:hover:not(:disabled){background-color:var(--color-bg-secondary);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.dashboard-btn:active:not(:disabled){transform:translateY(0)}.dashboard-btn:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.5)}.dashboard-reset-btn{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);padding:8px 16px;border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;margin-top:var(--spacing-sm)}.dashboard-explanation-box{width:100%;padding:var(--spacing-lg);border-radius:var(--radius-md);border-left:6px solid transparent;transition:all .3s ease;background-color:var(--color-bg-secondary);text-align:left;margin-top:var(--spacing-md);animation:slideUp .3s ease-out}.dashboard-explanation-box.correct{border-left-color:var(--color-success);background-color:#0596690d}.dashboard-explanation-box.incorrect{border-left-color:var(--color-error);background-color:#dc26260d}.dashboard-status-title{font-size:var(--font-size-lg);font-weight:700;margin-bottom:var(--spacing-sm)}.dashboard-status-title.correct{color:var(--color-success)}.dashboard-status-title.incorrect{color:var(--color-error)}.dashboard-text{font-size:var(--font-size-base);color:var(--color-text);line-height:1.6}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 600px){.dashboard-display{grid-template-columns:repeat(2,1fr);gap:20px}}.nav-tabs{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.nav-tab{background:none;border:none;padding:var(--spacing-xs) var(--spacing-md);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-light);cursor:pointer;border-radius:var(--radius-sm);transition:all .2s ease;position:relative}.nav-tab:hover{color:var(--color-text);background-color:var(--color-bg-secondary)}.nav-tab-active{color:var(--color-primary);background-color:var(--color-bg-secondary)}.nav-tab-active:after{content:"";position:absolute;bottom:-2px;left:var(--spacing-sm);right:var(--spacing-sm);height:3px;background-color:var(--color-primary);border-radius:2px}.theory-page{max-width:900px;margin:0 auto;padding:var(--spacing-xl);text-align:center}.theory-page h1{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-md)}.theory-subtitle{color:var(--color-text-light);font-size:var(--font-size-lg);margin-bottom:var(--spacing-xl)}.theory-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:var(--spacing-xl);text-align:left}.theory-card{background-color:var(--color-bg);border:1px solid var(--color-border);border-left:3px solid transparent;border-radius:var(--radius-lg);padding:2rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:var(--font-family);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--spacing-sm)}.theory-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.theory-card-icon{font-size:2.5rem}.theory-card-title{font-size:var(--font-size-lg);font-weight:700;color:var(--color-text);margin:0}.theory-card-desc{color:var(--color-text-light);font-size:1rem;line-height:1.5;margin:0;flex-grow:1}.theory-card-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:600;color:#fff;align-self:flex-start;margin-top:var(--spacing-sm)}.theory-topic-detail{max-width:800px;margin:0 auto}.theory-back-btn{background:none;border:none;font-family:var(--font-family);font-size:var(--font-size-base);font-weight:600;color:var(--color-primary);cursor:pointer;padding:var(--spacing-sm) 0;margin-bottom:var(--spacing-lg);transition:opacity .2s ease}.theory-back-btn:hover{opacity:.7}.theory-topic-header{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-xl);background-color:var(--color-bg);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-md);margin-bottom:var(--spacing-xl);transition:all .3s ease}body.dark-mode .theory-topic-header{background:var(--color-bg);box-shadow:0 10px 30px -10px #0006}.theory-topic-header-text{flex:1;min-width:0;max-width:100%}.theory-topic-title{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-2xl);color:var(--color-text);letter-spacing:-.02em;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.theory-topic-desc{color:var(--color-text-light);margin:var(--spacing-xs) 0 0 0;font-size:1.125rem;line-height:1.6;overflow-wrap:break-word;word-wrap:break-word}.theory-topic-icon-lg{font-size:3.5rem;filter:drop-shadow(0 4px 6px rgba(0,0,0,.2))}.theory-sections{display:flex;flex-direction:column;gap:var(--spacing-lg)}.theory-section{position:relative;background-color:var(--color-bg);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-md);transition:all .4s cubic-bezier(.16,1,.3,1);border:1px solid var(--color-border)}body.dark-mode .theory-section:hover{box-shadow:0 12px 40px -10px #00000080;border-color:#ffffff26}body.dark-mode .theory-section:before{content:"";position:absolute;top:-1px;left:20%;right:20%;height:1px;background:var(--ag-gradient);opacity:0;transition:all .5s ease;border-radius:100px;filter:blur(1px)}body.dark-mode .theory-section:hover:before{opacity:.8;left:10%;right:10%}body.dark-mode .theory-section{background:var(--color-bg);box-shadow:0 8px 25px -8px #0000004d}.theory-section-title{font-size:var(--font-size-xl);font-weight:700;margin-bottom:var(--spacing-md);color:var(--color-text);letter-spacing:-.01em;overflow-wrap:break-word;word-wrap:break-word}.theory-section-content p{margin:0 0 var(--spacing-sm) 0;line-height:1.7;color:var(--color-text);font-size:1.05rem}.theory-section-content p:empty{margin:0}.theory-list{margin:0 0 var(--spacing-sm) 0;padding-left:1.5rem;color:var(--color-text);font-size:1.05rem;line-height:1.7}.theory-list li{margin-bottom:.35rem}.theory-list li:last-child{margin-bottom:0}.theory-list-ol{list-style-type:decimal}@media (prefers-color-scheme: light){.theory-section-info{background-color:#f0fdf4}.theory-section-warning{background-color:#fef3c7}.theory-section-tip{background-color:#eff6ff}.theory-section-formula{background-color:#faf5ff}.theory-section-example{background-color:#fdf4ff}}body.dark-mode .theory-section-info,body.dark-mode .theory-section-warning,body.dark-mode .theory-section-tip,body.dark-mode .theory-section-formula,body.dark-mode .theory-section-example{background:var(--color-bg)}.theory-section-signs{background-color:var(--color-bg)}.theory-signs-grid{display:flex;flex-direction:column;gap:var(--spacing-lg)}.theory-sign-item{display:flex;align-items:center;gap:var(--spacing-xl);padding:var(--spacing-lg);border-radius:var(--radius-lg);background-color:var(--color-bg);border:1px solid var(--color-border);transition:all .3s cubic-bezier(.4,0,.2,1)}.theory-sign-item:hover{transform:translate(8px);box-shadow:var(--shadow-md);border-color:#ffffff1a}.theory-sign-visual{width:80px;height:80px;background-color:var(--color-bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:inset 0 2px 4px #0003}.theory-sign-svg,.theory-sign-img{width:60px;height:60px;object-fit:contain}.theory-sign-text{flex-grow:1}.theory-sign-text strong{display:block;font-size:var(--font-size-base);color:var(--color-text);margin-bottom:2px}.theory-sign-text p{color:var(--color-text-light);font-size:var(--font-size-sm);margin:0;line-height:1.5}.brake-calculator{background-color:var(--color-bg);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md);margin-top:var(--spacing-xl);border-top:4px solid #3b82f6}.calc-title{font-size:var(--font-size-xl);margin-bottom:var(--spacing-xl);text-align:center}.calc-input-section{margin-bottom:var(--spacing-xl)}.calc-label{display:block;font-size:var(--font-size-base);color:var(--color-text-light);margin-bottom:var(--spacing-sm);text-align:center}.calc-label strong{font-size:var(--font-size-xl);color:var(--color-text)}.calc-slider{width:100%;height:8px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--color-border);border-radius:99px;outline:none;margin:var(--spacing-md) 0}.calc-slider::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;border-radius:50%;background:var(--color-primary);cursor:pointer;box-shadow:var(--shadow-md);transition:transform .15s ease}.calc-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.calc-slider::-moz-range-thumb{width:28px;height:28px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:none;box-shadow:var(--shadow-md)}.calc-presets{display:flex;justify-content:center;gap:var(--spacing-xs);flex-wrap:wrap}.calc-preset-btn{padding:var(--spacing-xs) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-family:var(--font-family);font-weight:600;font-size:var(--font-size-sm);cursor:pointer;transition:all .2s ease}.calc-preset-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.calc-preset-btn.active{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.calc-results{margin-bottom:var(--spacing-xl)}.calc-result-row{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.calc-result-label{min-width:140px;display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text)}.calc-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.calc-bar-container{flex-grow:1;height:24px;background-color:var(--color-bg-secondary);border-radius:var(--radius-sm);overflow:hidden}.calc-bar{height:100%;border-radius:var(--radius-sm);transition:width .4s cubic-bezier(.4,0,.2,1);min-width:4px}.calc-value{min-width:70px;text-align:right;font-weight:700;font-size:var(--font-size-sm);color:var(--color-text);font-variant-numeric:tabular-nums}.calc-divider{height:1px;background-color:var(--color-border);margin:var(--spacing-md) 0}.calc-breakdown{background-color:var(--color-bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-lg)}.calc-breakdown h4{margin-bottom:var(--spacing-md);color:var(--color-text);font-size:var(--font-size-base)}.calc-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.calc-table th,.calc-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border)}.calc-table th{font-weight:600;color:var(--color-text-light);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.calc-table td{color:var(--color-text)}.calc-total-row{background-color:var(--color-bg);border-radius:var(--radius-sm)}.calc-total-row td{border-bottom:none}@media (max-width: 640px){.theory-page{padding:var(--spacing-md)}.theory-cards{grid-template-columns:1fr}.theory-topic-header{flex-direction:column;text-align:center;gap:var(--spacing-md);padding:var(--spacing-lg)}.theory-topic-title{font-size:1.5rem}.theory-topic-icon-lg{font-size:2.5rem}.theory-section{padding:var(--spacing-lg)}.calc-result-row{flex-wrap:wrap}.calc-result-label{min-width:100%;margin-bottom:var(--spacing-xs)}.calc-value{min-width:60px}.nav-tabs{gap:2px}.nav-tab{font-size:.8rem;padding:var(--spacing-xs) var(--spacing-sm)}}.theory-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1.1rem;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:9999px;font-size:1rem;font-weight:500;color:var(--color-text);text-decoration:none;transition:all .2s ease-in-out;box-shadow:var(--shadow-sm)}.theory-chip:hover{background-color:var(--color-bg-secondary);border-color:var(--color-primary);transform:translateY(-1px);box-shadow:var(--shadow-md)}:root{--color-primary: #2563eb;--color-primary-dark: #1d4ed8;--color-success: #059669;--color-error: #dc2626;--color-fokus: #9333ea;--color-fokus-dark: #7e22ce;--color-text: #1f2937;--color-text-light: #6b7280;--color-bg: #ffffff;--color-bg-secondary: #f3f4f6;--color-border: #e5e7eb;--color-header-bg: rgba(255, 255, 255, .85);--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2.5rem;--spacing-2xl: 3.5rem;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.375rem;--font-size-2xl: 1.75rem;--font-size-3xl: 2rem;--radius-sm: .5rem;--radius-md: 1rem;--radius-lg: 1.25rem;--radius-xl: 1.5rem;--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .15), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .2), 0 8px 10px -6px rgb(0 0 0 / .15)}body.dark-mode{--color-primary: #3b82f6;--color-primary-dark: #2563eb;--color-success: #10b981;--color-error: #ef4444;--color-text: rgba(255, 255, 255, .9);--color-text-light: #94a3b8;--color-bg: #16181c;--color-bg-secondary: #0a0a0a;--color-border: rgba(255, 255, 255, .05);--color-header-bg: rgba(10, 10, 10, .75);--color-accent-glow: linear-gradient(to right, #3b82f6, #14b8a6);--shadow-sm: 0 4px 20px -2px rgba(0, 0, 0, .5);--shadow-md: 0 8px 30px -4px rgba(0, 0, 0, .6);--shadow-lg: 0 15px 40px -6px rgba(0, 0, 0, .7);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, .8), 0 0 20px rgba(59, 130, 246, .15)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.7;color:var(--color-text);background-color:var(--color-bg-secondary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease,color .3s ease}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3{line-height:1.2;font-weight:700}h1{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-lg)}h2{font-size:var(--font-size-xl);margin-bottom:var(--spacing-md)}.container{width:100%;max-width:900px;margin:0 auto;padding:var(--spacing-xl)}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:var(--spacing-md);color:var(--color-text-light)}.loading:before{content:"";width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);padding:var(--spacing-lg);color:var(--color-error);margin:var(--spacing-xl) 0}.button{display:inline-flex;align-items:center;justify-content:center;padding:1rem 1.75rem;font-size:var(--font-size-base);font-weight:600;font-family:var(--font-family);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);min-height:52px;background-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm)}.button:hover{background-color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.button:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.button-secondary{background-color:var(--color-bg);color:var(--color-text);border:2px solid var(--color-border)}.button-secondary:hover{background-color:var(--color-bg-secondary);border-color:var(--color-primary);color:var(--color-primary)}.button-secondary:disabled{opacity:.5;cursor:not-allowed;transform:none}.answer-button{width:100%;min-height:60px;padding:1rem 1.25rem;margin-bottom:var(--spacing-md);background-color:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:500;font-family:var(--font-family);text-align:left;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);color:var(--color-text);box-shadow:var(--shadow-sm)}.answer-button strong{margin-right:.5rem}.answer-button:hover:not(:disabled){border-color:var(--color-primary);background-color:#eff6ff;transform:translateY(-1px);box-shadow:var(--shadow-md)}.answer-button.selected{border-color:var(--color-primary);background-color:var(--color-primary);color:#fff;transform:scale(1.01)}.answer-button.correct{border-color:var(--color-success);background-color:var(--color-success);color:#fff}.answer-button.incorrect{border-color:var(--color-error);background-color:var(--color-error);color:#fff}.answer-button.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.explanation-box{background-color:var(--color-bg-secondary);border-left:4px solid var(--color-primary);padding:var(--spacing-md);border-radius:var(--radius-sm);margin-top:var(--spacing-lg);animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.explanation-box strong{display:block;margin-bottom:var(--spacing-xs);color:var(--color-primary)}.explanation-box p{color:var(--color-text);line-height:1.6;margin:0}.progress-container{margin-bottom:var(--spacing-xl)}.progress-bar{width:100%;height:8px;background-color:var(--color-border);border-radius:999px;overflow:hidden;margin-top:var(--spacing-sm)}.progress-fill{height:100%;background-color:var(--color-primary);transition:width .3s ease}.progress-text{font-size:var(--font-size-sm);color:var(--color-text-light);font-weight:500}.question-card{background-color:var(--color-bg);border-radius:var(--radius-xl);padding:2.5rem;box-shadow:var(--shadow-md);margin-bottom:var(--spacing-xl);transition:all .3s ease}.question-card:hover{box-shadow:var(--shadow-lg)}.question-number{font-size:var(--font-size-sm);color:var(--color-text-light);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-md)}.question-text{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text);margin-bottom:var(--spacing-xl);line-height:1.7}.question-image-container{width:100%;max-width:500px;height:300px;display:flex;align-items:center;justify-content:center;margin:var(--spacing-lg) 0;background-color:var(--color-bg-secondary);border-radius:var(--radius-md);overflow:hidden}.question-image{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:var(--radius-md);transition:opacity .3s ease}.question-image.hidden{opacity:0;position:absolute}.image-loading-placeholder{display:flex;align-items:center;justify-content:center;color:var(--color-text-light);font-size:var(--font-size-sm);font-weight:500;animation:pulse 1.5s infinite}.result-screen{text-align:center;padding:var(--spacing-xl)}.result-icon{font-size:4rem;margin-bottom:var(--spacing-lg)}.result-status{font-size:var(--font-size-2xl);font-weight:700;margin-bottom:var(--spacing-md)}.result-status.passed{color:var(--color-success)}.result-status.failed{color:var(--color-error)}.result-details{background-color:var(--color-bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-lg);margin:var(--spacing-xl) 0}.result-stat{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border)}.result-stat:last-child{border-bottom:none}.result-stat-label{color:var(--color-text-light)}.result-stat-value{font-weight:600}@media (max-width: 640px){.container{padding:var(--spacing-md)}.question-card{padding:var(--spacing-lg)}h1{font-size:var(--font-size-xl)}.question-text{font-size:var(--font-size-base)}}.review-mode{max-width:800px;margin:0 auto}.review-header{text-align:center;margin-bottom:var(--spacing-xl)}.review-header h2{color:var(--color-text);margin-bottom:var(--spacing-sm)}.review-header p{color:var(--color-text-light)}.review-questions{display:flex;flex-direction:column;gap:var(--spacing-xl)}.review-question{background-color:var(--color-bg);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);transition:background-color .3s ease}.review-question-number{font-size:var(--font-size-sm);color:var(--color-text-light);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm)}.review-question-text{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);margin-bottom:var(--spacing-lg);line-height:1.5}.review-answers{margin:var(--spacing-lg) 0}.review-answer-row{padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm)}.review-answer-row.incorrect{background-color:#fee;border:1px solid #fcc}.review-answer-row.correct{background-color:#efe;border:1px solid #cfc}body.dark-mode .review-answer-row.incorrect{background-color:#4a1a1a;border-color:#6a2020}body.dark-mode .review-answer-row.correct{background-color:#1a3a1a;border-color:#206a20}.review-explanation{background-color:var(--color-bg-secondary);border-left:4px solid var(--color-primary);padding:var(--spacing-md);border-radius:var(--radius-sm);margin-top:var(--spacing-lg)}.review-explanation strong{display:block;margin-bottom:var(--spacing-xs);color:var(--color-primary)}.review-explanation p{color:var(--color-text);line-height:1.6;margin:0}.theme-toggle{background-color:var(--color-bg-secondary);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-size:1.5rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;box-shadow:var(--shadow-sm)}.theme-toggle:hover{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff;transform:scale(1.05);box-shadow:var(--shadow-md)}.theme-toggle:active{transform:translateY(0)}body.dark-mode .answer-button:hover{background-color:var(--color-bg-secondary)}body.dark-mode .error{background-color:#7f1d1d;border-color:#991b1b}.start-screen{max-width:900px;margin:0 auto;padding:var(--spacing-xl);text-align:center}.seo-section{margin-top:var(--spacing-2xl);padding:var(--spacing-2xl);background-color:var(--color-bg);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-md);text-align:left}.seo-section h2{font-size:var(--font-size-2xl);color:var(--color-text);margin-bottom:var(--spacing-md);letter-spacing:-.02em}.seo-section h3{font-size:var(--font-size-lg);color:var(--color-text);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-sm);font-weight:600}.seo-section p{color:var(--color-text-light);font-size:1.125rem;line-height:1.8;margin-bottom:0}body.dark-mode .seo-section{background:var(--color-bg);box-shadow:0 10px 30px -10px #0006}body.dark-mode .button:not(.button-secondary){background:var(--color-accent-glow);box-shadow:0 4px 15px #3b82f666;border:none}body.dark-mode .button:not(.button-secondary):hover{filter:brightness(1.1);box-shadow:0 8px 25px #3b82f699}body.dark-mode .progress-fill{background:var(--color-accent-glow);box-shadow:0 0 10px #3b82f680}body.dark-mode .answer-button.selected{background:var(--color-accent-glow);border-color:transparent;box-shadow:0 4px 15px #3b82f666}body.dark-mode .mode-card-full{position:relative}body.dark-mode .mode-card-full:before{content:"";position:absolute;top:-1px;left:-1px;right:-1px;bottom:-1px;background:var(--color-accent-glow);z-index:-1;border-radius:inherit;opacity:0;transition:opacity .3s ease}body.dark-mode .mode-card-full:hover:before{opacity:1}body.dark-mode .mode-card-full:hover{border-color:transparent;background:var(--color-bg)}.nav-tabs{display:flex}.nav-tab{background:transparent;border:none;color:var(--color-text-light);font-weight:600;font-size:1.375rem;letter-spacing:.01em;cursor:pointer;position:relative;transition:color .3s ease}.nav-tab:hover{color:var(--color-text)}.nav-tab-active{color:var(--color-text);font-weight:600}.nav-tab-active:after{content:"";position:absolute;bottom:-6px;left:0;right:0;height:2px;background:var(--color-primary);box-shadow:0 0 6px var(--color-primary);border-radius:2px}body.dark-mode .nav-tab-active:after{background:var(--color-accent-glow);box-shadow:0 0 6px #3b82f666}.start-screen h1{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-lg);color:var(--color-text);letter-spacing:-.03em;font-weight:800}.header-logo-text{margin-bottom:0;font-size:2rem;font-weight:900;letter-spacing:-.03em;color:var(--color-text);text-decoration:none}body.dark-mode .header-logo-text{background:var(--color-accent-glow);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:transparent}.hero-section{max-width:850px;margin:0 auto var(--spacing-2xl);padding:var(--spacing-2xl);background:var(--color-bg);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-xl);text-align:center;position:relative;overflow:hidden}body.dark-mode .hero-section{background:var(--color-bg);box-shadow:0 20px 40px -10px #0006}.hero-description{color:var(--color-text);font-size:1.25rem;line-height:1.8;margin-bottom:var(--spacing-xl);max-width:650px;margin-left:auto;margin-right:auto}.features-strip{display:flex;justify-content:center;gap:var(--spacing-lg);flex-wrap:wrap;margin-top:var(--spacing-md)}.feature-item{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-base);font-weight:600;color:var(--color-text);background-color:var(--color-bg-secondary);padding:var(--spacing-sm) var(--spacing-lg);border-radius:999px;border:1px solid var(--color-border);transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.feature-item:hover{border-color:var(--color-primary);transform:translateY(-2px);color:var(--color-primary);box-shadow:var(--shadow-md);background-color:var(--color-bg)}.feature-icon{font-size:1.25rem;line-height:1}.mode-selection-header{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-lg)}.mode-selection-header h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-xs)}.mode-selection-header p{color:var(--color-text-light);font-size:var(--font-size-lg)}.mode-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:var(--spacing-xl)}.mode-card{position:relative;overflow:hidden;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:3rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center;font-family:var(--font-family);box-shadow:var(--shadow-md)}.mode-card-full{grid-column:1 / -1}.card-badge-new{position:absolute;top:15px;right:-40px;background-color:var(--color-success);color:#fff;padding:5px 44px;font-size:.85rem;font-weight:900;transform:rotate(45deg);z-index:2;box-shadow:0 2px 4px #00000026;text-transform:uppercase;letter-spacing:.05em;pointer-events:none}.mode-card:hover{transform:scale(1.02);box-shadow:var(--shadow-xl);border-color:var(--color-border)}.mode-card-express:hover{border-color:#f59e0b;box-shadow:var(--shadow-xl)}.mode-card-full:hover{border-color:var(--color-primary);box-shadow:var(--shadow-xl)}.mode-card-vikeplikt:hover{border-color:var(--color-success);box-shadow:var(--shadow-xl)}.mode-card-skilt:hover{border-color:#eab308;box-shadow:var(--shadow-xl)}.mode-card-fokus:hover{border-color:var(--color-fokus);box-shadow:var(--shadow-xl)}.mode-icon{font-size:4rem;margin-bottom:var(--spacing-md)}.mode-card h2{font-size:var(--font-size-xl);margin-bottom:var(--spacing-sm);color:var(--color-text)}.mode-card p{color:var(--color-text-light);margin-bottom:var(--spacing-md);font-size:var(--font-size-base)}.mode-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-md);border-radius:8px;font-size:var(--font-size-sm);font-weight:600;box-shadow:0 1px 2px #0000001a}.mode-badge-express{background-color:#f59e0b;color:#fff}.mode-badge-full{background-color:var(--color-primary);color:#fff}.result-actions{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.result-mode-name{color:var(--color-text-light);font-size:var(--font-size-base);margin-bottom:var(--spacing-sm);font-weight:600}@media (max-width: 640px){.mode-cards{grid-template-columns:1fr}.start-screen{padding:var(--spacing-md)}}.timer{position:fixed;top:100px;right:40px;background-color:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);box-shadow:var(--shadow-md);display:flex;align-items:center;gap:var(--spacing-sm);font-weight:600;z-index:100;transition:all .3s ease}.timer-icon{font-size:1.5rem}.timer-display{font-size:var(--font-size-xl);font-variant-numeric:tabular-nums;color:var(--color-text)}.timer-warning{border-color:var(--color-error);background-color:#fef2f2;animation:pulse 2s infinite}body.dark-mode .timer-warning{background-color:#4a1a1a}.timer-warning .timer-display{color:var(--color-error)}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.timer-expired{opacity:.6}.time-warning-notification{position:fixed;top:200px;right:40px;background-color:var(--color-error);color:#fff;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-weight:600;z-index:101;animation:slideInRight .3s ease,fadeOut .5s ease 4.5s forwards}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeOut{to{opacity:0;transform:translate(100%)}}.timer-toggle{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-light);cursor:pointer;-webkit-user-select:none;user-select:none}.timer-toggle:hover{color:var(--color-text)}.timer-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer}.timer-toggle label{cursor:pointer;display:flex;align-items:center;gap:4px}@media (max-width: 640px){.timer{top:80px;right:16px;padding:var(--spacing-sm) var(--spacing-md)}.timer-display{font-size:var(--font-size-lg)}.time-warning-notification{top:160px;right:16px;left:16px;text-align:center}}.streak-container{position:relative}.streak-badge{display:flex;align-items:center;gap:4px;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-size:1.1rem;cursor:pointer;transition:all .2s ease;min-height:48px;box-shadow:var(--shadow-sm);font-family:var(--font-family);color:var(--color-text)}.streak-badge:hover{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff;transform:scale(1.05);box-shadow:var(--shadow-md)}.streak-flame{font-size:1.4rem;line-height:1}.streak-count{font-weight:700;font-size:var(--font-size-base);min-width:1ch;text-align:center}.streak-enable-btn{display:flex;align-items:center;justify-content:center;background:none;border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-sm);font-size:1.2rem;cursor:pointer;opacity:.4;transition:all .2s ease;min-width:48px;min-height:48px}.streak-enable-btn:hover{opacity:1;border-style:solid;border-color:#f59e0b;background-color:#f59e0b1a}.streak-menu{position:absolute;top:calc(100% + 8px);right:0;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-lg);min-width:200px;z-index:200;animation:slideIn .2s ease}.streak-menu-title{font-weight:700;font-size:var(--font-size-base);margin-bottom:var(--spacing-xs);color:var(--color-text)}.streak-menu-info{font-size:var(--font-size-sm);color:var(--color-text-light);margin-bottom:var(--spacing-md)}.streak-menu-toggle{width:100%;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--color-text-light);cursor:pointer;transition:all .2s ease}.streak-menu-toggle:hover{background-color:var(--color-error);border-color:var(--color-error);color:#fff}@media (max-width: 640px){.streak-badge{padding:var(--spacing-xs) var(--spacing-sm);min-height:40px}.streak-flame{font-size:1.2rem}.streak-menu{right:-40px}}.theory-section-group h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-sm);color:var(--color-text)}.article-card{text-align:left!important;display:flex!important;flex-direction:column;justify-content:space-between}.article-card-content{display:flex;gap:var(--spacing-lg);align-items:flex-start;margin-bottom:var(--spacing-md)}.article-card-content div{flex:1}.article-grid{grid-template-columns:1fr!important}@media (min-width: 768px){.article-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))!important}}.theory-faq-section{margin-top:var(--spacing-2xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border)}.theory-faq-list{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.theory-faq-item{background-color:var(--color-bg);padding:var(--spacing-lg);border-radius:var(--radius-md);border:1px solid var(--color-border);transition:all .2s ease}body.dark-mode .theory-faq-item{background-color:#ffffff05}.theory-faq-question{font-size:var(--font-size-lg);font-weight:700;margin-bottom:var(--spacing-xs);color:var(--color-text)}.theory-faq-answer{color:var(--color-text-light);line-height:1.6}.theory-faq-answer p{margin-bottom:0}.mode-badge-skilt{background-color:#eab308;color:#fff}.mode-badge-fokus{background-color:var(--color-fokus);color:#fff}.mode-card-fokus:hover:not(:disabled){border-color:var(--color-fokus);box-shadow:var(--shadow-xl)}.mode-card:disabled{opacity:.5;cursor:not-allowed;transform:none}.mode-card:disabled:hover{transform:none;box-shadow:none;border-color:var(--color-border)}@media (max-width: 640px){.question-card{padding:2rem}.container{padding:var(--spacing-lg)}}
