@font-face{font-family:Lalezar;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/lalezar/lalezar-400-arabic.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Lalezar;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/lalezar/lalezar-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Tajawal;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/tajawal/tajawal-400-arabic.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Tajawal;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/tajawal/tajawal-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Tajawal;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/tajawal/tajawal-500-arabic.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Tajawal;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/tajawal/tajawal-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Tajawal;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/tajawal/tajawal-700-arabic.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Tajawal;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/tajawal/tajawal-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Tajawal;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/tajawal/tajawal-800-arabic.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Tajawal;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/tajawal/tajawal-800-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-bg: #fafaf8;--color-surface: #ffffff;--color-surface-2: #f1f1f0;--color-border: #e4e3e1;--color-border-strong: #cfcdca;--color-ink: #1f1d1d;--color-muted: #5f5c5c;--color-primary: #d90016;--color-primary-hover: #b8001a;--color-primary-soft: #fdedef;--color-on-primary: #ffffff;--color-secondary: #2a2a30;--color-secondary-soft: #ececef;--color-on-secondary: #ffffff;--color-accent: #f5b800;--color-accent-soft: #fff4cc;--color-on-accent: #1f1d1d;--color-success: #1e8449;--color-success-strong: #17683a;--color-success-soft: #e6f4ec;--color-danger: #b3141f;--color-danger-soft: #fce9ea;--font-display: "Lalezar", system-ui, sans-serif;--font-body: "Tajawal", system-ui, sans-serif;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 20px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgb(31 29 29 / 6%), 0 1px 1px rgb(31 29 29 / 4%);--shadow-md: 0 4px 14px rgb(31 29 29 / 8%);--shadow-lg: 0 14px 36px rgb(31 29 29 / 14%);--ring: 0 0 0 3px rgb(217 0 22 / 22%);--ease: cubic-bezier(.2, .7, .2, 1);--fast: .14s}:dir(rtl){--icon-arrow-flip: scaleX(-1)}*,*:before,*:after{box-sizing:border-box}html{color-scheme:light;-webkit-text-size-adjust:100%;overscroll-behavior:none;background-color:var(--color-bg)}body{margin:0;overscroll-behavior:none;min-height:100vh;background-color:var(--color-bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3E%3Cpath d='M15.0 7.0 L17.2 12.9 L23.6 13.2 L18.6 17.2 L20.3 23.3 L15.0 19.8 L9.7 23.3 L11.4 17.2 L6.4 13.2 L12.8 12.9z M45.0 37.0 L47.2 42.9 L53.6 43.2 L48.6 47.2 L50.3 53.3 L45.0 49.8 L39.7 53.3 L41.4 47.2 L36.4 43.2 L42.8 42.9z' fill='none' stroke='%231f1d1d' stroke-opacity='.05' stroke-linejoin='round'/%3E%3C/svg%3E");color:var(--color-ink);font-family:var(--font-body);font-size:1rem;line-height:1.8;letter-spacing:0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{margin:0;font-family:var(--font-display);font-weight:400;line-height:1.3}h1{font-size:clamp(1.75rem,1.2rem + 2vw,2.5rem)}h2{font-size:clamp(1.375rem,1.1rem + 1vw,1.75rem)}h3{font-size:1.25rem}p{margin:0}a{color:var(--color-primary)}button,input,select,textarea{font:inherit}::selection{background:var(--color-accent-soft)}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.main{padding:20px 16px 56px}.page{width:100%;max-width:460px;margin-inline:auto}.page--start{margin-inline:0}.page--wide{max-width:720px}.page--xl{max-width:1040px}.stack{display:grid;gap:14px}.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.muted{color:var(--color-muted)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px}@media(max-width:520px){.card{padding:18px}}.sticky-dock{position:sticky;bottom:0;z-index:5;padding-block:8px;background:var(--color-bg);box-shadow:0 -10px 12px -10px #00000038}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 20px;border:1px solid transparent;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer;transition:background var(--fast) var(--ease),border-color var(--fast) var(--ease),transform var(--fast) var(--ease),box-shadow var(--fast) var(--ease)}.btn:hover:not(:disabled){background:var(--color-primary-hover)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--secondary{background:var(--color-secondary);color:var(--color-on-secondary)}.btn--secondary:hover:not(:disabled){background:#1a1a1f}.btn--outline{background:var(--color-surface);color:var(--color-ink);border-color:var(--color-border-strong)}.btn--outline:hover:not(:disabled){background:var(--color-surface-2)}.btn--danger{background:var(--color-danger);color:#fff}.btn--danger:hover:not(:disabled){background:#951018}.btn--ghost-danger{background:transparent;color:var(--color-danger);border-color:transparent}.btn--ghost-danger:hover:not(:disabled){background:var(--color-danger-soft)}.btn--sm{min-height:36px;padding:4px 12px;font-size:.875rem;border-radius:var(--radius-sm)}.btn--lg{min-height:54px;padding:10px 28px;font-size:1.125rem;border-radius:var(--radius-md)}.btn--block{display:flex;width:100%}.btn--3d{box-shadow:0 4px 0 var(--color-primary-hover)}.btn--3d:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--color-primary-hover)}.btn--icon{min-width:36px;padding-inline:8px}.field{display:grid;gap:6px}.field label{font-size:.9375rem;font-weight:500}.field input,.field select,.field textarea{width:100%;min-height:46px;padding:9px 14px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);transition:border-color var(--fast) var(--ease),box-shadow var(--fast) var(--ease)}.field input::placeholder,.field select::placeholder,.field textarea::placeholder{color:#8a8686}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--color-muted)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--ring)}.field input.ng-touched.ng-invalid,.field select.ng-touched.ng-invalid,.field textarea.ng-touched.ng-invalid{border-color:var(--color-danger)}.field textarea{resize:vertical}.field__hint{color:var(--color-muted);font-size:.8125rem}.field__error{color:var(--color-danger);font-size:.8125rem;font-weight:500}.check{display:flex;align-items:center;gap:10px;cursor:pointer}.check input{width:20px;height:20px;accent-color:var(--color-primary)}.alert{padding:12px 16px;border:1px solid;border-inline-start-width:4px;border-radius:var(--radius-sm)}.alert--error{color:var(--color-danger);border-color:var(--color-danger);background:var(--color-danger-soft)}.alert--success{color:var(--color-success-strong);border-color:var(--color-success);background:var(--color-success-soft)}.alert--info{color:var(--color-ink);border-color:var(--color-accent);background:var(--color-accent-soft)}.alert p+p,.alert p+.row{margin-top:8px}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 12px;border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface-2);color:var(--color-ink);font-size:.8125rem;font-weight:700;white-space:nowrap}.badge[data-difficulty=EASY],.badge[data-state=on]{color:var(--color-success-strong);border-color:var(--color-success);background:var(--color-success-soft)}.badge[data-difficulty=MEDIUM]{color:var(--color-ink);border-color:var(--color-accent);background:var(--color-accent-soft)}.badge[data-difficulty=HARD]{color:var(--color-danger);border-color:var(--color-danger);background:var(--color-danger-soft)}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px 14px;border-bottom:1px solid var(--color-border);text-align:start;vertical-align:middle}.table th{color:var(--color-muted);font-size:.8125rem;font-weight:700;white-space:nowrap}.table tbody tr{transition:background var(--fast) var(--ease)}.table tbody tr:hover{background:var(--color-surface-2)}.table tbody tr:last-child td{border-bottom:0}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@keyframes pop-in{0%{opacity:0;transform:translateY(8px) scale(.98)}}.pop-in{animation:pop-in .32s var(--ease) both}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px 16px;flex-wrap:wrap;margin-bottom:20px}.page-head p{margin-top:2px}.back{display:inline-flex;align-items:center;gap:6px;margin-bottom:14px;color:var(--color-muted);font-weight:500;text-decoration:none}.back lib-icon{transform:scaleX(-1)}.back:hover{color:var(--color-ink)}.skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg,var(--color-surface-2),var(--color-border),var(--color-surface-2));background-size:200% 100%;animation:shimmer 1.2s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}
