*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
:root{--bg:#06101b;--panel:rgba(8,18,31,.94);--panel2:rgba(15,29,46,.94);--line:rgba(122,156,194,.27);--text:#f5f8fc;--muted:#aab8c9;--gold:#f7c83d;--gold2:#ffdf70}
body{margin:0;background:#06101b;color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.5;min-height:100vh}
.video-bg,.site-overlay{position:fixed;inset:0;pointer-events:none}.video-bg{z-index:-3;overflow:hidden;background:#06101b}.video-bg video{width:100%;height:100%;object-fit:cover;opacity:.34}.site-overlay{z-index:-2;background:linear-gradient(180deg,rgba(3,10,19,.68),rgba(4,11,20,.86) 35%,rgba(2,8,15,.96))}
.site-header{position:sticky;top:0;z-index:20;min-height:78px;display:flex;align-items:center;gap:30px;padding:9px max(22px,calc((100vw - 1120px)/2));background:rgba(5,13,24,.88);backdrop-filter:blur(15px);border-bottom:1px solid var(--line);box-shadow:0 8px 28px rgba(0,0,0,.2)}
.brand{display:flex;align-items:center;flex-shrink:0}.brand img{display:block;width:min(220px,38vw);max-height:58px;object-fit:contain}
.main-nav{margin-left:auto;display:flex;align-items:center;gap:9px}.main-nav a{color:#e4eaf2;text-decoration:none;font-size:14px;font-weight:900;letter-spacing:.5px;padding:12px 14px;border-radius:9px;transition:.18s}.main-nav a:hover,.main-nav a.active{background:rgba(255,255,255,.09);color:#fff}.main-nav .login-link{background:linear-gradient(135deg,#ffe486,#f5bf28);color:#17130a;padding:14px 19px;box-shadow:0 8px 20px rgba(245,191,40,.16)}.main-nav .login-link:hover{filter:brightness(1.06);background:linear-gradient(135deg,#ffe486,#f5bf28)}
.menu-toggle{display:none;margin-left:auto;width:42px;height:40px;background:rgba(255,255,255,.08);border:1px solid var(--line);border-radius:8px;cursor:pointer}.menu-toggle span{display:block;height:2px;background:#fff;margin:5px 8px}
.intro,.section,.feature-strip,footer{width:min(1120px,calc(100% - 32px));margin-left:auto;margin-right:auto}.intro{padding:48px 0 24px;text-align:center}.eyebrow{font-size:11px;font-weight:900;letter-spacing:1.8px;color:#f3ca57}.intro h1{margin:6px 0 12px;font-size:clamp(29px,5vw,49px);line-height:1.04;letter-spacing:-1px;color:#ffe08a;text-shadow:0 0 25px rgba(247,200,61,.15)}.intro p{max-width:940px;margin:0 auto;color:#d4dce7;font-size:15px}
.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:14px;overflow:hidden;background:rgba(4,15,27,.72);margin-bottom:4px;box-shadow:0 14px 36px rgba(0,0,0,.18)}.feature-strip div{min-height:76px;display:grid;grid-template-columns:44px 1fr;grid-template-rows:1fr 1fr;align-items:center;padding:12px 16px;border-right:1px solid var(--line)}.feature-strip div:last-child{border-right:0}.feature-strip span{grid-row:1/3;font-size:27px;color:#f6ca48;text-align:center}.feature-strip b{font-size:11px;letter-spacing:.5px}.feature-strip small{font-size:10px;color:#aebccd;font-weight:800}
.section{padding:42px 0 10px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:14px}.section-head h2{margin:3px 0 0;font-size:clamp(24px,4vw,36px);line-height:1.1;letter-spacing:-.6px}.section-head h2:before{content:'◫';display:inline-block;color:#f7c83d;margin-right:12px;font-size:.8em;vertical-align:5%}.data-count{font-size:11px;font-weight:900;color:#c2cfdd;white-space:nowrap;background:rgba(255,255,255,.06);padding:7px 10px;border-radius:7px}
.filter-bar{display:flex;gap:9px;overflow-x:auto;padding:0 0 13px;scrollbar-width:thin;scrollbar-color:#53627a transparent}.filter-btn{flex:0 0 auto;border:1px solid rgba(95,137,183,.35);background:rgba(8,21,36,.86);color:#d8e0ea;border-radius:10px;padding:10px 17px;font-size:11px;font-weight:900;letter-spacing:.25px;cursor:pointer;min-width:100px;transition:.16s}.filter-btn:hover{transform:translateY(-1px);border-color:#6c8cb1}.filter-btn.active{background:linear-gradient(135deg,#ffe071,#f3be25);color:#17130a;border-color:#f5c238;box-shadow:0 8px 18px rgba(245,191,40,.12)}
.panel{background:rgba(5,15,27,.74);border:1px solid rgba(90,132,178,.28);border-radius:15px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.22)}
.league{--league-a:#FFE487;--league-b:#FFD22F;border-bottom:14px solid transparent;border-bottom-color:rgba(255,255,255,.045)}.league:last-child{border-bottom:0}.league-title{width:100%;display:flex;position:relative;align-items:center;justify-content:space-between;gap:14px;margin:0;padding:16px 18px;background:linear-gradient(100deg,var(--league-a),var(--league-b));border:0;color:#17130a;text-align:left;cursor:pointer;font:inherit;font-size:15px;font-weight:900;letter-spacing:.55px;box-shadow:inset 0 -1px rgba(255,255,255,.12)}.league-title small{color:#4d3b09;font-size:11px}.league-title .league-toggle{font-size:11px;color:#3f3000}.league.closed .league-body{display:none}
.date-group{border-top:1px solid rgba(126,144,171,.16)}.date-title{margin:0;padding:10px 16px;font-size:11px;color:#b7c5d5;background:rgba(9,20,34,.78);font-weight:900;letter-spacing:.35px}
.match-row{display:grid;grid-template-columns:66px minmax(0,1fr) 44px minmax(0,1fr) minmax(84px,auto);gap:10px;align-items:center;padding:12px 16px;border-top:1px solid rgba(126,144,171,.14);font-size:14px;background:rgba(4,13,24,.32)}.match-row:hover{background:rgba(24,45,69,.34)}.time{font-weight:900;color:#fff}.team{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.team.home{text-align:right}.team.away{text-align:left}.vs{font-size:11px;font-weight:900;letter-spacing:.8px;color:#d8e5f4;text-align:center;background:#1b2c40;border:1px solid rgba(139,169,203,.17);border-radius:999px;padding:5px 3px}.meta{text-align:right;color:#d6dee9;font-weight:900;font-size:12px;white-space:nowrap}.prediction{color:#fff;background:linear-gradient(135deg,#233c59,#15293f);border:1px solid rgba(142,163,197,.34);border-radius:7px;padding:5px 8px;display:inline-block;min-width:56px;text-align:center}.load-more{width:calc(100% - 20px);margin:9px 10px 10px;padding:11px 16px;background:rgba(24,42,62,.88);border:1px solid rgba(99,139,184,.34);border-radius:9px;color:#e0e7f0;font-size:11px;font-weight:900;letter-spacing:.4px;cursor:pointer}.load-more:hover{background:rgba(35,59,84,.96)}
.empty,.loading{padding:28px 16px;color:#aeb8c8;text-align:center}.slot-section{padding-bottom:48px}.slot-card{background:linear-gradient(105deg,rgba(10,28,35,.95),rgba(4,14,25,.95));border:1px solid rgba(91,143,150,.3);border-radius:15px;padding:26px;display:flex;align-items:center;justify-content:space-between;gap:24px;box-shadow:0 18px 40px rgba(0,0,0,.22)}.slot-card strong{font-size:clamp(20px,3vw,28px);line-height:1.15;color:#ffdc73}.slot-card strong:before{content:'♛';color:#f7c83d;margin-right:10px}.slot-card p{margin:10px 0 0;color:#d6dee9;font-size:14px;font-weight:800;letter-spacing:.2px;line-height:1.55}.primary-link{flex-shrink:0;background:linear-gradient(135deg,#ffe386,#f6c333);color:#181409;text-decoration:none;font-size:13px;font-weight:900;padding:15px 22px;border-radius:9px;box-shadow:0 8px 20px rgba(245,191,40,.15)}.primary-link:hover{filter:brightness(1.07)}footer{padding:18px 0 28px;border-top:1px solid var(--line);color:#8490a2;font-size:11px;text-align:center}

/* Pencarian tim */
.team-search{display:flex;align-items:center;gap:8px;margin:0 0 10px;padding:8px;background:rgba(5,15,27,.72);border:1px solid rgba(95,137,183,.28);border-radius:12px}
.team-search input{min-width:0;flex:1;height:44px;padding:0 14px;border:1px solid rgba(103,146,192,.35);border-radius:9px;background:rgba(9,23,39,.92);color:#f5f8fc;font:inherit;font-size:13px;font-weight:700;outline:none}
.team-search input::placeholder{color:#8493a6}.team-search input:focus{border-color:#f7c83d;box-shadow:0 0 0 3px rgba(247,200,61,.12)}
.team-search button{height:44px;border:0;border-radius:9px;padding:0 16px;background:linear-gradient(135deg,#ffe071,#f3be25);color:#17130a;font-size:11px;font-weight:900;letter-spacing:.45px;cursor:pointer;white-space:nowrap}
.team-search button:hover{filter:brightness(1.06)}.team-search .search-clear{display:none;width:38px;padding:0;background:rgba(255,255,255,.08);border:1px solid var(--line);color:#d9e2ed;font-size:24px;line-height:1}.team-search .search-clear.visible{display:block}
.search-result{min-height:0;margin:-2px 0 8px;padding:0 3px;color:#f2cf64;font-size:11px;font-weight:800;letter-spacing:.2px}
@media(max-width:760px){.team-search{gap:6px;padding:6px}.team-search input{height:42px;font-size:12px;padding:0 10px}.team-search button{height:42px;padding:0 11px;font-size:10px}.team-search .search-clear{width:36px;font-size:22px}.search-result{font-size:10px}}
@media(max-width:760px){html{scroll-padding-top:72px}.site-header{min-height:66px;padding:8px 13px}.brand img{width:min(160px,52vw);max-height:48px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;left:0;right:0;top:66px;padding:10px 13px 16px;background:rgba(5,13,24,.98);border-bottom:1px solid var(--line);backdrop-filter:blur(14px);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{text-align:center;padding:12px}.intro,.section,.feature-strip,footer{width:min(100% - 20px,1120px)}.intro{padding:32px 0 20px}.intro h1{font-size:31px}.intro p{font-size:14px}.feature-strip{grid-template-columns:repeat(2,1fr)}.feature-strip div{min-height:66px;padding:8px 9px;border-bottom:1px solid var(--line)}.feature-strip div:nth-child(2){border-right:0}.feature-strip div:nth-child(3),.feature-strip div:nth-child(4){border-bottom:0}.section{padding-top:32px}.section-head{align-items:flex-start;flex-direction:column;gap:6px}.section-head h2{font-size:27px}.filter-btn{min-width:108px;padding:10px 14px}.panel{border-radius:12px}.league{border-bottom-width:10px}.league-title{padding:14px 13px;font-size:13px}.match-row{grid-template-columns:48px minmax(0,1fr) 35px minmax(0,1fr);gap:5px;padding:11px 9px;font-size:12px}.meta{grid-column:1 / 5;grid-row:2;text-align:center;padding:3px 0 0;border-top:1px solid rgba(126,144,171,.12);margin-top:2px}.team.home{text-align:right}.vs{font-size:10px}.date-title{padding:9px 11px}.slot-card{align-items:stretch;flex-direction:column;padding:20px}.primary-link{text-align:center}.video-bg video{opacity:.26}}


/* Pengelompokan tanggal: tanggal dipilih lebih dulu, kemudian liga. */
.date-filter-bar{display:flex;gap:9px;overflow-x:auto;padding:0 0 10px;scrollbar-width:thin;scrollbar-color:#53627a transparent}
.date-filter-btn{flex:0 0 auto;border:1px solid rgba(95,137,183,.38);background:rgba(8,21,36,.9);color:#dce6f1;border-radius:10px;padding:10px 15px;font-size:10px;font-weight:900;letter-spacing:.35px;cursor:pointer;min-width:108px;transition:.16s}
.date-filter-btn small{display:block;margin-top:2px;font-size:9px;color:#9eb0c4;font-weight:800}.date-filter-btn:hover{transform:translateY(-1px);border-color:#6c8cb1}.date-filter-btn.active{background:linear-gradient(135deg,#ffe071,#f3be25);color:#17130a;border-color:#f5c238}.date-filter-btn.active small{color:#4d3b09}
.date-filter-btn.history{border-color:rgba(202,138,4,.42)}.date-filter-btn.history.active{background:linear-gradient(135deg,#f7c83d,#d97706)}
.filter-label{margin:0 0 7px;padding-left:2px;color:#91a3b8;font-size:10px;font-weight:900;letter-spacing:1px}
.history-note{padding:9px 13px;background:rgba(202,138,4,.12);border-bottom:1px solid rgba(202,138,4,.22);color:#f5d98c;font-size:10px;font-weight:900;letter-spacing:.25px}
@media(max-width:760px){.date-filter-btn{min-width:104px;padding:9px 12px}.date-filter-bar{padding-bottom:9px}}


/* Filter ringkas: cari tim -> pilih tanggal -> pilih liga */
.date-picker,.league-select{width:100%;height:46px;border:1px solid rgba(95,137,183,.38);background:rgba(8,21,36,.92);color:#eef5ff;border-radius:10px;padding:0 14px;font-weight:800;font-size:13px;margin:0 0 14px;outline:none}.date-picker:focus,.league-select:focus{border-color:#f5c238;box-shadow:0 0 0 3px rgba(245,194,56,.12)}.league-select option{background:#101c2b;color:#fff}.filter-label{margin:12px 0 7px;font-size:10px;font-weight:900;letter-spacing:1px;color:#9eb0c4}.date-filter-bar{display:none!important}.filter-bar{display:none!important}

/* Tombol pencarian tim melayang */
.floating-team-search{position:fixed;right:18px;bottom:18px;z-index:45;display:flex;align-items:center;gap:8px;border:1px solid rgba(255,226,122,.72);border-radius:999px;padding:12px 16px;background:linear-gradient(135deg,#ffe071,#f3be25);color:#17130a;font-size:11px;font-weight:900;letter-spacing:.45px;box-shadow:0 12px 30px rgba(0,0,0,.34);cursor:pointer;transition:.18s}.floating-team-search:hover{transform:translateY(-2px);filter:brightness(1.05)}.floating-search-icon{font-size:22px;line-height:0;font-weight:900}
.team-search-modal{position:fixed;inset:0;z-index:60;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(1,7,13,.76);backdrop-filter:blur(8px)}.team-search-modal.open{display:flex}.team-search-dialog{width:min(620px,100%);max-height:min(720px,calc(100vh - 36px));overflow:auto;background:linear-gradient(160deg,rgba(11,25,42,.98),rgba(5,14,26,.99));border:1px solid rgba(110,150,194,.34);border-radius:18px;padding:20px;box-shadow:0 26px 80px rgba(0,0,0,.52)}.team-search-modal-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.team-search-modal h3{margin:2px 0 0;font-size:25px;line-height:1.1}.team-search-dialog p{margin:10px 0 16px;color:#aebdce;font-size:13px}.modal-close{width:38px;height:38px;border:1px solid rgba(126,155,190,.35);border-radius:10px;background:rgba(255,255,255,.06);color:#fff;font-size:25px;cursor:pointer}.floating-search-box{display:flex;gap:8px}.floating-search-box input{min-width:0;flex:1;height:48px;padding:0 14px;border:1px solid rgba(103,146,192,.42);border-radius:10px;background:rgba(5,16,28,.9);color:#fff;font:inherit;font-size:14px;font-weight:700;outline:none}.floating-search-box input:focus{border-color:#f7c83d;box-shadow:0 0 0 3px rgba(247,200,61,.12)}.floating-search-box .search-clear{display:none;width:42px;height:48px;border-radius:10px;border:1px solid rgba(126,155,190,.35);background:rgba(255,255,255,.06);color:#fff;font-size:24px;cursor:pointer}.floating-search-box .search-clear.visible{display:block}.floating-search-result{display:grid;gap:8px;margin-top:14px}.floating-search-empty{padding:16px 4px;color:#aebdce;font-size:13px}.floating-result-item{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:13px;border:1px solid rgba(93,133,179,.25);border-radius:11px;background:rgba(255,255,255,.035);color:#fff;text-align:left;cursor:pointer}.floating-result-item:hover{border-color:rgba(247,200,61,.65);background:rgba(247,200,61,.07)}.floating-result-main{min-width:0}.floating-result-league{display:block;margin-bottom:4px;color:#f5cf66;font-size:10px;font-weight:900;letter-spacing:.6px}.floating-result-match{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800}.floating-result-meta{display:block;margin-top:3px;color:#9fb0c2;font-size:11px;font-weight:700}.floating-result-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.floating-result-actions span{padding:6px 8px;border-radius:7px;background:rgba(108,141,181,.16);color:#dce7f4;font-size:9px;font-weight:900}
@media(max-width:760px){.floating-team-search{right:12px;bottom:12px;padding:11px 13px;font-size:10px}.floating-team-search span:last-child{display:none}.floating-search-icon{font-size:24px}.team-search-modal{padding:10px;align-items:flex-end}.team-search-dialog{border-radius:16px;max-height:82vh;padding:16px}.team-search-modal h3{font-size:22px}.floating-result-item{grid-template-columns:1fr}.floating-result-actions{justify-content:flex-start}}
.floating-result-actions button{border:1px solid rgba(247,200,61,.42);border-radius:7px;padding:7px 9px;background:rgba(247,200,61,.12);color:#ffe28a;font-size:9px;font-weight:900;cursor:pointer}.floating-result-actions button:hover{background:rgba(247,200,61,.23)}
