:root{color-scheme:light;--green:#16a34a;--green-dark:#15803d;--emerald:#059669;--ink:#111827;--muted:#64748b;--line:#e5e7eb;--soft:#f5f7fa;--white:#fff;--amber:#b45309;--red:#b91c1c;--shadow:0 12px 32px rgba(15,23,42,.065);--radius:18px}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--ink);font:400 15px/1.65 Inter,Arial,sans-serif}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{outline-color:var(--green)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(22,163,74,.28);outline-offset:3px}
.container{width:min(1160px,calc(100% - 44px));margin-inline:auto}
.site-header{height:82px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}
.brand{display:inline-flex;align-items:center;gap:11px}
.brand-mark{display:grid;place-items:center;width:43px;height:43px;background:linear-gradient(145deg,#22c55e,#059669);color:white;border-radius:13px;font:700 30px Rajdhani,sans-serif;box-shadow:0 7px 16px #16a34a30}
.brand-copy{display:flex;flex-direction:column;line-height:1.15}
.brand-copy b{font:700 19px Rajdhani,sans-serif;letter-spacing:.3px}
.brand-copy small{font-size:9px;letter-spacing:1px;color:var(--muted);font-weight:700;margin-top:4px}
.main-nav{display:flex;align-items:center;gap:31px}
.main-nav>a:not(.button){font-size:13px;font-weight:600;color:#475569;transition:color .2s}
.main-nav>a:hover{color:var(--green)}
.main-nav .nav-login{margin-left:8px}
.nav-toggle{display:none;background:white;border:1px solid var(--line);border-radius:10px;width:44px;height:42px;padding:10px;cursor:pointer}
.nav-toggle span{display:block;height:2px;background:var(--ink);margin:4px 0;border-radius:3px}
.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:51px;padding:0 22px;border:1px solid var(--green);border-radius:11px;background:var(--green);color:white;font-weight:700;font-size:13px;box-shadow:0 7px 16px #16a34a20;transition:transform .2s,background .2s,box-shadow .2s}
.button:hover{background:var(--green-dark);border-color:var(--green-dark);transform:translateY(-1px);box-shadow:0 10px 20px #16a34a2a}
.button-small{min-height:42px;padding-inline:16px;font-size:12px}
.button-secondary{background:white;color:var(--ink);border-color:var(--line);box-shadow:none}
.button-secondary:hover{background:var(--soft);color:var(--green);border-color:#bbf7d0}
.button-outline{background:transparent;color:var(--green);box-shadow:none}
.button-outline:hover{color:white}
.button-danger{background:#dc2626;border-color:#dc2626}
.eyebrow{font-size:11px;letter-spacing:1.7px;font-weight:800;color:var(--green);text-transform:uppercase}
.hero{background:radial-gradient(ellipse at 82% 17%,#dcfce7 0,rgba(220,252,231,.35) 27%,transparent 52%),linear-gradient(180deg,#fff,#fbfdfb);overflow:hidden}
.hero-inner{min-height:548px;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:35px;padding-block:64px}
.hero-copy{max-width:560px}
.hero h1,.page-hero h1{font:700 clamp(48px,6.2vw,78px)/.94 Rajdhani,sans-serif;letter-spacing:-1.4px;margin:19px 0 20px;max-width:650px}
.hero h1 em{font-style:normal;color:var(--green)}
.hero-copy>p{color:var(--muted);font-size:16px;max-width:485px;margin:0 0 28px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-proof{display:flex;align-items:center;gap:11px;margin-top:35px;color:var(--muted);font-size:12px}
.proof-dots{display:flex}.proof-dots span{display:grid;place-items:center;width:29px;height:29px;margin-right:-7px;border:2px solid white;border-radius:50%;background:#dcfce7;color:#15803d;font-weight:800;font-size:10px}
.hero-proof b{color:var(--ink)}
.hero-art{position:relative;min-height:400px;display:grid;place-items:center}
.art-halo{position:absolute;width:390px;height:390px;border-radius:50%;background:linear-gradient(140deg,#ecfdf5,#f0fdf4 64%,#d1fae5);border:1px solid #dcfce7}
.art-halo:before,.art-halo:after{content:"";position:absolute;inset:26px;border-radius:50%;border:1px dashed #86efac}
.art-halo:after{inset:59px;border-style:solid;border-color:#bbf7d0}
.art-card{position:relative;z-index:1;width:min(330px,78%);padding:24px;border:1px solid #e2e8f0;border-radius:20px;background:white;box-shadow:0 24px 60px #14532d20;transform:rotate(-3deg)}
.art-top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:1px}
.live-pill{padding:5px 9px;border-radius:20px;color:var(--green-dark);background:#dcfce7;font-size:9px;letter-spacing:.8px}
.versus{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:27px 0}
.team-crest{width:74px;height:74px;border-radius:20px;background:#f0fdf4;color:var(--green);display:grid;place-items:center;font:700 43px Rajdhani,sans-serif;border:1px solid #dcfce7}
.team-crest.right{justify-self:end;background:#eff6ff;color:#2563eb;border-color:#dbeafe}
.versus strong{font:700 24px Rajdhani,sans-serif;color:#cbd5e1}
.art-team-labels{display:flex;justify-content:space-between;font-size:11px;font-weight:700}
.art-team-labels span:last-child{text-align:right}
.match-meta{display:flex;justify-content:space-between;padding-top:16px;margin-top:20px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}
.art-float{position:absolute;z-index:2;padding:11px 15px;border-radius:12px;background:white;border:1px solid var(--line);box-shadow:var(--shadow);font-size:11px;font-weight:700}
.art-float b{color:var(--green);font-size:17px;display:block}
.art-float.one{top:47px;right:0;transform:rotate(4deg)}.art-float.two{bottom:38px;left:4px;transform:rotate(-5deg)}
.section{padding:87px 0}
.section-soft{background:var(--soft)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:30px}
.section-head h2,.section-title{font:700 clamp(32px,4vw,44px)/1.05 Rajdhani,sans-serif;letter-spacing:-.4px;margin:8px 0}
.section-head p{margin:0;color:var(--muted);max-width:500px;font-size:13px}
.link-arrow{color:var(--green);font-weight:700;font-size:13px;white-space:nowrap}
.tournament-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tournament-card,.panel,.stat-card,.form-card{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 5px 20px rgba(15,23,42,.035)}
.tournament-card{overflow:hidden;transition:transform .2s,box-shadow .2s}
.tournament-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.tournament-banner{height:156px;background:radial-gradient(circle at 75% 35%,#bbf7d0,transparent 28%),linear-gradient(130deg,#f0fdf4,#e2e8f0);position:relative;display:flex;align-items:end;padding:18px}
.tournament-banner:after{content:"";position:absolute;width:105px;height:105px;border:1px solid #ffffffb8;border-radius:50%;right:28px;top:20px;box-shadow:0 0 0 15px #ffffff45,0 0 0 30px #ffffff2b}
.tournament-banner .eyebrow{position:relative;z-index:1;color:#166534;background:white;padding:6px 9px;border-radius:7px}
.tournament-body{padding:19px}
.tournament-body h3{font:700 23px/1.1 Rajdhani,sans-serif;margin:0 0 8px}
.tournament-body>p{color:var(--muted);font-size:12px;margin:0 0 15px}
.tournament-meta{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:13px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.meta-item{font-size:10px;color:var(--muted)}.meta-item b{display:block;color:var(--ink);font-size:12px;margin-top:2px}
.card-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:15px}
.text-link{color:var(--green);font-size:12px;font-weight:700}
.status{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:30px;font-weight:700;font-size:10px;text-transform:capitalize}
.status:before{content:"";width:6px;height:6px;background:currentColor;border-radius:50%}
.status-success{background:#dcfce7;color:#15803d}.status-warning{background:#fef3c7;color:#b45309}.status-danger{background:#fee2e2;color:#b91c1c}.status-neutral{background:#f1f5f9;color:#475569}
.empty-state{text-align:center;padding:40px 20px;color:var(--muted);background:#fff;border:1px dashed #cbd5e1;border-radius:var(--radius)}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}
.step-card{padding:23px;border:1px solid var(--line);border-radius:16px;background:white}
.step-number{width:38px;height:38px;background:#dcfce7;border-radius:12px;color:var(--green-dark);font:700 22px Rajdhani,sans-serif;display:grid;place-items:center}
.step-card h3{font:700 20px Rajdhani,sans-serif;margin:15px 0 4px}
.step-card p{font-size:12px;color:var(--muted);margin:0}
.youtube-section{padding:65px 0}
.youtube-box{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:35px 40px;background:linear-gradient(110deg,#f0fdf4,#fff);border:1px solid #dcfce7;border-radius:22px}
.youtube-title{display:flex;align-items:center;gap:19px}
.youtube-icon{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;color:white;background:#16a34a;font-size:25px}
.youtube-box h2{font:700 27px Rajdhani,sans-serif;margin:2px 0}
.youtube-box p{font-size:12px;color:var(--muted);margin:0;max-width:500px}
.page-hero{padding:65px 0 48px;background:linear-gradient(135deg,#f0fdf4,#fff 72%)}
.page-hero h1{font-size:clamp(40px,5vw,58px);margin:13px 0}
.page-hero p{max-width:700px;color:var(--muted);margin:0}
.content-section{padding:45px 0 85px}
.auth-wrap{min-height:calc(100vh - 82px);padding:58px 0;background:linear-gradient(130deg,#f0fdf4,#fff 55%)}
.auth-card{max-width:540px;margin:auto;padding:34px;background:white;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}
.auth-card h1{font:700 37px Rajdhani,sans-serif;margin:4px 0}
.auth-card>p{color:var(--muted);font-size:13px;margin:0 0 24px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-field{margin-bottom:16px}
.form-field label,.form-label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}
.form-field input,.form-field select,.form-field textarea,.field-control{width:100%;min-height:45px;padding:11px 12px;border-radius:9px;border:1px solid #d1d5db;background:white;color:var(--ink);transition:border .18s,box-shadow .18s}
.form-field textarea{min-height:120px;resize:vertical}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus,.field-control:focus{border-color:var(--green);box-shadow:0 0 0 3px #16a34a18;outline:0}
.form-hint{font-size:10px;color:var(--muted);margin-top:5px}
.checkbox-row{display:flex;gap:10px;align-items:flex-start;font-size:12px;color:#475569;margin:14px 0}
.checkbox-row input{accent-color:var(--green);margin-top:3px}
.form-error{padding:11px 13px;margin-bottom:17px;background:#fef2f2;border:1px solid #fecaca;border-radius:9px;color:#b91c1c;font-size:12px}
.notice{padding:13px 16px;border-radius:11px;border:1px solid;font-size:13px;margin:16px 0}
.notice-success{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.notice-warning{background:#fffbeb;border-color:#fde68a;color:#92400e}.notice-danger{background:#fef2f2;border-color:#fecaca;color:#991b1b}.notice-info{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}
.flash-wrap{position:relative}
.details-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}
.panel{padding:24px}
.panel h2,.panel h3{font:700 23px Rajdhani,sans-serif;margin:0 0 14px}
.detail-list{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.detail-item{padding:13px;background:var(--soft);border-radius:10px}
.detail-item span{display:block;color:var(--muted);font-size:10px}.detail-item b{display:block;font-size:13px;margin-top:4px}
.sidebar-stack{display:grid;gap:16px}
.dashboard-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:26px;padding-block:35px 80px}
.sidebar{align-self:start;position:sticky;top:105px;padding:17px;background:#fff;border:1px solid var(--line);border-radius:16px}
.sidebar a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:9px;color:#475569;font-size:12px;font-weight:600}
.sidebar a:hover,.sidebar a.active{background:#f0fdf4;color:#15803d}
.sidebar form{margin:0}.sidebar-logout{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:9px;background:transparent;color:#475569;font-size:12px;font-weight:600;text-align:left;cursor:pointer}.sidebar-logout:hover{background:#fef2f2;color:#b91c1c}
.review-form{display:grid;min-width:170px;gap:6px}.review-form select,.review-form input:not([type=checkbox]){width:100%;min-width:110px;padding:7px 8px;border:1px solid var(--line);border-radius:7px;background:white;font-size:10px}.review-form .checkbox-row{margin:3px 0;font-size:10px}
.dashboard-main{min-width:0}
.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:24px}
.dashboard-heading h1{font:700 34px Rajdhani,sans-serif;margin:0}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}
.stat-card{padding:18px}
.stat-card span{font-size:11px;color:var(--muted)}.stat-card strong{display:block;font:700 31px Rajdhani,sans-serif;margin-top:6px}
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;text-align:left;min-width:650px}
th,td{padding:13px 12px;border-bottom:1px solid var(--line);font-size:12px;vertical-align:middle}
th{color:var(--muted);font-size:10px;letter-spacing:.5px;text-transform:uppercase;background:#fafbfc}
tr:last-child td{border-bottom:0}
.room-card{background:linear-gradient(120deg,#f0fdf4,#fff);border:1px solid #bbf7d0;border-radius:15px;padding:19px}
.room-card p{margin:0;color:var(--muted);font-size:12px}
.room-secret{font:700 19px Rajdhani,sans-serif;letter-spacing:.5px;color:#166534;word-break:break-word}
.player-list{display:grid;gap:9px}
.player-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px;border:1px solid var(--line);border-radius:10px;font-size:12px}
.player-row small{display:block;color:var(--muted);font-size:10px}
.site-footer{background:#f8fafc;border-top:1px solid var(--line);padding:54px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.5fr .7fr .9fr 1.1fr;gap:36px}
.footer-brand .brand-mark{width:38px;height:38px;font-size:26px}
.footer-about{max-width:290px;color:var(--muted);font-size:12px;margin:16px 0 0}
.footer-grid h3{font:700 16px Rajdhani,sans-serif;margin:0 0 13px}
.footer-grid>div:not(:first-child)>a{display:block;color:var(--muted);font-size:11px;margin:7px 0}
.footer-grid a:hover{color:var(--green)}
.footer-cta{padding:18px;background:white;border:1px solid var(--line);border-radius:14px}
.footer-cta p{font:700 19px Rajdhani,sans-serif;margin:6px 0 12px}
.footer-cta .button{min-height:40px;font-size:11px;padding-inline:12px}
.footer-bottom{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);margin-top:42px;padding-top:17px;color:var(--muted);font-size:10px}
.notice-list{display:grid;gap:10px}.notice-list article{padding:15px;background:var(--soft);border-radius:11px}.notice-list h3{font:700 17px Rajdhani,sans-serif;margin:0}.notice-list p{font-size:12px;color:var(--muted);margin:5px 0 0}
.mobile-sidebar-toggle{display:none}
@media(max-width:900px){.main-nav{gap:18px}.hero-inner{grid-template-columns:1fr 1fr;gap:5px}.art-halo{width:330px;height:330px}.tournament-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-cta{grid-column:2/4}.stat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.container{width:min(100% - 34px,560px)}.site-header{height:70px}.brand-mark{width:39px;height:39px}.brand-copy b{font-size:17px}.brand-copy small{font-size:8px}.nav-toggle{display:block}.main-nav{display:none;position:absolute;top:69px;left:0;right:0;padding:12px 22px 19px;background:white;border-bottom:1px solid var(--line);box-shadow:0 14px 22px #0f172a10;align-items:stretch;gap:2px}.main-nav.is-open{display:flex;flex-direction:column}.main-nav>a:not(.button){padding:11px 7px}.main-nav .button{margin-top:7px}.main-nav .nav-login{margin:0}.hero-inner{grid-template-columns:1fr;padding-block:58px 28px;gap:6px}.hero h1{font-size:58px;max-width:480px}.hero-copy>p{font-size:14px}.hero-art{min-height:345px}.art-halo{width:300px;height:300px}.art-float.one{right:3px;top:25px}.art-float.two{bottom:18px;left:1px}.section{padding:64px 0}.section-head{align-items:flex-start;flex-direction:column}.tournament-grid{grid-template-columns:1fr}.steps-grid{grid-template-columns:1fr;gap:12px}.youtube-section{padding:45px 0}.youtube-box{align-items:flex-start;flex-direction:column;padding:25px}.youtube-title{align-items:flex-start}.youtube-icon{width:48px;height:48px;flex:none}.youtube-box h2{font-size:23px}.page-hero{padding:47px 0 35px}.content-section{padding:30px 0 60px}.auth-wrap{min-height:calc(100vh - 70px);padding:32px 0}.auth-card{padding:24px 19px}.form-grid{grid-template-columns:1fr;gap:0}.details-grid{grid-template-columns:1fr}.dashboard-layout{display:block;padding-block:20px 60px}.sidebar{position:static;display:flex;overflow:auto;gap:4px;margin-bottom:20px;padding:8px}.sidebar a{white-space:nowrap;padding:9px}.sidebar a span{display:none}.dashboard-heading h1{font-size:29px}.dashboard-heading{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr;gap:24px}.footer-grid>div:first-child,.footer-cta{grid-column:1/-1}.footer-bottom{flex-direction:column;margin-top:28px}.stat-grid{gap:9px}.stat-card{padding:14px}.stat-card strong{font-size:26px}}
@media(max-width:380px){.hero h1{font-size:49px}.hero-actions .button{width:100%}.detail-list{grid-template-columns:1fr}.brand-copy b{font-size:15px}.brand-copy small{letter-spacing:.5px}}
