@import url(https://cdn.framework.ge/fonts);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,body{font-family:Framework-Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.category-title,.exam-title,.home-title,.modal-title,.mode-title,.practice-title,.quiz-title,.sidebar-title,h1,h2,h3,h4,h5,h6{font-family:Framework-Sans-Caps,Framework-Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--accent-color:#f59e0b;--success-color:#10b981;--error-color:#ef4444;--transition:all 0.2s ease}[data-theme=dark],body.dark-theme{--primary-color:#000;--primary-hover:#262626;--primary-dark:#000;--primary-foreground:#fff;--secondary-color:#ffe55c;--secondary-hover:#f9d930;--secondary-dark:#f4d025;--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#64748b;--border-color:#334155}.vehicle-modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}@media(max-width:768px){.vehicle-modal-backdrop{align-items:flex-end;padding:12px}}body.dark-theme .vehicle-modal-backdrop{background:#0000008c}.vehicle-modal{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:14px;box-shadow:0 20px 50px #0f172a26,inset 0 0 0 1px #ffffff0a;display:flex;flex-direction:column;max-height:min(420px,85vh);max-width:340px;overflow:hidden;width:100%}@media(max-width:768px){.vehicle-modal{border-radius:14px 14px 0 0;max-height:55vh;max-width:100%}}.vehicle-modal__header{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;gap:12px;justify-content:space-between;padding:16px 16px 14px}.vehicle-modal__headings{min-width:0}.vehicle-modal__title{color:var(--text-primary);font-size:1rem;font-weight:700;letter-spacing:-.02em;line-height:1.25;margin:0}.vehicle-modal__hint{color:var(--text-muted);font-size:.72rem;font-weight:500;line-height:1.35;margin:4px 0 0}.vehicle-modal__close{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;margin:-4px -4px 0 0;transition:background .15s ease,color .15s ease;width:32px}.vehicle-modal__close:hover{background:var(--bg-secondary);color:var(--text-primary)}.vehicle-modal__body{flex:1 1;min-height:0;overflow-y:auto;padding:12px}.vehicle-modal__state{align-items:center;color:var(--text-secondary);display:flex;font-size:.875rem;justify-content:center;min-height:120px}.vehicle-modal__state--error{color:var(--error-color);padding:12px;text-align:center}.vehicle-modal__spinner{animation:vehicle-modal-spin .75s linear infinite;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);height:28px;width:28px}@keyframes vehicle-modal-spin{to{transform:rotate(1turn)}}.vehicle-modal__options{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.vehicle-modal__option{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;display:flex;font-family:inherit;gap:12px;justify-content:space-between;padding:12px 14px;text-align:left;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;width:100%}.vehicle-modal__option:hover{background:var(--bg-primary);border-color:var(--primary-color);box-shadow:0 0 0 1px #0000001f}.vehicle-modal__option--selected{background:#0000000f;border-color:var(--primary-color);box-shadow:inset 0 0 0 1px #00000024}body.dark-theme .vehicle-modal__option--selected{background:#4aefe214}.vehicle-modal__code{font-feature-settings:"tnum";font-size:.95rem;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.01em}.vehicle-modal__check{color:var(--primary-dark);display:flex;flex-shrink:0}body.dark-theme .vehicle-modal__check{color:var(--text-primary)}.language-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}@media(max-width:768px){.language-modal-overlay{padding:10px}}.language-modal{background-color:var(--bg-primary);border-radius:var(--border-radius-lg);display:flex;flex-direction:column;max-height:80vh;max-width:600px;overflow:hidden;width:100%}@media(max-width:768px){.language-modal{max-height:90vh}}.modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:20px 24px}@media(max-width:768px){.modal-header{padding:16px 20px}}.modal-title{color:var(--text-primary);font-size:20px;font-weight:600;margin:0}@media(max-width:768px){.modal-title{font-size:18px}}.modal-close{align-items:center;background-color:var(--bg-secondary);border:none;border-radius:16px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.modal-close:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}@media(max-width:768px){.modal-close{font-size:14px;height:28px;width:28px}}.modal-content{flex:1 1;overflow-y:auto;padding:24px}@media(max-width:768px){.modal-content{padding:20px}}.modal-error,.modal-loading{align-items:center;color:var(--text-secondary);display:flex;font-size:16px;justify-content:center;min-height:200px}.modal-error.modal-error,.modal-loading.modal-error{color:var(--error-color)}.spinner{border-top:3px solid var(--border-color)}.language-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}@media(max-width:768px){.language-grid{gap:12px;grid-template-columns:1fr}}.language-card{align-items:center;background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;display:flex;gap:16px;padding:12px 20px;position:relative;text-align:left;transition:all .2s ease;width:100%}.language-card:hover{background-color:var(--bg-secondary);border-color:var(--primary-color);transform:translateY(-2px)}.language-card.selected{background-color:#0000;border-color:var(--primary-color);color:var(--text-primary)}.language-card.selected .language-flag{filter:brightness(0) invert(1)}.language-card.selected .language-name,.language-card.selected .language-ui{color:var(--text-primary)}@media(max-width:768px){.language-card{gap:12px;padding:10px 16px}}.language-flag{flex-shrink:0;font-size:32px}@media(max-width:768px){.language-flag{font-size:28px}}.language-info{flex:1 1;min-width:0}.language-name{color:var(--text-primary);font-size:18px;font-weight:600;margin-bottom:4px}@media(max-width:768px){.language-name{font-size:16px}}.language-ui{color:var(--text-secondary);font-size:14px}@media(max-width:768px){.language-ui{font-size:13px}}.selected-indicator{align-items:center;background-color:var(--success-color);border-radius:50%;color:#fff;display:flex;font-size:14px;font-weight:700;height:24px;justify-content:center;position:absolute;right:12px;top:12px;width:24px}@media(max-width:768px){.selected-indicator{font-size:12px;height:20px;right:10px;top:10px;width:20px}}.auth-modal-backdrop{align-items:center;animation:authFadeIn .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a8c;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:2000}@keyframes authFadeIn{0%{opacity:0}to{opacity:1}}.auth-modal{animation:authSlide .25s ease;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg),0 24px 48px #0000001f;max-width:420px;padding:28px 28px 24px;position:relative;width:100%}@keyframes authSlide{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.auth-modal-close{background:var(--bg-secondary);border:none;border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;font-size:22px;height:36px;line-height:1;position:absolute;right:14px;top:12px;transition:var(--transition);width:36px}.auth-modal-close:hover{background:var(--bg-tertiary)}.auth-modal-title{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin:0 36px 8px 0}.auth-modal-hint{color:var(--text-secondary);font-size:.9rem;line-height:1.45;margin:0 0 20px}.auth-mode-tabs{background:var(--bg-secondary);border-radius:var(--border-radius);display:flex;gap:8px;margin-bottom:20px;padding:4px}.auth-mode-tabs button{background:#0000;border:none;border-radius:var(--border-radius);color:var(--text-secondary);cursor:pointer;flex:1 1;font-family:inherit;font-size:.9rem;font-weight:600;padding:10px 14px;transition:var(--transition)}.auth-mode-tabs button.active{background:var(--bg-primary);box-shadow:var(--shadow);color:var(--text-primary)}.auth-form{gap:16px}.auth-form,.auth-label{display:flex;flex-direction:column}.auth-label{color:var(--text-secondary);font-size:.85rem;font-weight:600;gap:6px;text-align:left}.auth-label input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-primary);font-size:1rem;padding:12px 14px;transition:var(--transition)}.auth-label input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #0000001f;outline:none}.auth-error{background:#ef44441f;border-radius:var(--border-radius);color:var(--error-color);font-size:.9rem;padding:10px 12px}.auth-submit{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border:none;border-radius:var(--border-radius);color:var(--primary-foreground);cursor:pointer;font-size:1rem;font-weight:700;margin-top:4px;padding:14px 20px;transition:var(--transition)}.auth-submit:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.auth-submit:disabled{cursor:not-allowed;opacity:.65;transform:none}body.dark-theme .auth-submit{color:var(--primary-foreground)}.primary-rail{align-items:center;align-self:stretch;background:var(--bg-primary);border:none;border-radius:0;border-right:1px solid var(--border-color);box-shadow:none;display:flex;flex-direction:column;flex-shrink:0;height:100%;min-height:0;padding:14px 0 12px;width:56px;z-index:5}@media(max-width:768px){.primary-rail{display:none}}.primary-rail__logo{align-items:center;border-radius:9px;display:flex;height:38px;justify-content:center;margin-bottom:16px;text-decoration:none;transition:background .15s ease;width:38px}.primary-rail__logo:hover{background:var(--bg-secondary)}.primary-rail__logo-img{display:block;height:26px;width:26px}.primary-rail__nav{align-items:center;display:flex;flex-direction:column;gap:5px;width:100%}.primary-rail__nav-btn{align-items:center;background:#0000;border:none;border-radius:9px;color:var(--text-muted);cursor:pointer;display:flex;height:38px;justify-content:center;text-decoration:none;transition:background .15s ease,color .15s ease;width:38px}.primary-rail__nav-btn--active,.primary-rail__nav-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.primary-rail__nav-btn--active{box-shadow:inset 0 0 0 1px var(--border-color)}.primary-rail__spacer{flex:1 1;min-height:16px}.primary-rail__footer{align-items:center;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:5px;padding-top:8px;width:100%}.primary-rail__tool{align-items:center;background:#0000;border:none;border-radius:9px;color:var(--text-secondary);cursor:pointer;display:flex;height:38px;justify-content:center;padding:0;text-decoration:none;transition:background .15s ease,color .15s ease;width:38px}.primary-rail__tool:hover{background:var(--bg-secondary);color:var(--text-primary)}.primary-rail__tool--avatar{background:var(--bg-secondary);border:1px solid var(--border-color)}.primary-rail__avatar-letter{color:var(--text-primary);font-size:.85rem;font-weight:800;line-height:1}.mobile-app-bar{align-items:center;background:var(--bg-primary);border-bottom:1px solid var(--border-color);display:none;gap:12px;justify-content:space-between;padding:10px 14px;position:-webkit-sticky;position:sticky;top:0;z-index:100}@media(max-width:768px){.mobile-app-bar{display:flex}}.mobile-app-bar__logo{align-items:center;color:var(--text-primary);display:flex;gap:10px;min-width:0;text-decoration:none}.mobile-app-bar__title{font-size:1.05rem;font-weight:800;letter-spacing:-.02em}.mobile-app-bar__actions{align-items:center;display:flex;flex-shrink:0;gap:4px}.mobile-app-bar__icon-btn{align-items:center;background:#0000;border:none;border-radius:10px;color:var(--text-primary);cursor:pointer;display:flex;height:40px;justify-content:center;text-decoration:none;width:40px}.mobile-app-bar__icon-btn:hover{background:var(--bg-secondary)}.mobile-app-bar__avatar{font-size:.8rem;font-weight:800}.footer{margin-top:auto;padding:20px 0}@media(max-width:768px){.footer{display:none}}.footer-content{margin:0 auto;max-width:1200px;padding:0 20px;text-align:center}@media(max-width:768px){.footer-content{padding:0 15px}}.footer-copyright{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0}.footer-link{color:var(--text-primary);font-weight:500;margin-left:8px;text-decoration:none;transition:color .2s ease}.footer-link:hover{color:var(--text-primary);text-decoration:underline}.bottom-tab-bar{background-color:var(--bg-primary);border-top:1px solid var(--border-color);bottom:0;box-shadow:0 -2px 10px #0000001a;display:none;left:0;padding:8px 0;position:fixed;right:0;z-index:1000}@media(max-width:768px){.bottom-tab-bar{align-items:center;display:flex;justify-content:space-around}}.bottom-tab-bar .tab-item{align-items:center;border-radius:12px;color:var(--text-secondary);display:flex;flex:1 1;flex-direction:column;justify-content:center;min-width:52px;padding:8px 12px;text-decoration:none;transition:all .2s ease}.bottom-tab-bar .tab-item:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.bottom-tab-bar .tab-item.active{background-color:var(--bg-secondary);color:var(--primary-color)}.bottom-tab-bar .tab-item .tab-icon{height:24px;margin-bottom:4px;width:24px}.bottom-tab-bar .tab-item .tab-label{font-family:Framework-Sans-Caps,Framework-Sans,sans-serif;font-size:11px;font-weight:500;line-height:1.2;text-align:center}.home-container{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:0;padding:20px;position:relative;width:100%}.home-container:before{background:radial-gradient(ellipse 80% 55% at 18% 12%,#0000000f,#0000 55%),radial-gradient(ellipse 70% 50% at 88% 18%,#f9d93024,#0000 50%),radial-gradient(ellipse 60% 40% at 48% 95%,#0000000a,#0000 45%);content:"";inset:-20px;pointer-events:none;position:absolute;z-index:-1}@media(max-width:768px){.home-container{padding:15px}}.home-progress-link{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:999px;box-shadow:var(--shadow);display:inline-flex;font-size:.95rem;font-weight:700;gap:10px;margin-bottom:24px;padding:12px 20px;transition:all .2s ease}.home-progress-link,.home-progress-link:hover{color:var(--text-primary);text-decoration:none}.home-progress-link:hover{border-color:var(--primary-color);transform:translateY(-1px)}.home-progress-pill{font-family:Framework-Sans-Caps,Framework-Sans,sans-serif}.home-progress-chevron{opacity:.7}.home-content{max-width:1000px;text-align:center;width:100%}@media(max-width:768px){.home-content{max-width:600px}}.home-banner{background:url(/static/media/banner.ff7642b481a84d564c3d.png);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:26px;box-shadow:0 8px 32px #0000001a;margin:0 auto 40px;max-width:900px;overflow:hidden;padding:40px 30px;position:relative;width:100%}.home-banner:before{background:#0006;bottom:0;content:"";left:0;opacity:.7;position:absolute;right:0;top:0}@media(max-width:768px){.home-banner{margin-bottom:30px;padding:30px 20px}}.banner-content{position:relative;z-index:1}.banner-title{color:#fff;font-size:48px;font-weight:700}@media(max-width:768px){.banner-title{font-size:36px}}@media(max-width:480px){.banner-title{font-size:28px}}.banner-subtitle{color:#ffffffe6;font-family:Framework-Sans-Caps,sans-serif;font-size:18px;margin-bottom:0}@media(max-width:768px){.banner-subtitle{font-size:16px}}.mode-selection{margin-bottom:30px}.mode-toggle{display:flex;gap:12px;justify-content:center}@media(max-width:768px){.mode-toggle{align-items:center;flex-direction:column}}.mode-button{background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .2s ease}.mode-button:hover{background-color:var(--bg-secondary);border-color:var(--primary-color)}.mode-button.active{background-color:var(--primary-color);border-color:var(--primary-color);color:var(--primary-foreground)}@media(max-width:768px){.mode-button{font-size:14px;max-width:200px;padding:10px 20px;width:100%}}.main-selection-area{display:flex;justify-content:center;margin-bottom:40px}@media(max-width:768px){.main-selection-area{margin-bottom:30px}}.vehicle-reminder{margin:0 auto 40px;max-width:400px;width:100%}@media(max-width:768px){.vehicle-reminder{margin-bottom:30px}}.reminder-card{padding:30px 20px;text-align:center}@media(max-width:768px){.reminder-card{padding:20px 16px}}.reminder-icon{font-size:48px;margin-bottom:16px}@media(max-width:768px){.reminder-icon{font-size:36px;margin-bottom:12px}}.reminder-card h3{color:var(--text-primary);font-size:20px;font-weight:600;margin-bottom:12px}@media(max-width:768px){.reminder-card h3{font-size:18px;margin-bottom:8px}}.reminder-card p{color:var(--text-secondary);line-height:1.5}@media(max-width:768px){.reminder-card p{font-size:14px}}.category-sidebar{max-width:400px;padding:20px;text-align:left;width:100%}@media(max-width:768px){.category-sidebar{max-width:100%}}.sidebar-title{color:var(--text-primary);font-size:18px;font-weight:600;margin-bottom:16px;text-align:center}@media(max-width:768px){.sidebar-title{font-size:16px;margin-bottom:12px}}.category-list{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto}@media(max-width:768px){.category-list{max-height:300px}}.category-item{align-items:center;background-color:var(--bg-primary);border:2px solid #0000;border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.category-item:hover{background-color:var(--bg-tertiary);border-color:var(--primary-color)}.category-item.active{background-color:var(--primary-color);border-color:var(--primary-color);color:var(--primary-foreground)}.category-item.active .category-icon{filter:brightness(0) invert(1)}@media(max-width:768px){.category-item{font-size:13px;padding:10px 14px}}.category-icon{flex-shrink:0;font-size:18px}@media(max-width:768px){.category-icon{font-size:16px}}.category-name{word-wrap:break-word;flex:1 1;line-height:1.4}.exam-info{max-width:400px;padding:20px;text-align:left;width:100%}@media(max-width:768px){.exam-info{max-width:100%}}.exam-details h3{color:var(--primary-color);font-size:18px;font-weight:600;margin-bottom:12px}.exam-details p{line-height:1.5}.exam-details ul{list-style:none;margin:16px 0 0;padding:0}.exam-details li{color:var(--text-secondary);margin-bottom:8px;padding-left:20px;position:relative}.exam-details li:before{color:var(--success-color);content:"✓";font-weight:700;left:0;position:absolute}.start-button{background-color:var(--primary-color);border:none;border-radius:var(--border-radius);color:var(--primary-foreground);cursor:pointer;font-size:18px;font-weight:600;max-width:300px;padding:16px 32px;transition:all .2s ease;width:100%}.start-button:hover:not(:disabled){background-color:var(--primary-hover);transform:translateY(-1px)}.start-button:disabled{background-color:var(--text-muted);cursor:not-allowed;transform:none}@media(max-width:768px){.start-button{font-size:16px;padding:14px 28px}}.mode-cards{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin:0 auto;max-width:900px}@media(max-width:768px){.mode-cards{gap:20px;grid-template-columns:1fr}}.mode-card{align-items:center;border:1px solid #ffffff1f;border-radius:26px;box-shadow:0 4px 6px #00000012,0 20px 50px #0f172a1f;display:block;display:flex;justify-content:center;min-height:200px;overflow:hidden;position:relative;text-align:center;text-decoration:none;transition:all .3s ease}.mode-card:hover{box-shadow:0 8px 12px #00000017,0 28px 60px #0f172a29;text-decoration:none;transform:translateY(-4px)}.mode-card.practice-card{background-image:url(/static/media/tickets.5563ecf314e82215dbf9.jpeg)}.mode-card.exam-card,.mode-card.practice-card{background-position:50%;background-repeat:no-repeat;background-size:cover}.mode-card.exam-card{background-image:url(/static/media/exam.0faad46b3033300993a5.jpeg)}@media(max-width:768px){.mode-card{min-height:150px}}.mode-overlay{align-items:center;background:#0009;border-radius:var(--border-radius);display:flex;height:100%;justify-content:center;padding:30px;transition:all .3s ease;width:100%}.mode-card:hover .mode-overlay{background:#000c}@media(max-width:768px){.mode-overlay{padding:20px}}.mode-title{color:#fff;font-size:28px;font-weight:700;margin:0;text-shadow:2px 2px 4px #00000080;transition:all .3s ease}@media(max-width:768px){.mode-title{font-size:24px}}.mode-description{color:var(--text-secondary);font-size:16px;line-height:1.5;margin-bottom:20px;transition:all .3s ease}@media(max-width:768px){.mode-description{font-size:14px;margin-bottom:16px}}.mode-features{text-align:left}.feature{color:var(--text-secondary);font-size:14px;margin-bottom:8px;transition:all .3s ease}.feature:last-child{margin-bottom:0}@media(max-width:768px){.feature{font-size:13px;margin-bottom:6px}}.quiz-container{margin:0 auto;max-width:800px}.quiz-container--embedded{margin:0;max-width:none;padding-bottom:80px;padding-right:16px;width:100%}@media(max-width:768px){.quiz-container--embedded{padding-bottom:88px}}.quiz-container--embedded .question-container{background-color:#0000;border:none;border-radius:0;box-shadow:none;margin:0;padding:0}.quiz-container--embedded h2.question-text{font-family:Framework-Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:16px;font-weight:400;line-height:1.6;margin-bottom:20px;text-transform:none}@media(max-width:768px){.quiz-container--embedded h2.question-text{font-size:15px;margin-bottom:16px}.quiz-container:not(.quiz-container--embedded){margin:0 10px}}.question-text{color:var(--text-primary);font-size:20px;font-weight:600;line-height:1.5;margin-bottom:24px}@media(max-width:768px){.question-text{font-size:18px;margin-bottom:20px}}.answer-button:hover:not(:disabled):not(.correct):not(.incorrect){background-color:var(--bg-secondary);border-color:var(--primary-color)}.answer-button:disabled{cursor:not-allowed}.answer-button.correct .answer-button__index,.answer-button.incorrect .answer-button__index{color:inherit;opacity:.95}.result-section{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);margin-top:24px;padding:20px}.result{font-size:18px;font-weight:600;margin-bottom:16px}.result.correct{color:var(--success-color)}.result.incorrect{color:var(--error-color)}.explanation h3{color:var(--text-primary);font-size:16px;font-weight:600;margin-bottom:8px}.explanation p{color:var(--text-secondary);line-height:1.6}.quiz-navigation{display:flex;gap:16px;justify-content:space-between}@media(max-width:768px){.quiz-navigation{flex-direction:column}}.quiz-navigation--floating{align-items:center;background:#0000;border:none;border-radius:0;bottom:max(20px,env(safe-area-inset-bottom,0px));box-shadow:none;flex-direction:row;flex-wrap:nowrap;gap:8px;justify-content:flex-end;left:auto;margin:0;max-width:none;padding:0;position:fixed;right:max(14px,env(safe-area-inset-right,0px));top:auto;transform:none;z-index:40}@media(max-width:768px){.quiz-navigation--floating{bottom:max(76px,68px + env(safe-area-inset-bottom,0px));right:max(12px,env(safe-area-inset-right,0px))}}.quiz-navigation--floating .nav-button--fab{align-items:center;background:#fff;border:1px solid #0f172a14;border-radius:50%;box-shadow:0 8px 28px #0f172a1f,0 0 0 1px #0f172a0a;color:var(--text-primary);display:flex;flex:none;height:48px;justify-content:center;min-width:48px;padding:0;width:48px}.quiz-navigation--floating .nav-button--fab.nav-button--primary{border-color:#0000;color:var(--primary-foreground)}.quiz-navigation--floating .nav-button--fab:hover:not(:disabled){filter:brightness(.98)}.quiz-navigation--floating .nav-button--primary:hover:not(:disabled){filter:brightness(1.06)}body.dark-theme .quiz-navigation--floating .nav-button--fab:not(.nav-button--primary){background:#fff;border-color:#0f172a1a;box-shadow:0 8px 28px #00000059,0 0 0 1px #ffffff1a;color:#0f172a}.nav-button{background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);flex:1 1}.nav-button:hover:not(:disabled){background-color:var(--bg-tertiary)}.nav-button--primary{background-color:var(--primary-color);border:1px solid #0000;color:var(--primary-foreground)}.nav-button--primary:hover:not(:disabled){background-color:var(--primary-hover)}@media(max-width:768px){.nav-button{font-size:14px;padding:12px 20px}}.quiz-completed{padding:40px 20px;text-align:center}.quiz-completed h2{color:var(--primary-color);font-size:32px;font-weight:700;margin-bottom:24px}@media(max-width:768px){.quiz-completed h2{font-size:24px}}.quiz-actions{display:flex;gap:16px;justify-content:center}@media(max-width:768px){.quiz-actions{align-items:center;flex-direction:column}}.back-button,.restart-button{color:var(--primary-foreground)}.practice-page{display:flex;flex:1 1;flex-direction:column;height:100%;min-height:0;min-width:0;width:100%}.practice-page .error,.practice-page .loading{flex:1 1;min-height:280px}.practice-layout{align-items:stretch;background:#0000;border:none;border-radius:0;box-shadow:none;display:flex;flex:1 1;gap:0;height:100%;min-height:0;min-width:0;overflow:hidden;width:100%}@media(max-width:900px){.practice-layout{background:#0000;flex-direction:column;gap:0;height:auto;min-height:0;overflow:visible}}.practice-sidebar{align-self:flex-start;background:#0000;border-right:1px solid var(--border-color);box-sizing:border-box;display:flex;flex:0 0 280px;flex-direction:column;max-height:100%;padding:0;position:-webkit-sticky;position:sticky;top:0;width:280px}@media(max-width:900px){.practice-sidebar{border-bottom:1px solid var(--border-color);border-radius:0;border-right:none;flex:none;max-height:none;max-width:none;padding:0;position:static;width:100%}}.practice-sidebar-nav{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:2px;min-height:0;overflow-y:auto;padding:8px 10px;scrollbar-width:none}.practice-sidebar-nav::-webkit-scrollbar{display:none;height:0;width:0}.practice-sidebar-error,.practice-sidebar-loading{align-items:center;color:var(--text-secondary);display:flex;font-size:.9rem;gap:8px;justify-content:center;padding:20px 12px}.practice-sidebar-error--inline,.practice-sidebar-loading--inline{font-size:.85rem;justify-content:flex-start;padding:8px 0}.practice-sidebar-error{color:var(--error-color);text-align:center}.practice-sidebar-error--inline{text-align:left}.practice-category-tickets-wrap{background:#0000;border:none}.practice-sidebar-loading .spinner.spinner--inline{border-width:2px;flex-shrink:0;height:18px;width:18px}.practice-category-block{background:#0000;border:none;border-radius:0;display:flex;flex-direction:column;gap:0;overflow:visible}.practice-category-row{align-items:stretch;display:flex;gap:0;min-width:0}.practice-category-header{-webkit-text-fill-color:var(--text-primary);align-items:center;background:#0000;border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;flex:1 1;font-family:Framework-Sans-Caps,Framework-Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:14px;font-weight:600;gap:8px;line-height:1.25;min-width:0;padding:6px 4px 6px 0;text-align:left;transition:background .12s ease}.practice-category-header .category-progress-ring-wrap{flex-shrink:0}.practice-category-header .category-progress-ring-label{font-family:Framework-Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.64rem}.practice-category-header .category-progress-ring-percent{font-size:.54rem}.practice-category-header:hover{background:#0f172a0a}.practice-category-block.is-active .practice-category-header{background:#0000}body.dark-theme .practice-category-header:hover{background:#f8fafc0f}.practice-category-expand{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;justify-content:center;margin:0;padding:0;transition:background .12s ease,color .12s ease;width:28px}.practice-category-expand:hover{background:#0f172a0f;color:var(--text-primary)}body.dark-theme .practice-category-expand:hover{background:#f8fafc0f}.practice-category-expand-icon{display:flex;transition:transform .2s ease}.practice-category-expand-icon.is-open{transform:rotate(90deg)}.practice-category-count{font-feature-settings:"tnum";align-items:center;background:var(--bg-tertiary);border-radius:4px;color:var(--text-muted);display:inline-flex;flex-shrink:0;font-family:Framework-Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.7rem;font-variant-numeric:tabular-nums;font-weight:800;height:20px;justify-content:center;min-width:20px;padding:0 6px}.practice-category-block.is-active .practice-category-count{background:#00000014;color:var(--primary-color)}body.dark-theme .practice-category-block.is-active .practice-category-count{background:#ffffff1f;color:var(--text-primary)}.practice-category-tickets{list-style:none;margin:0;padding:0 0 4px}.practice-ticket-row{-webkit-text-fill-color:var(--text-primary);align-items:center;background:#0000;border:none;border-radius:10px;color:var(--text-primary);cursor:pointer;display:flex;font-family:inherit;font-size:13px;gap:8px;margin:0;padding:4px 2px 4px 0;text-align:left;transition:background .12s ease;width:100%}.practice-ticket-row:last-child{margin-bottom:0}.practice-ticket-row.is-current,.practice-ticket-row:hover{background:#0f172a0a}.practice-ticket-row:focus-visible{box-shadow:0 0 0 2px #00000038;outline:none}body.dark-theme .practice-ticket-row.is-current,body.dark-theme .practice-ticket-row:hover{background:#f8fafc0f}body.dark-theme .practice-ticket-row:focus-visible{box-shadow:0 0 0 2px #ffffff59}.practice-ticket-row-num-wrap{flex-shrink:0;margin-left:3px;position:relative}.practice-ticket-row-num,.practice-ticket-row-num-wrap{align-items:center;display:flex;height:24px;justify-content:center;width:24px}.practice-ticket-row-num{font-feature-settings:"tnum";-webkit-text-fill-color:var(--text-secondary);background:var(--bg-tertiary);border:none;border-radius:8px;color:var(--text-secondary);font-size:.68rem;font-variant-numeric:tabular-nums;font-weight:800;transition:background .15s ease,color .15s ease,-webkit-text-fill-color .15s ease}.practice-ticket-row-num--correct{-webkit-text-fill-color:#fff;background:var(--success-color);color:#fff}.practice-ticket-row-num--incorrect{-webkit-text-fill-color:#fff;background:var(--error-color);color:#fff}.practice-ticket-row-thumb{background:var(--bg-tertiary);border-radius:8px;flex-shrink:0;height:24px;overflow:hidden;width:24px}.practice-ticket-row-thumb img{display:block;height:100%;object-fit:cover;width:100%}.practice-ticket-row-thumb--empty{background:repeating-linear-gradient(-45deg,var(--bg-tertiary),var(--bg-tertiary) 4px,var(--bg-secondary) 4px,var(--bg-secondary) 8px);border-style:dashed;opacity:.65}.practice-ticket-row-body{flex:1 1;min-width:0}.practice-ticket-row-preview{-webkit-line-clamp:1;-webkit-box-orient:vertical;-webkit-text-fill-color:var(--text-secondary);color:var(--text-secondary);display:-webkit-box;font-size:13px;line-height:1.35;overflow:hidden;white-space:normal;word-break:break-word}.category-progress-ring-wrap{align-items:center;display:flex;flex-shrink:0;justify-content:center;position:relative}.category-progress-ring-svg{display:block}.category-progress-ring-bg{stroke:var(--border-color)}.category-progress-ring-fill{stroke:var(--primary-color);transition:stroke-dasharray .35s ease}.category-progress-ring-label{font-feature-settings:"tnum";align-items:center;color:var(--text-primary);display:flex;font-size:.68rem;font-variant-numeric:tabular-nums;font-weight:800;inset:0;justify-content:center;line-height:1;pointer-events:none;position:absolute}.category-progress-ring-percent{font-size:.55rem;font-weight:700;margin-left:.5px;opacity:.85}.practice-category-block.is-active .category-progress-ring-fill{stroke:var(--primary-dark)}.practice-sidebar-item-text{-webkit-text-fill-color:var(--text-primary);color:var(--text-primary);display:block;flex:1 1;font-size:14px;font-weight:600;line-height:1.25;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.practice-main{background:var(--bg-primary);flex:1 1;min-height:0;min-width:0;overflow-y:auto;padding:24px 28px 28px}@media(max-width:900px){.practice-main{min-height:auto;overflow:visible;padding:16px}}.practice-main-header{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:22px}.practice-main-title{flex:1 1;margin:0;min-width:0}.practice-main-ticket-fraction,.practice-main-title{color:var(--text-secondary);font-size:clamp(.8125rem,2vw,.9375rem);font-weight:600;line-height:1.35}.practice-main-ticket-fraction{font-feature-settings:"tnum";flex-shrink:0;font-variant-numeric:tabular-nums;letter-spacing:.02em}.practice-vehicle-reminder{margin:40px auto;max-width:440px;padding:0 16px}.practice-vehicle-reminder .reminder-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:30px 24px;text-align:center}.practice-vehicle-reminder .reminder-icon{font-size:48px;margin-bottom:16px}.practice-vehicle-reminder h3{color:var(--text-primary);font-size:1.15rem;font-weight:700;margin:0 0 10px}.practice-vehicle-reminder p{color:var(--text-secondary);line-height:1.5;margin:0}.error,.loading{align-items:center;color:var(--text-secondary);display:flex;font-size:18px;justify-content:center;min-height:200px}.error.error,.loading.error{color:var(--error-color)}.exam-container{margin:0 auto;max-width:800px}@media(max-width:768px){.exam-container{margin:0 10px}}.exam-intro{padding:40px 20px;text-align:center}.exam-instructions-title{color:var(--text-primary);font-size:24px;font-weight:600;margin-bottom:24px}@media(max-width:768px){.exam-instructions-title{font-size:20px;margin-bottom:20px}}.exam-info{margin:0 auto;max-width:600px}@media(max-width:768px){.exam-info{padding:0 10px}}.exam-details{margin-bottom:24px;text-align:center}.exam-details p{color:var(--text-secondary);font-size:16px;margin-bottom:8px}.exam-details p strong{color:var(--text-primary)}.exam-rules{margin-bottom:30px}.exam-rules ul{list-style:none;padding:0}.exam-rules li{color:var(--text-secondary);margin-bottom:8px;padding-left:20px;position:relative}.exam-rules li:before{color:var(--primary-color);content:"•";font-weight:700;left:0;position:absolute}.start-exam-button{background-color:var(--primary-color);border:none;border-radius:var(--border-radius);color:#fff;cursor:pointer;display:block;font-size:16px;font-weight:600;margin:30px auto 0;max-width:250px;padding:12px 24px;transition:all .2s ease;white-space:nowrap}.start-exam-button:hover{background-color:var(--primary-hover);transform:translateY(-1px)}.exam-header{align-items:center;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);display:flex;justify-content:space-between;margin-bottom:30px;padding:20px}@media(max-width:768px){.exam-header{flex-direction:column;gap:15px;text-align:center}}.exam-progress{flex:1 1}.exam-progress .progress-info{color:var(--text-primary);font-size:16px;font-weight:600;margin-bottom:8px}.exam-progress .progress-bar{background-color:var(--bg-tertiary);border-radius:4px;height:8px;overflow:hidden;width:100%}.exam-progress .progress-fill{background-color:var(--primary-color);height:100%;transition:width .3s ease}.exam-timer{text-align:center}.exam-timer .timer-label{color:var(--text-secondary);font-size:14px;margin-bottom:4px}.exam-timer .timer{color:var(--text-primary);font-size:24px;font-weight:700}.exam-timer .timer.warning{animation:pulse 1s infinite;color:var(--warning-color)}.mistakes-counter{text-align:center}.mistakes-counter .mistakes-label{color:var(--text-secondary);font-size:14px;margin-bottom:4px}.mistakes-counter .mistakes{color:var(--text-primary);font-size:20px;font-weight:700}.mistakes-counter .mistakes.danger{animation:pulse 1s infinite;color:var(--error-color)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.exam-container .question-container{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);margin-bottom:30px;padding:30px}@media(max-width:768px){.exam-container .question-container{padding:20px}}.exam-container .question-text{color:var(--text-primary);font-family:Framework-Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:16px;font-weight:400;line-height:1.6;margin-bottom:20px;text-transform:none}@media(max-width:768px){.exam-container .question-text{font-size:15px;margin-bottom:16px}}.question-image{margin-bottom:24px;text-align:center}.question-image img{border-radius:var(--border-radius);height:auto;max-width:100%}.answers-container{grid-gap:12px 14px;display:grid;gap:12px 14px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:24px}@media(max-width:520px){.answers-container{grid-template-columns:1fr}}.answer-button{align-items:flex-start;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;display:flex;font-size:16px;gap:12px;padding:16px 20px;text-align:left;transition:all .2s ease}.answer-button:hover:not(.correct):not(.incorrect){background-color:var(--bg-secondary);border-color:var(--primary-color)}.answer-button.selected{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.answer-button.correct{background-color:var(--success-color);border-color:var(--success-color);color:#fff}.answer-button.incorrect{background-color:var(--error-color);border-color:var(--error-color);color:#fff}@media(max-width:768px){.answer-button{font-size:14px;padding:14px 16px}}.answer-button__index{font-feature-settings:"tnum";color:var(--text-muted);flex-shrink:0;font-variant-numeric:tabular-nums;font-weight:700;line-height:inherit;min-width:1.35em}.answer-button__label{flex:1 1;line-height:inherit;min-width:0}.answer-button.correct .answer-button__index,.answer-button.incorrect .answer-button__index,.answer-button.selected .answer-button__index{color:inherit;opacity:.95}.answer-feedback{animation:fadeIn .3s ease;border-radius:var(--border-radius);font-size:16px;font-weight:600;margin-top:16px;padding:12px 16px;text-align:center}.answer-feedback.correct{background-color:var(--success-color);color:#fff}.answer-feedback.incorrect{background-color:var(--error-color);color:#fff}@media(max-width:768px){.answer-feedback{font-size:14px;margin-top:12px;padding:10px 14px}}.exam-navigation{align-items:center;display:flex;gap:16px;justify-content:space-between}@media(max-width:768px){.exam-navigation{flex-direction:column;gap:20px}}.nav-button{border:none;border-radius:var(--border-radius);cursor:pointer;font-size:16px;font-weight:600;min-width:120px;padding:14px 24px;transition:all .2s ease}.nav-button:first-child{background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.nav-button:first-child:hover:not(:disabled){background-color:var(--bg-tertiary)}.nav-button:last-child{background-color:var(--primary-color);color:#fff}.nav-button:last-child:hover:not(:disabled){background-color:var(--primary-hover)}.nav-button:disabled{cursor:not-allowed;opacity:.5}@media(max-width:768px){.nav-button{font-size:14px;padding:12px 20px;width:100%}}.question-indicators{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 auto 20px}@media(max-width:768px){.question-indicators{margin-bottom:15px}}.indicator{align-items:center;background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:600;height:40px;justify-content:center;transition:all .2s ease;width:40px}.indicator:hover{background-color:var(--bg-secondary);border-color:var(--primary-color)}.indicator.current{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.indicator.answered,.indicator.correct{background-color:var(--success-color);border-color:var(--success-color);color:#fff}.indicator.incorrect{background-color:var(--error-color);border-color:var(--error-color);color:#fff}@media(max-width:768px){.indicator{font-size:12px;height:35px;width:35px}}.exam-completed{padding:40px 20px;text-align:center}.exam-completed .result-title{color:var(--primary-color);font-size:32px;font-weight:700;margin-bottom:24px}@media(max-width:768px){.exam-completed .result-title{font-size:24px}}.final-score{color:var(--text-primary);font-size:24px;font-weight:600;margin-bottom:16px}@media(max-width:768px){.final-score{font-size:20px}}.score-percentage{color:var(--primary-color);font-size:48px;font-weight:700;margin-bottom:24px}@media(max-width:768px){.score-percentage{font-size:36px;margin-bottom:20px}}.mistakes-info{color:var(--error-color);font-size:20px;font-weight:600;margin-bottom:16px}@media(max-width:768px){.mistakes-info{font-size:18px;margin-bottom:14px}}.pass-status{color:var(--text-secondary);font-size:18px;line-height:1.5;margin-bottom:40px}@media(max-width:768px){.pass-status{font-size:16px;margin-bottom:30px}}.exam-actions{display:flex;gap:16px;justify-content:center}@media(max-width:768px){.exam-actions{align-items:center;flex-direction:column}}.home-button,.restart-button{border:none;border-radius:var(--border-radius);cursor:pointer;font-size:16px;font-weight:600;padding:14px 28px;transition:all .2s ease}@media(max-width:768px){.home-button,.restart-button{max-width:200px;width:100%}}.restart-button{background-color:var(--primary-color);color:#fff}.restart-button:hover{background-color:var(--primary-hover)}.home-button{background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.home-button:hover{background-color:var(--bg-tertiary)}.no-tickets{color:var(--text-secondary);font-size:18px;padding:40px 20px;text-align:center}.back-button{background-color:var(--primary-color);border:none;border-radius:var(--border-radius);color:#fff;cursor:pointer;display:block;font-size:16px;font-weight:600;margin:20px auto 0;padding:12px 24px;transition:all .2s ease}.back-button:hover{background-color:var(--primary-hover)}.question-card{margin-bottom:24px;padding:30px}@media(max-width:768px){.question-card{margin-bottom:20px;padding:20px}}.progress-page{flex:1 1;margin:0 auto;max-width:960px;min-height:0;padding:24px 24px 32px}.progress-header{margin-bottom:28px}.progress-headline{color:var(--text-primary);font-size:clamp(1.5rem,4vw,2rem);font-weight:800;letter-spacing:-.02em;margin:0 0 8px}.progress-sub{color:var(--text-secondary);font-size:1rem;margin:0}.progress-guest{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:48px 24px;text-align:center}.progress-lead{color:var(--text-primary);font-size:1.1rem;margin:0 auto 8px;max-width:420px}.progress-lead-secondary{color:var(--text-secondary);font-size:.95rem;margin:0 0 24px}.progress-cta{align-items:center;background:var(--primary-color);border-radius:var(--border-radius);color:var(--primary-foreground);display:inline-flex;font-weight:700;justify-content:center;padding:12px 28px;text-decoration:none;transition:var(--transition)}.progress-cta:hover{filter:brightness(1.06);transform:translateY(-1px)}.progress-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.progress-stat-card{background:linear-gradient(145deg,var(--bg-secondary),var(--bg-primary));border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:6px;padding:20px 20px 18px}.progress-stat-label{color:var(--text-muted);font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.progress-stat-value{color:var(--text-primary);font-size:2rem;font-weight:800;line-height:1.1}.progress-stat-meta{color:var(--text-secondary);font-size:.9rem}.progress-section-title{color:var(--text-primary);font-size:1.15rem;font-weight:700;margin:0 0 14px}.progress-empty{background:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:var(--border-radius);color:var(--text-secondary);margin:0;padding:20px}.progress-table-wrap{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow);overflow-x:auto}.progress-table{border-collapse:collapse;font-size:.9rem;width:100%}.progress-table td,.progress-table th{border-bottom:1px solid var(--border-color);padding:12px 14px;text-align:left}.progress-table th{background:var(--bg-secondary);color:var(--text-muted);font-family:Framework-Sans-Caps,Framework-Sans,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.progress-table tr:last-child td{border-bottom:none}.progress-table td{color:var(--text-primary)}@media(max-width:600px){.progress-table td,.progress-table th{font-size:.8rem;padding:10px}}:root{--primary-color:#000;--primary-hover:#262626;--primary-dark:#000;--primary-foreground:#fff;--secondary-color:#f9d930;--secondary-hover:#f4d025;--secondary-dark:#e6c61a;--success-color:#00d78f;--error-color:#ff5959;--warning-color:#f59e0b;--bg-primary:#fff;--bg-secondary:#f8fafc;--bg-tertiary:#f1f5f9;--text-primary:#1e293b;--text-secondary:#64748b;--text-muted:#94a3b8;--border-color:#e2e8f0;--border-radius:16px;--border-radius-lg:20px;--shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif}.dark-theme{--primary-color:#000;--primary-hover:#262626;--primary-dark:#000;--primary-foreground:#fff;--secondary-color:#ffe55c;--secondary-hover:#f9d930;--secondary-dark:#f4d025;--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#64748b;--border-color:#334155}*{box-sizing:border-box;margin:0;padding:0}#root,body,html{height:100%}body{background-color:#fff;background-color:var(--bg-primary);color:#1e293b;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-family:var(--font-family);line-height:1.6;transition:background-color .3s ease,color .3s ease}.App{animation:fadeIn .5s ease forwards;animation-delay:.3s;opacity:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.app-shell{align-items:stretch;box-sizing:border-box;display:flex;flex-direction:row;gap:0;height:100vh;height:100dvh;max-height:100dvh;min-height:100vh;min-height:100dvh;overflow:hidden;padding:0}.app-shell,body.dark-theme .app-shell{background:#fff;background:var(--bg-primary)}.app-shell-body{background:#f8fafc;background:var(--bg-secondary);display:flex;flex:1 1;height:100%;min-height:0;min-width:0;overflow:hidden}.app-shell-body,.app-shell-body--practice{border:none;border-radius:0;box-shadow:none}.app-shell-body--practice{background:#0000;overflow:visible}.app-shell-body--home,.app-shell-main{background:#fff;background:var(--bg-primary)}.app-shell-main{display:flex;flex:1 1;flex-direction:column;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;padding:0}.app-shell-body--practice .app-shell-main{background:#0000;min-height:0;overflow:hidden;padding:0}@media(max-width:768px){.app-shell{flex-direction:column;height:100dvh;max-height:100dvh;min-height:100dvh}.app-shell-body{flex:1 1;min-height:0}.app-shell-body--practice .app-shell-main,.app-shell-main{padding:0 0 72px}}.main-content{flex:1 1;margin:0 auto;max-width:1200px;padding:20px;width:100%}@media(max-width:768px){.main-content{padding:20px 20px 80px}}.container{margin:0 auto;max-width:1200px;padding:0 20px}@media(max-width:480px){.container{padding:0 15px}}.btn{align-items:center;border:none;border-radius:16px;border-radius:var(--border-radius);cursor:pointer;display:inline-flex;font-size:16px;font-weight:500;justify-content:center;padding:12px 24px;text-decoration:none;transition:all .2s ease}.btn:disabled{cursor:not-allowed;opacity:.5}.btn--primary{background-color:#000;background-color:var(--primary-color);color:#fff;color:var(--primary-foreground)}.btn--primary:hover:not(:disabled){background-color:#262626;background-color:var(--primary-hover)}.btn--secondary{background-color:#f8fafc;background-color:var(--bg-secondary);border:1px solid #e2e8f0;border:1px solid var(--border-color);color:#1e293b;color:var(--text-primary)}.btn--secondary:hover:not(:disabled){background-color:#f1f5f9;background-color:var(--bg-tertiary)}.btn--success{background-color:#00d78f;background-color:var(--success-color);color:#fff}.btn--error{background-color:#ff5959;background-color:var(--error-color);color:#fff}.card{padding:24px}@media(max-width:480px){.card{padding:16px}}.loading{align-items:center;color:#64748b;color:var(--text-secondary);display:flex;font-size:18px;justify-content:center;min-height:200px}.spinner{animation:spin 1s linear infinite;border:3px solid #e2e8f0;border-top:3px solid #000;border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error{align-items:center;color:#ff5959;color:var(--error-color);display:flex;font-size:18px;justify-content:center;min-height:200px;padding:20px;text-align:center}
/*# sourceMappingURL=main.4cf8f30c.css.map*/