:root{--canton-navy: #1b2a47;--canton-blue: #026aa7;--canton-blue-light: #e6f2fb;--canton-gold: #c59b27;--canton-gold-light: #fef8e7;--canton-gray-bg: #f8fafc;--canton-surface: #ffffff;--canton-border: #e2e8f0;--canton-border-dark: #cbd5e1;--canton-text: #1e293b;--canton-text-muted: #64748b;--canton-text-light: #94a3b8;--color-deutsch: #8b5cf6;--color-deutsch-bg: #f5f3ff;--color-deutsch-border: #ddd6fe;--color-arithmetik: #2563eb;--color-arithmetik-bg: #eff6ff;--color-arithmetik-border: #bfdbfe;--color-geometrie: #059669;--color-geometrie-bg: #ecfdf5;--color-geometrie-border: #a7f3d0;--color-englisch: #d97706;--color-englisch-bg: #fffbeb;--color-englisch-border: #fde68a;--color-mathe1: #2563eb;--color-mathe1-bg: #eff6ff;--color-mathe1-border: #bfdbfe;--color-mathe2: #059669;--color-mathe2-bg: #ecfdf5;--color-mathe2-border: #a7f3d0;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--shadow-subtle: 0 1px 3px rgba(0, 0, 0, .05), 0 1px 2px rgba(0, 0, 0, .03);--shadow-card: 0 4px 6px -1px rgba(0, 0, 0, .06), 0 2px 4px -2px rgba(0, 0, 0, .04);--shadow-elevated: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -4px rgba(0, 0, 0, .04);--font-main: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", monospace;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}:root{--canton-navy: #1b2a47;--canton-blue: #026aa7;--canton-blue-light: #e6f2fb;--canton-gold: #c59b27;--canton-gold-light: #fef8e7;--canton-gray-bg: #f8fafc;--canton-surface: #ffffff;--canton-border: #e2e8f0;--canton-border-dark: #cbd5e1;--canton-text: #1e293b;--canton-text-muted: #64748b;--canton-text-light: #94a3b8;--color-deutsch: #8b5cf6;--color-deutsch-bg: #f5f3ff;--color-deutsch-border: #ddd6fe;--color-arithmetik: #2563eb;--color-arithmetik-bg: #eff6ff;--color-arithmetik-border: #bfdbfe;--color-geometrie: #059669;--color-geometrie-bg: #ecfdf5;--color-geometrie-border: #a7f3d0;--color-englisch: #d97706;--color-englisch-bg: #fffbeb;--color-englisch-border: #fde68a;--color-mathe1: #2563eb;--color-mathe1-bg: #eff6ff;--color-mathe1-border: #bfdbfe;--color-mathe2: #059669;--color-mathe2-bg: #ecfdf5;--color-mathe2-border: #a7f3d0;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--shadow-subtle: 0 1px 3px rgba(0, 0, 0, .05), 0 1px 2px rgba(0, 0, 0, .03);--shadow-card: 0 4px 6px -1px rgba(0, 0, 0, .06), 0 2px 4px -2px rgba(0, 0, 0, .04);--shadow-elevated: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -4px rgba(0, 0, 0, .04);--font-main: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%;overflow-x:clip;width:100%}body.app-body{font-family:var(--font-main);background-color:var(--canton-gray-bg);color:var(--canton-text);line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh;padding-bottom:var(--safe-bottom);overflow-x:clip;width:100%}button,input,select,textarea{touch-action:manipulation;font-family:inherit}.katex-display{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding:.35rem 0;margin:.75rem 0!important;max-width:100%}.app-header{background-color:var(--canton-surface);border-bottom:1px solid var(--canton-border);position:sticky;top:0;z-index:100;box-shadow:var(--shadow-subtle);padding-top:var(--safe-top)}.header-container{max-width:1300px;margin:0 auto;padding:.85rem 1.5rem;display:flex;justify-content:space-between;align-items:center;gap:.85rem}.brand-group{display:flex;align-items:center;gap:.85rem}.brand-text-block{display:flex;flex-direction:column}.canton-emblem{background:var(--canton-navy);color:#fff;font-weight:800;font-size:1.1rem;letter-spacing:1px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);border:2px solid var(--canton-border);flex-shrink:0}.brand-title{font-size:1.2rem;font-weight:700;color:var(--canton-navy);letter-spacing:-.01em;line-height:1.25}.brand-subtitle{font-size:.825rem;color:var(--canton-text-muted);line-height:1.35}.mobile-header-actions{display:none}.mobile-hamburger-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;background:var(--canton-gray-bg);border:1px solid var(--canton-border);border-radius:var(--radius-md);padding:.45rem .55rem;color:var(--canton-navy);cursor:pointer;transition:all .15s ease;touch-action:manipulation}.mobile-hamburger-btn:hover,.mobile-hamburger-btn:active{background:#e2e8f0;border-color:var(--canton-border-dark)}.status-dot-mini{width:8px;height:8px;border-radius:50%;background:#94a3b8;flex-shrink:0}.status-dot-mini.synced{background:#22c55e;box-shadow:0 0 6px #22c55e99}.status-dot-mini.saving{background:#f59e0b}.header-actions{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:.35rem;flex-shrink:0}.header-upgrade-row{display:flex;justify-content:flex-end;width:100%}.header-upgrade-btn{display:inline-flex;align-items:center;gap:.4rem;background:linear-gradient(135deg,#16a34a,#15803d);color:#fff;border:none;padding:.26rem .75rem;border-radius:20px;font-size:.78rem;font-weight:800;cursor:pointer;box-shadow:0 2px 8px #16a34a40;white-space:nowrap;transition:all .2s ease}.header-upgrade-btn:hover{background:linear-gradient(135deg,#15803d,#166534);transform:translateY(-1px);box-shadow:0 4px 12px #16a34a59}.header-controls-group{display:flex;align-items:center;gap:.55rem;flex-wrap:nowrap}.date-picker-wrapper{display:flex;align-items:center;gap:.45rem;background:var(--canton-gray-bg);padding:.35rem .65rem;border-radius:var(--radius-md);border:1px solid var(--canton-border);white-space:nowrap}.date-icon{color:var(--canton-text-muted)}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:9998;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}.drawer-backdrop.open{opacity:1;visibility:visible}.mobile-nav-drawer{position:fixed;top:0;right:0;bottom:0;width:86vw;max-width:360px;background:#fff;z-index:9999;box-shadow:-8px 0 30px #0003;transform:translate(100%);transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;box-sizing:border-box}.mobile-nav-drawer.open{transform:translate(0)}.drawer-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.15rem;border-bottom:1px solid var(--canton-border);background:var(--canton-gray-bg);padding-top:max(1rem,var(--safe-top))}.drawer-brand{display:flex;align-items:center;gap:.65rem}.emblem-drawer{width:34px;height:34px;font-size:.9rem}.drawer-title{font-size:.95rem;font-weight:800;color:var(--canton-navy);line-height:1.2}.drawer-subtitle{font-size:.75rem;color:var(--canton-text-muted)}.drawer-close-btn{background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-sm);width:34px;height:34px;display:flex;align-items:center;justify-content:center;color:var(--canton-navy);cursor:pointer;transition:all .15s ease}.drawer-close-btn:hover,.drawer-close-btn:active{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.drawer-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1.15rem 1rem max(1.5rem,var(--safe-bottom));display:flex;flex-direction:column;gap:1.35rem}.drawer-section{display:flex;flex-direction:column;gap:.5rem}.drawer-section-title{font-size:.725rem;font-weight:800;letter-spacing:.05em;color:var(--canton-text-muted);margin-bottom:.15rem}.drawer-nav-list{display:flex;flex-direction:column;gap:.4rem}.drawer-nav-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem .85rem;background:var(--canton-gray-bg);border:1.5px solid var(--canton-border);border-radius:var(--radius-md);text-align:left;cursor:pointer;transition:all .15s ease;width:100%}.drawer-nav-item:hover,.drawer-nav-item:active{background:#f1f5f9;border-color:var(--canton-border-dark)}.drawer-nav-item.active{background:#eff6ff;border-color:#3b82f6;box-shadow:0 2px 6px #3b82f626}.drawer-nav-item-left{display:flex;align-items:center;gap:.75rem}.drawer-nav-icon{width:32px;height:32px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--canton-border);color:var(--canton-navy);flex-shrink:0}.drawer-nav-item.active .drawer-nav-icon{background:var(--canton-navy);color:#fff;border-color:var(--canton-navy)}.drawer-nav-labels{display:flex;flex-direction:column}.drawer-nav-name{font-size:.875rem;font-weight:700;color:var(--canton-navy)}.drawer-nav-desc{font-size:.725rem;color:var(--canton-text-muted)}.drawer-arrow{color:#94a3b8}.drawer-progress-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid var(--canton-border);border-radius:var(--radius-md);padding:.85rem;display:flex;flex-direction:column;gap:.5rem}.subject-progress-list-clean,.drawer-subjects-progress-clean{display:flex;flex-direction:column;gap:.65rem}.subject-progress-block{display:flex;flex-direction:column;gap:.3rem}.subj-row-header{display:flex;justify-content:space-between;align-items:center;font-size:.775rem;font-weight:700;color:var(--canton-navy)}.subj-name.vocab-label{color:var(--canton-gold, #b45309)}.subj-stat-right{display:flex;align-items:center;gap:.4rem}.subj-ist-val{font-family:var(--font-mono);font-size:.75rem;font-weight:600;color:var(--canton-text-muted)}.diff-pill{font-size:.675rem;font-weight:700;padding:.1rem .4rem;border-radius:999px;line-height:1.2}.diff-pill.ahead{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.diff-pill.behind{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.diff-pill.on-track{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.multi-progress-track{width:100%;height:8px;background:#e2e8f0;border-radius:999px;overflow:hidden;position:relative;display:flex}.bar-segment{height:100%;transition:width .3s ease}.bar-segment.blue{background:#3b82f6}.bar-segment.green{background:#22c55e}.bar-segment.red{background:#ef4444}.soll-marker-tick{position:absolute;top:0;bottom:0;width:2px;background:#0f172a;opacity:.75;transform:translate(-50%);z-index:2;pointer-events:none}.progress-legend-row{display:flex;align-items:center;justify-content:flex-start;gap:.85rem;margin-top:.5rem;padding-top:.5rem;border-top:1px dashed var(--canton-border);font-size:.7rem;color:var(--canton-text-muted)}.legend-item{display:flex;align-items:center;gap:.3rem}.legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.legend-dot.blue{background:#3b82f6}.legend-dot.green{background:#22c55e}.legend-dot.red{background:#ef4444}.soll-status-pill-mini{font-size:.725rem;font-weight:700;padding:.15rem .45rem;border-radius:999px;background:#eff6ff;color:var(--canton-blue);border:1px solid #bfdbfe}.drawer-settings-card{background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-md);padding:.85rem;display:flex;flex-direction:column;gap:.65rem}.drawer-setting-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.drawer-setting-label{display:flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:600;color:var(--canton-navy)}.drawer-setting-date-box{display:flex;flex-direction:column;gap:.35rem;width:100%}.drawer-date-label{display:flex;align-items:center;gap:.35rem;font-size:.775rem;font-weight:600;color:var(--canton-navy)}.drawer-date-input{width:100%!important;max-width:100%!important;box-sizing:border-box;font-size:.875rem!important;padding:.45rem .65rem!important;border:1px solid var(--canton-border-dark);border-radius:var(--radius-sm);background:#fff}.drawer-sync-text{font-size:.75rem;color:var(--canton-text-muted)}.drawer-account-box{display:flex;flex-direction:column;gap:.4rem;border-top:1px solid var(--canton-border);padding-top:.5rem;margin-top:.25rem}.drawer-user-email{font-size:.75rem;color:var(--canton-text-muted);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-logout-btn{width:100%;justify-content:center;padding:.45rem;font-size:.8rem;color:#dc2626;border-color:#fecaca;background:#fef2f2}.drawer-logout-btn:hover{background:#fee2e2}.mobile-sticky-filter-bar{display:none;position:-webkit-sticky;position:sticky;top:50px;z-index:95;background:#fffffffa;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--canton-border);padding:.45rem .65rem;margin:-1rem -.65rem .85rem;justify-content:space-between;align-items:center;gap:.5rem;box-shadow:0 4px 10px #0000000f}.mobile-filter-chips-scroll{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;gap:.35rem;flex:1}.mobile-filter-chips-scroll::-webkit-scrollbar{display:none}.mobile-filter-chip{flex:0 0 auto;min-width:38px;padding:.35rem .55rem;border-radius:999px;font-size:.775rem;font-weight:700;letter-spacing:.02em;text-align:center;background:var(--canton-gray-bg);border:1px solid var(--canton-border);color:var(--canton-text-muted);cursor:pointer;transition:all .15s ease;white-space:nowrap;touch-action:manipulation}.mobile-filter-chip.all.active{background:var(--canton-navy);color:#fff;border-color:var(--canton-navy)}.mobile-filter-chip.deutsch.active{background:var(--color-deutsch);color:#fff;border-color:var(--color-deutsch)}.mobile-filter-chip.arithmetik.active{background:var(--color-arithmetik);color:#fff;border-color:var(--color-arithmetik)}.mobile-filter-chip.geometrie.active{background:var(--color-geometrie);color:#fff;border-color:var(--color-geometrie)}.mobile-filter-chip.englisch.active{background:var(--color-englisch);color:#fff;border-color:var(--color-englisch)}.mobile-hide-toggle-btn{flex:0 0 auto;padding:.35rem .55rem;border-radius:var(--radius-sm);font-size:.7rem;font-weight:600;background:var(--canton-gray-bg);border:1px solid var(--canton-border);color:var(--canton-navy);cursor:pointer;white-space:nowrap}.mobile-hide-toggle-btn.active{background:#fef3c7;color:#92400e;border-color:#fde68a}.date-label{font-size:.8rem;font-weight:600;color:var(--canton-text-muted)}.date-input{border:1px solid var(--canton-border-dark);padding:.3rem .45rem;border-radius:var(--radius-sm);font-family:inherit;font-size:.85rem;color:var(--canton-text);background:#fff}.header-status-group{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.header-user-group{display:flex;align-items:center;gap:.4rem}.user-email-badge{font-size:.8rem;color:var(--canton-navy);background:var(--canton-blue-light);padding:.25rem .55rem;border-radius:var(--radius-sm);font-weight:600;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-logout{padding:.25rem .55rem;font-size:.75rem;display:inline-flex;align-items:center;gap:.35rem}.data-sync-group{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.storage-mode-indicator{display:inline-flex;align-items:center;gap:.4rem;font-size:.775rem;font-weight:600;padding:.35rem .65rem;border-radius:var(--radius-sm);background:#fef3c7;border:1px solid #fde68a;color:#92400e;transition:all .2s ease;white-space:nowrap}.storage-mode-indicator .status-dot{width:7px;height:7px;border-radius:50%;background:#f59e0b;display:inline-block;flex-shrink:0}.storage-mode-indicator.synced{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.storage-mode-indicator.synced .status-dot{background:#16a34a;box-shadow:0 0 0 2px #16a34a33}.storage-mode-indicator.saving{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.storage-mode-indicator.saving .status-dot{background:#2563eb}.main-nav{background:var(--canton-surface);border-top:1px solid var(--canton-border)}.nav-container{max-width:1300px;margin:0 auto;padding:0 1.5rem;display:flex;gap:.35rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.nav-container::-webkit-scrollbar{display:none}.nav-tab{display:flex;align-items:center;gap:.45rem;padding:.8rem 1.15rem;background:transparent;border:none;border-bottom:3px solid transparent;font-family:inherit;font-size:.9rem;font-weight:600;color:var(--canton-text-muted);cursor:pointer;transition:all .15s ease;white-space:nowrap;min-height:44px}.nav-tab:hover{color:var(--canton-blue);background:var(--canton-blue-light)}.nav-tab.active{color:var(--canton-navy);border-bottom-color:var(--canton-navy)}.app-main{max-width:1300px;margin:0 auto;padding:2rem 1.5rem}.app-view{display:block}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1.1rem;font-family:inherit;font-size:.875rem;font-weight:600;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:all .15s ease;text-decoration:none}.btn-sm{padding:.35rem .75rem;font-size:.8rem}.btn-primary{background-color:var(--canton-navy);color:#fff}.btn-primary:hover{background-color:#2b3d61}.btn-secondary{background-color:#fff;color:var(--canton-text);border-color:var(--canton-border-dark)}.btn-secondary:hover{background-color:var(--canton-gray-bg);border-color:var(--canton-text-muted)}.btn-danger-outline{background:transparent;color:#dc2626;border-color:#fca5a5}.btn-danger-outline:hover{background:#fef2f2}.toast-toast{position:fixed;bottom:2rem;right:2rem;background:var(--canton-navy);color:#fff;padding:.75rem 1.25rem;border-radius:var(--radius-md);box-shadow:var(--shadow-elevated);font-size:.9rem;font-weight:600;z-index:1000;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.week-card.week-fully-completed{border-color:#86efac}.week-card.week-fully-completed .week-num-badge{background:#166534;color:#fff}.week-progress-pill.completed{background:#dcfce7;color:#166534;border:1px solid #86efac;font-weight:700}.dashboard-grid-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1.5rem;align-items:start}.dashboard-timeline-col{min-width:0}.dashboard-sidebar-col{position:sticky;top:130px;align-self:start;display:flex;flex-direction:column;gap:1.25rem;max-height:calc(100vh - 150px);overflow-y:auto;padding-right:4px}.dashboard-sidebar-col::-webkit-scrollbar{width:5px}.dashboard-sidebar-col::-webkit-scrollbar-track{background:transparent}.dashboard-sidebar-col::-webkit-scrollbar-thumb{background:var(--canton-border-dark);border-radius:4px}.sidebar-card{background:var(--canton-surface);border:1px solid var(--canton-border);border-radius:var(--radius-lg);padding:1.15rem;box-shadow:var(--shadow-subtle);display:flex;flex-direction:column;gap:.85rem}.sidebar-card-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.sidebar-card-title{font-size:.95rem;font-weight:700;color:var(--canton-navy);letter-spacing:-.01em}.w-100{width:100%}.main-badge{font-size:.85rem;font-weight:800;padding:.2rem .6rem;background:var(--canton-blue-light);color:var(--canton-blue);border-radius:var(--radius-sm)}.overall-progress-box{display:flex;flex-direction:column;gap:.4rem;padding-bottom:.5rem;border-bottom:1px solid var(--canton-border)}.stat-value-sm{font-size:.875rem;font-weight:700;font-family:var(--font-mono);color:var(--canton-text)}.progress-bar-track{width:100%;height:8px;background:var(--canton-border);border-radius:999px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--canton-navy);border-radius:999px;transition:width .3s ease}.subject-progress-list{display:flex;flex-direction:column;gap:.65rem}.subject-progress-row{display:flex;flex-direction:column;gap:.25rem}.subj-row-header{display:flex;justify-content:space-between;align-items:center;font-size:.775rem;font-weight:600}.subj-name{color:var(--canton-text)}.subject-deutsch .subj-name{color:#6d28d9}.subject-arithmetik .subj-name{color:#1d4ed8}.subject-geometrie .subj-name{color:#047857}.subject-englisch .subj-name{color:#b45309}.subject-deutsch .progress-bar-fill{background:var(--color-deutsch)}.subject-arithmetik .progress-bar-fill{background:var(--color-arithmetik)}.subject-geometrie .progress-bar-fill{background:var(--color-geometrie)}.subject-englisch .progress-bar-fill{background:var(--color-englisch)}.subj-count{font-family:var(--font-mono);color:var(--canton-text-muted);font-size:.725rem}.hide-completed-toggle-wrapper{display:flex;flex-direction:column;gap:.35rem;padding-bottom:.75rem;border-bottom:1px solid var(--canton-border)}.switch-control{display:flex;align-items:center;gap:.65rem;cursor:pointer;-webkit-user-select:none;user-select:none}.switch-control input{position:absolute;opacity:0;width:0;height:0}.switch-slider{position:relative;display:inline-block;width:36px;height:20px;background-color:var(--canton-border-dark);border-radius:20px;transition:.2s ease;flex-shrink:0}.switch-slider:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:.2s ease;box-shadow:0 1px 2px #0003}.switch-control input:checked+.switch-slider{background-color:var(--canton-blue)}.switch-control input:checked+.switch-slider:before{transform:translate(16px)}.switch-label-text{font-size:.825rem;font-weight:600;color:var(--canton-text)}.completed-weeks-status{font-size:.75rem;color:var(--canton-text-muted);padding-left:42px}.sidebar-filter-section{display:flex;flex-direction:column;gap:.4rem}.filter-mini-label{font-size:.75rem;font-weight:700;color:var(--canton-text-muted);text-transform:uppercase;letter-spacing:.05em}.vertical-pills{display:flex;flex-direction:column;gap:.35rem}.vertical-pills .pill-btn{width:100%;text-align:left;border-radius:var(--radius-sm);padding:.4rem .65rem;font-size:.8rem}.pill-group{display:flex;gap:.4rem;flex-wrap:wrap}.pill-btn{padding:.35rem .75rem;background:var(--canton-gray-bg);border:1px solid var(--canton-border);border-radius:999px;font-family:inherit;font-size:.8rem;font-weight:600;color:var(--canton-text-muted);cursor:pointer;transition:all .15s ease}.pill-btn:hover{border-color:var(--canton-blue);color:var(--canton-blue)}.pill-btn.active{background:var(--canton-navy);color:#fff;border-color:var(--canton-navy)}.weeks-timeline-container{display:flex;flex-direction:column;gap:1.25rem}.phase-heading-card{background:linear-gradient(135deg,var(--canton-navy),#2b3d61);color:#fff;padding:1rem 1.5rem;border-radius:var(--radius-lg);display:flex;justify-content:space-between;align-items:center}.phase-heading-title{font-size:1.1rem;font-weight:700}.phase-heading-desc{font-size:.85rem;opacity:.9}.week-card{background:var(--canton-surface);border:1px solid var(--canton-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-subtle);overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease;scroll-margin-top:110px}@keyframes weekHighlightPulse{0%{box-shadow:0 0 #026aa773;border-color:var(--canton-blue)}35%{box-shadow:0 0 0 8px #026aa733;border-color:var(--canton-blue)}to{box-shadow:var(--shadow-card);border-color:var(--canton-border)}}.week-card.highlight-target{animation:weekHighlightPulse 2s cubic-bezier(.2,.8,.2,1)}.week-card:hover{border-color:var(--canton-border-dark);box-shadow:var(--shadow-card)}.week-card-header{padding:1rem 1.5rem;background:#fff;display:flex;justify-content:space-between;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid transparent}.week-card.expanded .week-card-header{border-bottom-color:var(--canton-border);background:var(--canton-gray-bg)}.week-title-group{display:flex;align-items:center;gap:1rem}.week-num-badge{background:var(--canton-navy);color:#fff;font-weight:700;font-size:.85rem;padding:.25rem .75rem;border-radius:var(--radius-sm);font-family:var(--font-mono)}.week-title-text{font-size:1.05rem;font-weight:700;color:var(--canton-navy)}.week-date-tag{font-size:.85rem;font-weight:500;color:var(--canton-text-muted);margin-left:.5rem}.week-header-right{display:flex;align-items:center;gap:1rem}.week-progress-pill{font-size:.75rem;font-weight:700;padding:.2rem .55rem;background:var(--canton-border);border-radius:999px;color:var(--canton-text);font-family:var(--font-mono);white-space:nowrap;letter-spacing:.02em}.week-progress-pill.completed{background:#dcfce7;color:#166534;border:1px solid #86efac}.week-chevron{transition:transform .2s ease}.week-card.expanded .week-chevron{transform:rotate(180deg)}.week-card-body{display:none;padding:1.25rem 1.5rem 1.5rem;background:#fff}.week-card.expanded .week-card-body{display:block}.theory-session-banner{background:#fdf6e2;border:1px solid #f9e2af;border-radius:var(--radius-md);padding:.75rem 1rem;margin-bottom:1rem;display:flex;align-items:center;gap:.6rem;font-size:.85rem;color:#78350f}.theory-session-icon{font-size:1.25rem}.week-subjects-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-bottom:1.25rem}.subject-mini-box{border:1px solid var(--canton-border);border-radius:var(--radius-md);padding:.65rem .75rem;background:var(--canton-gray-bg);transition:all .2s ease;position:relative;display:flex;flex-direction:column;justify-content:space-between;min-width:0}.subject-mini-box.clickable-theory{cursor:pointer}.subject-mini-box.clickable-theory:hover{transform:translateY(-2px);box-shadow:var(--shadow-card);background:#fff;border-color:var(--canton-border-dark)}.subject-mini-box.deutsch{border-left:4px solid var(--color-deutsch)}.subject-mini-box.arithmetik{border-left:4px solid var(--color-arithmetik)}.subject-mini-box.geometrie{border-left:4px solid var(--color-geometrie)}.subject-mini-box.englisch{border-left:4px solid var(--color-englisch)}.subject-mini-box.mathe1{border-left:4px solid var(--color-mathe1)}.subject-mini-box.mathe2{border-left:4px solid var(--color-mathe2)}.subject-mini-title{font-size:.825rem;font-weight:700;margin-bottom:.25rem;color:var(--canton-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subject-mini-topics{font-size:.75rem;color:var(--canton-text-muted);line-height:1.35;margin-bottom:.4rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.theory-action-hint{font-size:.725rem;font-weight:600;color:var(--canton-blue);margin-top:auto;padding-top:.25rem;display:flex;align-items:center;gap:.25rem}.subject-mini-box:hover .theory-action-hint{text-decoration:underline}.days-tasks-table{width:100%;border-collapse:collapse;margin-top:1rem}.days-tasks-table th{text-align:left;font-size:.8rem;font-weight:700;color:var(--canton-text-muted);text-transform:uppercase;letter-spacing:.05em;padding:.75rem 1rem;background:var(--canton-gray-bg);border-top:1px solid var(--canton-border);border-bottom:1px solid var(--canton-border)}.days-tasks-table td{padding:.85rem 1rem;border-bottom:1px solid var(--canton-border);font-size:.875rem}.days-tasks-table tr:hover td{background:#f8fafc}.task-checkbox-cell{width:40px;text-align:center}.custom-checkbox{width:18px;height:18px;accent-color:var(--canton-navy);cursor:pointer}.task-day-badge{font-weight:700;font-size:.8rem;padding:.2rem .5rem;border-radius:var(--radius-sm);background:var(--canton-gray-bg);border:1px solid var(--canton-border);color:var(--canton-navy)}.task-subject-tag{display:inline-block;font-size:.75rem;font-weight:700;padding:.15rem .5rem;border-radius:999px;text-transform:uppercase}.task-subject-tag.deutsch{background:var(--color-deutsch-bg);color:var(--color-deutsch)}.task-subject-tag.arithmetik{background:var(--color-arithmetik-bg);color:var(--color-arithmetik)}.task-subject-tag.geometrie{background:var(--color-geometrie-bg);color:var(--color-geometrie)}.task-subject-tag.englisch{background:var(--color-englisch-bg);color:var(--color-englisch)}.task-subject-tag.mathe1{background:var(--color-mathe1-bg);color:var(--color-mathe1)}.task-subject-tag.mathe2{background:var(--color-mathe2-bg);color:var(--color-mathe2)}.task-action-cell{text-align:right;white-space:nowrap}.dossier-control-bar-wrapper{position:relative;margin-bottom:1.5rem}.dossier-control-bar{background:var(--canton-surface);border:1px solid var(--canton-border);border-radius:var(--radius-lg);padding:.85rem 1.25rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.85rem}.btn-back-text-compact,.btn-action-text-compact{display:none}.btn-back-text-full,.btn-action-text-full{display:inline}.mobile-orientation-banner{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #bfdbfe;border-left:4px solid var(--canton-blue);border-radius:var(--radius-md);padding:.65rem .85rem;margin-bottom:1.25rem;display:flex;justify-content:space-between;align-items:center;gap:.75rem;font-size:.825rem;color:#1e3a8a}.orientation-banner-content{display:flex;align-items:center;gap:.5rem;line-height:1.4}.orientation-icon{font-size:1.2rem;flex-shrink:0}.orientation-dismiss-btn{background:transparent;border:none;color:#60a5fa;cursor:pointer;font-size:1rem;font-weight:700;padding:.2rem .4rem;line-height:1;border-radius:var(--radius-sm)}.orientation-dismiss-btn:hover{color:#1e3a8a;background:#ffffff80}@media (min-width: 900px){.mobile-orientation-banner{display:none}}.desktop-only-table{display:table;width:100%}.mobile-only-cards{display:none}.mobile-task-card{background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-md);padding:.85rem;display:flex;flex-direction:column;gap:.6rem;box-shadow:var(--shadow-subtle);transition:all .2s ease;box-sizing:border-box;width:100%}.mobile-task-card.task-done{background:#f0fdf4;border-color:#bbf7d0}.mobile-task-top-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.mobile-checkbox-label{display:inline-flex;align-items:center;gap:.65rem;cursor:pointer;flex:1}.mobile-checkbox-label .custom-checkbox{width:22px;height:22px;min-width:22px;min-height:22px;accent-color:var(--canton-navy)}.mobile-task-day-info{display:flex;align-items:baseline;gap:.4rem}.mobile-task-day-name{font-weight:700;color:var(--canton-navy);font-size:.875rem}.mobile-task-day-date{font-size:.775rem;color:var(--canton-text-muted);font-family:var(--font-mono)}.mobile-task-body{font-size:.875rem;line-height:1.45;color:var(--canton-text);padding-left:2px}.mobile-task-topic{color:var(--canton-navy);font-weight:700}.mobile-task-desc{color:var(--canton-text)}.mobile-task-btn{width:100%;justify-content:center;padding:.55rem;font-size:.85rem;font-weight:600;margin-top:.25rem;border-color:var(--canton-border-dark);background:#fff}.mobile-task-btn:hover{background:#f8fafc;border-color:var(--canton-blue);color:var(--canton-blue)}.dossier-control-bar-wrapper.is-floating .dossier-control-bar{position:fixed;left:50%;transform:translate(-50%) translateY(-140%);width:calc(100% - 3rem);max-width:1300px;margin:0;z-index:95;background:#fffffff0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(203,213,225,.9);box-shadow:0 10px 25px -5px #0f172a1f,0 4px 6px -2px #0f172a0d;transition:transform .28s cubic-bezier(.16,1,.3,1),opacity .22s ease;opacity:0;pointer-events:none}.dossier-control-bar-wrapper.is-floating.is-visible .dossier-control-bar{transform:translate(-50%) translateY(0);opacity:1;pointer-events:auto}.btn-toggle-solutions.solutions-active{background-color:#ecfdf5;color:#047857;border-color:#a7f3d0;font-weight:700}.btn-toggle-solutions.solutions-active:hover{background-color:#d1fae5;color:#065f46}.btn-scroll-to-top{background:#f8fafc;color:var(--canton-text-muted);border:1px solid var(--canton-border)}.btn-scroll-to-top:hover{background:#f1f5f9;color:var(--canton-navy)}.dossier-control-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.dossier-header-sheet{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid var(--canton-navy);padding-bottom:1rem;margin-bottom:2rem;gap:1rem}.dossier-main-title{font-size:1.6rem;font-weight:800;color:var(--canton-navy);margin:0 0 .3rem;line-height:1.25}.dossier-main-subtitle{font-size:.9rem;color:var(--canton-text-muted);font-weight:500}.dossier-week-badge-box{padding:.45rem .85rem;border-width:2px;font-weight:700;line-height:1.2;text-align:center;flex-shrink:0}.dossier-week-badge-box .week-label{font-size:.75rem;color:var(--canton-text-muted)}.dossier-week-badge-box .week-value{font-size:1.35rem;font-weight:800;color:var(--canton-navy)}.btn-back-dashboard{font-weight:700;background:var(--canton-blue-light);color:var(--canton-blue);border-color:#bfdbfe;display:inline-flex;align-items:center;gap:.4rem}.btn-back-dashboard:hover{background:#dbeafe;color:var(--canton-navy)}.dossier-nav-selectors{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.select-group{display:flex;align-items:center;gap:.4rem}.select-group label{font-size:.85rem;font-weight:600;color:var(--canton-text-muted)}.form-select,.form-input{border:1px solid var(--canton-border-dark);padding:.45rem .75rem;border-radius:var(--radius-sm);font-family:inherit;font-size:.875rem;background:#fff;color:var(--canton-text)}.dossier-action-buttons{display:flex;align-items:center;gap:.75rem}.dossier-paper-sheet{background:#fff;border:1px solid var(--canton-border-dark);border-radius:var(--radius-md);box-shadow:var(--shadow-elevated);padding:3rem 3.5rem;margin:0 auto;max-width:950px;min-height:1100px}.dossier-zusatz-divider{display:flex;align-items:center;margin:2rem 0 1.5rem;position:relative}.dossier-zusatz-divider:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:linear-gradient(90deg,#94a3b8,#cbd5e1,#94a3b8);z-index:1}.dossier-zusatz-badge{position:relative;z-index:2;display:inline-flex;align-items:center;gap:.4rem;background:var(--canton-surface);border:1.5px solid var(--canton-navy);color:var(--canton-navy);padding:.35rem .85rem;border-radius:999px;font-size:.85rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;box-shadow:0 1px 3px #0f172a14}.exam-task-container{margin-bottom:2.5rem;border-bottom:1px solid #e2e8f0;padding-bottom:2rem}.exam-task-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.exam-task-num-title{font-size:1.1rem;font-weight:700;color:#0f172a}.exam-task-instruction{font-size:.95rem;color:#334155;margin-bottom:1rem;line-height:1.5}.exam-task-instruction em{color:#64748b;font-style:italic}.exam-points-box{border:1.5px solid #0f172a;padding:.35rem .65rem;font-family:var(--font-mono);font-size:.9rem;font-weight:700;text-align:center;min-width:44px;background:#fff}.math-grid-box{width:100%;min-height:180px;border:1px solid #cbd5e1;background-color:#fff;background-size:20px 20px;background-image:linear-gradient(to right,#e2e8f0 1px,transparent 1px),linear-gradient(to bottom,#e2e8f0 1px,transparent 1px);margin:1rem 0;position:relative}.math-grid-box.tall{min-height:280px}.dotted-lines-box{display:flex;flex-direction:column;gap:.35rem;margin:1.25rem 0}.dotted-line{min-height:1.85rem;line-height:1.85rem;width:100%;box-sizing:border-box;margin:.25rem 0;overflow:hidden;white-space:nowrap}.dotted-line:empty{border-bottom:1px dotted #94a3b8}.dotted-lines-box .dotted-line{margin:0}.geometry-svg-container{display:flex;justify-content:center;align-items:center;margin:1.25rem 0;padding:1rem;background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-sm)}.geometry-svg{max-width:100%;height:auto}.task-solution-block{background:#f0fdf4;border:1.5px solid #86efac;border-radius:var(--radius-md);padding:1.25rem;margin-top:1.25rem;display:none}.task-solution-block.visible{display:block}.solution-header{font-weight:700;font-size:.9rem;color:#166534;margin-bottom:.5rem;display:flex;align-items:center;gap:.4rem}.solution-content{font-size:.9rem;color:#14532d;line-height:1.6}.solution-points-detail{margin-top:.75rem;padding-top:.5rem;border-top:1px dashed #bbf7d0;font-size:.825rem;font-weight:600;color:#15803d}.simulations-header,.calc-header{margin-bottom:2rem}.section-lead{font-size:1rem;color:var(--canton-text-muted);max-width:800px;margin-top:.35rem}.exam-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.exam-card{background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-subtle);display:flex;flex-direction:column;gap:1rem}.exam-card.highlight-card{border:2px solid var(--canton-navy);box-shadow:var(--shadow-card)}.exam-badge{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .6rem;border-radius:999px;background:var(--canton-gray-bg);color:var(--canton-text-muted);align-self:flex-start}.exam-badge.primary{background:var(--canton-navy);color:#fff}.exam-desc{font-size:.875rem;color:var(--canton-text-muted)}.exam-subsections{display:flex;flex-direction:column;gap:.5rem;margin-top:auto}.exam-sub{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--canton-gray-bg);border-radius:var(--radius-sm);font-size:.85rem}.dossier-paper-sheet{box-sizing:border-box;width:100%;max-width:950px;margin:0 auto;overflow-x:hidden}.dossier-paper-sheet table,.exam-task-body table,.theory-card table{width:100%!important;max-width:100%!important;border-collapse:collapse;table-layout:auto;margin:1rem 0;background:#fff}.dossier-paper-sheet table th,.exam-task-body table th,.theory-card table th{background:#f8fafc;color:var(--canton-navy);font-weight:700;font-size:.85rem;padding:.65rem .5rem;border:1px solid var(--canton-border);text-align:left}.dossier-paper-sheet table td,.exam-task-body table td,.theory-card table td{padding:.6rem .5rem;font-size:.85rem;border:1px solid var(--canton-border);color:var(--canton-text);word-break:break-word;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.exam-task-body{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.exam-task-body td{word-break:break-all;overflow-wrap:anywhere}@media (max-width: 1080px){.dashboard-grid-layout{grid-template-columns:1fr;gap:1.5rem}.dashboard-sidebar-col{position:static;max-height:none;overflow-y:visible}}@media (max-width: 900px){.calc-grid{grid-template-columns:1fr}.dossier-paper-sheet{padding:1.75rem 1.25rem}.timeline-header-bar{flex-direction:column;align-items:flex-start}.week-subjects-grid{grid-template-columns:1fr 1fr}}@media (max-width: 768px){input[type=text],input[type=email],input[type=password],input[type=date],input[type=number],select,textarea{font-size:16px!important}.app-main{padding:1rem .65rem}.desktop-only,.dashboard-sidebar-col{display:none!important}.app-header{position:sticky;top:0;z-index:100}.header-container{padding:.55rem .85rem;display:flex;justify-content:space-between;align-items:center}.brand-group{gap:.6rem}.canton-emblem{width:34px;height:34px;font-size:.9rem}.brand-title{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.brand-text-block .brand-subtitle{display:none!important}.mobile-header-actions,.mobile-sticky-filter-bar{display:flex!important}.calc-header-badge{display:none!important}.week-card{scroll-margin-top:135px}.phase-heading-card{padding:.85rem 1rem}.phase-heading-title{font-size:1rem}.phase-heading-desc{font-size:.8rem}.week-card-header{padding:.85rem;flex-direction:column;align-items:flex-start;gap:.6rem;position:relative}.week-title-group{width:100%;padding-right:2rem;flex-wrap:wrap;gap:.4rem .6rem;align-items:baseline}.week-num-badge{font-size:.8rem;padding:.2rem .55rem}.week-title-text{font-size:.95rem}.week-date-tag{margin-left:0;font-size:.775rem}.week-header-right{width:100%;justify-content:space-between;align-items:center;gap:.5rem;border-top:1px dashed var(--canton-border);padding-top:.45rem}.week-chevron{position:absolute;right:.85rem;top:.85rem}.week-card-body{padding:.85rem .65rem}.theory-session-banner{padding:.65rem .75rem;font-size:.8rem}.week-subjects-grid{grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1rem}.subject-mini-box{padding:.55rem .65rem}.subject-mini-title{font-size:.775rem}.subject-mini-topics{font-size:.7rem;margin-bottom:.25rem}.theory-action-hint{font-size:.7rem}.desktop-only-table{display:none!important}.mobile-only-cards{display:flex!important;flex-direction:column;gap:.65rem;width:100%}.sidebar-card{padding:1rem}.hide-completed-toggle-wrapper{flex-wrap:wrap;gap:.5rem}.dossier-control-bar{padding:.65rem .75rem;flex-direction:column;align-items:stretch;gap:.5rem}.btn-back-dashboard{width:100%;justify-content:center}.dossier-control-actions{width:100%;justify-content:space-between;gap:.5rem}.btn-toggle-solutions,.btn-print-dossier{flex:1;justify-content:center;padding:.45rem .6rem;font-size:.8rem}.dossier-control-bar-wrapper.is-floating .dossier-control-bar{width:calc(100% - 1.25rem);padding:.45rem .65rem;flex-direction:row!important;align-items:center!important;justify-content:space-between;gap:.35rem;box-shadow:0 8px 20px -4px #0f172a29}.dossier-control-bar-wrapper.is-floating .btn-back-dashboard{width:auto!important;padding:.4rem .6rem;font-size:.8rem;white-space:nowrap}.dossier-control-bar-wrapper.is-floating .dossier-control-actions{width:auto!important;justify-content:flex-end;gap:.35rem;flex-wrap:nowrap}.dossier-control-bar-wrapper.is-floating .btn-toggle-solutions,.dossier-control-bar-wrapper.is-floating .btn-print-dossier,.dossier-control-bar-wrapper.is-floating .btn-scroll-to-top,.dossier-control-bar-wrapper.is-floating .btn-score-modal-trigger{flex:initial!important;padding:.4rem .6rem;font-size:.8rem;white-space:nowrap}.dossier-control-bar-wrapper.is-floating .btn-back-text-full,.dossier-control-bar-wrapper.is-floating .btn-action-text-full{display:none!important}.dossier-control-bar-wrapper.is-floating .btn-back-text-compact,.dossier-control-bar-wrapper.is-floating .btn-action-text-compact{display:inline!important}.dossier-paper-sheet{padding:1.15rem .75rem;min-height:auto;border-radius:var(--radius-sm)}.dossier-header-sheet{margin-bottom:1.15rem;padding-bottom:.65rem}.dossier-main-title{font-size:1.15rem}.dossier-main-subtitle{font-size:.775rem}.exam-task-container{padding:.85rem .75rem;margin-bottom:1rem}.exam-task-header{flex-wrap:wrap;gap:.35rem}.exam-task-num-title{font-size:.925rem}.math-grid{height:180px;background-size:16px 16px}.exam-dotted-lines{height:120px;background-size:100% 28px}.calc-box{padding:1rem .85rem}.box-title{font-size:.95rem}.calc-input-row{flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem}.calc-input-row label{font-size:.825rem}.calc-input-row .form-input{width:80px;text-align:right}.ue-grid{grid-template-columns:1fr 1fr;gap:.6rem}.ue-item{padding:.4rem}.ue-item label{font-size:.75rem}.ue-input{width:100%;text-align:center}.final-scores-bar{flex-direction:column;gap:.85rem}.final-score-item{width:100%;text-align:center}.final-status-badge{width:100%;font-size:.85rem}.exam-cards-grid{grid-template-columns:1fr;gap:1rem}.exam-card{padding:1.15rem .85rem}.exam-sub{flex-wrap:wrap;gap:.35rem}.exam-sub .sub-name{font-size:.825rem}.login-page-wrapper{padding:1rem .6rem}.login-card{padding:1.5rem 1.15rem}.canton-emblem-large{width:52px;height:52px;font-size:1.25rem}.login-main-title{font-size:1.3rem}.login-main-subtitle{font-size:.8rem}}@media (max-height: 520px){.app-header{position:static!important;box-shadow:none}.header-container{padding:.35rem .85rem}.canton-emblem{width:28px;height:28px;font-size:.8rem}.brand-title{font-size:.9rem}.brand-text-block .brand-subtitle{display:none!important}.mobile-sticky-filter-bar{top:0!important}.nav-tab{padding:.35rem .65rem;font-size:.775rem;min-height:34px}.dossier-control-bar{padding:.45rem .65rem;flex-direction:row;align-items:center}.btn-back-dashboard,.dossier-control-actions{width:auto}}@media (max-width: 480px){.week-subjects-grid{grid-template-columns:1fr;gap:.45rem}.ue-grid{grid-template-columns:1fr}.user-email-badge{max-width:100px}.dossier-control-actions{flex-direction:column}.btn-toggle-solutions,.btn-print-dossier{width:100%}.dossier-control-bar-wrapper.is-floating .dossier-control-actions{flex-direction:row!important;width:auto!important}.dossier-control-bar-wrapper.is-floating .btn-toggle-solutions,.dossier-control-bar-wrapper.is-floating .btn-print-dossier{width:auto!important}.dossier-control-bar-wrapper.is-floating .btn-print-dossier .btn-action-text-compact{display:none!important}.pill-group{gap:.25rem}.pill-btn{padding:.3rem .55rem;font-size:.75rem}}.print-only{display:none!important}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172aa6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-content.exam-score-modal{background:#fff;border-radius:var(--radius-lg, 14px);max-width:720px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 40px -10px #0f172a40;border:1px solid var(--canton-border, #e2e8f0);overflow:hidden;animation:modal-scale-in .2s cubic-bezier(.16,1,.3,1)}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.exam-score-modal .modal-header{display:flex;flex-direction:row!important;align-items:flex-start;justify-content:space-between;padding:1.15rem 1.4rem;background:#f8fafc;border-bottom:1px solid var(--canton-border, #e2e8f0);text-align:left!important}.exam-score-modal .modal-title-group{display:flex;flex-direction:column;gap:.3rem;text-align:left!important}.exam-score-modal .canton-badge-mini{display:inline-flex;align-items:center;gap:.35rem;font-size:.7rem;font-weight:700;color:var(--canton-navy, #1b2a47);background:#eff6ff;border:1px solid #bfdbfe;padding:.2rem .6rem;border-radius:9999px;width:fit-content;letter-spacing:.04em;text-transform:uppercase}.exam-score-modal .modal-title{margin:0;font-size:1.15rem;font-weight:700;color:var(--canton-navy, #1b2a47);text-align:left!important}.exam-score-modal .btn-modal-close{background:transparent;border:none;color:var(--canton-text-muted, #64748b);cursor:pointer;padding:.35rem;border-radius:var(--radius-sm, 6px);display:flex;align-items:center;justify-content:center;transition:all .15s ease}.exam-score-modal .btn-modal-close:hover{background:#e2e8f0;color:var(--canton-navy, #1b2a47)}.exam-score-modal .modal-tabs-bar{display:flex;background:#f1f5f9;padding:.4rem .85rem;gap:.35rem;border-bottom:1px solid var(--canton-border, #e2e8f0);overflow-x:auto}.exam-score-modal .modal-tab{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .85rem;font-size:.825rem;font-weight:600;border-radius:var(--radius-sm, 6px);border:1px solid transparent;background:transparent;color:var(--canton-text-muted, #64748b);cursor:pointer;white-space:nowrap;transition:all .15s ease}.exam-score-modal .modal-tab:hover{background:#e2e8f0;color:var(--canton-text, #1e293b)}.exam-score-modal .modal-tab.active{background:#fff;color:var(--canton-navy, #1b2a47);border-color:var(--canton-border-dark, #cbd5e1);box-shadow:0 1px 3px #00000014}.exam-score-modal .tab-grade-pill{display:inline-block;font-size:.725rem;font-weight:700;padding:.1rem .45rem;border-radius:9999px;background:#e0f2fe;color:#0369a1}.exam-score-modal .modal-tab.active .tab-grade-pill{background:var(--canton-navy, #1b2a47);color:#fff}.exam-score-modal .modal-tab.tab-summary{margin-left:auto;font-weight:700;color:#0f766e}.exam-score-modal .modal-tab.tab-summary.active{background:#f0fdfa;border-color:#99f6e4;color:#0f766e}.exam-score-modal .modal-body{padding:1.35rem 1.5rem;overflow-y:auto;flex:1}.exam-score-modal .score-input-section{display:flex;flex-direction:column;gap:1.25rem}.exam-score-modal .score-section-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding-bottom:.65rem;border-bottom:2px solid #f1f5f9}.exam-score-modal .score-section-header h4{margin:0;font-size:.95rem;font-weight:700;color:var(--canton-navy, #1b2a47)}.exam-score-modal .score-live-grade{font-size:.85rem;padding:.25rem .65rem;border-radius:6px;background:#ecfdf5;color:#047857;font-weight:600;border:1px solid #a7f3d0}.exam-score-modal .score-live-grade strong{font-size:1.05rem}.exam-score-modal .score-input-grid{display:grid;grid-template-columns:1fr;gap:.9rem}.exam-score-modal .score-input-card{display:flex;flex-direction:column;gap:.35rem;padding:.85rem 1rem;background:#f8fafc;border:1px solid var(--canton-border, #e2e8f0);border-radius:var(--radius-sm, 6px)}.exam-score-modal .score-input-card label{font-size:.825rem;font-weight:600;color:var(--canton-text, #1e293b)}.exam-score-modal .score-input-field{padding:.45rem .75rem;border:1.5px solid var(--canton-border-dark, #cbd5e1);border-radius:var(--radius-sm, 6px);font-size:1rem;font-weight:600;color:var(--canton-navy, #1b2a47);background:#fff;outline:none;transition:all .15s ease;max-width:140px}.exam-score-modal .score-input-field:focus{border-color:var(--canton-blue, #026aa7);box-shadow:0 0 0 3px #026aa726}.exam-score-modal .score-input-field.large-input{font-size:1.25rem;max-width:160px}.exam-score-modal .input-hint{font-size:.75rem;color:var(--canton-text-muted, #64748b);line-height:1.4}.exam-score-modal .criteria-subinputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.75rem;margin:.35rem 0}.exam-score-modal .subinput-item{display:flex;flex-direction:column;gap:.25rem;font-size:.775rem;color:var(--canton-text-muted, #64748b)}.exam-score-modal .subinput-item input{padding:.35rem .6rem;border:1.5px solid var(--canton-border-dark, #cbd5e1);border-radius:var(--radius-sm, 6px);font-size:.95rem;font-weight:600;max-width:100px;background:#fff}.exam-score-modal .subinput-item input:focus{border-color:var(--canton-blue, #026aa7);outline:none;box-shadow:0 0 0 3px #026aa726}.exam-score-modal .score-summary-section{display:flex;flex-direction:column;gap:1.15rem}.exam-score-modal .summary-banner{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;background:#fffbeb;border:1px solid #fde68a;border-radius:var(--radius-sm, 6px);font-size:.85rem;color:#92400e}.exam-score-modal .summary-banner p{margin:.2rem 0 0;font-size:.8rem;color:#b45309}.exam-score-modal .summary-notes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.exam-score-modal .summary-note-box{display:flex;flex-direction:column;align-items:center;padding:1.25rem 1rem;background:#f8fafc;border:1px solid var(--canton-border, #e2e8f0);border-radius:var(--radius-md, 10px);text-align:center}.exam-score-modal .summary-note-box .sub-tag{font-size:.7rem;font-weight:700;color:var(--canton-text-muted, #64748b);letter-spacing:.05em;text-transform:uppercase}.exam-score-modal .summary-note-box .note-big{font-size:2.25rem;font-weight:800;color:var(--canton-navy, #1b2a47);margin:.25rem 0;line-height:1}.exam-score-modal .summary-note-box .note-detail{font-size:.8rem;color:var(--canton-text-muted, #64748b)}.exam-score-modal .summary-action-box{padding:.9rem 1rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:var(--radius-sm, 6px);font-size:.825rem;line-height:1.6;color:#166534}.exam-score-modal .summary-action-box p{margin:0}.exam-score-modal .modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:.9rem 1.4rem;background:#f8fafc;border-top:1px solid var(--canton-border, #e2e8f0)}.exam-score-modal .btn-apply-grade{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;border-radius:var(--radius-sm, 6px);background:var(--canton-navy, #1b2a47);color:#fff;border:none;cursor:pointer;transition:all .15s ease}.exam-score-modal .btn-apply-grade:hover{background:var(--canton-blue, #026aa7)}.calc-header-wrapper{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.25rem;flex-wrap:wrap}.calc-header-main{flex:1;min-width:280px}.calc-header-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.725rem;font-weight:600;color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;padding:.2rem .55rem;border-radius:6px;margin-bottom:.45rem;text-transform:uppercase;letter-spacing:.04em}.calc-title{font-size:1.6rem;font-weight:800;color:var(--canton-navy);margin:0 0 .35rem;letter-spacing:-.02em}.calc-lead{font-size:.95rem;color:var(--canton-text-muted);line-height:1.45;margin:0}.btn-legal-toggle{display:inline-flex;align-items:center;gap:.5rem;background:#fff;border:1px solid var(--canton-border);color:var(--canton-navy);font-weight:600;font-size:.85rem;padding:.55rem 1rem;border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-subtle)}.btn-legal-toggle:hover,.btn-legal-toggle.active{background:var(--canton-navy);color:#fff;border-color:var(--canton-navy)}.calc-info-panel{background:#f8fafc;border:1px solid #cbd5e1;border-left:4px solid var(--canton-navy);border-radius:var(--radius-md);padding:1.25rem 1.5rem;margin-bottom:1.5rem;animation:fadeIn .25s ease-out}.calc-info-panel-title{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1rem;color:var(--canton-navy);margin-bottom:.75rem}.calc-info-panel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-bottom:.75rem}.info-subcard{background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-sm);padding:.85rem 1rem}.info-subcard h4{font-size:.9rem;font-weight:700;color:var(--canton-navy);margin:0 0 .4rem}.info-subcard ul{margin:0;padding-left:1.2rem;font-size:.85rem;color:var(--canton-text);line-height:1.45}.calc-info-note{font-size:.8rem;color:var(--canton-text-muted);border-top:1px dashed var(--canton-border);padding-top:.5rem}.calc-controls-bar{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-md);padding:.85rem 1.25rem;margin-bottom:1.5rem;flex-wrap:wrap}.calc-config-item{display:flex;align-items:center;gap:.6rem;font-size:.9rem;font-weight:600;color:var(--canton-navy)}.calc-config-item select.form-select{padding:.4rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--canton-border);font-weight:600;color:var(--canton-navy);background:#fff;cursor:pointer}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;font-weight:600;color:var(--canton-navy);-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:17px;height:17px;accent-color:var(--canton-navy);cursor:pointer}.calc-presets-dropdown{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.presets-label{display:inline-flex;align-items:center;gap:.35rem;font-size:.82rem;font-weight:700;color:var(--canton-text-muted);text-transform:uppercase}.preset-buttons-wrap{display:flex;gap:.4rem;flex-wrap:wrap}.btn-preset-pill{background:#f1f5f9;border:1px solid #e2e8f0;color:var(--canton-text);padding:.3rem .65rem;font-size:.78rem;font-weight:600;border-radius:9999px;cursor:pointer;transition:all .15s ease}.btn-preset-pill:hover{background:var(--canton-navy);color:#fff;border-color:var(--canton-navy)}.btn-preset-pill.danger-pill:hover{background:#dc2626;border-color:#dc2626;color:#fff}.calc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}@media (max-width: 900px){.calc-grid{grid-template-columns:1fr;gap:1rem}}.calc-box{background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-subtle);display:flex;flex-direction:column}.calc-box.wide-box{grid-column:1 / -1}.calc-box-disabled{background:#f8fafc;opacity:.85}.box-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem;gap:.5rem;flex-wrap:wrap}.box-title-text{font-size:1.05rem;font-weight:800;color:var(--canton-navy)}.box-desc{font-size:.82rem;color:var(--canton-text-muted);margin:0 0 1rem;border-bottom:1px solid var(--canton-border);padding-bottom:.5rem}.minus-pill{font-size:.75rem;font-weight:700;padding:.2rem .6rem;border-radius:9999px;text-transform:uppercase;letter-spacing:.02em}.minus-pill.ok{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.minus-pill.warning{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.minus-pill.neutral{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.calc-input-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.85rem;padding:.4rem 0;gap:.75rem}.grade-label-group{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0}.grade-label-group label{font-size:.95rem;color:var(--canton-text);font-weight:600}.sub-hint{font-size:.75rem;color:var(--canton-text-muted)}.grade-control-stepper{display:flex;align-items:center;border:1px solid var(--canton-border-dark);border-radius:var(--radius-md);background:#fff;overflow:hidden;box-shadow:0 1px 2px #0000000a;transition:all .15s ease;user-select:none;-webkit-user-select:none;flex-shrink:0}.grade-control-stepper:focus-within{border-color:var(--canton-navy);box-shadow:0 0 0 2px #0f172a1f}.btn-grade-stepper{width:38px;height:38px;background:#f1f5f9;border:none;font-size:1.2rem;font-weight:700;color:var(--canton-navy);display:flex;align-items:center;justify-content:center;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation;transition:all .15s ease}.btn-grade-stepper:hover:not(:disabled){background:var(--canton-navy);color:#fff}.btn-grade-stepper:active:not(:disabled){transform:scale(.95);background:var(--canton-navy);color:#fff}.btn-grade-stepper:disabled{opacity:.25;cursor:not-allowed;background:#f8fafc}.grade-stepper-input{width:65px;height:38px;border:none;outline:none;text-align:center;font-family:var(--font-mono);font-size:1.15rem;font-weight:800;color:var(--canton-navy);background:transparent}.grade-control-stepper.compact{width:100%}.grade-control-stepper.compact .btn-grade-stepper{width:32px;height:34px;font-size:1.05rem}.grade-control-stepper.compact .grade-stepper-input{width:100%;height:34px;font-size:1rem}.calc-result-row{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.85rem;border-top:1px solid var(--canton-border);font-size:.92rem;font-weight:600;gap:.5rem}.calc-formula-desc{color:var(--canton-text);font-size:.88rem;flex:1;min-width:0}.calc-highlight{font-size:1.4rem;font-family:var(--font-mono);font-weight:800;color:var(--canton-navy);flex-shrink:0}.ue-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.85rem;margin-bottom:1rem}.ue-item-card{background:#f8fafc;border:1px solid var(--canton-border);border-radius:var(--radius-md);padding:.65rem;display:flex;flex-direction:column;gap:.4rem}.ue-label{font-size:.78rem;font-weight:700;color:var(--canton-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ue-disabled-notice{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#f1f5f9;border:1px dashed #cbd5e1;border-radius:var(--radius-md);margin-bottom:.5rem}.ue-disabled-notice strong{display:block;font-size:.95rem;color:var(--canton-navy);margin-bottom:.2rem}.ue-disabled-notice p{margin:0;font-size:.85rem;color:var(--canton-text-muted)}.result-summary-box{background:#fff;border:2px solid var(--canton-navy);box-shadow:var(--shadow-md)}.final-scores-bar-v2{display:grid;grid-template-columns:180px 180px 1fr;gap:1.25rem;margin-bottom:1.25rem}@media (max-width: 992px){.final-scores-bar-v2{grid-template-columns:1fr 1fr}.admission-cards-grid{grid-column:1 / -1}}@media (max-width: 640px){.final-scores-bar-v2{grid-template-columns:1fr 1fr;gap:.65rem}}@media (max-width: 360px){.final-scores-bar-v2{grid-template-columns:1fr}}.final-score-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #cbd5e1;border-radius:var(--radius-md);padding:1.15rem;display:flex;flex-direction:column;justify-content:center}.final-score-card.card-ok{background:#f0fdf4;border-color:#86efac}.final-score-card.card-danger{background:#fef2f2;border-color:#fca5a5}.final-score-card .score-label{font-size:.78rem;font-weight:800;color:var(--canton-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.2rem}.final-score-card .score-num{font-size:2.3rem;font-weight:900;font-family:var(--font-mono);color:var(--canton-navy);line-height:1.1}.final-score-card.card-ok .score-num{color:#15803d}.final-score-card.card-danger .score-num{color:#b91c1c}.final-score-card .score-sub{font-size:.75rem;font-weight:600;color:var(--canton-text-muted);margin-top:.25rem}.admission-cards-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.admission-cards-grid.single-card{grid-template-columns:1fr}@media (max-width: 768px){.admission-cards-grid{grid-template-columns:1fr}}.admission-card{border-radius:var(--radius-md);padding:1rem 1.15rem;display:flex;flex-direction:column;justify-content:space-between;border:1px solid transparent;transition:all .2s}.admission-card.card-pass{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.admission-card.card-fail{background:#fef2f2;border-color:#fecaca;color:#991b1b}.admission-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.adm-icon{display:flex;align-items:center;justify-content:center}.adm-title{font-size:.88rem;font-weight:800}.adm-status{font-size:.78rem;font-weight:800;letter-spacing:.03em}.admission-card.card-pass .adm-status{color:#059669}.admission-card.card-fail .adm-status{color:#dc2626}.admission-card-criteria{background:#ffffffb3;border-radius:var(--radius-sm);padding:.5rem .75rem;display:flex;flex-direction:column;gap:.25rem;font-size:.8rem}.crit-item{display:flex;justify-content:space-between;align-items:center;gap:.5rem;min-width:0}.crit-item span{flex:1;min-width:0}.crit-item strong{flex-shrink:0;white-space:nowrap}.crit-item.crit-ok strong{color:#059669}.crit-item.crit-fail strong{color:#dc2626}.decision-banner{display:flex;align-items:flex-start;gap:.85rem;padding:.9rem 1.25rem;border-radius:var(--radius-md);font-size:.9rem;line-height:1.45}.decision-banner.banner-gym{background:#ecfdf5;border:1px solid #6ee7b7;color:#065f46}.decision-banner.banner-fms{background:#eff6ff;border:1px solid #93c5fd;color:#1e40af}.decision-banner.banner-fail{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}.banner-icon{margin-top:.1rem;flex-shrink:0}.banner-content strong{font-weight:800}.calc-mobile-sticky-bar{display:none}@media (max-width: 768px){.view-container{padding-bottom:4.5rem}.calc-header-wrapper{gap:.75rem;margin-bottom:1rem}.calc-header-main{min-width:0;width:100%}.calc-title{font-size:1.35rem;margin-bottom:.25rem}.calc-lead{font-size:.85rem;line-height:1.4}.btn-legal-toggle{width:100%;justify-content:center;padding:.65rem 1rem;min-height:42px}.calc-info-panel{padding:1rem .85rem;margin-bottom:1rem}.calc-info-panel-grid{grid-template-columns:1fr;gap:.75rem}.calc-controls-bar{flex-direction:column;align-items:stretch;gap:.85rem;padding:.85rem;margin-bottom:1rem}.calc-config-item{justify-content:space-between;width:100%}.calc-config-item select.form-select{min-width:140px;height:38px;font-size:16px}.checkbox-label{font-size:.85rem;line-height:1.3}.calc-presets-dropdown{flex-direction:column;align-items:flex-start;gap:.45rem;width:100%}.preset-buttons-wrap{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;gap:.4rem;width:100%;padding-bottom:4px;flex-wrap:nowrap}.preset-buttons-wrap::-webkit-scrollbar{display:none}.btn-preset-pill{flex-shrink:0;white-space:nowrap;padding:.35rem .75rem;font-size:.78rem;min-height:32px}.calc-box{padding:1.1rem .9rem;border-radius:var(--radius-md)}.box-title-row{margin-bottom:.4rem}.box-title-text{font-size:.98rem;word-break:break-word}.box-title-text.summary-title{font-size:1.05rem}.box-desc{font-size:.78rem;line-height:1.35;margin-bottom:.75rem}.minus-pill{font-size:.7rem;padding:.18rem .5rem}.calc-input-row{gap:.65rem;margin-bottom:.75rem;padding:.25rem 0}.grade-label-group label{font-size:.875rem;line-height:1.3}.sub-hint{font-size:.72rem;line-height:1.25}.btn-grade-stepper{width:40px;height:40px}.grade-stepper-input{width:54px;height:40px;font-size:16px}.calc-result-row{padding-top:.75rem;gap:.5rem}.calc-formula-desc{font-size:.8rem;line-height:1.35;flex:1;min-width:0}.calc-highlight{font-size:1.25rem}.final-score-card{padding:.85rem .75rem}.final-score-card .score-num{font-size:1.85rem}.final-score-card .score-label{font-size:.72rem}.final-score-card .score-sub{font-size:.7rem}.admission-card{padding:.85rem}.adm-title{font-size:.825rem}.adm-status{font-size:.75rem}.admission-card-criteria{padding:.45rem .65rem;gap:.35rem}.crit-item{font-size:.78rem}.decision-banner{padding:.85rem .95rem;font-size:.825rem;gap:.65rem;line-height:1.4}.calc-mobile-sticky-bar{display:flex;position:fixed;bottom:calc(var(--safe-bottom) + .85rem);left:.75rem;right:.75rem;z-index:90;background:#1b2a47f2;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.18);border-radius:9999px;padding:.38rem .75rem;box-shadow:0 8px 24px #0000004d;color:#fff;align-items:center;justify-content:space-between;gap:.35rem;cursor:pointer;touch-action:manipulation;white-space:nowrap;height:42px;box-sizing:border-box;opacity:1;transform:translateY(0);transition:opacity .25s cubic-bezier(.16,1,.3,1),transform .25s cubic-bezier(.16,1,.3,1),visibility .25s ease;visibility:visible}.calc-mobile-sticky-bar.hidden{opacity:0;transform:translateY(24px);pointer-events:none;visibility:hidden}.calc-sticky-group{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.calc-sticky-title{font-size:.78rem;font-weight:700;color:#cbd5e1;letter-spacing:.04em;line-height:1}.calc-sticky-badge{background:#fff;color:var(--canton-navy);font-family:var(--font-mono);font-weight:800;font-size:.825rem;padding:.15rem .4rem;border-radius:6px;line-height:1.2;min-width:34px;text-align:center;box-shadow:0 1px 2px #00000026;display:inline-block}.calc-sticky-badge.badge-ok{background:#dcfce7;color:#15803d;border:1px solid #86efac}.calc-sticky-badge.badge-danger{background:#fee2e2;color:#b91c1c;border:1px solid #fca5a5}.calc-sticky-group.calc-sticky-decision{flex-shrink:1;min-width:0}.calc-sticky-status{font-size:.76rem;font-weight:800;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calc-sticky-status.status-pass{color:#4ade80}.calc-sticky-status.status-fail{color:#f87171}.calc-sticky-jump-hint{font-size:.7rem;font-weight:600;color:#ffffffd9;background:#ffffff1f;border:1px solid rgba(255,255,255,.16);padding:.2rem .5rem;border-radius:9999px;flex-shrink:0;line-height:1.2;transition:background .15s ease}.calc-mobile-sticky-bar:active .calc-sticky-jump-hint{background:#ffffff40}}@media (max-width: 640px){.ue-grid{grid-template-columns:repeat(2,1fr);gap:.55rem}.ue-item-card{padding:.55rem .5rem;gap:.35rem;min-width:0}.ue-label{font-size:.76rem}.grade-control-stepper.compact .btn-grade-stepper{width:32px;height:36px}.grade-control-stepper.compact .grade-stepper-input{height:36px;font-size:16px}.ue-disabled-notice{flex-direction:column;align-items:stretch;text-align:left;padding:1rem;gap:.85rem}.ue-disabled-notice .btn{width:100%}}@media (max-width: 350px){.ue-grid,.final-scores-bar-v2{grid-template-columns:1fr}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-card{background:#fff;border-radius:var(--radius-lg);max-width:440px;width:100%;box-shadow:var(--shadow-elevated);padding:2rem;display:flex;flex-direction:column;gap:1.25rem}.modal-header{display:flex;flex-direction:column;gap:.35rem;text-align:center}.modal-title{font-size:1.25rem;font-weight:700;color:var(--canton-navy)}.modal-subtitle{font-size:.85rem;color:var(--canton-text-muted)}.parent-cockpit-modal-card{background:#fff;border-radius:20px;padding:2rem;max-width:680px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040;position:relative;box-sizing:border-box}.student-card-modal{background:#fff;border-radius:20px;padding:2rem;max-width:460px;width:100%;max-height:92vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040;position:relative;box-sizing:border-box}@media (max-width: 640px){.parent-cockpit-modal-card{padding:1.25rem 1rem!important;border-radius:16px!important;max-height:92vh!important}.student-card-modal{padding:1.25rem 1rem!important;border-radius:16px!important;max-height:94vh!important}.student-card-printable-box{padding:1rem .85rem!important}}.login-page-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 15%,#f8fafc,#eef2f6 60%,#e2e8f0);padding:2.5rem 1.25rem}.login-card-container{width:100%;max-width:440px;display:flex;flex-direction:column;align-items:center;gap:1.75rem}.login-brand-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem}.canton-emblem-large{background:var(--canton-navy);color:#fff;font-weight:800;font-size:1.4rem;letter-spacing:2px;width:58px;height:58px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);border:2px solid var(--canton-border);box-shadow:var(--shadow-card)}.login-main-title{font-size:1.35rem;font-weight:800;color:var(--canton-navy);letter-spacing:-.015em;margin:0;line-height:1.25}.login-main-subtitle{font-size:.85rem;color:var(--canton-text-muted);font-weight:500;margin:0}.login-card{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--canton-border);box-shadow:var(--shadow-elevated);padding:2.25rem 2rem;width:100%;display:flex;flex-direction:column;gap:1.25rem}.login-card-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.35rem}.login-icon-badge{width:48px;height:48px;border-radius:50%;background:var(--canton-blue-light);color:var(--canton-navy);display:flex;align-items:center;justify-content:center;margin-bottom:.35rem}.login-card-title{font-size:1.25rem;font-weight:700;color:var(--canton-navy);margin:0}.login-card-desc{font-size:.85rem;color:var(--canton-text-muted);line-height:1.45;margin:0}.login-form{display:flex;flex-direction:column;gap:1.15rem;width:100%}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-label-row{display:flex;justify-content:space-between;align-items:center}.form-label{font-size:.85rem;font-weight:600;color:var(--canton-text)}.forgot-password-link{background:none;border:none;color:var(--canton-blue);font-size:.8rem;font-weight:500;cursor:pointer;text-decoration:underline;padding:0}.forgot-password-link:hover{color:var(--canton-navy)}.input-with-icon{position:relative;display:flex;align-items:center;width:100%}.input-leading-icon{position:absolute;left:.85rem;color:var(--canton-text-light);pointer-events:none}.text-input{padding:.65rem .85rem;border:1px solid var(--canton-border-dark);border-radius:var(--radius-sm);font-family:inherit;font-size:.925rem;width:100%;background:#fff;color:var(--canton-text);transition:border-color .15s ease,box-shadow .15s ease}.text-input.with-leading-icon{padding-left:2.45rem}.text-input.with-trailing-icon{padding-right:2.5rem}.input-trailing-btn{position:absolute;right:.5rem;background:transparent;border:none;color:var(--canton-text-light);cursor:pointer;padding:.35rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:color .15s ease}.input-trailing-btn:hover{color:var(--canton-navy)}.text-input:focus{outline:none;border-color:var(--canton-blue);box-shadow:0 0 0 3px #026aa726}.btn-login-submit{width:100%;padding:.75rem 1rem;font-size:.95rem;font-weight:600;margin-top:.25rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.login-footer-info{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem .85rem;background:#f8fafc;border:1px solid var(--canton-border);border-radius:var(--radius-sm);font-size:.775rem;color:var(--canton-text-muted);text-align:center}.auth-error-box{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;padding:.75rem .85rem;border-radius:var(--radius-sm);font-size:.825rem;display:flex;align-items:center;gap:.5rem;line-height:1.4}.reset-success-box{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;padding:1.5rem 1.25rem;border-radius:var(--radius-md);text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}.auth-loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 15%,#f8fafc,#eef2f6 60%,#e2e8f0);padding:1.5rem}.auth-loading-card{display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center;background:#fff;padding:2.5rem 2rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-elevated);border:1px solid var(--canton-border);max-width:400px;width:100%}.spin{animation:spinLoader 1s linear infinite}@keyframes spinLoader{to{transform:rotate(360deg)}}.pulse{animation:pulseEmblem 2.2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulseEmblem{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(.96)}}.landing-page-container{min-height:100vh;background-color:#f8fafc;color:#0f172a;font-family:var(--font-main);overflow-x:hidden;width:100%}.landing-header{background:#fff;border-bottom:1px solid var(--canton-border);padding:.85rem 1.75rem;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100;box-shadow:0 1px 3px #0000000a}.landing-logo-group{display:flex;align-items:center;gap:.75rem;min-width:0}.landing-logo-badge{background:linear-gradient(135deg,#002b49,#1a5632);color:#fff;font-weight:900;font-size:1.05rem;padding:6px 12px;border-radius:8px;letter-spacing:1px;flex-shrink:0}.landing-title-text{font-weight:800;font-size:1.05rem;color:#002b49;line-height:1.25}.landing-subtitle-text{font-size:.75rem;color:#64748b;line-height:1.2}.landing-header-actions{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.landing-hero-section{background:linear-gradient(180deg,#fff,#f1f5f9);padding:3.5rem 1.5rem 4rem;border-bottom:1px solid var(--canton-border)}.landing-hero-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.15fr .85fr;gap:2.5rem;align-items:start}.landing-hero-pitch{min-width:0}.landing-hero-tag{display:inline-flex;align-items:center;gap:.45rem;background:#e0f2fe;color:#0369a1;padding:5px 12px;border-radius:20px;font-size:.8rem;font-weight:700;margin-bottom:1rem}.landing-hero-title{font-size:clamp(1.65rem,3.8vw,2.4rem);font-weight:900;color:#002b49;line-height:1.18;margin-bottom:1rem;word-break:break-word}.landing-hero-desc{font-size:1.05rem;color:#475569;line-height:1.55;margin-bottom:1.5rem}.landing-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.5rem}.landing-feature-item{display:flex;align-items:center;gap:.5rem;font-size:.88rem;color:#334155}.landing-free-trial-pill{display:inline-flex;align-items:center;gap:.75rem;background:#fff;border:1px solid var(--canton-border);padding:.75rem 1.1rem;border-radius:12px;max-width:100%}.landing-card-wrapper{display:flex;justify-content:center;width:100%}.landing-card{background:#fff;border-radius:20px;padding:2rem;max-width:460px;width:100%;box-shadow:0 15px 35px #00000014;border:1px solid var(--canton-border);box-sizing:border-box}.landing-card-tab-bar{display:flex;background:#f1f5f9;border-radius:10px;padding:4px;margin-bottom:1.25rem;gap:4px}.landing-card-tab-btn{flex:1;padding:.55rem .75rem;border:none;background:transparent;color:#64748b;font-weight:700;font-size:.85rem;border-radius:8px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:.35rem}.landing-card-tab-btn.active{background:#fff;color:#002b49;box-shadow:0 2px 6px #0000000f}.landing-courses-section{max-width:1200px;margin:3.5rem auto;padding:0 1.5rem}.landing-courses-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.75rem}.landing-pricing-banner{margin-top:2.5rem;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:16px;border:1px solid #cbd5e1;padding:1.75rem;display:flex;justify-content:space-between;align-items:center;gap:1.25rem}@media (max-width: 860px){.landing-hero-container{grid-template-columns:1fr;gap:2rem}.landing-courses-grid{grid-template-columns:1fr}}@media (max-width: 640px){.landing-header{padding:.65rem .85rem}.landing-subtitle-text{display:none!important}.landing-title-text{font-size:.95rem}.landing-hero-section{padding:1.5rem .85rem 2.25rem}.landing-hero-desc{font-size:.95rem;line-height:1.45}.landing-feature-grid{grid-template-columns:1fr;gap:.5rem}.landing-card{padding:1.35rem 1rem;border-radius:16px}.landing-courses-section{margin:2rem auto;padding:0 .85rem}.landing-pricing-banner{padding:1.25rem 1rem;flex-direction:column;align-items:stretch;text-align:left}.landing-pricing-banner>div:last-child{text-align:left!important}}.vocab-container{max-width:1100px;margin:0 auto;padding:.75rem .75rem 2rem}.vocab-top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;gap:.5rem}.vocab-top-status-group{display:flex;align-items:center;gap:.4rem}.vocab-top-week-pill{display:inline-flex;align-items:center;font-size:.75rem;font-weight:700;color:var(--canton-navy);background:#fff;border:1px solid var(--canton-border);padding:.25rem .6rem;border-radius:999px;box-shadow:0 1px 2px #0000000a;white-space:nowrap}.vocab-week-stepper-row{display:flex;align-items:center;gap:.4rem;margin-bottom:.65rem;width:100%;box-sizing:border-box}.vocab-stepper-nav-btn{background:#fff;border:1px solid var(--canton-border);width:36px;height:36px;border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center;color:var(--canton-navy);cursor:pointer;transition:all .15s ease;flex-shrink:0;box-shadow:0 1px 2px #00000008}.vocab-stepper-nav-btn:hover:not(:disabled){background:#f1f5f9;border-color:var(--canton-blue)}.vocab-stepper-nav-btn:disabled{opacity:.35;cursor:not-allowed}.vocab-week-trigger-card{flex:1;background:#fff;border:1.5px solid var(--canton-border);border-radius:var(--radius-md);padding:.45rem .75rem;display:flex;align-items:center;justify-content:space-between;gap:.45rem;cursor:pointer;box-shadow:0 1px 3px #0000000a;transition:all .15s ease;min-height:36px;box-sizing:border-box;min-width:0}.vocab-week-trigger-card:hover{border-color:var(--canton-blue);background:#f8fafc}.vocab-week-trigger-title{font-size:.85rem;font-weight:800;color:var(--canton-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;flex:1}.stepper-cal-icon{color:var(--canton-blue);flex-shrink:0}.stepper-chevron{color:var(--canton-text-muted);flex-shrink:0}.vocab-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a254073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;justify-content:center;align-items:flex-end;animation:fadeIn .2s ease-out}@media (min-width: 640px){.vocab-modal-backdrop{align-items:center;padding:1.5rem}}.vocab-week-modal{background:#fff;width:100%;max-width:580px;max-height:85vh;border-radius:1.25rem 1.25rem 0 0;display:flex;flex-direction:column;box-shadow:0 -10px 30px #0003;animation:slideUpModal .25s cubic-bezier(.16,1,.3,1);overflow:hidden}@media (min-width: 640px){.vocab-week-modal{border-radius:var(--radius-lg);box-shadow:0 20px 40px #00000040}}@keyframes slideUpModal{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.vocab-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--canton-border);background:#f8fafc}.vocab-modal-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:800;color:var(--canton-navy)}.vocab-modal-close-btn{background:transparent;border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--canton-text-muted);transition:background .15s ease}.vocab-modal-close-btn:hover{background:#e2e8f0;color:var(--canton-navy)}.vocab-modal-body{padding:.85rem 1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;-webkit-overflow-scrolling:touch}.vocab-week-modal-card{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-radius:var(--radius-md);background:#fff;border:1.5px solid var(--canton-border);cursor:pointer;transition:all .15s ease;gap:.75rem}.vocab-week-modal-card:hover{border-color:var(--canton-blue);background:#f8fafc;transform:translateY(-1px)}.vocab-week-modal-card.active{border-color:var(--canton-blue);background:#eff6ff;box-shadow:0 2px 6px #2563eb26}.vocab-modal-card-left{flex:1;min-width:0}.vocab-modal-card-num-row{display:flex;align-items:center;gap:.45rem;margin-bottom:.15rem}.vocab-modal-card-w{font-size:.75rem;font-weight:800;text-transform:uppercase;color:var(--canton-blue);letter-spacing:.04em}.vocab-modal-current-badge{font-size:.65rem;font-weight:700;background:#fef3c7;color:#92400e;border:1px solid #fde68a;padding:.1rem .35rem;border-radius:4px}.vocab-modal-card-title{font-size:.925rem;font-weight:700;color:var(--canton-navy);margin-bottom:.15rem;line-height:1.25}.vocab-modal-card-meta{font-size:.75rem;color:var(--canton-text-muted)}.vocab-modal-card-right{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;flex-shrink:0}.vocab-modal-progress-pill{font-size:.75rem;font-weight:800;padding:.2rem .5rem;border-radius:999px;background:#f1f5f9;color:var(--canton-navy);border:1px solid #cbd5e1}.vocab-modal-progress-pill.done{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.vocab-modal-count{font-size:.675rem;color:var(--canton-text-muted);font-weight:600}.vocab-mode-segmented-bar{display:flex;background:#e2e8f0;padding:3px;border-radius:var(--radius-md);margin-bottom:.65rem;gap:3px;width:100%;box-sizing:border-box}.vocab-segment-pill{flex:1;display:flex;align-items:center;justify-content:center;gap:.3rem;padding:.45rem .2rem;border-radius:6px;font-size:.8rem;font-weight:700;color:var(--canton-text-muted);background:transparent;border:none;cursor:pointer;transition:all .15s ease;white-space:nowrap;touch-action:manipulation;min-height:38px}.vocab-segment-pill.active{background:#fff;color:var(--canton-navy);box-shadow:0 1px 3px #0000001f}.vocab-segment-pill .segment-icon{font-size:.95rem}.vocab-segment-pill .segment-label{font-size:.775rem}@media (max-width: 370px){.vocab-segment-pill .segment-label{font-size:.7rem}.vocab-segment-pill{padding:.4rem .1rem;gap:.15rem}}.flashcard-player-container{display:flex;flex-direction:column;align-items:center;gap:.4rem;margin:0;width:100%}.flashcard-filter-bar{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:620px;gap:.35rem;margin-bottom:.25rem}.flashcard-chips-group{display:flex;gap:.25rem;align-items:center;flex:1;min-width:0}.flashcard-chip-btn{font-size:.725rem;font-weight:700;padding:.25rem .45rem;border-radius:var(--radius-sm);border:1px solid var(--canton-border);background:#fff;color:var(--canton-text-muted);cursor:pointer;white-space:nowrap;transition:all .15s ease;touch-action:manipulation}.flashcard-chip-btn:hover{background:#f8fafc;color:var(--canton-navy)}.flashcard-chip-btn.active{background:var(--canton-navy);color:#fff;border-color:var(--canton-navy)}.flashcard-counter-badge{display:flex;align-items:center;font-size:.75rem;font-weight:800;color:var(--canton-navy);background:#f1f5f9;padding:.22rem .5rem;border-radius:var(--radius-sm);white-space:nowrap;flex-shrink:0}.flashcard-stage{perspective:1000px;width:100%;max-width:620px;height:310px;cursor:pointer;transition:opacity .14s ease,transform .14s ease}.flashcard-stage.card-transitioning{opacity:0;transform:scale(.96) translateY(-6px);pointer-events:none}.flashcard-stage.card-transitioning .flashcard-inner{transition:none!important}.flashcard-inner{position:relative;width:100%;height:100%;text-align:center;transition:transform .5s cubic-bezier(.4,.2,.2,1);transform-style:preserve-3d;box-shadow:0 8px 20px -4px #00000014,0 4px 8px -4px #0000000f;border-radius:var(--radius-lg)}.flashcard-stage.flipped .flashcard-inner{transform:rotateY(180deg)}.flashcard-front,.flashcard-back{position:absolute;width:100%;height:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:var(--radius-lg);padding:.85rem 1rem;display:flex;flex-direction:column;background:#fff;border:2px solid var(--canton-border);box-sizing:border-box;overflow:hidden}.flashcard-front{border-top:5px solid var(--canton-blue);justify-content:space-between}.flashcard-back{transform:rotateY(180deg);border-top:5px solid var(--canton-gold);background:linear-gradient(180deg,#fff,#fffdf8);justify-content:flex-start;gap:.4rem}.flashcard-badge-row{display:flex;justify-content:space-between;align-items:center;width:100%;font-size:.75rem;font-weight:600;color:var(--canton-text-muted);gap:.4rem;flex-shrink:0;margin-bottom:.1rem}.flashcard-tag{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .45rem;border-radius:var(--radius-sm);background:#f1f5f9;color:#475569;font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;font-weight:700}.flashcard-tag.verb-tag{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.card-box-tracker{display:inline-flex;align-items:center;gap:.35rem;background:#f8fafc;border:1px solid var(--canton-border);padding:.15rem .4rem;border-radius:var(--radius-sm);white-space:nowrap}.card-box-tracker .box-dots{display:flex;gap:3px;align-items:center}.card-box-tracker .box-dot{width:5px;height:5px;border-radius:50%;transition:all .2s ease}.card-box-tracker .box-label{font-size:.7rem;font-weight:700}.flashcard-main-content{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.35rem;flex:1;overflow-y:auto;width:100%;scrollbar-width:none;padding:.1rem 0}.flashcard-front .flashcard-main-content{justify-content:center}.flashcard-main-content::-webkit-scrollbar{display:none}.flashcard-word-title{font-size:1.85rem;font-weight:800;color:var(--canton-navy);letter-spacing:-.02em}.flashcard-word-subtitle{font-size:1.3rem;font-weight:800;color:#b45309;line-height:1.2;margin:0}.flashcard-verb-forms{display:flex;gap:.45rem;background:#fffbeb;border:1px solid #fde68a;padding:.3rem .6rem;border-radius:var(--radius-sm);font-size:.78rem;color:#78350f;margin-top:.1rem;flex-wrap:wrap;justify-content:center}.flashcard-flip-prompt{font-size:.725rem;color:var(--canton-text-muted);display:flex;align-items:center;justify-content:center;gap:.3rem;opacity:.8;flex-shrink:0}.flashcard-example-box{background:#f8fafc;border:1px solid #e2e8f0;border-left:3px solid var(--canton-blue);border-radius:var(--radius-sm);padding:.4rem .6rem;font-size:.78rem;text-align:left;line-height:1.35;margin-top:.2rem;width:100%;box-sizing:border-box}.flashcard-example-box .example-en{color:#1e293b;font-weight:600;margin-bottom:.15rem}.flashcard-example-box .example-de{color:#64748b;font-size:.75rem;font-style:italic}.flashcard-actions{display:flex;gap:.45rem;width:100%;max-width:620px;justify-content:center;margin-top:.35rem}.btn-rating{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.45rem .3rem;border-radius:var(--radius-md);border:2px solid transparent;cursor:pointer;transition:all .15s ease;min-height:46px;touch-action:manipulation}.box-breakdown-strip{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-md);padding:.35rem .75rem;font-size:.75rem;font-weight:600;color:var(--canton-text-muted)}.box-breakdown-item{display:inline-flex;align-items:center;gap:.25rem;cursor:pointer;padding:.1rem .3rem;border-radius:4px;transition:background .15s ease}.box-breakdown-item:hover{background:#f1f5f9}.box-breakdown-item.active{background:#e2e8f0;color:var(--canton-navy)}.flashcard-main-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;margin:auto 0}.flashcard-word-title{font-size:2rem;font-weight:800;color:var(--canton-navy);letter-spacing:-.02em}.flashcard-word-subtitle{font-size:1.25rem;font-weight:600;color:#b45309}.flashcard-verb-forms{display:flex;gap:.85rem;background:#fffbeb;border:1px solid #fde68a;padding:.5rem .85rem;border-radius:var(--radius-md);font-size:.9rem;color:#78350f;margin-top:.35rem;flex-wrap:wrap;justify-content:center}.flashcard-flip-prompt{font-size:.775rem;color:var(--canton-text-muted);display:flex;align-items:center;justify-content:center;gap:.35rem;opacity:.8}.flashcard-example-box{background:#f8fafc;border:1px solid #e2e8f0;border-left:4px solid var(--canton-blue);border-radius:var(--radius-sm);padding:.65rem .85rem;font-size:.85rem;text-align:left;line-height:1.45;margin-top:.4rem;width:100%;box-sizing:border-box}.flashcard-example-box .example-en{color:#1e293b;font-weight:500;margin-bottom:.2rem}.flashcard-example-box .example-de{color:#64748b;font-size:.8rem;font-style:italic}.flashcard-actions{display:flex;gap:.65rem;width:100%;max-width:620px;justify-content:center}.btn-rating{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.65rem .45rem;border-radius:var(--radius-md);border:2px solid transparent;cursor:pointer;transition:all .2s ease;min-height:52px;touch-action:manipulation}.rating-main-label{font-size:.9rem;font-weight:700;line-height:1.2;margin-bottom:.1rem}.rating-sub-label{font-size:.675rem;font-weight:600;opacity:.85;line-height:1}.btn-rating.again{background:#fef2f2;color:#dc2626;border-color:#fecaca}.btn-rating.again:hover{background:#fee2e2;border-color:#ef4444;transform:translateY(-1px)}.btn-rating.hard{background:#fffbeb;color:#d97706;border-color:#fde68a}.btn-rating.hard:hover{background:#fef3c7;border-color:#f59e0b;transform:translateY(-1px)}.btn-rating.good{background:#f0fdf4;color:#16a34a;border-color:#bbf7d0}.btn-rating.good:hover{background:#dcfce7;border-color:#22c55e;transform:translateY(-1px)}.story-reader-card{background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-sm)}.story-badge-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem;border-bottom:2px solid var(--canton-border);padding-bottom:1rem;margin-bottom:1.5rem}.story-theme-badge{background:#ede9fe;color:#5b21b6;font-weight:700;font-size:.8rem;padding:.3rem .75rem;border-radius:var(--radius-sm);display:inline-flex;align-items:center;gap:.4rem}.story-text-container{font-size:1.05rem;line-height:1.9;color:#334155;white-space:pre-line}.story-target-word{display:inline-block;background:#fef3c7;color:#92400e;font-weight:700;padding:.1rem .4rem;margin:0 .15rem;border-radius:4px;border-bottom:2px solid #f59e0b;cursor:pointer;transition:all .15s ease}.story-target-word:hover{background:#fde68a;color:#78350f;transform:translateY(-1px)}.vocab-word-popover{position:absolute;z-index:1000;background:#fff;border:1.5px solid var(--canton-navy);border-radius:var(--radius-md);padding:.85rem 1rem;box-shadow:0 10px 25px #0a254033;min-width:240px;max-width:320px;pointer-events:auto}.verb-drill-card{background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-lg);padding:2rem;max-width:680px;margin:0 auto;box-shadow:var(--shadow-sm)}.verb-drill-header{text-align:center;margin-bottom:1.75rem}.verb-drill-infinitive{font-size:2.2rem;font-weight:800;color:var(--canton-navy);margin-bottom:.35rem}.verb-drill-german{font-size:1.15rem;font-weight:600;color:var(--canton-text-muted)}.verb-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.5rem}.verb-input-group{display:flex;flex-direction:column;gap:.4rem}.verb-input-label{font-size:.85rem;font-weight:700;color:var(--canton-navy)}.verb-input-field{padding:.75rem 1rem;font-size:1.1rem;font-weight:600;font-family:inherit;border:2px solid var(--canton-border);border-radius:var(--radius-md);outline:none;transition:all .2s ease}.verb-input-field:focus{border-color:var(--canton-blue);box-shadow:0 0 0 3px #2563eb26}.verb-input-field.correct{border-color:#22c55e;background:#f0fdf4;color:#166534}.verb-input-field.wrong{border-color:#ef4444;background:#fef2f2;color:#991b1b}.verb-drill-actions{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.25rem}.btn-drill-action{flex:1;min-height:42px;padding:.55rem 1rem;font-size:.875rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border-radius:var(--radius-md);box-sizing:border-box}.btn-drill-action.full-width{flex:1 1 100%;width:100%}.vocab-list-container{background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm)}.vocab-list-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem}.vocab-list-filter-chips{display:flex;gap:.4rem;flex-wrap:wrap}.vocab-search-box{position:relative;flex:1 1 200px;max-width:260px}.vocab-search-icon{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);color:var(--canton-text-muted)}.vocab-search-input{width:100%;padding:.45rem .65rem .45rem 2.1rem;font-size:.85rem;border:1px solid var(--canton-border);border-radius:var(--radius-sm);outline:none;box-sizing:border-box}.vocab-search-input:focus{border-color:var(--canton-blue)}.vocab-audio-circle{border-radius:50%!important;width:32px!important;height:32px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;color:var(--canton-blue)!important}.desktop-table-wrapper{display:block;overflow-x:auto}.mobile-cards-wrapper{display:none;flex-direction:column;gap:.75rem}@media (max-width: 768px){.desktop-table-wrapper{display:none!important}.mobile-cards-wrapper{display:flex!important}}.vocab-word-card-item{background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-md);padding:.85rem;display:flex;flex-direction:column;gap:.4rem;box-shadow:0 1px 3px #0000000a}.vocab-word-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.vocab-word-card-en{font-size:1.1rem;font-weight:800;color:var(--canton-navy)}.vocab-word-card-forms{font-size:.8rem;font-weight:700;color:#b45309;margin-top:.15rem}.vocab-word-card-de{font-size:.9rem;font-weight:700;color:#334155}.vocab-word-card-pos{font-size:.75rem;font-weight:500;color:var(--canton-text-muted)}.vocab-word-card-example{background:#f8fafc;border-left:3px solid var(--canton-blue);border-radius:4px;padding:.45rem .65rem;font-size:.8rem;margin-top:.2rem}.vocab-word-card-example .example-en{color:#1e293b;font-weight:500}.vocab-word-card-example .example-de{color:#64748b;font-style:italic;margin-top:.15rem}.quiz-card{background:#fff;border:1px solid var(--canton-border);border-radius:var(--radius-lg);padding:2rem;max-width:680px;margin:0 auto;box-shadow:var(--shadow-sm)}.quiz-question-box{background:#f8fafc;border:1px solid var(--canton-border);border-radius:var(--radius-md);padding:1.5rem;margin-bottom:1.5rem;text-align:center}.quiz-question-text{font-size:1.35rem;font-weight:800;color:var(--canton-navy);margin-bottom:.5rem}.quiz-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-bottom:1.5rem}.quiz-option-btn{padding:1rem;font-size:1rem;font-weight:600;text-align:left;border:2px solid var(--canton-border);border-radius:var(--radius-md);background:#fff;cursor:pointer;transition:all .15s ease;display:flex;justify-content:space-between;align-items:center}.quiz-option-btn:hover:not(:disabled){border-color:var(--canton-blue);background:#f8fafc}.quiz-option-btn.selected-correct{border-color:#22c55e;background:#f0fdf4;color:#166534}.quiz-option-btn.selected-wrong{border-color:#ef4444;background:#fef2f2;color:#991b1b}.vocab-dash-widget{background:linear-gradient(135deg,#fef3c7,#fffbeb);border:1px solid #fde68a;border-left:5px solid var(--canton-gold);border-radius:var(--radius-md);padding:.85rem 1rem;margin-top:.75rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem}.vocab-dash-title{font-weight:700;color:#92400e;font-size:.875rem;display:flex;align-items:center;gap:.4rem}.vocab-dash-stats{font-size:.8rem;color:#78350f;margin-top:.15rem}@media (max-width: 768px){.vocab-container{padding:.5rem .65rem 1.75rem}}@media (max-width: 640px){.verb-input-grid,.quiz-options-grid{grid-template-columns:1fr;gap:.75rem}.flashcard-stage{height:300px}.flashcard-front,.flashcard-back{padding:.8rem .85rem}.flashcard-word-title{font-size:1.7rem}.flashcard-word-subtitle{font-size:1.25rem}.flashcard-actions{gap:.35rem;margin-top:.35rem}.btn-rating{padding:.45rem .25rem;min-height:44px}.rating-main-label{font-size:.8rem!important}.rating-sub-label{font-size:.625rem!important}.verb-drill-card{padding:1.15rem .85rem}.verb-drill-top-bar{margin-bottom:1rem;padding-bottom:.5rem}.verb-drill-infinitive{font-size:1.6rem}.verb-input-field{font-size:16px!important;padding:.6rem .75rem}.verb-drill-actions{margin-top:.85rem}.quiz-card{padding:1.25rem 1rem}.quiz-question-text{font-size:1.15rem}.quiz-option-btn{padding:.85rem .75rem;font-size:.9rem;min-height:48px}.story-reader-card{padding:1.25rem 1rem}.story-target-word{padding:2px 5px;margin:0 1px;touch-action:manipulation}.vocab-word-popover{position:fixed!important;left:1rem!important;right:1rem!important;bottom:1.5rem!important;top:auto!important;width:auto!important;max-width:none!important;box-shadow:0 12px 35px #0a254059!important;z-index:10000!important;animation:popoverSlideUp .25s cubic-bezier(.16,1,.3,1)}@keyframes popoverSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}}.kopfrechnen-container{width:100%;max-width:900px;margin:0 auto;padding:1.5rem 1rem;box-sizing:border-box}@media (max-width: 640px){.kopfrechnen-container{padding:.75rem .5rem}}.kopfrechnen-container .katex,.kopfrechnen-container .katex .mord,.kopfrechnen-container .katex .mrel,.kopfrechnen-container .katex .mbin,.kopfrechnen-container .katex .mopen,.kopfrechnen-container .katex .mclose,.kopfrechnen-container .katex .mpunct,.kopfrechnen-container .katex .mathrm,.kopfrechnen-container .katex .text,.kopfrechnen-container .katex .textrm,.kopfrechnen-container .katex .mathnormal{font-family:var(--font-main),KaTeX_SansSerif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif!important}.kr-hero{background:linear-gradient(135deg,#1a5632,#064e3b);color:#fff;border-radius:16px;padding:1.75rem;margin-bottom:1.5rem;box-shadow:0 10px 25px -5px #1a563240;box-sizing:border-box}@media (max-width: 640px){.kr-hero{padding:1.25rem 1rem;border-radius:12px;margin-bottom:1.2rem}.kr-hero h1{font-size:1.45rem!important}.kr-hero p{font-size:.85rem!important}}.kr-mode-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.1rem;margin-bottom:1.75rem}@media (max-width: 640px){.kr-mode-grid{grid-template-columns:1fr;gap:.85rem}}.kr-mode-card{background:#fff;border:2px solid #e2e8f0;border-radius:14px;padding:1.25rem;cursor:pointer;transition:all .2s ease-in-out;box-shadow:0 3px 8px #00000008;display:flex;flex-direction:column;box-sizing:border-box}.kr-mode-card:hover{transform:translateY(-2px);box-shadow:0 6px 14px #00000012}.kr-mode-card.featured{border-color:#1a5632;box-shadow:0 6px 16px #1a56321a;position:relative}.kr-active-wrapper{max-width:680px;margin:0 auto;width:100%;box-sizing:border-box}.kr-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:.5rem;flex-wrap:wrap}.kr-btn-back{background:none;border:none;color:#64748b;cursor:pointer;font-size:.85rem;font-weight:600;padding:.4rem .6rem;border-radius:8px;display:inline-flex;align-items:center;gap:.3rem;transition:background .15s}.kr-btn-back:hover{background:#f1f5f9;color:#0f172a}.kr-timer-badge{display:inline-flex;align-items:center;gap:.35rem;padding:4px 12px;border-radius:20px;font-weight:800;font-size:.9rem;letter-spacing:.2px;transition:all .2s}.kr-timer-badge.normal{background:#f1f5f9;color:#002b49}.kr-timer-badge.warning{background:#fee2e2;color:#dc2626;animation:pulse-warn 1s infinite alternate}@keyframes pulse-warn{0%{transform:scale(1)}to{transform:scale(1.06)}}.kr-card{background:#fff;border-radius:18px;border:2px solid #e2e8f0;padding:2rem 1.75rem;text-align:center;box-shadow:0 10px 25px #0000000d;margin-bottom:1.25rem;width:100%;box-sizing:border-box;overflow:hidden}@media (max-width: 640px){.kr-card{padding:1.25rem 1rem;border-radius:14px;margin-bottom:1rem}}.kr-category-tag{display:inline-block;font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:1px;font-weight:700;margin-bottom:.75rem;background:#f1f5f9;padding:3px 10px;border-radius:12px}.kr-question-short{font-size:clamp(1.35rem,4vw,1.85rem);font-weight:800;color:#002b49;letter-spacing:-.3px;margin:.75rem 0 1.25rem;word-break:break-word;line-height:1.35;display:flex;flex-direction:column;align-items:center;justify-content:center}.kr-question-short .katex{font-size:1.05em;line-height:1.35}.kr-question-short .katex-display{margin:.3rem 0!important}.kr-question-subtext{display:inline-block;font-size:.88rem;font-weight:700;color:#026aa7;margin-top:.5rem;background:#f0f9ff;border:1px solid #bae6fd;padding:3px 12px;border-radius:20px;letter-spacing:.2px}@media (max-width: 640px){.kr-question-short .katex{font-size:1em}.kr-question-subtext{font-size:.82rem;padding:2px 8px}}.kr-question-long{font-size:clamp(.98rem,2.6vw,1.12rem);font-weight:600;color:#0f172a;line-height:1.55;text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-left:4px solid #026aa7;border-radius:12px;padding:.9rem 1.15rem;margin:.75rem 0 1.25rem}.kr-question-target{font-size:.95rem;font-weight:700;color:#026aa7;margin-top:.5rem;display:block}.kr-input-group{display:flex;justify-content:center;align-items:stretch;gap:.6rem;width:100%;max-width:420px;margin:0 auto 1.25rem;box-sizing:border-box}@media (max-width: 480px){.kr-input-group{max-width:100%;gap:.5rem}}.kr-input{flex:1;min-width:0;width:100%;padding:.75rem 1rem;font-size:1.2rem;font-weight:800;text-align:center;border-radius:12px;border:2px solid #cbd5e1;background:#fff;color:#002b49;outline:none;box-sizing:border-box;transition:all .15s ease;font-family:inherit}.kr-input:focus{border-color:#1a5632;box-shadow:0 0 0 3px #1a56321f}.kr-input.correct{border-color:#16a34a;background:#f0fdf4;color:#166534}.kr-input.wrong{border-color:#dc2626;background:#fef2f2;color:#991b1b}.kr-btn-submit{flex-shrink:0;background:#1a5632;color:#fff;border:none;border-radius:12px;padding:0 1.3rem;font-weight:700;font-size:.95rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;transition:background .15s,transform .1s;white-space:nowrap}.kr-btn-submit:hover{background:#144327}.kr-btn-submit:active{transform:scale(.98)}.kr-btn-next{flex-shrink:0;background:#002b49;color:#fff;border:none;border-radius:12px;padding:0 1.3rem;font-weight:700;font-size:.95rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;transition:background .15s;white-space:nowrap}.kr-btn-next:hover{background:#001f35}.kr-trick-trigger-wrap{margin:.75rem auto 1.25rem;display:flex;justify-content:center}.kr-trick-btn{background:#eef2ff;border:1.5px dashed #818cf8;color:#3730a3;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;transition:all .2s ease}.kr-trick-btn:hover{background:#e0e7ff;border-color:#6366f1}.kr-trick-drawer{background:#faf5ff;border:1.5px solid #d8b4fe;border-radius:14px;padding:1.1rem 1.25rem;text-align:left;margin:.75rem auto 1.25rem;width:100%;max-width:540px;box-sizing:border-box;animation:fadeIn .2s ease}.kr-trick-title{color:#6b21a8;font-weight:800;font-size:.95rem;display:flex;align-items:center;gap:.45rem;margin-bottom:.4rem}.kr-trick-rule{font-size:.88rem;color:#4c1d95;line-height:1.5;margin-bottom:.5rem}.kr-trick-steps{background:#fff;border:1px solid #e9d5ff;border-radius:8px;padding:.6rem .85rem;font-size:.85rem;color:#3b0764;line-height:1.5}.kr-trick-tip{font-size:.8rem;color:#7e22ce;margin-top:.5rem;font-style:italic}.kr-feedback-box{border-radius:12px;padding:1rem 1.25rem;text-align:left;width:100%;max-width:540px;margin:0 auto;box-sizing:border-box;animation:fadeIn .25s ease}.kr-feedback-box.correct{background:#f0fdf4;border:1.5px solid #bbf7d0}.kr-feedback-box.wrong{background:#fef2f2;border:1.5px solid #fecaca}.kr-cheatsheet{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:1.25rem;margin-bottom:1.75rem;box-sizing:border-box}.kr-cheat-item{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.85rem 1rem;margin-bottom:.65rem}.kr-cheat-item:last-child{margin-bottom:0}.kr-cheat-header{display:flex;justify-content:space-between;align-items:center;font-weight:700;color:#002b49;font-size:.95rem;cursor:pointer}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.kr-fade-in{animation:fadeIn .25s ease-out forwards}.kr-box-chip{padding:3px 8px;border-radius:12px;font-size:.75rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;min-width:22px}.kr-box-chip.box1{background:#fee2e2;color:#dc2626;border:1px solid #fecaca}.kr-box-chip.box2{background:#fef3c7;color:#d97706;border:1px solid #fde68a}.kr-box-chip.box3{background:#e0f2fe;color:#0284c7;border:1px solid #bae6fd}.kr-box-chip.box4{background:#dcfce7;color:#16a34a;border:1px solid #bbf7d0}.kr-method-filter-bar{display:flex;justify-content:center;margin-bottom:1.25rem;width:100%}.kr-filter-btn{background:#fff;border:1.5px solid #cbd5e1;color:#475569;border-radius:20px;padding:5px 12px;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .15s ease}.kr-filter-btn:hover{background:#f8fafc;border-color:#94a3b8}.kr-filter-btn.active{background:#002b49;color:#fff;border-color:#002b49}.kr-flashcard-stage{perspective:1000px;width:100%;max-width:640px;min-height:420px;margin:0 auto;transition:opacity .14s ease,transform .14s ease;position:relative}.kr-flashcard-stage.card-transitioning{opacity:0;transform:scale(.97) translateY(-6px);pointer-events:none}.kr-flashcard-stage.card-transitioning .kr-flashcard-inner{transition:none!important}.kr-flashcard-inner{position:relative;width:100%;min-height:420px;transition:transform .5s cubic-bezier(.4,.2,.2,1);transform-style:preserve-3d;box-shadow:0 10px 25px #0000000f;border-radius:18px}.kr-flashcard-stage.flipped .kr-flashcard-inner{transform:rotateY(180deg)}.kr-flashcard-front,.kr-flashcard-back{-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:18px;padding:1.5rem 1.75rem;display:flex;flex-direction:column;background:#fff;border:2px solid #e2e8f0;box-sizing:border-box}.kr-flashcard-front{position:relative;width:100%;min-height:420px;border-top:5px solid #002b49;justify-content:space-between;z-index:2}.kr-flashcard-back{position:absolute;top:0;left:0;width:100%;height:100%;min-height:420px;transform:rotateY(180deg);border-top:5px solid #16a34a;background:linear-gradient(180deg,#fff,#fafffb);justify-content:flex-start;z-index:1}.kr-flashcard-stage.flipped .kr-flashcard-front{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.kr-flashcard-stage.flipped .kr-flashcard-back{position:relative;width:100%;height:auto;min-height:520px;z-index:2}@media (max-width: 640px){.kr-flashcard-stage,.kr-flashcard-inner,.kr-flashcard-front{min-height:420px}.kr-flashcard-front,.kr-flashcard-back{padding:1.1rem 1rem}}.kr-card-header-row{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:1rem}.kr-box-tracker-badge{display:inline-flex;align-items:center;gap:.4rem;background:#f8fafc;border:1px solid #e2e8f0;padding:3px 8px;border-radius:12px}.kr-box-dots{display:flex;gap:3px;align-items:center}.kr-box-dot{border-radius:50%;display:inline-block;transition:all .2s}.kr-card-math-prompt{font-size:clamp(1.35rem,3.8vw,1.8rem);font-weight:800;color:#002b49;letter-spacing:-.3px;text-align:center;margin:.75rem 0 1.25rem;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;min-height:58px}.kr-card-math-prompt .katex{font-size:1.05em;line-height:1.35}.kr-card-text-prompt{background:#f8fafc;border:1px solid #e2e8f0;border-left:4px solid #026aa7;border-radius:12px;padding:.9rem 1.15rem;margin:.75rem auto 1.25rem;max-width:520px;width:100%;box-sizing:border-box;text-align:left}.kr-card-text-content{font-size:clamp(.98rem,2.5vw,1.12rem);font-weight:600;color:#0f172a;line-height:1.5}.kr-card-target-chip{display:inline-block;margin-top:.5rem;font-size:.82rem;font-weight:700;color:#026aa7;background:#f0f9ff;border:1px solid #bae6fd;padding:2px 10px;border-radius:12px}.kr-method-options-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;width:100%}@media (max-width: 540px){.kr-method-options-grid{grid-template-columns:1fr;gap:.55rem}}.kr-method-choice-btn{background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:12px;padding:.75rem .9rem;text-align:left;cursor:pointer;display:flex;align-items:center;gap:.6rem;transition:all .15s ease;font-family:inherit;color:#0f172a}.kr-method-choice-btn:hover:not(:disabled){background:#eef2ff;border-color:#6366f1;transform:translateY(-1px)}.kr-method-choice-btn:active:not(:disabled){transform:scale(.99)}.kr-method-choice-btn.selected{background:#e0e7ff;border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e533}.kr-choice-num{background:#e2e8f0;color:#475569;font-size:.75rem;font-weight:800;width:22px;height:22px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.kr-choice-icon{font-size:1.15rem;flex-shrink:0}.kr-choice-text{font-size:.88rem;font-weight:700;line-height:1.3}.kr-card-feedback-banner{display:flex;justify-content:space-between;align-items:center;padding:.6rem .9rem;border-radius:10px;font-size:.92rem;margin-bottom:.85rem;width:100%;box-sizing:border-box}.kr-card-feedback-banner.correct{background:#f0fdf4;border:1.5px solid #bbf7d0;color:#166534}.kr-card-feedback-banner.wrong{background:#fef2f2;border:1.5px solid #fecaca;color:#991b1b}.kr-back-task-preview{background:#fff;border:1.5px solid #e2e8f0;border-left:4px solid #002b49;border-radius:10px;padding:.55rem .85rem;margin-bottom:.75rem;width:100%;box-sizing:border-box;text-align:left}.kr-back-task-tag{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:#64748b;display:block;margin-bottom:.2rem}.kr-back-task-text{font-size:1.05rem;font-weight:700;color:#002b49;line-height:1.4}.kr-back-task-subtext{display:inline-block;font-size:.76rem;font-weight:700;color:#026aa7;background:#f0f9ff;border:1px solid #bae6fd;padding:1px 7px;border-radius:8px;margin-top:.3rem}.kr-back-method-header{display:flex;align-items:center;gap:.65rem;margin-bottom:.75rem;text-align:left}.kr-back-icon{font-size:1.8rem;line-height:1}.kr-back-content-scroll{width:100%;display:flex;flex-direction:column;gap:.5rem;text-align:left;overflow:visible}.kr-back-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:.65rem .85rem;margin-bottom:.6rem}.kr-back-section.solution-highlight{background:#f0fdf4;border-color:#bbf7d0}.kr-back-label{font-size:.75rem;font-weight:800;text-transform:uppercase;color:#475569;letter-spacing:.5px;margin-bottom:.25rem}.kr-back-text{font-size:.88rem;color:#1e293b;line-height:1.5}.kr-back-math{font-size:.95rem;font-weight:700;color:#002b49;line-height:1.5}.kr-back-tip{font-size:.8rem;color:#166534;background:#ecfdf5;border-radius:8px;padding:.5rem .75rem;margin-top:.4rem;line-height:1.4}.kr-back-action-bar{margin-top:.85rem;display:flex;justify-content:flex-end;width:100%}.kr-btn-next-card{background:#002b49;color:#fff;border:none;border-radius:12px;padding:.7rem 1.4rem;font-weight:700;font-size:.92rem;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;transition:background .15s}.kr-btn-next-card:hover{background:#001f35}@media print{@page{size:A4 portrait;margin:12mm 15mm 15mm}html,body{background:#fff!important;color:#000!important;font-size:10pt!important;line-height:1.4!important;height:auto!important;min-height:auto!important;overflow:visible!important}.no-print,.app-header,.main-nav,.dossier-control-bar,.dossier-control-bar-wrapper,.toast-toast,.modal-overlay,.sidebar-card,.header-actions,button{display:none!important}.app-main{max-width:100%!important;margin:0!important;padding:0!important;display:block!important}.app-view{display:block!important}.dossier-paper-sheet{border:none!important;box-shadow:none!important;padding:0!important;margin:0!important;max-width:100%!important;min-height:auto!important;height:auto!important;background:transparent!important}.theory-card,.reading-passage,.exam-task-body,div[style*=overflow-y],div[style*=max-height]{max-height:none!important;overflow:visible!important;height:auto!important}.dossier-subject-block{margin-bottom:2rem!important;break-before:auto!important;page-break-before:auto!important}.dossier-subject-block+.dossier-subject-block{break-before:page!important;page-break-before:always!important}.print-only{display:block!important}.subject-print-header{display:flex!important;justify-content:space-between!important;align-items:center!important;border-bottom:1.5pt solid #0f172a!important;padding-bottom:4pt!important;margin-bottom:10pt!important;font-size:8.5pt!important;font-weight:700!important;color:#475569!important;text-transform:uppercase!important;letter-spacing:.5px!important}h1,h2,h3,h4,h5,h6,.dossier-subject-block>div:first-child,.dossier-day-section>div:first-child,.theory-card,.dossier-zusatz-divider{break-after:avoid!important;page-break-after:avoid!important}.dossier-zusatz-divider{margin:14pt 0 10pt!important}.dossier-zusatz-badge{border:1pt solid #0f172a!important;color:#0f172a!important;font-size:8pt!important;padding:2pt 6pt!important}.exam-task-container{break-inside:avoid!important;page-break-inside:avoid!important;margin-bottom:18pt!important;padding-bottom:12pt!important;border-bottom:1pt solid #cbd5e1!important}.math-grid-box{border:1pt solid #94a3b8!important;background-color:#fff!important;background-size:5mm 5mm!important;background-image:linear-gradient(to right,#e2e8f0 1pt,transparent 1pt),linear-gradient(to bottom,#e2e8f0 1pt,transparent 1pt)!important;min-height:45mm!important;margin:10pt 0!important;break-inside:avoid!important;page-break-inside:avoid!important}.math-grid-box.tall{min-height:70mm!important}.dotted-lines-box{display:flex!important;flex-direction:column!important;gap:4pt!important;margin:10pt 0!important}.dotted-line{min-height:22pt!important;line-height:22pt!important;width:100%!important;box-sizing:border-box!important;overflow:hidden!important;white-space:nowrap!important}.dotted-line:empty{border-bottom:1pt dotted #64748b!important}.exam-points-box{border:1.5pt solid #0f172a!important;background:#fff!important;color:#0f172a!important}body:not(.print-with-solutions) .task-solution-block{display:none!important}body.print-with-solutions .task-solution-block{display:block!important;border:1pt solid #16a34a!important;background:#f0fdf4!important;break-inside:avoid!important;page-break-inside:avoid!important;margin-top:10pt!important;padding:8pt 12pt!important}}
