:root{--bg-primary:#fff;--bg-secondary:#f5f6fa;--bg-navbar:#000;--bg-card:#fff;--text-primary:#14171f;--text-secondary:#4c5266;--text-muted:#8891a5;--accent:#e8b84b;--accent-rgb:232, 184, 75;--accent-hover:#d4a43a;--accent-text:#1a1d22;--success:#2e7d52;--success-rgb:46, 125, 82;--danger:#e24b4a;--danger-rgb:226, 75, 74;--border:#0f172a14;--shadow-sm:0 4px 20px #0f172a0f;--shadow-md:0 16px 40px #0f172a17;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--navbar-height:72px}html{scroll-behavior:smooth}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg-primary);color:var(--text-primary);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;padding:0}main{padding-top:var(--navbar-height)}.btn-primary,.btn-secondary{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;padding:14px 32px;font-size:15px;font-weight:600;transition:background .15s,border-color .15s,color .15s,transform .1s;display:inline-flex}.btn-primary{background:var(--accent);color:var(--accent-text);border:2px solid var(--accent)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-1px)}.btn-secondary{color:var(--text-primary);border:2px solid var(--border);background:0 0}.btn-secondary:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.btn-lg{padding:16px 40px;font-size:16px}.route-loading{min-height:60vh;color:var(--text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.auth-modal-overlay{-webkit-backdrop-filter:blur(4px);z-index:300;background:#0009;justify-content:center;align-items:center;padding:20px;animation:.15s authFadeIn;display:flex;position:fixed;inset:0}.auth-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:400px;padding:36px 32px 32px;animation:.2s authModalPop;position:relative;box-shadow:0 20px 60px #00000073}.auth-modal.rtl{text-align:right}.auth-modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:22px;line-height:1;position:absolute;top:14px;right:16px}.auth-modal.rtl .auth-modal-close{left:16px;right:auto}.auth-modal-close:hover{color:var(--text-primary)}.auth-modal-header{text-align:center;margin-bottom:28px}.auth-modal-logo{background:var(--accent);border-radius:var(--radius-md);width:52px;height:52px;box-shadow:0 0 0 6px rgba(var(--accent-rgb), .12);justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.auth-modal-title{color:var(--text-primary);margin:0 0 8px;font-size:21px;font-weight:600}.auth-modal-subtitle{color:var(--text-secondary);margin:0;max-width:300px;margin-inline:auto;font-size:14px;line-height:1.5}.auth-modal-subtitle strong{color:var(--text-primary)}.auth-modal-form{flex-direction:column;display:flex}.auth-modal-label{color:var(--text-secondary);margin-bottom:6px;font-size:12px;font-weight:500}.auth-modal-input{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-secondary);width:100%;height:46px;color:var(--text-primary);box-sizing:border-box;margin-bottom:18px;padding:0 14px;font-size:15px;transition:border-color .15s}.auth-modal-code-input{letter-spacing:6px;text-align:center;font-size:19px;font-weight:600}.auth-modal-input:focus{border-color:var(--accent);outline:none}.auth-modal-submit{background:var(--accent);width:100%;height:46px;color:var(--accent-text);border-radius:var(--radius-sm);cursor:pointer;border:none;font-size:15px;font-weight:600;transition:opacity .15s,transform .1s}.auth-modal-submit:hover:not(:disabled){opacity:.88}.auth-modal-submit:active:not(:disabled){transform:scale(.98)}.auth-modal-submit:disabled{opacity:.6;cursor:not-allowed}.auth-modal-back{width:100%;color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin-top:12px;padding:6px 0;font-size:13px}.auth-modal-back:hover{color:var(--text-secondary)}.auth-modal-error{color:var(--danger);margin:-8px 0 16px;font-size:13px}@keyframes authFadeIn{0%{opacity:0}to{opacity:1}}@keyframes authModalPop{0%{opacity:0;transform:scale(.94)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (width<=600px){.auth-modal{padding:30px 22px 26px}}.acm-overlay{-webkit-backdrop-filter:blur(4px);z-index:300;background:#0009;justify-content:center;align-items:center;padding:20px;animation:.15s acmFadeIn;display:flex;position:fixed;inset:0}.acm-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:760px;height:520px;max-height:82vh;animation:.2s acmModalPop;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 60px #00000073}.acm-close{color:var(--text-muted);cursor:pointer;z-index:1;background:0 0;border:none;padding:4px;font-size:22px;line-height:1;position:absolute;top:12px;right:14px}.acm-modal.rtl .acm-close{left:14px;right:auto}.acm-close:hover{color:var(--text-primary)}.acm-rail{background:var(--bg-secondary);border-inline-end:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:4px;width:84px;padding:20px 8px;display:flex;overflow-y:auto}.acm-rail-item{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:5px;padding:10px 4px;font-size:11px;font-weight:500;transition:color .15s,background .15s;display:flex}.acm-rail-item:hover{color:var(--text-primary);background:rgba(var(--accent-rgb), .08)}.acm-rail-item.active{color:var(--accent);background:rgba(var(--accent-rgb), .14)}.acm-content{flex:1;min-width:0;padding:24px;overflow-y:auto}.acm-state{color:var(--text-muted);text-align:center;padding:48px 0;font-size:14px}.acm-section-header{align-items:baseline;gap:8px;margin-bottom:16px;display:flex}.acm-section-title{color:var(--text-primary);margin:0;font-size:15px;font-weight:700}.acm-section-count{color:var(--text-muted);background:var(--bg-secondary);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600}.acm-empty{color:var(--text-muted);flex-direction:column;align-items:center;gap:12px;padding:48px 0;display:flex}.acm-empty svg{opacity:.4;width:32px;height:32px}.acm-empty .acm-state{padding:0}.acm-bookmark-row{border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;padding:10px 2px;animation:.25s both acmFadeIn;display:flex}.acm-bookmark-row:last-child{border-bottom:none}.acm-bookmark-thumb{border-radius:var(--radius-sm);object-fit:contain;background:var(--bg-secondary);border:1px solid var(--border);flex-shrink:0;width:44px;height:44px}.acm-bookmark-thumb-placeholder{color:var(--text-muted);justify-content:center;align-items:center;display:flex}.acm-bookmark-main{text-align:start;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;gap:3px;min-width:0;padding:2px 0;display:flex}.acm-bookmark-text{color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}.acm-bookmark-main:hover .acm-bookmark-text{color:var(--accent)}.acm-bookmark-topic{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:600}.acm-bookmark-remove{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--accent);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s,background .15s;display:flex}.acm-bookmark-remove:hover{color:var(--danger);background:rgba(var(--danger-rgb), .1)}.acm-history-item{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);text-align:start;cursor:pointer;width:100%;margin-bottom:8px;padding:10px 14px;transition:border-color .15s,transform .15s;animation:.25s both acmFadeIn;display:block}.acm-history-item:last-child{margin-bottom:0}.acm-history-item:hover{border-color:var(--accent);transform:translateY(-1px)}.acm-history-item-top{justify-content:space-between;align-items:center;display:flex}.acm-history-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:99px;align-items:center;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.acm-history-badge.passed{background:rgba(var(--success-rgb), .15);color:var(--success)}.acm-history-badge.failed{background:rgba(var(--danger-rgb), .15);color:var(--danger)}.acm-history-score{color:var(--text-primary);font-size:14px;font-weight:600}.acm-history-date{color:var(--text-muted);margin:4px 0 0;font-size:12px}.acm-profile{flex-direction:column;align-items:flex-start;gap:16px;display:flex}.acm-modal.rtl .acm-profile{align-items:flex-end}.acm-profile-email{color:var(--text-secondary);font-size:14px}.acm-signout-btn{border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:8px 16px;font-size:13px;font-weight:600;transition:border-color .15s,color .15s}.acm-signout-btn:hover{border-color:var(--danger);color:var(--danger)}@keyframes acmFadeIn{0%{opacity:0}to{opacity:1}}@keyframes acmModalPop{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (width<=560px){.acm-modal{flex-direction:column;height:100%;max-height:90vh}.acm-rail{border-inline-end:none;border-bottom:1px solid var(--border);flex-direction:row;justify-content:center;gap:8px;width:100%;padding:14px 12px}.acm-rail-item{flex-direction:row;gap:6px;padding:8px 14px}}@media (prefers-reduced-motion:reduce){.acm-overlay,.acm-modal,.acm-bookmark-row,.acm-history-item{animation:none}}.navbar{height:var(--navbar-height);z-index:10;background:#000;justify-content:space-between;align-items:center;padding:0 2rem;display:flex;position:fixed;top:0;left:0;right:0}.navbar-left{align-items:center;gap:2.75rem;min-width:0;display:flex}.navbar-logo{flex-shrink:0;align-items:center;gap:10px;display:flex}.logo-icon{background:var(--accent);border-radius:var(--radius-sm);justify-content:center;align-items:center;width:40px;height:40px;display:flex}.logo-text{color:#fff;font-size:16px;font-weight:600}.navbar-links{align-items:center;gap:2rem;display:flex}.navbar-link{color:#ffffffbf;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-bottom:2px solid #0000;padding:4px 0;font-size:.875rem;font-weight:600;transition:color .15s,border-color .15s}.navbar-link:hover{color:#fff;border-bottom-color:var(--accent)}.navbar-right{align-items:center;gap:12px;display:flex}.nav-lang-dropdown{position:relative}.nav-lang-trigger{border-radius:var(--radius-sm);color:#fff;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #ffffff2e;align-items:center;gap:6px;height:36px;padding:0 12px;font-size:13px;transition:background .15s;display:flex}.nav-lang-trigger:hover{background:#ffffff14}.nav-lang-menu{border-radius:var(--radius-md);z-index:200;background:#16181d;border:1px solid #ffffff1f;min-width:160px;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 8px 24px #00000073}.nav-lang-option{color:#fff;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:10px 14px;font-size:13px;transition:background .12s;display:flex}.nav-lang-option:hover{background:#ffffff14}.nav-lang-option.active{color:var(--accent);font-weight:500}.lang-code{color:#ffffff8c;text-transform:uppercase;letter-spacing:.5px;min-width:24px;font-size:11px;font-weight:500}.auth-placeholder{border-radius:var(--radius-sm);background:#ffffff14;width:75px;height:31px}.sign-in-btn{background:var(--accent);color:var(--accent-text);border-radius:var(--radius-sm);cursor:pointer;border:none;padding:8px 16px;font-size:.875rem;font-weight:700;transition:opacity .15s;animation:.4s fadeScale}.sign-in-btn:hover{opacity:.85}.account-avatar-btn{background:var(--accent);width:34px;height:34px;color:var(--accent-text);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;transition:opacity .15s;animation:.4s fadeScale;display:flex}.account-avatar-btn:hover{opacity:.85}.navbar-admin-link{border:1px solid rgba(var(--accent-rgb), .6);color:var(--accent);border-radius:var(--radius-sm);padding:7px 14px;font-size:.875rem;font-weight:700;transition:background .15s,color .15s;animation:.4s fadeScale}.navbar-admin-link:hover{background:var(--accent);color:var(--accent-text)}@keyframes fadeScale{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.navbar-toggle{flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;display:none}.navbar-toggle span{background:#fff;border-radius:2px;width:100%;height:2px;transition:transform .2s,opacity .2s;display:block}.navbar-toggle.open span:first-child{transform:translateY(7px)rotate(45deg)}.navbar-toggle.open span:nth-child(2){opacity:0}.navbar-toggle.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.navbar-mobile-menu{display:none}@media (width<=900px){.navbar-links,.navbar-admin-link{display:none}.navbar-toggle{display:flex}.navbar-mobile-menu{background:#000;border-top:1px solid #ffffff1a;flex-direction:column;padding:.5rem 1.5rem 1rem;display:flex;position:absolute;top:100%;left:0;right:0}.navbar-mobile-menu.navbar-links--rtl{align-items:flex-end}.navbar-mobile-link{color:#ffffffd9;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #ffffff14;width:100%;padding:.85rem 0;font-size:.95rem;font-weight:600}.navbar-mobile-menu.navbar-links--rtl .navbar-mobile-link{text-align:right}}@media (width<=600px){.navbar{padding:0 1rem}.nav-lang-trigger{padding:0 8px}.nav-lang-trigger .lang-label,.nav-lang-trigger svg{display:none}}.nf-page{height:calc(100vh - var(--navbar-height));text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:2rem;display:flex}.nf-sign{background:var(--accent);border:5px solid var(--accent-text);width:110px;height:110px;box-shadow:0 0 0 5px var(--accent);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;margin-bottom:1rem;animation:2.5s ease-in-out infinite nf-wobble;display:flex}.nf-sign-top{letter-spacing:1px;color:var(--accent-text);text-transform:uppercase;opacity:.8;margin-bottom:2px;font-size:11px;font-weight:700;line-height:1}.nf-sign-code{color:var(--accent-text);font-size:2.2rem;font-weight:700;line-height:1}@keyframes nf-wobble{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}.nf-title{color:var(--text-primary);font-size:2rem;font-weight:500}.nf-subtitle{color:var(--text-secondary);max-width:320px;font-size:1rem;line-height:1.6}.nf-btn{color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:6px;margin-top:.5rem;padding:8px 16px;font-size:13px;font-weight:500;transition:border-color .15s,color .15s;display:inline-flex}.nf-btn:hover{border-color:var(--accent);color:var(--accent)}
