.guernsey-button{font-family:var(--font-family-primary,"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.guernsey-button:focus-visible{outline:2px solid var(--color-primary-main,#005bac);outline-offset:2px}.button-spinner{display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.button-content{white-space:nowrap;justify-content:center;align-items:center;display:flex}.button-start-icon,.button-end-icon{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.guernsey-progress-ring{position:relative}.progress-ring-content{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.progress-ring-percentage{font-family:var(--font-family-primary,"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-size:1.25rem;font-weight:600;line-height:1.2}.progress-ring-label{font-family:var(--font-family-primary,"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);margin-top:2px;font-size:.75rem;font-weight:500;line-height:1.3}.progress-ring-sublabel{font-family:var(--font-family-primary,"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);margin-top:1px;font-size:.625rem;font-weight:400;line-height:1.3}.guernsey-question-card{font-family:var(--font-family-primary,"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.guernsey-question-card:hover{box-shadow:var(--elevation-level2,0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a)}.question-header{margin-bottom:var(--spacing-2,8px);justify-content:space-between;align-items:flex-start;display:flex}.question-meta{gap:var(--spacing-2,8px);flex-wrap:wrap;align-items:center;display:flex}.question-category,.guernsey-badge,.question-difficulty{font-size:var(--typography-label-small-size,.6875rem);font-weight:var(--typography-font-weight-medium,500);padding:var(--spacing-1,4px) var(--spacing-2,8px);border-radius:var(--border-radius-full,9999px);white-space:nowrap}.question-actions{gap:var(--spacing-1,4px);display:flex}.icon-button{cursor:pointer;padding:var(--spacing-1,4px);border-radius:var(--border-radius-md,8px);transition:background-color var(--motion-duration-short,.1s) var(--motion-easing-standard,cubic-bezier(.2, 0, 0, 1));background:0 0;border:none;justify-content:center;align-items:center;display:flex}.icon-button:hover{background-color:var(--surface-variant,#f5f5f5)}.question-stem{font-weight:var(--typography-font-weight-regular,400)}.question-image img{transition:transform var(--motion-duration-medium,.3s) var(--motion-easing-standard,cubic-bezier(.2, 0, 0, 1))}.question-image img:hover{transform:scale(1.01)}.question-options{width:100%}.option-button{text-align:left;width:100%;font:inherit;color:inherit;line-height:inherit;appearance:none;border-radius:var(--border-radius-sm,8px);border:none;border:2px solid var(--color-outline-variant,#cac4d0);background:0 0;background-color:var(--color-surface-main,#fff);cursor:pointer;transition:all var(--motion-duration-short,.15s) var(--motion-easing-standard,cubic-bezier(.2, 0, 0, 1));text-align:left;white-space:normal;justify-content:flex-start;align-items:flex-start;gap:4px;min-height:40px;margin:0;padding:4px 8px;display:flex;overflow:visible}.option-button:hover:not(:disabled){border-color:var(--color-primary-main,#005bac)!important}.option-button:focus-visible{outline:2px solid var(--color-primary-main,#005bac);outline-offset:2px}.option-indicator{transition:all var(--motion-duration-short,.15s) var(--motion-easing-standard,cubic-bezier(.2, 0, 0, 1))}.option-text{word-break:break-word;font-size:var(--typography-bodyMedium-size,.875rem);line-height:var(--typography-bodyMedium-lineHeight,1.5);color:var(--color-surface-on-surface,#1c1b1f);flex:1}.correct-badge,.incorrect-badge{animation:fadeIn var(--motion-duration-short,.15s) var(--motion-easing-standard,cubic-bezier(.2, 0, 0, 1));flex-shrink:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.question-explanation{animation:slideDown var(--motion-duration-medium,.3s) var(--motion-easing-decelerate,cubic-bezier(0, 0, .2, 1))}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.guernsey-hazard-player{font-family:var(--font-family-primary,"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.hazard-video{object-fit:cover;width:100%;height:100%}.click-marker{animation:.2s ease-out popIn}@keyframes popIn{0%{opacity:0;transform:translate(-50%,-50%)scale(0)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.feedback-overlay{animation:.3s ease-out fadeInUp}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ended-overlay{animation:.3s ease-out fadeIn}.control-button{transition:all var(--motion-duration-short,.1s) var(--motion-easing-standard,cubic-bezier(.2, 0, 0, 1))}.control-button:hover{box-shadow:var(--elevation-level2,0 4px 6px -1px #0000001a);transform:translateY(-2px)}.control-button:active{transform:translateY(0)}.daily-plan-start,.daily-plan-session,.daily-plan-complete{animation:fadeInUp var(--motion-duration-medium) var(--motion-easing-decelerate)}.daily-plan-session-header .session-info{font-size:var(--typography-bodyMedium-size);color:var(--color-surface-on-surface-variant)}.daily-plan-progress{align-items:center;gap:var(--spacing-2);display:flex}.daily-plan-question-card{margin-bottom:var(--spacing-6)}.daily-plan-navigation{margin-top:var(--spacing-6);padding-top:var(--spacing-4);border-top:1px solid var(--color-outline-variant);justify-content:space-between;align-items:center;display:flex}.daily-plan-nav-center{font-size:var(--typography-bodyMedium-size);color:var(--color-surface-on-surface-variant)}.daily-plan-start{text-align:center;max-width:600px;padding:var(--spacing-6);margin:0 auto}.daily-plan-start h1{font-size:var(--typography-headlineLarge-size);font-weight:var(--font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:var(--spacing-4)}.daily-plan-start>p{color:var(--color-surface-on-surface-variant);font-size:var(--typography-bodyLarge-size);margin-bottom:var(--spacing-6);line-height:1.6}.daily-plan-info-card{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-xl);padding:var(--spacing-6);margin-bottom:var(--spacing-6);text-align:left}.daily-plan-info-card h3{font-size:var(--typography-titleLarge-size);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-4);color:var(--color-surface-on-surface)}.daily-plan-stats{gap:var(--spacing-2);margin-bottom:var(--spacing-4);flex-wrap:wrap;display:flex}.daily-plan-stat{background-color:var(--color-primary-container);color:var(--color-primary-onContainer);padding:var(--spacing-2) var(--spacing-4);border-radius:var(--border-radius-full);font-size:var(--typography-labelMedium-size);font-weight:var(--font-weight-medium)}.daily-plan-start-note{font-size:var(--typography-bodySmall-size);color:var(--color-surface-on-surface-variant);margin-top:var(--spacing-3)}.daily-plan-session-header{margin-bottom:var(--spacing-6);padding-bottom:var(--spacing-4);border-bottom:1px solid var(--color-outline-variant);justify-content:space-between;align-items:center;display:flex}.daily-plan-session-header h1{font-size:var(--typography-headlineMedium-size);font-weight:var(--font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:var(--spacing-1)}.session-info{font-size:var(--typography-bodyMedium-size);color:var(--color-surface-on-surface-variant)}.session-progress{align-items:center;gap:var(--spacing-2);display:flex}.daily-plan-session{padding:var(--spacing-6)}.daily-plan-complete{padding:var(--spacing-6);animation:fadeInUp var(--motion-duration-medium) var(--motion-easing-decelerate)}.daily-plan-complete h1{font-size:var(--typography-headlineLarge-size);font-weight:var(--font-weight-bold);color:var(--color-surface-on-surface);text-align:center;margin-bottom:var(--spacing-6)}.daily-plan-results{gap:var(--spacing-4);margin-bottom:var(--spacing-8);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.daily-plan-result-card{background-color:var(--color-surface-main);border-radius:var(--border-radius-xl);padding:var(--spacing-6);text-align:center;border:1px solid var(--color-outline-variant)}.daily-plan-result-card.primary{background-color:var(--color-primary-container);border-color:var(--color-primary-main)}.daily-plan-result-card.success{background-color:var(--color-success-container);border-color:var(--color-success-main)}.daily-plan-result-card.secondary{background-color:var(--color-secondary-container);border-color:var(--color-secondary-main)}.daily-plan-result-value{font-size:3rem;font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-2)}.daily-plan-result-value.primary{color:var(--color-primary-main)}.daily-plan-result-value.success{color:var(--color-success-main)}.daily-plan-result-value.secondary{color:var(--color-secondary-main)}.daily-plan-result-label{font-size:var(--typography-bodyMedium-size);margin-top:var(--spacing-2)}.daily-plan-result-label.primary{color:var(--color-primary-onContainer)}.daily-plan-result-label.success{color:var(--color-success-onContainer)}.daily-plan-result-label.secondary{color:var(--color-secondary-onContainer)}.daily-plan-next-steps{background-color:var(--color-surface-main);border-radius:var(--border-radius-xl);padding:var(--spacing-6);border:1px solid var(--color-outline-variant)}.daily-plan-next-steps h3{font-size:var(--typography-titleLarge-size);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-4);text-align:center;color:var(--color-surface-on-surface)}.daily-plan-next-steps>p{color:var(--color-surface-on-surface-variant);text-align:center;margin-bottom:var(--spacing-6)}.daily-plan-actions{gap:var(--spacing-3);flex-wrap:wrap;justify-content:center;display:flex}@media (width<=768px){.daily-plan-results{grid-template-columns:1fr}.daily-plan-actions{flex-direction:column;align-items:center}.daily-plan-start{padding:var(--spacing-4)}.daily-plan-actions{flex-direction:column}.daily-plan-actions button{width:100%}.daily-plan-stats{flex-direction:column}.daily-plan-stat{text-align:center;width:100%}}@media (width<=480px){.daily-plan-session-header{gap:var(--spacing-4);text-align:center;flex-direction:column}.daily-plan-navigation{gap:var(--spacing-3);flex-direction:column}.daily-plan-navigation button{width:100%}.daily-plan-nav-center{order:-1}.daily-plan-results{grid-template-columns:1fr}.daily-plan-actions{flex-direction:column}.daily-plan-actions button{width:100%}}.topics-page{padding:24px}.topics-header{margin-bottom:24px}.topics-header h1{font-size:var(--typography-headline-large-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:8px}.topics-header p{color:var(--color-surface-on-surface-variant);font-size:var(--typography-body-large-size)}.category-selector{flex-wrap:wrap;gap:16px;margin-bottom:24px;display:flex}.category-button{border-radius:var(--border-radius-full);border:1px solid var(--color-outline-variant);background-color:var(--color-surface-main);color:var(--color-surface-on-surface);font-size:var(--typography-label-large-size);font-weight:var(--typography-font-weight-medium);cursor:pointer;padding:12px 24px;transition:all .2s}.category-button:hover{background-color:var(--color-surface-variant)}.category-button.active{background-color:var(--color-primary-main);color:var(--color-primary-contrast-text);border-color:var(--color-primary-main)}.topics-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;display:grid}.topic-card{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-xl);box-shadow:var(--elevation-level1);padding:24px;transition:all .2s}.topic-card:hover{box-shadow:var(--elevation-level2);transform:translateY(-2px)}.topic-header{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.topic-icon{font-size:2rem}.topic-info h3{font-size:var(--typography-title-large-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:4px}.topic-subtitle{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant)}.topic-stats{border-bottom:1px solid var(--color-outline-variant);gap:24px;margin-bottom:24px;padding-bottom:16px;display:flex}.stat-item{flex-direction:column;gap:4px;display:flex}.stat-value{font-size:var(--typography-title-medium-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface)}.mastery-badge{border-radius:var(--border-radius-full);font-size:var(--typography-label-large-size);font-weight:var(--typography-font-weight-bold);cursor:pointer;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px 24px;transition:all .2s;display:inline-flex}.mastery-badge.none{background-color:var(--color-surface-variant);color:var(--color-surface-on-surface)}.mastery-badge.bronze{color:#fff;background-color:#cd7f32}.mastery-badge.silver{color:#333;background-color:silver}.mastery-badge.gold{color:#333;background-color:gold}.mastery-badge:hover{box-shadow:var(--elevation-level2);transform:translateY(-1px)}.topic-practice-btn{border-radius:var(--border-radius-full);background-color:var(--color-primary-main);width:100%;color:var(--color-primary-contrast-text);font-size:var(--typography-label-large-size);font-weight:var(--typography-font-weight-medium);cursor:pointer;border:none;margin-top:16px;padding:12px 24px;transition:all .2s}.topic-practice-btn:hover{background-color:var(--color-primary-dark);transform:translateY(-1px)}.mock-test-page{padding:24px}.mock-test-header{margin-bottom:24px}.mock-test-header h1{font-size:var(--typography-headline-large-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:8px}.mock-test-header p{color:var(--color-surface-on-surface-variant);font-size:var(--typography-body-large-size)}.mock-test-config{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:32px;display:grid}.config-card{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-xl);box-shadow:var(--elevation-level1);padding:24px}.config-card h3{font-size:var(--typography-title-large-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:16px}.config-option{margin-bottom:16px}.config-option label{font-size:var(--typography-body-medium-size);color:var(--color-surface-on-surface);font-weight:var(--typography-font-weight-medium);margin-bottom:8px;display:block}.config-option select{border-radius:var(--border-radius-full);border:1px solid var(--color-outline-variant);background-color:var(--color-surface-main);width:100%;color:var(--color-surface-on-surface);font-size:var(--typography-body-large-size);cursor:pointer;padding:12px 16px;font-family:inherit}.mock-test-results{margin-top:32px}.results-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.results-header h2{font-size:var(--typography-headline-small-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface)}.results-table{border-collapse:collapse;background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-xl);width:100%;box-shadow:var(--elevation-level1);overflow:hidden}.results-table th,.results-table td{text-align:left;border-bottom:1px solid var(--color-outline-variant);padding:16px}.results-table th{background-color:var(--color-surface-variant);font-size:var(--typography-label-large-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface-variant)}.results-table td{font-size:var(--typography-body-medium-size);color:var(--color-surface-on-surface)}.results-table tr:last-child td{border-bottom:none}.results-table tr:hover td{background-color:var(--color-surface-variant)}.result-score{font-weight:var(--typography-font-weight-bold)}.result-score.pass{color:var(--color-success-main)}.result-score.fail{color:var(--color-error-main)}.hazard-perception-page{padding:24px}.hazard-header{margin-bottom:32px}.hazard-header h1{font-size:var(--typography-headline-large-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:8px}.hazard-header p{color:var(--color-surface-on-surface-variant);font-size:var(--typography-body-large-size)}.info-card{background-color:var(--color-info-container);border:1px solid var(--color-info-main);border-radius:var(--border-radius-xl);margin-bottom:32px;padding:24px}.info-card-content{align-items:flex-start;gap:24px;display:flex}.info-icon{background-color:var(--color-info-main);color:var(--color-info-contrast-text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;font-weight:700;display:flex}.info-content h3{font-size:var(--typography-title-large-size);font-weight:var(--typography-font-weight-bold);color:var(--color-info-on-container);margin-bottom:16px}.info-content ul{color:var(--color-info-on-container);padding-left:24px;line-height:1.8}.section-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-header h2{font-size:var(--typography-headline-small-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface)}.clip-count{color:var(--color-surface-on-surface-variant);font-size:var(--typography-body-medium-size)}.clips-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;display:grid}.mock-test-section{margin-bottom:32px}.mock-test-card{background-color:var(--color-primary-container);border:1px solid var(--color-primary-main);border-radius:var(--border-radius-xl);padding:24px}.mock-test-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.mock-test-info h3{font-size:var(--typography-headline-small-size);font-weight:var(--typography-font-weight-bold);color:var(--color-primary-on-container);margin-bottom:8px}.mock-test-info p{color:var(--color-primary-on-container)}.lgv-section h2{font-size:var(--typography-headline-small-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:16px}.lgv-section>p{color:var(--color-surface-on-surface-variant);margin-bottom:24px}.clip-card{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-xl);cursor:pointer;text-align:left;flex-direction:column;gap:24px;padding:24px;transition:all .2s;display:flex}.clip-card:hover{box-shadow:var(--elevation-level2);transform:translateY(-2px)}.clip-header{justify-content:space-between;align-items:flex-start;display:flex}.clip-header-left{flex-direction:column;gap:16px;display:flex}.clip-number-badge{background-color:var(--color-primary-container);color:var(--color-primary-on-container);border-radius:var(--border-radius-full);font-size:var(--typography-label-small-size);font-weight:var(--typography-font-weight-medium);padding:8px 16px}.clip-title{font-size:var(--typography-title-medium-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface)}.clip-location{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant)}.completed-badge{background-color:var(--color-success-container);color:var(--color-success-on-container);border-radius:var(--border-radius-full);font-size:var(--typography-label-small-size);font-weight:var(--typography-font-weight-medium);padding:8px 16px}.clip-duration{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant)}.clip-footer{border-top:1px solid var(--color-outline-variant);justify-content:space-between;align-items:center;margin-top:16px;padding-top:24px;display:flex}.clip-status{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant)}.clip-action-btn{background-color:var(--color-primary-main);color:var(--color-primary-contrast-text);border-radius:var(--border-radius-full);font-size:var(--typography-label-medium-size);font-weight:var(--typography-font-weight-medium);cursor:pointer;border:none;padding:12px 24px;transition:all .2s}.clip-action-btn:hover{background-color:var(--color-primary-dark);transform:translateY(-1px)}.mock-test-start{text-align:center;margin-top:32px}.highway-code-page{padding:24px}.highway-header{margin-bottom:32px}.highway-header h1{font-size:var(--typography-headline-large-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:8px}.highway-header p{color:var(--color-surface-on-surface-variant);font-size:var(--typography-body-large-size)}.search-container{margin-bottom:24px}.search-input::-webkit-search-cancel-button{appearance:none;width:0;height:0;display:none}.search-input::-webkit-search-decoration{appearance:none;width:0;height:0;display:none}.search-input-wrapper{max-width:600px;position:relative}.search-input{border-radius:var(--border-radius-full);border:1px solid var(--color-outline-variant);background-color:var(--color-surface-main);width:100%;color:var(--color-surface-on-surface);font-size:var(--typography-body-large-size);padding:12px 16px 12px 48px;font-family:inherit}.search-icon{color:var(--color-surface-on-surface-variant);pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.quick-links{flex-wrap:wrap;gap:12px;margin-bottom:32px;display:flex}.quick-link-btn{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-full);font-size:var(--typography-label-medium-size);cursor:pointer;align-items:center;gap:8px;padding:8px 16px;transition:all .2s;display:flex}.quick-link-btn:hover{background-color:var(--color-surface-variant);border-color:var(--color-primary-main)}.section-card{background-color:var(--color-surface-main);border:2px solid var(--color-outline-variant);border-radius:var(--border-radius-xl);transition:all .2s;overflow:hidden}.section-card:hover{border-color:var(--color-primary-main)}.section-header{text-align:left;cursor:pointer;background-color:#0000;border:none;justify-content:space-between;align-items:center;gap:24px;width:100%;padding:24px;display:flex}.section-header:hover{background-color:var(--color-surface-variant)}.section-title{font-size:var(--typography-headline-small-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface)}.subsection-count{background-color:var(--color-primary-container);color:var(--color-primary-on-container);border-radius:var(--border-radius-full);font-size:var(--typography-label-small-size);font-weight:var(--typography-font-weight-medium);padding:8px 16px}.arrow-icon{color:var(--color-surface-on-surface-variant);font-size:1.5rem;transition:transform .2s}.arrow-icon.expanded{transform:rotate(180deg)}.section-content{border-top:1px solid var(--color-outline-variant);padding:0 24px 24px;animation:.3s ease-out slideDown}.subsection-item{border-radius:var(--border-radius-md);cursor:pointer;background-color:var(--color-surface-variant);margin:8px 16px;padding:16px 24px;transition:background-color .2s}.subsection-item:hover{background-color:var(--color-primary-container)}.subsection-title{font-size:var(--typography-body-medium-size);font-weight:var(--typography-font-weight-medium);color:var(--color-surface-on-surface);margin-bottom:8px}.subsection-content{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant);line-height:1.5}.guernsey-rules-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}.guernsey-rule-card{background-color:var(--color-secondary-container);border:1px solid var(--color-secondary-main);border-radius:var(--border-radius-xl);padding:24px}.guernsey-rule-title{font-size:var(--typography-title-medium-size);font-weight:var(--typography-font-weight-bold);color:var(--color-secondary-on-container);margin-bottom:16px}.guernsey-rule-description{color:var(--color-secondary-on-container);margin-bottom:24px;line-height:1.6}.guernsey-rule-uk{font-size:var(--typography-body-small-size);color:var(--color-secondary-on-container);opacity:.7}.download-section{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-xl);text-align:center;margin-top:48px;padding:32px}.download-section h3{font-size:var(--typography-title-large-size);font-weight:var(--typography-font-weight-bold);margin-bottom:16px}.download-section p{color:var(--color-surface-on-surface-variant);margin-bottom:24px}.download-buttons{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.practical-section{margin-top:48px}.practical-section h2{font-size:var(--typography-headline-small-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:16px}.practical-section>p{color:var(--color-surface-on-surface-variant);margin-bottom:24px}.practical-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;display:grid}.practical-video-card{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-xl);cursor:pointer;text-align:left;flex-direction:column;gap:24px;padding:24px;transition:all .2s;display:flex}.practical-video-card:hover{box-shadow:var(--elevation-level2);transform:translateY(-2px)}.practical-video-header{justify-content:space-between;align-items:flex-start;display:flex}.practical-video-left{flex-direction:column;gap:16px;display:flex}.practical-type-badge{background-color:var(--color-secondary-container);color:var(--color-secondary-on-container);border-radius:var(--border-radius-full);font-size:var(--typography-label-small-size);font-weight:var(--typography-font-weight-medium);padding:8px 16px}.practical-question{font-size:var(--typography-title-medium-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface)}.practical-location{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant)}.practical-video-footer{border-top:1px solid var(--color-outline-variant);justify-content:space-between;align-items:center;margin-top:16px;padding-top:24px;display:flex}.practical-status{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant)}.practical-watch-btn{background-color:var(--color-secondary-main);color:var(--color-secondary-contrast-text);border-radius:var(--border-radius-full);font-size:var(--typography-label-medium-size);font-weight:var(--typography-font-weight-medium);cursor:pointer;border:none;padding:12px 24px;transition:all .2s}.practical-watch-btn:hover{background-color:var(--color-secondary-dark);transform:translateY(-1px)}.practical-player-overlay{z-index:1000;background-color:#000000e6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.practical-player-container{background-color:var(--color-surface-main);border-radius:var(--border-radius-xl);width:90%;max-width:800px;max-height:90vh;padding:24px;overflow-y:auto}.practical-player-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.practical-player-title{font-size:var(--typography-title-large-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface)}.practical-player-close{color:var(--color-surface-on-surface-variant);cursor:pointer;background:0 0;border:none;font-size:2rem}.practical-player-video{border-radius:var(--border-radius-lg);width:100%}.practical-player-info{border-top:1px solid var(--color-outline-variant);margin-top:24px;padding-top:24px}.practical-player-type{background-color:var(--color-secondary-container);color:var(--color-secondary-on-container);border-radius:var(--border-radius-full);font-size:var(--typography-label-small-size);font-weight:var(--typography-font-weight-medium);margin-bottom:16px;padding:8px 16px;display:inline-block}.practical-player-question{font-size:var(--typography-title-medium-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:8px}.practical-player-location{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant)}.practical-player-actions{justify-content:flex-end;gap:16px;margin-top:24px;display:flex}.no-results{text-align:center;color:var(--color-surface-on-surface-variant);padding:48px}.no-results p{margin-top:16px}.settings-page{padding:24px}.settings-header{margin-bottom:32px}.settings-header h1{font-size:var(--typography-headline-large-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:8px}.settings-header p{color:var(--color-surface-on-surface-variant);font-size:var(--typography-body-large-size)}.settings-tabs{border-bottom:1px solid var(--color-outline-variant);gap:8px;margin-bottom:24px;display:flex;overflow-x:auto}.tab-button{font-size:var(--typography-label-large-size);font-weight:var(--typography-font-weight-medium);color:var(--color-surface-on-surface-variant);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;padding:16px 24px;transition:all .2s}.tab-button:hover{color:var(--color-surface-on-surface)}.tab-button.active{color:var(--color-primary-main);border-bottom-color:var(--color-primary-main)}.tab-content{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-xl);min-height:400px;padding:32px}.tab-panel{animation:.2s fadeIn}.section-title{font-size:var(--typography-title-large-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:24px}.setting-group{border-bottom:1px solid var(--color-outline-variant);margin-bottom:32px;padding-bottom:24px}.setting-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.setting-group-title{font-size:var(--typography-title-medium-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:16px}.setting-item{justify-content:space-between;align-items:center;gap:24px;padding:16px 0;display:flex}.setting-item:last-child{padding-bottom:0}.setting-info{flex-direction:column;flex:1;gap:4px;display:flex}.setting-label{font-size:var(--typography-body-medium-size);font-weight:var(--typography-font-weight-medium);color:var(--color-surface-on-surface)}.setting-description{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant)}.setting-control{flex-shrink:0}.toggle-switch{width:52px;height:28px;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background-color:var(--color-outline-variant);border-radius:28px;transition:all .2s;position:absolute;inset:0}.toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:20px;height:20px;transition:all .2s;position:absolute;bottom:4px;left:4px;box-shadow:0 2px 4px #0003}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-primary-main)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.toggle-switch input:focus-visible+.toggle-slider{outline:2px solid var(--color-primary-main);outline-offset:2px}.settings-select{border-radius:var(--border-radius-full);border:1px solid var(--color-outline-variant);background-color:var(--color-surface-main);color:var(--color-surface-on-surface);font-size:var(--typography-body-medium-size);cursor:pointer;min-width:200px;padding:10px 16px;font-family:inherit}.settings-button{border-radius:var(--border-radius-full);font-size:var(--typography-label-large-size);font-weight:var(--typography-font-weight-medium);cursor:pointer;border:none;padding:12px 24px;transition:all .2s}.settings-button.primary{background-color:var(--color-primary-main);color:var(--color-primary-contrast-text)}.settings-button.primary:hover{background-color:var(--color-primary-dark)}.settings-button.outline{border:1px solid var(--color-outline-variant);color:var(--color-surface-on-surface);background-color:#0000}.settings-button.outline:hover{background-color:var(--color-surface-variant)}.settings-button.danger{background-color:var(--color-error-container);color:var(--color-error-main);border:1px solid var(--color-error-main)}.settings-button.danger:hover{background-color:var(--color-error-main);color:var(--color-error-contrast-text)}.account-info{background-color:var(--color-surface-variant);border-radius:var(--border-radius-xl);align-items:center;gap:24px;margin-bottom:32px;padding:24px;display:flex}.account-avatar{background-color:var(--color-primary-container);width:80px;height:80px;color:var(--color-primary-on-container);font-size:2.5rem;font-weight:var(--typography-font-weight-bold);border-radius:50%;justify-content:center;align-items:center;display:flex}.account-details h2{font-size:var(--typography-headline-small-size);font-weight:var(--typography-font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:4px}.account-email{color:var(--color-surface-on-surface-variant);font-size:var(--typography-body-medium-size)}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px;display:grid}.stat-card{background-color:var(--color-surface-variant);border-radius:var(--border-radius-xl);text-align:center;padding:24px}.stat-value{font-size:3rem;font-weight:var(--typography-font-weight-bold);color:var(--color-primary-main);margin-bottom:8px}.stat-label{font-size:var(--typography-body-medium-size);color:var(--color-surface-on-surface-variant)}.danger-zone{border:1px solid var(--color-error-main);border-radius:var(--border-radius-xl);background-color:var(--color-error-container);padding:24px}.danger-zone-title{font-size:var(--typography-title-medium-size);font-weight:var(--typography-font-weight-bold);color:var(--color-error-main);margin-bottom:8px}.danger-zone-description{color:var(--color-error-on-container);margin-bottom:24px}.version-info{text-align:center;color:var(--color-surface-on-surface-variant);font-size:var(--typography-body-small-size);border-top:1px solid var(--color-outline-variant);margin-top:32px;padding:24px}.data-item{background-color:var(--color-surface-variant);border-radius:var(--border-radius-lg);justify-content:space-between;align-items:center;margin-bottom:12px;padding:16px;display:flex}.data-info{flex-direction:column;gap:4px;display:flex}.data-label{font-size:var(--typography-body-medium-size);font-weight:var(--typography-font-weight-medium);color:var(--color-surface-on-surface)}.data-size{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant)}.notification-item{background-color:var(--color-surface-variant);border-radius:var(--border-radius-lg);justify-content:space-between;align-items:center;margin-bottom:12px;padding:16px;display:flex}.notification-info{flex-direction:column;gap:4px;display:flex}.notification-title{font-size:var(--typography-body-medium-size);font-weight:var(--typography-font-weight-medium);color:var(--color-surface-on-surface)}.notification-description{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant)}.accessibility-options{flex-direction:column;gap:16px;display:flex}.accessibility-item{background-color:var(--color-surface-variant);border-radius:var(--border-radius-lg);justify-content:space-between;align-items:center;padding:16px;display:flex}.accessibility-info{flex-direction:column;gap:4px;display:flex}.accessibility-title{font-size:var(--typography-body-medium-size);font-weight:var(--typography-font-weight-medium);color:var(--color-surface-on-surface)}.accessibility-description{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant)}.study-options{flex-direction:column;gap:16px;display:flex}.study-option{background-color:var(--color-surface-variant);border-radius:var(--border-radius-lg);justify-content:space-between;align-items:center;padding:16px;display:flex}.study-info{flex-direction:column;gap:4px;display:flex}.study-title{font-size:var(--typography-body-medium-size);font-weight:var(--typography-font-weight-medium);color:var(--color-surface-on-surface)}.study-description{font-size:var(--typography-body-small-size);color:var(--color-surface-on-surface-variant)}.empty-state{text-align:center;color:var(--color-surface-on-surface-variant);padding:48px 24px}.empty-state-icon{margin-bottom:16px;font-size:4rem}.login-page{min-height:100vh;padding:var(--spacing-4);background-color:var(--color-background-main);justify-content:center;align-items:center;display:flex}.login-card{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-xl);width:100%;max-width:400px;padding:var(--spacing-6);box-shadow:var(--elevation-level2)}.login-header{text-align:center;margin-bottom:var(--spacing-6)}.login-header h1{font-size:var(--typography-headlineMedium-size);font-weight:var(--typography-fontWeight-bold);color:var(--color-surface-onSurface);margin-bottom:var(--spacing-2)}.login-header p{color:var(--color-surface-onSurfaceVariant);font-size:var(--typography-bodyMedium-size)}.login-form{gap:var(--spacing-4);flex-direction:column;display:flex}.form-group input{width:100%;padding:var(--spacing-3) var(--spacing-4);border-radius:var(--borderRadius-md);border:1px solid var(--color-outline-variant);background-color:var(--color-surface-main);color:var(--color-surface-onSurface);font-size:var(--typography-bodyLarge-size);font-family:inherit}.dev-token-box{background-color:var(--color-primary-container);border:1px solid var(--color-primary-main);border-radius:var(--borderRadius-md);padding:var(--spacing-3);margin-bottom:var(--spacing-4)}.dev-token-box h3{font-size:var(--typography-labelLarge-size);font-weight:var(--typography-fontWeight-bold);color:var(--color-primary-onContainer);margin-bottom:var(--spacing-2)}.dev-token-box p{color:var(--color-primary-onContainer);font-size:var(--typography-bodySmall-size);margin-bottom:var(--spacing-2)}.dev-token-box .token-display{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--borderRadius-md);padding:var(--spacing-3);font-family:monospace;font-size:var(--typography-bodySmall-size);word-break:break-all;color:var(--color-primary-main);font-weight:var(--typography-fontWeight-medium)}.btn-resend{margin-top:var(--spacing-2)}.login-footer{margin-top:var(--spacing-6);text-align:center;padding-top:var(--spacing-4);border-top:1px solid var(--color-outline-variant)}.login-footer p{color:var(--color-surface-onSurfaceVariant);font-size:var(--typography-bodySmall-size);margin-bottom:var(--spacing-2)}.login-footer a{color:var(--color-primary-main);font-weight:var(--typography-fontWeight-medium);text-decoration:none}.login-footer a:hover{text-decoration:underline}.register-page{min-height:100vh;padding:var(--spacing-4);background-color:var(--color-background-main);justify-content:center;align-items:center;display:flex}.register-card{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-xl);width:100%;max-width:400px;padding:var(--spacing-6);box-shadow:var(--elevation-level2)}.register-header{text-align:center;margin-bottom:var(--spacing-6)}.register-header h1{font-size:var(--typography-headlineMedium-size);font-weight:var(--typography-fontWeight-bold);color:var(--color-surface-onSurface);margin-bottom:var(--spacing-2)}.register-header p{color:var(--color-surface-onSurfaceVariant);font-size:var(--typography-bodyMedium-size)}.message{padding:var(--spacing-3);border-radius:var(--borderRadius-md);margin-bottom:var(--spacing-4);font-size:var(--typography-bodySmall-size)}.message-success{background-color:var(--color-success-container);color:var(--color-success-onContainer);border:1px solid var(--color-success-main)}.message-error{background-color:var(--color-error-container);color:var(--color-error-onContainer);border:1px solid var(--color-error-main)}.register-form{gap:var(--spacing-4);flex-direction:column;display:flex}.form-group{gap:var(--spacing-2);flex-direction:column;display:flex}.form-group label{font-size:var(--typography-labelLarge-size);font-weight:var(--typography-fontWeight-medium);color:var(--color-surface-onSurface);margin-bottom:var(--spacing-2);display:block}.form-group input,.form-group select{width:100%;padding:var(--spacing-3) var(--spacing-4);border-radius:var(--borderRadius-md);border:1px solid var(--color-outline-variant);background-color:var(--color-surface-main);color:var(--color-surface-onSurface);font-size:var(--typography-bodyLarge-size);font-family:inherit}.form-group input:disabled{opacity:.6;cursor:not-allowed}.form-hint{font-size:var(--typography-bodySmall-size);color:var(--color-surface-onSurfaceVariant);margin-top:var(--spacing-1)}.register-footer{margin-top:var(--spacing-6);text-align:center;padding-top:var(--spacing-4);border-top:1px solid var(--color-outline-variant)}.register-footer p{color:var(--color-surface-onSurfaceVariant);font-size:var(--typography-bodySmall-size);margin-bottom:var(--spacing-2)}.register-footer a{color:var(--color-primary-main);font-weight:var(--typography-fontWeight-medium);text-decoration:none}.register-footer a:hover{text-decoration:underline}.guernsey-app{flex-direction:column;min-height:100vh;display:flex}.app-header{z-index:var(--z-index-sticky);position:sticky;top:0}.header-content{max-width:1200px;margin:0 auto}.logo{align-items:center;gap:var(--spacing-3);display:flex}.header-nav{gap:var(--spacing-2);display:flex}.header-nav a{padding:var(--spacing-1) var(--spacing-3);border-radius:var(--border-radius-md);font-weight:var(--font-weight-medium);transition:all var(--motion-duration-short) var(--motion-easing-standard)}.header-nav a:hover{background-color:var(--color-surface-variant);color:var(--color-primary-main);text-decoration:none}.app-main{padding:var(--spacing-6);flex:1}.main-container{max-width:1200px;margin:0 auto}.dashboard{animation:fadeInUp var(--motion-duration-medium) var(--motion-easing-decelerate)}.welcome-section{margin-bottom:var(--spacing-8)}.stats-row{gap:var(--spacing-4);margin-bottom:var(--spacing-8);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.stat-card{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-lg);padding:var(--spacing-4);text-align:center;box-shadow:var(--elevation-level1);transition:all var(--motion-duration-short) var(--motion-easing-standard)}.stat-card:hover{box-shadow:var(--elevation-level2);transform:translateY(-2px)}.stat-card .stat-icon{margin-bottom:var(--spacing-2);font-size:2rem}.stat-card .stat-value{font-size:var(--typography-headlineMedium-size);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-1)}.stat-card .stat-label{font-size:var(--typography-bodySmall-size);color:var(--color-surface-on-surface-variant)}.daily-plan-card{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-xl);padding:var(--spacing-6);margin-bottom:var(--spacing-8);box-shadow:var(--elevation-level1)}.daily-plan-header{margin-bottom:var(--spacing-4);justify-content:space-between;align-items:center;display:flex}.daily-plan-title{font-size:var(--typography-headlineSmall-size);font-weight:var(--font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:var(--spacing-1)}.daily-plan-subtitle{color:var(--color-surface-on-surface-variant);font-size:var(--typography-bodyMedium-size)}.topic-chips{gap:var(--spacing-2);margin-bottom:var(--spacing-4);flex-wrap:wrap;display:flex}.topic-chip{padding:var(--spacing-1) var(--spacing-3);border-radius:var(--border-radius-full);font-size:var(--typography-labelSmall-size);font-weight:var(--font-weight-medium)}.daily-plan-actions{gap:var(--spacing-3);display:flex}.weakest-topic{margin-bottom:var(--spacing-8)}.weakest-topic h3{font-size:var(--typography-titleLarge-size);font-weight:var(--font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:var(--spacing-4)}.weakest-topic-card{background-color:var(--color-error-container);border:1px solid var(--color-error-main);border-radius:var(--border-radius-lg);padding:var(--spacing-4);justify-content:space-between;align-items:center;gap:var(--spacing-4);display:flex}.weakest-topic-info .topic-name{font-size:var(--typography-bodyLarge-size);font-weight:var(--font-weight-medium);color:var(--color-error-on-container);margin-bottom:var(--spacing-1)}.weakest-topic-info .topic-details{font-size:var(--typography-bodyMedium-size);color:var(--color-error-on-container);opacity:.8}.quick-actions{margin-top:var(--spacing-4)}.quick-actions h3{font-size:var(--typography-titleLarge-size);font-weight:var(--font-weight-bold);color:var(--color-surface-on-surface);margin-bottom:var(--spacing-4)}.action-grid{gap:var(--spacing-3);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.action-card{background-color:var(--color-surface-main);border:1px solid var(--color-outline-variant);border-radius:var(--border-radius-lg);padding:var(--spacing-4);text-align:center;cursor:pointer;transition:all var(--motion-duration-short) var(--motion-easing-standard);align-items:center;gap:var(--spacing-2);flex-direction:column;display:flex}.action-card:hover{box-shadow:var(--elevation-level2);transform:translateY(-2px)}.action-icon{font-size:2.5rem}.action-title{font-size:var(--typography-titleMedium-size);font-weight:var(--font-weight-bold);color:var(--color-surface-on-surface)}.action-subtitle{font-size:var(--typography-bodySmall-size);color:var(--color-surface-on-surface-variant)}.action-cta{margin-top:var(--spacing-1);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--border-radius-full);font-size:var(--typography-labelSmall-size);font-weight:var(--font-weight-medium)}.progress-ring-container{justify-content:center;align-items:center;display:flex}.placeholder-page{text-align:center;padding:var(--spacing-12)}.placeholder-icon{margin-bottom:var(--spacing-4);font-size:4rem;display:block}.placeholder-title{font-size:var(--typography-headlineLarge-size);color:var(--color-surface-on-surface);margin-bottom:var(--spacing-2)}.placeholder-text{color:var(--color-surface-on-surface-variant);max-width:400px;margin:0 auto}@media (width<=768px){.stats-row,.action-grid{grid-template-columns:repeat(2,1fr)}.header-nav{display:none}.daily-plan-header{align-items:flex-start;gap:var(--spacing-3);flex-direction:column}.daily-plan-actions{flex-direction:column;width:100%}.daily-plan-actions button{width:100%}}@media (width<=480px){.stats-row,.action-grid{grid-template-columns:1fr}.weakest-topic-card{text-align:center;flex-direction:column}}:root{--color-primary-main:#005bac;--color-primary-light:#4a8fc7;--color-primary-dark:#003d7a;--color-primary-contrast:#fff;--color-primary-container:#d6e8f7;--color-primary-on-container:#001d3d;--color-secondary-main:#007a33;--color-secondary-light:#4aa56a;--color-secondary-dark:#005223;--color-secondary-contrast:#fff;--color-secondary-container:#d6f0dd;--color-secondary-on-container:#001f0e;--color-tertiary-main:#c8102e;--color-tertiary-light:#e85d52;--color-tertiary-dark:#8c0005;--color-tertiary-contrast:#fff;--color-tertiary-container:#ffdad6;--color-tertiary-on-container:#3d0002;--color-error-main:#ba1a1a;--color-error-light:#ff544f;--color-error-dark:#8c0000;--color-error-contrast:#fff;--color-error-container:#ffdad6;--color-error-on-container:#3d0002;--color-success-main:#007a33;--color-success-light:#4aa56a;--color-success-dark:#005223;--color-success-contrast:#fff;--color-success-container:#d6f0dd;--color-success-on-container:#001f0e;--color-warning-main:#e65c00;--color-warning-light:#ff8f3e;--color-warning-dark:#ae3200;--color-warning-contrast:#fff;--color-warning-container:#ffdbcc;--color-warning-on-container:#3d0a00;--color-info-main:#005bac;--color-info-light:#4a8fc7;--color-info-dark:#003d7a;--color-info-contrast:#fff;--color-info-container:#d6e8f7;--color-info-on-container:#001d3d;--color-surface-main:#fff;--color-surface-dim:#f5f5f5;--color-surface-bright:#fff;--color-surface-variant:#f5f5f5;--color-surface-on-surface:#1c1b1f;--color-surface-on-surface-variant:#49454f;--color-outline-main:#79747e;--color-outline-variant:#cac4d0;--color-background-main:#fffbfe;--color-background-on-background:#1c1b1f;--font-family-primary:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono:"JetBrains Mono", "Fira Code", monospace;--spacing-0:0;--spacing-1:4px;--spacing-2:8px;--spacing-3:12px;--spacing-4:16px;--spacing-5:20px;--spacing-6:24px;--spacing-8:32px;--spacing-10:40px;--spacing-12:48px;--spacing-16:64px;--border-radius-none:0;--border-radius-xs:4px;--border-radius-sm:8px;--border-radius-md:12px;--border-radius-lg:16px;--border-radius-xl:24px;--border-radius-xxl:32px;--border-radius-full:9999px;--elevation-level0:none;--elevation-level1:0 1px 2px 0 #0000000d, 0 1px 3px 0 #0000001a;--elevation-level2:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--elevation-level3:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--elevation-level4:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--elevation-level5:0 25px 50px -12px #00000040;--motion-easing-standard:cubic-bezier(.2, 0, 0, 1);--motion-easing-decelerate:cubic-bezier(0, 0, .2, 1);--motion-duration-short:.15s;--motion-duration-medium:.3s;--motion-duration-long:.5s;--z-index-hide:-1;--z-index-base:0;--z-index-dropdown:1000;--z-index-sticky:1100;--z-index-fixed:1200;--z-index-modal-backdrop:1300;--z-index-modal:1400;--z-index-popover:1500;--z-index-tooltip:1600;--z-index-toast:1700;--button-height-sm:32px;--button-height-md:40px;--button-height-lg:48px;--progress-ring-size-sm:40px;--progress-ring-size-md:64px;--progress-ring-size-lg:96px;--progress-ring-stroke-width:4px}[data-theme=dark]{--color-primary-main:#7ab3e6;--color-primary-container:#002f5a;--color-primary-on-container:#d6e8f7;--color-secondary-main:#7ac78a;--color-secondary-container:#002f1a;--color-secondary-on-container:#d6f0dd;--color-tertiary-main:#ffb4ab;--color-tertiary-container:#4c0003;--color-tertiary-on-container:#ffdad6;--color-error-main:#ffb4ab;--color-error-container:#4c0003;--color-error-on-container:#ffdad6;--color-success-main:#7ac78a;--color-success-container:#002f1a;--color-success-on-container:#d6f0dd;--color-warning-main:#ffb48c;--color-warning-container:#4c1e00;--color-warning-on-container:#ffdbcc;--color-info-main:#7ab3e6;--color-info-container:#002f5a;--color-info-on-container:#d6e8f7;--color-surface-main:#141216;--color-surface-dim:#1c1a1e;--color-surface-bright:#2e2a34;--color-surface-variant:#2e2a34;--color-surface-on-surface:#e6e1e5;--color-surface-on-surface-variant:#cac4d0;--color-outline-main:#938f99;--color-outline-variant:#49454f;--color-background-main:#141216;--color-background-on-background:#e6e1e5}*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-family-primary);color:var(--color-surface-on-surface);background-color:var(--color-background-main);min-height:100vh;margin:0;font-size:1rem;line-height:1.5}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{color:var(--color-surface-on-surface);margin:0;font-weight:600;line-height:1.2}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1rem}h6{font-size:.875rem}p{margin:0 0 1rem}a{color:var(--color-primary-main);transition:color var(--motion-duration-short) var(--motion-easing-standard);text-decoration:none}a:hover{color:var(--color-primary-dark)}img{max-width:100%;height:auto}:focus-visible{outline:2px solid var(--color-primary-main);outline-offset:2px}::selection{background-color:var(--color-primary-container);color:var(--color-primary-on-container)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-surface-variant)}::-webkit-scrollbar-thumb{background:var(--color-outline-main);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-outline-main)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing-1)}.gap-2{gap:var(--spacing-2)}.gap-3{gap:var(--spacing-3)}.gap-4{gap:var(--spacing-4)}.gap-6{gap:var(--spacing-6)}.w-full{width:100%}.max-w-screen{max-width:1200px;margin:0 auto}.p-4{padding:var(--spacing-4)}.p-6{padding:var(--spacing-6)}.m-auto{margin:auto}.mt-4{margin-top:var(--spacing-4)}.mt-6{margin-top:var(--spacing-6)}.mt-8{margin-top:var(--spacing-8)}.mb-4{margin-bottom:var(--spacing-4)}.mb-6{margin-bottom:var(--spacing-6)}.mb-8{margin-bottom:var(--spacing-8)}.rounded{border-radius:var(--border-radius-md)}.rounded-lg{border-radius:var(--border-radius-lg)}.rounded-xl{border-radius:var(--border-radius-xl)}.rounded-full{border-radius:var(--border-radius-full)}.shadow-1{box-shadow:var(--elevation-level1)}.shadow-2{box-shadow:var(--elevation-level2)}.bg-surface{background-color:var(--color-surface-main)}.bg-surface-variant{background-color:var(--color-surface-variant)}.bg-primary-container{background-color:var(--color-primary-container)}.bg-error-container{background-color:var(--color-error-container)}.bg-success-container{background-color:var(--color-success-container)}.bg-warning-container{background-color:var(--color-warning-container)}.text-on-surface{color:var(--color-surface-on-surface)}.text-on-surface-variant{color:var(--color-surface-on-surface-variant)}.text-primary{color:var(--color-primary-main)}.text-error{color:var(--color-error-main)}.text-success{color:var(--color-success-main)}.text-warning{color:var(--color-warning-main)}.font-medium{font-weight:500}.font-bold{font-weight:700}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:fadeIn var(--motion-duration-medium) var(--motion-easing-decelerate)}.animate-fade-in-up{animation:fadeInUp var(--motion-duration-medium) var(--motion-easing-decelerate)}.animate-pulse{animation:2s infinite pulse}.animate-spin{animation:1s linear infinite spin}@media print{.no-print{display:none!important}}
