*{margin:0;padding:0;box-sizing:border-box}:root{--brand: #ea580c;--brand2: #c2410c;--brand-soft: #ffedd5;--page: #ffffff;--card: #ffffff;--field: #fafafa;--ink: #1c1917;--muted: #78716c;--line: #e7e5e4;--topbar-a: #7c2d12;--topbar-b: #ea580c;--topbar-text: #ffedd5;--green: #059669;--green-soft: #d1fae5;--red: #dc2626;--red-soft: #fee2e2;--amber: #d97706;--amber-soft: #fef3c7;--gold: #fde68a;--radius: 14px;--shadow: 0 1px 3px rgba(28, 25, 23, .07), 0 4px 16px rgba(28, 25, 23, .05)}[data-theme=dark]{--brand: #f97316;--brand2: #fb923c;--brand-soft: #3a1e08;--page: #000000;--card: #141414;--field: #1d1d1d;--ink: #f5f5f4;--muted: #a8a29e;--line: #2a2a2a;--topbar-a: #0d0d0d;--topbar-b: #1a1a1a;--topbar-text: #fdba74;--green: #34d399;--green-soft: #0b2e21;--red: #f87171;--red-soft: #3b1212;--amber: #fbbf24;--amber-soft: #3a2a08;--gold: #fbbf24;--shadow: 0 1px 3px rgba(0, 0, 0, .6), 0 4px 16px rgba(0, 0, 0, .4)}html,body{height:100%}body{font-family:Noto Kufi Arabic,Tahoma,sans-serif;background:var(--page);color:var(--ink);direction:rtl;transition:background .25s,color .25s}button,input,textarea,select{font-family:inherit;font-size:1rem}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{background:linear-gradient(135deg,var(--topbar-a),var(--topbar-b));color:#fff;padding:.65rem 1rem;display:flex;align-items:center;gap:.75rem;position:sticky;top:0;z-index:50;box-shadow:var(--shadow)}.topbar .logo{font-weight:800;font-size:1.05rem;display:flex;align-items:center;gap:.4rem;white-space:nowrap}.topbar nav{display:flex;gap:.25rem;flex:1;overflow-x:auto}.topbar nav button{background:transparent;border:0;color:var(--topbar-text);padding:.45rem .8rem;border-radius:999px;cursor:pointer;font-weight:600;font-size:.88rem;white-space:nowrap;transition:background .15s}.topbar nav button:hover{background:#ffffff1f}.topbar nav button.active{background:#fff;color:var(--brand2)}[data-theme=dark] .topbar nav button.active{background:var(--brand);color:#000}.topbar .user-chip{display:flex;align-items:center;gap:.5rem;background:#ffffff24;border-radius:999px;padding:.3rem .7rem;font-size:.82rem;white-space:nowrap}.topbar .points{font-weight:800;color:var(--gold)}.topbar .logout{background:transparent;border:0;color:#fca5a5;cursor:pointer;font-size:.82rem;font-weight:700}.theme-toggle{background:#ffffff24;border:0;color:#fff;width:34px;height:34px;border-radius:50%;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.theme-toggle:hover{background:#ffffff40}.theme-toggle.floating{position:fixed;top:1rem;left:1rem;z-index:60;background:#00000040}.main{flex:1;width:100%;max-width:1050px;margin:0 auto;padding:1.25rem 1rem 3rem}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem}.card+.card{margin-top:1rem}h1.page-title{font-size:1.35rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.muted{color:var(--muted);font-size:.88rem}.grid{display:grid;gap:1rem}@media (min-width: 720px){.grid.cols-2{grid-template-columns:1fr 1fr}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--brand);color:#fff;border:0;padding:.6rem 1.3rem;border-radius:10px;cursor:pointer;font-weight:700;font-size:.92rem;transition:background .15s,transform .05s}.btn:hover{background:var(--brand2)}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.ghost{background:var(--brand-soft);color:var(--brand2)}[data-theme=dark] .btn.ghost{color:var(--brand2)}.btn.green{background:var(--green);color:#fff}[data-theme=dark] .btn.green{color:#06281c}.btn.red{background:var(--red);color:#fff}[data-theme=dark] .btn.red{color:#2b0808}.btn.sm{padding:.35rem .8rem;font-size:.8rem}.input,textarea.input,select.input{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:.6rem .8rem;background:var(--field);color:var(--ink);transition:border-color .15s,background .25s}.input:focus{outline:none;border-color:var(--brand)}.input::placeholder{color:var(--muted)}label.field{display:block;margin-bottom:.85rem;font-size:.88rem;font-weight:600}label.field .input{margin-top:.35rem;font-weight:400}.alert{padding:.7rem 1rem;border-radius:10px;font-size:.88rem;margin:.6rem 0}.alert.error{background:var(--red-soft);color:var(--red)}.alert.success{background:var(--green-soft);color:var(--green)}.alert.warn{background:var(--amber-soft);color:var(--amber)}.badge{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.72rem;font-weight:700}.badge.blue{background:var(--brand-soft);color:var(--brand2)}.badge.green{background:var(--green-soft);color:var(--green)}.badge.amber{background:var(--amber-soft);color:var(--amber)}.badge.red{background:var(--red-soft);color:var(--red)}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#431407,#9a3412 45%,#ea580c);padding:1rem}[data-theme=dark] .auth-wrap{background:linear-gradient(160deg,#000,#170b03 55%,#3a1e08)}.auth-card{width:100%;max-width:420px;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:20px;padding:2rem;box-shadow:0 25px 60px #00000059}.auth-card .brand{text-align:center;margin-bottom:1.4rem}.auth-card .brand .icon{font-size:3rem}.auth-card .brand h1{font-size:1.4rem;margin-top:.3rem}.auth-card .brand p{color:var(--muted);font-size:.85rem;margin-top:.25rem}.auth-tabs{display:flex;background:var(--field);border:1px solid var(--line);border-radius:10px;padding:.25rem;margin-bottom:1.2rem}.auth-tabs button{flex:1;border:0;background:transparent;padding:.5rem;border-radius:8px;cursor:pointer;font-weight:700;color:var(--muted)}.auth-tabs button.active{background:var(--brand);color:#fff;box-shadow:var(--shadow)}.demo-hint{margin-top:1rem;background:var(--field);border:1px solid var(--line);border-radius:10px;padding:.7rem .9rem;font-size:.76rem;color:var(--muted);line-height:1.9}.unit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:1rem}@media (min-width: 720px){.unit-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}}.unit-box{background:var(--card);border:1px solid var(--line);border-radius:22px;overflow:hidden;cursor:pointer;box-shadow:var(--shadow);transition:transform .15s,border-color .15s,box-shadow .15s}.unit-box:hover{transform:translateY(-4px);border-color:var(--brand);box-shadow:0 8px 24px #ea580c2e}.unit-box .cover{height:110px;position:relative;overflow:hidden}.unit-box .cover img{width:100%;height:100%;object-fit:cover;display:block}.unit-box .cover-ph{width:100%;height:100%;background:linear-gradient(135deg,var(--topbar-a),var(--brand));display:flex;align-items:center;justify-content:center;position:relative}.unit-box .cover-ph .big{font-size:2.6rem;opacity:.9}.unit-box .cover-ph .n{position:absolute;top:.6rem;right:.6rem;background:#ffffff38;color:#fff;width:30px;height:30px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem}.unit-box .body{padding:.85rem .95rem 1rem}.unit-box .body h3{font-size:.95rem;line-height:1.7}.unit-box .body p{font-size:.76rem;color:var(--muted);margin-top:.3rem;line-height:1.8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.unit-box .meta{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.6rem}.unit-hero{background:var(--card);border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow);margin:.9rem 0 1.1rem}.unit-hero img{width:100%;height:160px;object-fit:cover;display:block}.unit-hero .txt{padding:1rem 1.2rem 1.1rem}.unit-hero h1{font-size:1.2rem;margin-bottom:.3rem}.unit-hero p{font-size:.85rem;color:var(--muted);margin-bottom:.6rem;line-height:1.9}.lesson-row{display:flex;align-items:center;gap:.9rem;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:1rem 1.1rem;margin-bottom:.65rem;cursor:pointer;transition:border-color .15s,transform .1s}.lesson-row:hover{border-color:var(--brand);transform:translate(-3px)}.lesson-row .idx{background:var(--brand-soft);color:var(--brand2);width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.05rem;font-weight:800;flex-shrink:0}.lesson-row h3{font-size:.95rem}.lesson-row p{font-size:.78rem;color:var(--muted);margin-top:.15rem}.lesson-row .go{color:var(--muted);font-size:1.4rem;font-weight:800}.lesson-row.locked{opacity:.7;background:var(--field)}.lesson-row.locked .idx{background:var(--line);color:var(--muted)}.lesson-row.locked:hover{border-color:var(--amber)}.unit{margin-bottom:1.2rem}.unit-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.6rem;font-size:1.05rem;font-weight:800}.unit-head .num{background:var(--brand);color:#fff;width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:.85rem}.lesson-item{display:flex;align-items:center;gap:.8rem;background:var(--card);border-radius:12px;box-shadow:var(--shadow);padding:.85rem 1rem;margin-bottom:.55rem;cursor:pointer;border:1px solid var(--line);transition:border-color .15s,transform .1s}.lesson-item:hover{border-color:var(--brand);transform:translate(-3px)}.lesson-item .play{background:var(--brand-soft);color:var(--brand2);width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;flex-shrink:0}.lesson-item h3{font-size:.95rem}.lesson-item p{font-size:.78rem;color:var(--muted);margin-top:.15rem}.video-frame{position:relative;padding-top:56.25%;border-radius:var(--radius);overflow:hidden;background:#000;box-shadow:var(--shadow)}.video-frame iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.video-watermark{position:absolute;z-index:5;pointer-events:none;color:#ffffff8c;font-size:.72rem;font-weight:600;background:#0000002e;padding:.15rem .55rem;border-radius:6px;direction:ltr;white-space:nowrap;max-width:90%;overflow:hidden;text-overflow:ellipsis;transition:top 1.2s ease,right 1.2s ease;text-shadow:0 1px 2px rgba(0,0,0,.5)}.book-row{display:flex;align-items:center;gap:.8rem;background:var(--amber-soft);border-radius:12px;padding:.9rem 1rem;margin-top:1rem}.book-row .ic{font-size:1.6rem}.book-row a{color:var(--amber);font-weight:800;text-decoration:none}.question-block{border:1.5px solid var(--line);border-radius:12px;padding:1rem;margin-top:.8rem}.question-block .q-text{font-weight:700;margin-bottom:.7rem}.option-btn{display:block;width:100%;text-align:right;background:var(--field);border:1.5px solid var(--line);border-radius:10px;padding:.6rem .9rem;margin-bottom:.45rem;cursor:pointer;color:var(--ink);transition:all .12s}.option-btn:hover:not(:disabled){border-color:var(--brand);background:var(--brand-soft)}.option-btn.correct{background:var(--green-soft);border-color:var(--green);color:var(--green);font-weight:700}.option-btn.wrong{background:var(--red-soft);border-color:var(--red);color:var(--red)}.option-btn:disabled{cursor:default}.comment{border-bottom:1px solid var(--line);padding:.8rem 0}.comment:last-child{border-bottom:0}.comment .head{display:flex;align-items:center;gap:.5rem;margin-bottom:.3rem}.comment .avatar{width:34px;height:34px;border-radius:50%;background:var(--brand-soft);color:var(--brand2);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.85rem;flex-shrink:0}.comment .name{font-weight:700;font-size:.88rem}.comment .time{font-size:.7rem;color:var(--muted)}.comment .body{font-size:.9rem;line-height:1.9}.chat-box{display:flex;flex-direction:column;height:65vh}.chat-msgs{flex:1;overflow-y:auto;padding:.5rem .25rem;display:flex;flex-direction:column;gap:.5rem}.msg{max-width:78%;padding:.55rem .85rem;border-radius:14px;font-size:.9rem;line-height:1.8}.msg .who{font-size:.7rem;font-weight:800;color:var(--brand2);margin-bottom:.1rem}.msg .when{font-size:.62rem;color:var(--muted);margin-top:.15rem;text-align:left}.msg.mine{align-self:flex-start;background:var(--brand);color:#fff;border-bottom-left-radius:4px}.msg.mine .who,.msg.mine .when{color:#ffedd5}.msg.theirs{align-self:flex-end;background:var(--field);border:1px solid var(--line);box-shadow:var(--shadow);border-bottom-right-radius:4px}.chat-input{display:flex;gap:.5rem;padding-top:.8rem;border-top:1px solid var(--line)}.chat-input .input{flex:1}.tab-row{display:flex;gap:.4rem;margin-bottom:1rem;flex-wrap:wrap}.tab-row button{border:1.5px solid var(--line);background:var(--card);border-radius:999px;padding:.45rem 1rem;cursor:pointer;font-weight:700;font-size:.85rem;color:var(--muted)}.tab-row button.active{background:var(--brand);border-color:var(--brand);color:#fff}.timer-bar{height:8px;background:var(--line);border-radius:999px;overflow:hidden;margin:.6rem 0 1rem}.timer-bar .fill{height:100%;background:linear-gradient(90deg,var(--green),var(--amber),var(--red));transition:width 1s linear}.lb-row{display:flex;align-items:center;gap:.8rem;padding:.65rem .5rem;border-bottom:1px solid var(--line)}.lb-row:last-child{border-bottom:0}.lb-row .rank{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:800;background:var(--field);border:1px solid var(--line);flex-shrink:0}.lb-row.top1 .rank{background:var(--amber-soft)}.lb-row.top2 .rank{background:var(--line)}.lb-row.top3 .rank{background:var(--brand-soft)}.lb-row .nm{flex:1;font-weight:600;font-size:.92rem}.lb-row .pts{font-weight:800;color:var(--brand2)}.lb-row.me{background:var(--brand-soft);border-radius:10px}.prize-card{display:flex;gap:.8rem;align-items:center;border:1.5px solid var(--line);border-radius:12px;padding:.9rem 1rem;margin-bottom:.6rem}.prize-card .ic{font-size:2rem}.prize-card h3{font-size:.95rem}.prize-card p{font-size:.78rem;color:var(--muted);margin-top:.1rem}.prize-card .req{margin-right:auto;text-align:center}.duel-vs{display:flex;align-items:center;justify-content:center;gap:1.2rem;margin:1rem 0}.duel-vs .p{text-align:center}.duel-vs .p .av{width:64px;height:64px;border-radius:50%;background:var(--brand-soft);color:var(--brand2);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;margin:0 auto .35rem}.duel-vs .vs{font-size:1.6rem;font-weight:800;color:var(--red)}.duel-score{font-weight:800;color:var(--brand2);font-size:1.1rem}.pulse{animation:pulse 1.2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}.big-result{text-align:center;padding:1.5rem 0}.big-result .emoji{font-size:3.4rem}.big-result h2{margin:.6rem 0 .3rem}.table{width:100%;border-collapse:collapse;font-size:.85rem}.table th{text-align:right;color:var(--muted);font-size:.74rem;padding:.5rem;border-bottom:2px solid var(--line)}.table td{padding:.55rem .5rem;border-bottom:1px solid var(--line)}.chip-word{display:inline-flex;align-items:center;gap:.35rem;background:var(--red-soft);color:var(--red);border-radius:999px;padding:.2rem .7rem;font-size:.78rem;font-weight:700;margin:0 0 .4rem .4rem}.chip-word button{border:0;background:transparent;color:var(--red);cursor:pointer;font-weight:800}.empty{text-align:center;color:var(--muted);padding:2rem 0;font-size:.9rem}.tip-card{display:flex;align-items:flex-start;gap:.9rem;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:1rem 1.1rem;margin-bottom:.7rem}.tip-card .tip-icon{background:var(--brand-soft);width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0}.tip-card h3{font-size:.95rem;margin-bottom:.25rem;color:var(--brand2)}.tip-card p{font-size:.88rem;line-height:2}.tip-card .time{font-size:.68rem;color:var(--muted);display:block;margin-top:.4rem}.answer-box{background:var(--green-soft);border-radius:12px;padding:.7rem .9rem;margin-top:.7rem;font-size:.88rem}.answer-box b{color:var(--green);font-size:.8rem}.answer-box p{margin-top:.3rem;line-height:1.9}.preview-banner{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;background:var(--brand-soft);border:1.5px solid var(--brand);border-radius:var(--radius);padding:1rem 1.2rem;margin-bottom:1.2rem}.preview-banner>div{flex:1;min-width:220px}.preview-banner p{font-size:.82rem;color:var(--muted);margin-top:.25rem}.lesson-item.locked{opacity:.7;background:var(--field)}.lesson-item.locked .play{background:var(--line);color:var(--muted)}.lesson-item.locked:hover{border-color:var(--amber)}
