@import url("https://fonts.googleapis.com/css2?family=Tajawal:wght@400;500;700;800;900&display=swap");:root{--td-bg:#0A0F14;--td-surface:#121A22;--td-surface-alt:#1A2530;--td-border:rgba(255,255,255,0.08);--td-text:#EDF2F5;--td-text-dim:#8A9AA8;--td-court:#17C3B2;--td-court-dim:rgba(23,195,178,0.15);--td-live:#FF4B4B;--td-warning:#FFB238;--td-court:var(--accent);--td-gold:#F2B705}.td-page{color:var(--td-text);flex-direction:column;gap:20px;margin-inline:auto;padding:120px 20px;display:flex;position:relative;width:95%}.td-page:before{content:"";position:absolute;top:0;bottom:0;right:6px;width:2px;background:linear-gradient(to bottom,transparent,var(--td-border) 10%,var(--td-border) 90%,transparent);opacity:.5}.td-page--live:before{background:linear-gradient(to bottom,transparent,var(--td-live) 10%,var(--td-live) 90%,transparent);animation:td-rail-pulse 2.4s ease-in-out infinite}@keyframes td-rail-pulse{0%,to{opacity:.25}50%{opacity:.6}}@keyframes td-blink{0%,to{opacity:1}50%{opacity:.25}}.td-section-title{font-size:16px;font-weight:800;margin-bottom:12px}.td-empty{font-size:13px;color:var(--td-text-dim);text-align:center;padding:16px 0;line-height:1.8}.td-hero{position:relative;border-radius:24px;padding:28px 22px;background:linear-gradient(160deg,var(--td-surface),var(--td-surface-alt));border:1px solid var(--td-border);overflow:hidden;display:flex;flex-direction:column;gap:10px}.td-hero-glow{position:absolute;inset:-40% -20% auto auto;width:220px;height:220px;background:radial-gradient(circle,var(--td-gold) 0,transparent 70%);opacity:.25;filter:blur(10px)}.td-badge{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:700;background:var(--td-court-dim);color:var(--td-court)}.td-badge-dot{width:8px;height:8px;border-radius:50%;background:currentColor}.td-badge--ready{background:rgba(242,183,5,.15);color:var(--td-gold)}.td-hero-title{font-size:26px;font-weight:800;margin:2px 0}.td-hero-meta-row{display:flex;gap:14px;flex-wrap:wrap}.td-hero-meta{font-size:14px;color:var(--td-text-dim)}.td-hero--live{border-color:rgba(255,75,75,.4)}.td-live-tag{display:inline-flex;align-items:center;gap:6px;color:var(--td-live);font-weight:800;font-size:13px}.td-live-dot{width:9px;height:9px;border-radius:50%;background:var(--td-live);animation:td-blink 1.2s ease-in-out infinite}.td-live-score-row{display:flex;align-items:center;justify-content:center;gap:10px;font-weight:800}.td-live-score-num{font-size:32px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.td-live-team{font-size:14px;color:var(--td-text-dim)}.td-live-round{font-size:13px;color:var(--td-text-dim)}.td-hero--champion{align-items:center;text-align:center;background:linear-gradient(160deg,rgba(242,183,5,.14),var(--td-surface));border-color:rgba(242,183,5,.4)}.td-eyebrow{font-size:13px;font-weight:700;color:var(--td-gold)}.td-champion-name{font-size:30px;font-weight:900}.td-champion-sub{color:var(--td-text-dim);font-size:14px}.td-podium{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:8px;list-style:none;padding:0}.td-podium-item{display:flex;align-items:center;gap:10px;justify-content:center;padding:10px;border-radius:14px;background:var(--td-surface-alt)}.td-podium-item--1{border:1px solid rgba(242,183,5,.5)}.td-progress{display:flex;flex-direction:column;gap:8px}.td-progress-track{height:10px;border-radius:999px;background:var(--td-surface-alt);overflow:hidden}.td-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--td-court),#3fe0cd);transition:width .5s ease}.td-progress-label{font-size:13px;color:var(--td-text-dim);text-align:center}.td-countdown{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px;border-radius:20px;background:var(--td-surface);border:1px solid var(--td-border)}.td-countdown-icon{font-size:22px}.td-countdown-label{font-size:13px;color:var(--td-text-dim)}.td-countdown-units{display:flex;gap:14px}.td-countdown-unit{display:flex;flex-direction:column;align-items:center;min-width:56px;padding:10px 6px;border-radius:14px;background:var(--td-surface-alt)}.td-countdown-num{font-size:24px;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.td-countdown-unit-label{font-size:11px;color:var(--td-text-dim)}.td-teams-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.td-team-card{background:var(--td-surface);border:1px solid var(--td-border);border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:6px}.td-team-head{display:flex;justify-content:space-between;align-items:center;gap:6px}.td-team-name{font-weight:700;font-size:13px}.td-team-status{font-size:11px;padding:3px 8px;border-radius:999px;white-space:nowrap}.td-team-status--ok{background:rgba(23,195,178,.15);color:var(--td-court)}.td-team-status--pending{background:rgba(255,178,56,.15);color:var(--td-warning)}.td-team-captain{font-size:12px;color:var(--td-text-dim)}.td-team-rating{font-size:13px;color:var(--td-gold)}.td-timeline-list{display:flex;flex-direction:column;list-style:none;padding:0;margin:0}.td-timeline-item{display:flex;align-items:center;gap:10px;padding:8px 0}.td-timeline-item.is-pending{opacity:.5}.td-timeline-text{font-size:14px}.td-round{margin-bottom:16px}.td-round-title{font-size:14px;font-weight:700;color:var(--td-text-dim);margin-bottom:8px}.td-round-matches{gap:10px}.td-match-card,.td-round-matches{display:flex;flex-direction:column}.td-match-card{background:var(--td-surface);border:1px solid var(--td-border);border-radius:16px;padding:12px;gap:6px}.td-match-card.is-live{border-color:rgba(255,75,75,.5)}.td-match-live-tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--td-live)}.td-match-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.td-match-team{font-size:13px;font-weight:600;flex:1 1}.td-match-team.team1{text-align:right}.td-match-team.team2{text-align:left}.td-match-vs{font-size:12px;color:var(--td-text-dim)}.td-match-score{font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.td-match-time{font-size:12px;color:var(--td-text-dim)}.td-bracket-rail,.td-bracket-step{display:flex;flex-direction:column;align-items:center;gap:6px}.td-bracket-step{width:100%}.td-bracket-card{width:100%;background:var(--td-surface);border:1px solid var(--td-border);border-radius:16px;padding:14px;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.td-bracket-card.is-final{border-color:rgba(242,183,5,.5);background:linear-gradient(160deg,rgba(242,183,5,.1),var(--td-surface))}.td-bracket-round{font-size:13px;color:var(--td-text-dim)}.td-bracket-result{font-weight:700}.td-bracket-arrow{color:var(--td-text-dim)}.td-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.td-stat-card{background:var(--td-surface);border:1px solid var(--td-border);border-radius:14px;padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:4px}.td-stat-icon{font-size:16px}.td-stat-value{font-weight:800;font-size:14px}.td-stat-label{font-size:10px;color:var(--td-text-dim)}.td-news-list{gap:8px;list-style:none;padding:0;margin:0}.td-news-item,.td-news-list{display:flex;flex-direction:column}.td-news-item{gap:2px;padding:10px 12px;border-radius:14px;background:var(--td-surface);border:1px solid var(--td-border)}.td-news-text{font-size:13px}.td-news-date{font-size:11px;color:var(--td-text-dim)}.td-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.td-gallery-img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px}.td-fab-wrap{position:fixed;left:0;right:0;bottom:0;padding:14px 16px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--td-bg) 60%,transparent);z-index:40}.td-fab{width:100%;max-width:640px;margin-inline:auto;display:block;padding:15px;border:none;border-radius:16px;font-size:15px;font-weight:800;cursor:pointer}.td-fab--court{background:var(--td-court);color:#052421;text-align:center}.td-fab--gold{text-align:center;background:var(--td-gold);color:#2b1c00}.td-fab--muted{background:var(--td-surface-alt);color:var(--td-text-dim)}.td-fab:disabled{opacity:.7;cursor:default}@media (prefers-reduced-motion:reduce){.td-live-dot,.td-page:before{animation:none!important}}.td-badge{background:var(--primary-soft);color:var(--primary)}.td-fab--court{background:var(--grad);color:#fff}.wizard-section{padding:200px 0 40px;min-height:100vh;display:flex;justify-content:center;align-items:center}.wizard-steps{overflow-x:auto;padding-bottom:4px}.wizard-step-pill,.wizard-steps{display:flex;align-items:center;gap:8px}.wizard-step-pill{padding:8px 14px;border-radius:999px;background:var(--accent-color);color:#888;font-size:14px;white-space:nowrap;flex-shrink:0;transition:all .2s ease}.wizard-step-pill.active{background:var(--accent-color,#0d6efd);color:#fff}.wizard-step-pill.done{background:rgba(0,214,143,.15);color:#1a7f37}.wizard-step-num{width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0}.wizard-step-pill:not(.active) .wizard-step-num{background:rgba(0,0,0,.08)}.wizard-card{background:var(--accent-color);border-radius:16px;box-shadow:0 10px 28px rgba(0,214,143,.35);padding:20px;margin:24px 0}.wizard-step-title{display:flex;align-items:center;gap:10px;margin-bottom:24px;font-weight:700}.wizard-hint{display:block;color:#888;margin-top:6px;font-size:13px}.wizard-error{color:#d92d20;margin-top:12px;font-size:14px}.form-control{background:var(--accent-color);border:1px solid #e5e5e549;margin-top:10px;color:#e5e5e5}.radio-pills{margin-top:10px;display:flex;gap:10px}.radio-pill{flex:1 1;padding:12px;border-radius:10px;border:1.5px solid #e5e5e549;color:#e5e5e5;background:var(--accent-color);cursor:pointer;transition:all .2s ease}.radio-pill.active{border-color:var(--accent-color,#0d6efd);background:rgba(13,110,253,.06);font-weight:600}.team-stepper{display:flex;align-items:center;gap:16px;background:#121826;border-radius:10px;padding:10px 16px;width:fit-content;margin-top:10px}.team-stepper button{width:34px;height:34px;border-radius:50%;border:none;background:rgba(0,214,143,.35);color:#e5e5e5;box-shadow:0 1px 4px rgba(0,0,0,.1);font-size:18px;cursor:pointer}.team-stepper button:disabled{opacity:.35;cursor:not-allowed}.team-stepper span{min-width:70px;text-align:center;font-weight:700}.wizard-preview{display:flex;gap:16px;margin-top:20px;padding-top:16px;border-top:1px dashed #eee;color:#666;font-size:14px}.court-pick-card{position:relative;width:100%;border:1px solid var(--border-glass);border-radius:var(--r-lg);overflow:hidden;background:transparent;padding:0;cursor:pointer;text-align:right;transition:all .2s ease}.court-pick-card.selected{border-color:var(--accent-color,#0d6efd);box-shadow:0 0 0 3px rgba(13,110,253,.12)}.court-pick-image{height:120px;background-size:cover;background-position:50%}.court-pick-body{padding:12px 14px}.court-pick-body h6{font-size:15px;font-weight:600;margin-bottom:4px;color:#ddd}.court-pick-meta{display:flex;gap:12px;color:#888;font-size:13px;margin-top:4px}.court-pick-check{position:absolute;top:10px;left:10px;width:26px;height:26px;border-radius:50%;background:var(--accent-color,#0d6efd);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px}.wizard-review-list{display:flex;flex-direction:column;gap:12px}.wizard-review-row{display:flex;justify-content:space-between;padding:12px 14px;box-shadow:0 10px 28px rgba(0,214,143,.123);border-radius:10px;font-size:14px}.wizard-review-label{color:#888}.wizard-review-value{font-weight:700}.wizard-actions{display:flex;justify-content:space-between;margin-top:28px;gap:12px}.wizard-actions .btn{min-width:130px;align-items:center}@media (max-width:576px){.wizard-section{padding:120px 0 40px}.wizard-card{padding:16px;border-radius:12px}.wizard-actions{flex-direction:column-reverse}.wizard-actions .btn{width:100%}}.review-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.review-modal-box{border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:24px;max-width:400px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,.5)}.manage-page{max-width:640px;margin:0 auto;padding:100px 16px 60px}.manage-section{background:var(--bg-secondary);border:1px solid var(--border-glass);border-radius:var(--r-lg);padding:20px;margin-bottom:20px}.manage-section h3{font-size:1rem;color:var(--white);margin-bottom:16px}.manage-team-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border-glass);font-size:.88rem}.manage-team-row:last-child{border-bottom:0}.manage-team-row b{color:var(--white)}.manage-team-row span{color:var(--text-faint);font-size:.8rem}.start-tournament-banner{display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center}.start-tournament-banner p{color:var(--text-muted);font-size:.86rem}.manage-match-card{background:var(--bg-elevated);border:1px solid var(--border-glass);border-radius:var(--r-md);padding:16px;margin-bottom:12px}.manage-match-teams{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.manage-match-teams span{font-size:.9rem;color:var(--white);font-weight:600}.manage-score-inputs{display:flex;align-items:center;gap:10px}.manage-score-inputs input{width:56px;text-align:center;background:var(--bg-secondary);border:1px solid var(--border-glass);border-radius:var(--r-sm);padding:8px;color:var(--white);font-weight:700}.manage-score-inputs span{color:var(--text-faint)}.manage-match-card .btn{margin-top:12px;width:100%}.manage-match-done{display:flex;align-items:center;gap:8px;color:var(--accent);font-size:.84rem;font-weight:600}.not-authorized{text-align:center;padding:100px 20px;color:var(--text-muted)}.tournament-list-card{background:var(--bg-secondary);border:1px solid var(--border-glass);border-radius:var(--r-lg);padding:22px;display:flex;flex-direction:column;gap:14px;height:100%;transition:all .35s var(--ease)}.tournament-list-card:hover{border-color:var(--border-glass-strong);transform:translateY(-4px);box-shadow:var(--shadow-card)}.tournament-list-badge{align-self:flex-start;font-size:.74rem;font-weight:700;padding:5px 12px;border-radius:var(--r-pill)}.tournament-list-badge.registration{background:var(--accent-soft);color:var(--accent)}.tournament-list-badge.live{background:rgba(255,75,75,.12);color:#ff4b4b}.tournament-list-badge.completed{background:rgba(242,183,5,.12);color:#f2b705}.tournament-list-card h3{font-size:1.1rem;color:var(--white)}.tournament-list-meta{display:flex;flex-direction:column;gap:6px;font-size:.84rem;color:var(--text-muted)}.tournament-list-meta span{display:flex;align-items:center;gap:8px}.tournament-list-meta i{color:var(--accent);font-size:15px;width:16px}.forgot-success-icon{font-size:48px;color:var(--accent);display:block;margin:0 auto}.legal-shell{display:grid;grid-template-columns:260px 1fr;gap:48px;margin:0 auto;padding:150px 24px 120px;background:var(--lg-bg);color:var(--lg-text);font-family:Tajawal,Cairo,sans-serif;direction:rtl}.legal-toc{position:sticky;top:32px;align-self:start;display:flex;flex-direction:column;gap:4px;padding-inline-start:18px;border-inline-start:1px solid var(--lg-border);max-height:calc(100vh - 64px);overflow-y:auto}.toc-label{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px}.toc-label,.toc-link{color:var(--lg-text-dim)}.toc-link{font-size:14px;text-decoration:none;padding:7px 10px;border-radius:8px;transition:color .15s ease,background .15s ease;line-height:1.4}.toc-link:hover{color:var(--lg-text);background:var(--lg-surface-2)}.toc-link:not(.toc-sub){font-weight:700;color:var(--lg-text);margin-top:4px}.toc-sub{font-size:13px;padding-inline-start:20px;position:relative}.toc-sub:before{content:"";position:absolute;inset-inline-start:8px;top:50%;transform:translateY(-50%);width:4px;height:4px;border-radius:50%;background:var(--lg-border)}.toc-sub:hover:before{background:var(--lg-mint)}.legal-content{min-width:0}.legal-hero{padding-bottom:36px;margin-bottom:40px;border-bottom:1px solid var(--lg-border)}.legal-hero h1{font-size:40px;font-weight:800;letter-spacing:-.01em;margin:0 0 18px;background:linear-gradient(90deg,#fff,#cfc4ff);-webkit-background-clip:text;background-clip:text;color:transparent}.legal-meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.legal-meta span{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--lg-text-dim);background:var(--lg-surface);border:1px solid var(--lg-border);padding:7px 14px;border-radius:999px}.legal-meta i{color:var(--lg-mint);font-size:12px}.legal-intro-box{display:flex;align-items:flex-start;gap:14px;background:var(--lg-purple-soft);border:1px solid rgba(109,40,255,.3);border-radius:14px;padding:18px 20px}.legal-intro-box i{color:var(--lg-purple);font-size:18px;margin-top:2px;flex-shrink:0}.legal-intro-box p{margin:0;font-size:14.5px;line-height:1.8;color:var(--lg-text)}.legal-section-title{display:flex;align-items:center;gap:14px;margin:0 0 28px}.legal-section-title h2{font-size:24px;font-weight:800;margin:0;white-space:nowrap}.legal-section-title:after{content:"";flex:1 1;height:1px;background:linear-gradient(90deg,var(--lg-border),transparent)}.legal-section{padding:22px 0;border-bottom:1px solid var(--lg-border);scroll-margin-top:32px}.legal-section:last-child{border-bottom:none}.legal-section h3{display:flex;align-items:center;gap:12px;font-size:16.5px;font-weight:700;margin:0 0 12px}.section-num{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:26px;height:26px;border-radius:8px;background:var(--lg-mint-soft);color:var(--lg-mint);font-size:13px;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.legal-section p{margin:0;font-size:14.5px;line-height:1.9;color:var(--lg-text-dim)}.legal-divider{height:1px;margin:48px 0;background:linear-gradient(90deg,transparent,var(--lg-purple),var(--lg-mint),transparent);opacity:.5}.legal-footer-note{display:flex;align-items:flex-start;gap:14px;margin-top:48px;padding:20px 22px;background:var(--lg-surface);border:1px solid var(--lg-border);border-radius:14px}.legal-footer-note i{color:var(--lg-purple);font-size:16px;margin-top:3px;flex-shrink:0}.legal-footer-note p{margin:0;font-size:14px;line-height:1.8;color:var(--lg-text-dim)}.legal-link{color:var(--lg-mint);font-weight:700;text-decoration:none}.legal-link:hover{text-decoration:underline}@media (max-width:860px){.legal-shell{grid-template-columns:1fr;padding:40px 18px 80px;gap:28px}.legal-toc{position:static;max-height:none;flex-direction:row;flex-wrap:wrap;border-inline-start:none;border-bottom:1px solid var(--lg-border);padding:0 0 20px}.toc-label{width:100%}.toc-sub{padding-inline-start:10px}.toc-sub:before{display:none}.legal-hero h1{font-size:30px}}.legal-link:focus-visible,.toc-link:focus-visible{outline:2px solid var(--lg-mint);outline-offset:2px}@media (prefers-reduced-motion:reduce){.toc-link{transition:none}}