:root{--bg-dark: #060911;--bg-card: rgba(15, 21, 35, .88);--border-subtle: rgba(255, 255, 255, .14);--accent-red: #e6192e;--accent-cyan: #00e5ff;--accent-gold: #ffbe0b;--text-main: #f8fafc;--text-dim: #94a3b8;font-family:Inter,Segoe UI,Hiragino Kaku Gothic ProN,Meiryo,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{min-height:100%;background:radial-gradient(circle at 50% 0%,#162038,#060911 65%);color:var(--text-main);line-height:1.5}.portal-wrapper{max-width:1180px;margin:0 auto;padding:28px 20px 64px;display:flex;flex-direction:column;gap:36px}.portal-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--border-subtle)}.portal-brand{display:flex;align-items:center;gap:14px}.portal-logo{width:48px;height:48px;border-radius:10px;background:linear-gradient(135deg,#e6192e,#8f0b1a);display:flex;align-items:center;justify-content:center;font-weight:900;font-style:italic;font-size:1.35rem;letter-spacing:-1px;box-shadow:0 8px 24px #e6192e73}.portal-brand-text h1{font-size:1.35rem;font-weight:900;letter-spacing:.08em}.portal-brand-text p{font-size:.78rem;color:var(--text-dim);letter-spacing:.04em}.portal-domain-badge{background:#00e5ff1f;border:1px solid rgba(0,229,255,.4);color:#a5f3fc;padding:6px 14px;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.04em}.hero-banner{position:relative;border-radius:18px;overflow:hidden;background:linear-gradient(125deg,#141c30f2,#2d1026e6 55%,#0c1220fa);border:1px solid rgba(255,255,255,.18);border-left:5px solid var(--accent-red);padding:36px 34px;box-shadow:0 24px 60px #000000a6;display:flex;flex-direction:column;gap:16px}.hero-tag{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;background:var(--accent-red);color:#fff;font-size:.72rem;font-weight:800;padding:4px 12px;border-radius:999px;letter-spacing:.08em}.hero-banner h2{font-size:clamp(1.6rem,3.2vw,2.4rem);font-weight:900;letter-spacing:.02em}.hero-banner p{max-width:720px;color:#cbd5e1;font-size:.95rem}.hero-cta-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:6px}.play-btn{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,#e6192e,#a30b1d);color:#fff;text-decoration:none;font-weight:800;font-size:1rem;padding:14px 28px;border-radius:10px;border:1px solid rgba(255,140,155,.65);box-shadow:0 10px 30px #e6192e73;transition:transform .15s ease,box-shadow .15s ease}.play-btn:hover{transform:translateY(-2px);box-shadow:0 14px 36px #e6192ea6}.section-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:16px}.section-heading h3{font-size:1.15rem;font-weight:800;letter-spacing:.06em}.section-heading span{font-size:.8rem;color:var(--text-dim)}.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:22px}.game-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.game-card.active-game{border-color:#00e5ff73;box-shadow:0 16px 40px #0000008c}.game-card.active-game:hover{transform:translateY(-4px);border-color:var(--accent-cyan);box-shadow:0 20px 48px #00e5ff2e}.card-visual{height:170px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;position:relative}.card-visual.touge-visual{background:radial-gradient(circle at 80% 25%,rgba(255,140,66,.45),transparent 50%),linear-gradient(135deg,#1b1938,#4b1d3f,#0f172a)}.card-visual.coming-visual-1{background:linear-gradient(135deg,#0f172a,#1e293b)}.card-visual.coming-visual-2{background:linear-gradient(135deg,#111827,#1f2937)}.dir-badge{align-self:flex-start;background:#000000a6;border:1px solid rgba(255,255,255,.22);color:#e2e8f0;font-family:JetBrains Mono,Consolas,monospace;font-size:.72rem;padding:3px 9px;border-radius:6px}.status-pill{align-self:flex-start;font-size:.68rem;font-weight:800;padding:4px 10px;border-radius:999px}.status-pill.live{background:#00e676;color:#03150a}.status-pill.soon{background:#ffffff1f;color:var(--text-dim)}.card-visual-title{font-size:1.35rem;font-weight:900;font-style:italic;text-shadow:0 4px 16px rgba(0,0,0,.7)}.card-body{padding:20px;display:flex;flex-direction:column;gap:14px;flex:1}.card-body h4{font-size:1.08rem;font-weight:800}.card-body p{font-size:.84rem;color:var(--text-dim)}.feature-pills{display:flex;flex-wrap:wrap;gap:6px}.feature-pill{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#cbd5e1;font-size:.7rem;font-weight:600;padding:3px 8px;border-radius:5px}.card-footer{padding:0 20px 20px}.card-play-link{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:linear-gradient(135deg,#00b4d8,#0077b6);color:#fff;text-decoration:none;font-weight:800;font-size:.9rem;padding:12px;border-radius:8px;transition:filter .15s ease}.card-play-link:hover{filter:brightness(1.12)}.card-disabled-btn{display:flex;align-items:center;justify-content:center;width:100%;background:#ffffff0d;color:var(--text-dim);font-weight:700;font-size:.82rem;padding:11px;border-radius:8px;border:1px dashed rgba(255,255,255,.15)}.portal-footer{text-align:center;padding-top:24px;border-top:1px solid var(--border-subtle);font-size:.78rem;color:var(--text-dim)}
