:root{--ps-green:#16824e;--ps-ink:#15242c;--ps-muted:#657781;--ps-line:#e0e9e4}
*{box-sizing:border-box}body{margin:0;background:#f7faf8;color:var(--ps-ink);font-family:Inter,Arial,sans-serif}.ps-wrap{max-width:1200px;margin:auto;padding-left:22px;padding-right:22px}.ps-header{background:#fff;border-bottom:1px solid var(--ps-line)}.ps-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:24px}.ps-brand{font-weight:900;font-size:22px;text-decoration:none;color:var(--ps-green)}.ps-brand span{color:var(--ps-ink)}.ps-header nav{display:flex;gap:22px;flex-wrap:wrap}.ps-header nav a,.ps-breadcrumb a{color:var(--ps-muted);text-decoration:none;font-weight:600;font-size:14px}.ps-header nav a:hover,.ps-breadcrumb a:hover{color:var(--ps-green)}.ps-breadcrumb{display:flex;gap:10px;align-items:center;color:var(--ps-muted);font-size:13px;padding-top:24px;padding-bottom:24px}.ps-hero{background:linear-gradient(110deg,#113d31,#16784f);border-radius:24px;padding:36px 42px;color:#fff;display:flex;justify-content:space-between;align-items:center;overflow:hidden}.ps-eyebrow{font-size:12px;letter-spacing:.16em;font-weight:800;color:#bdf6d2}.ps-hero h1{font-size:clamp(29px,4vw,48px);line-height:1.08;margin:11px 0}.ps-hero p{opacity:.84;margin:0;font-size:16px;line-height:1.6}.ps-hero-mark{font-size:118px;font-weight:900;opacity:.12;transform:rotate(-14deg)}.ps-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start;padding-top:30px;padding-bottom:60px}.ps-catalog,.ps-checkout{background:#fff;border:1px solid var(--ps-line);border-radius:20px;padding:24px}.ps-section-head{display:flex;justify-content:space-between;gap:15px}.ps-section-head h2,.ps-checkout h2{margin:0 0 7px;font-size:22px}.ps-section-head p,.ps-small,.ps-note{color:var(--ps-muted);font-size:13px;line-height:1.55;margin:0}.ps-section-head>span{white-space:nowrap;font-size:11px;color:var(--ps-muted)}.ps-search{display:flex;gap:9px;margin:22px 0 16px}.ps-search input,.ps-checkout input{min-width:0;width:100%;border:1px solid #d3ded8;border-radius:11px;background:#fff;padding:13px 14px;font:inherit;color:var(--ps-ink)}.ps-search input:focus,.ps-checkout input:focus{outline:2px solid #a2e2ba;border-color:var(--ps-green)}button{font:inherit;cursor:pointer}.ps-search button,.ps-primary{border:0;background:var(--ps-green);color:#fff;font-weight:800;border-radius:11px;padding:12px 20px}.ps-primary{width:100%;margin-top:18px}.ps-primary:disabled{background:#adbbb3;cursor:not-allowed}.ps-list-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 15px}.ps-list-head strong{font-size:14px}.ps-list-head button{border:0;background:none;color:var(--ps-green);font-size:13px;font-weight:700}.ps-status{color:var(--ps-muted);font-size:13px;line-height:1.5;margin:8px 0}.ps-status:empty{display:none}.ps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.ps-game{padding:0;text-align:left;border:1px solid var(--ps-line);border-radius:15px;overflow:hidden;background:#fff;transition:border-color .15s,box-shadow .15s}.ps-game:hover,.ps-game.active{border-color:var(--ps-green);box-shadow:0 5px 16px #145c3220}.ps-game img{display:block;width:100%;aspect-ratio:1.5;object-fit:cover;background:#eaf4ee}.ps-game-body{padding:12px}.ps-game strong{font-size:14px;line-height:1.3;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ps-game small{display:block;color:var(--ps-muted);margin-top:5px}.ps-checkout{position:sticky;top:18px}.ps-selected{padding:14px;background:#f3f8f4;border:1px solid var(--ps-line);border-radius:12px;color:var(--ps-muted);font-size:13px;line-height:1.5;margin:17px 0}.ps-selected strong{display:block;color:var(--ps-ink);font-size:16px;margin-bottom:3px}.ps-checkout label{display:block;font-size:13px;font-weight:700;margin:17px 0 8px}.ps-checkout label input{display:block;margin-top:8px}.ps-secondary{border:1px solid #aad7b9;border-radius:9px;background:#ecf8ef;color:#17683f;padding:8px 13px;font-size:12px;font-weight:700}.ps-summary{border-top:1px solid var(--ps-line);border-bottom:1px solid var(--ps-line);margin:19px 0;padding:14px 0;display:grid;gap:11px}.ps-summary>div{display:flex;justify-content:space-between;gap:10px;font-size:13px}.ps-summary span{color:var(--ps-muted)}.ps-note{margin-bottom:15px}.ps-checkout>.ps-small{margin-top:15px}@media(max-width:800px){.ps-layout{grid-template-columns:1fr}.ps-checkout{position:static}.ps-header nav{gap:10px}.ps-header nav a{font-size:12px}.ps-hero-mark{display:none}}@media(max-width:560px){.ps-wrap{padding-left:14px;padding-right:14px}.ps-header-inner{min-height:62px}.ps-header nav a:nth-child(2),.ps-header nav a:nth-child(3){display:none}.ps-hero{padding:27px 22px;border-radius:17px}.ps-hero p{font-size:14px}.ps-layout{gap:16px;padding-top:18px}.ps-catalog,.ps-checkout{padding:17px;border-radius:16px}.ps-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ps-section-head{display:block}.ps-section-head>span{display:block;margin-top:7px}}
.ps-image-fallback{display:grid;place-items:center;width:100%;aspect-ratio:1.5;background:linear-gradient(130deg,#e8f5ed,#cee8d7);color:#369263;font-size:38px;font-weight:900}
.ps-cookie-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.ps-cookie-actions .ps-primary{width:auto;margin-top:0;padding:8px 13px;font-size:12px}.ps-cookie-actions .ps-secondary{margin:0}

/* Halaman pembeli mengikuti pola katalog dan detail Gift Gamepass. */
body.private-server-page{background:var(--bg);color:var(--text-1);font-family:'Plus Jakarta Sans',sans-serif}
.private-server-page .page-wrap{max-width:1180px}
.private-server-page .item-category-panel{padding-top:10px}
.private-server-page .item-desc{margin:0 0 20px}
.private-server-page .ps-updated{color:var(--text-3);font-size:12px;font-weight:600}
.private-server-page .ps-catalog-search{display:flex;gap:10px;align-items:stretch;max-width:720px;margin:18px 0 24px}
.private-server-page .ps-catalog-search input{min-width:0;width:auto;flex:1}
.private-server-page .ps-catalog-search button{width:auto;flex:0 0 auto;padding-inline:22px}
.private-server-page .catalog-section-line{align-items:center;gap:12px}
.private-server-page .catalog-section-line .item-subtab{order:2;white-space:nowrap}
.private-server-page .catalog-section-line::after{order:1}
.private-server-page .ps-catalog-status{color:var(--text-2);font-size:13px;line-height:1.6;margin:14px 0}
.private-server-page .ps-catalog-status:empty{display:none}
.private-server-page .ps-catalog-status.ps-unsupported{padding:18px 20px;border:1px solid #d9e7de;border-radius:14px;background:#f3f8f4;color:var(--text-1);font-size:16px;font-weight:700}
.private-server-page .ps-game-grid{justify-content:flex-start;gap:20px;margin-top:18px}
.private-server-page .ps-game-grid .item-game-card{display:flex;flex-direction:column;width:150px;height:auto;min-height:0}
.private-server-page .ps-game-grid .item-game-media{position:relative;flex:none;width:100%;height:auto;aspect-ratio:16/9}
.private-server-page .ps-game-grid .item-game-media img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.private-server-page .ps-game-grid .item-game-name{display:-webkit-box;max-height:4.05em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.private-server-page #detailPage{padding-top:8px}
.private-server-page .ps-checkout-action{display:flex;justify-content:flex-end;margin:18px 0 24px}
.private-server-page .ps-checkout-action .btn{min-width:210px}
.private-server-page .ps-checkout-action .btn:disabled{cursor:not-allowed;opacity:.6}
.private-server-page .purchase-grid{align-items:stretch}
.private-server-page .purchase-grid>.purchase-form-card,.private-server-page .purchase-grid>.checkout-card{height:100%}
.private-server-page .purchase-form-card .field-card{min-width:0}
.private-server-page #orderForm input{display:block;width:100%;min-height:44px;padding:11px 13px;border:1.5px solid var(--border);border-radius:10px;background:#fff;color:var(--text-1);font:inherit}
.private-server-page #orderForm input:focus{outline:0;border-color:var(--primary);box-shadow:var(--focus-ring)}
.private-server-page .username-lookup-row{display:flex;align-items:center;gap:10px}
.private-server-page .username-lookup-row input{min-width:0;flex:1}
.private-server-page .ps-username-row{margin-top:7px}
.private-server-page .ps-username-row .avatar-thumb-sm{width:44px;height:44px;flex:0 0 44px;object-fit:cover}
.private-server-page .ps-username-row input{min-height:44px}
.private-server-page .ps-username-row input.valid{border-color:var(--primary)!important;box-shadow:0 0 0 4px rgba(22,130,78,.12)}
.private-server-page .ps-username-row input.invalid{border-color:#dc4d4d!important}
.private-server-page #userStatus{min-height:0;margin:6px 0 0}
.private-server-page #userStatus:empty{display:none}
.private-server-page .ps-summary-user{margin:14px 0}
.private-server-page .ps-purchase-note{margin:16px 0 0;color:var(--text-2);font-size:12px;line-height:1.65}
.private-server-page .ps-guest-note{display:block;margin-top:12px;line-height:1.6}
.private-server-page .checkout-card .summary-row strong{max-width:58%;overflow-wrap:anywhere;text-align:right}
@media(max-width:640px){.private-server-page .ps-game-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px!important;width:100%}.private-server-page .ps-game-grid .item-game-card{width:100%;height:auto;min-width:0}.private-server-page .ps-game-grid .item-game-media{width:100%;height:auto;aspect-ratio:16/9;margin-bottom:8px}.private-server-page .ps-game-grid .item-game-name{min-height:2.7em;max-height:2.7em;font-size:11px;line-height:1.35;-webkit-line-clamp:2}.private-server-page .ps-catalog-search{max-width:none}.private-server-page .ps-username-row{flex-wrap:nowrap}.private-server-page .ps-username-row input{flex-basis:auto;min-width:0;min-height:40px!important;height:40px!important}.private-server-page .ps-username-row .avatar-thumb-sm{width:36px!important;height:36px!important;flex-basis:36px}}
@media(max-width:640px){body.private-server-page .purchase-form-card .ps-username-row input{min-height:40px!important;height:40px!important}body.private-server-page .purchase-form-card .ps-username-row .avatar-thumb-sm{width:36px!important;height:36px!important}}
.private-server-page #privateServerReviews { margin-top: 24px; }
.private-server-page .item-game-hero-media{background:#edf4ef}
.private-server-page .item-game-hero-media img{object-fit:contain}
.private-server-page #privateServerReviewsTrack { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); transform: none; }
.private-server-page #privateServerReviewsTrack .category-review-card { min-width: 0; }
@media(max-width:900px){.private-server-page #privateServerReviewsTrack{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.private-server-page #privateServerReviewsTrack{grid-template-columns:1fr}}
@media(max-width:640px){.private-server-page .purchase-grid>.purchase-form-card,.private-server-page .purchase-grid>.checkout-card{height:auto}.private-server-page #detailPage .checkout-card{display:block!important}}
.private-server-page .ps-game-info{display:grid;gap:22px;margin-top:26px}
.private-server-page .ps-info-block{padding:22px;border:1px solid var(--border);border-radius:18px;background:#fff}
.private-server-page .ps-info-block h3{margin:0 0 18px;color:var(--text-1);font-size:19px;line-height:1.3}
.private-server-page .ps-benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.private-server-page .ps-benefit-card{min-width:0;padding:17px;border:1px solid var(--border);border-radius:14px;background:#fbfdfb}
.private-server-page .ps-benefit-icon{width:38px;height:38px;display:grid;place-items:center;margin-bottom:14px;border-radius:11px;background:#e8f7ee;color:var(--primary)}
.private-server-page .ps-benefit-icon svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.private-server-page .ps-benefit-card strong{display:block;color:var(--text-1);font-size:14px}
.private-server-page .ps-benefit-card p{margin:6px 0 0;color:var(--text-2);font-size:12px;line-height:1.55}
.private-server-page .ps-info-note{margin:16px 0 0;color:var(--text-2);font-size:12px;line-height:1.6}
@media(max-width:800px){.private-server-page .ps-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.private-server-page .ps-game-info{gap:15px;margin-top:18px}.private-server-page .ps-info-block{padding:17px;border-radius:15px}.private-server-page .ps-info-block h3{font-size:17px}.private-server-page .ps-benefit-grid{gap:9px}.private-server-page .ps-benefit-card{padding:13px}.private-server-page .ps-benefit-icon{margin-bottom:10px}}
@media(max-width:640px){.private-server-page .ps-checkout-action{margin:14px 0 18px}.private-server-page .ps-checkout-action .btn{width:100%}}
@media(max-width:640px){.private-server-page .item-game-hero-media{aspect-ratio:16/9!important;max-height:none!important}.private-server-page .item-game-hero-media img{object-fit:contain!important}}

/* Aksi pembelian berada di sisi sampul pada halaman detail game. */
.private-server-page .item-game-hero{display:flex;align-items:stretch;gap:24px}
.private-server-page .item-game-hero-media{flex:0 0 56%;width:56%;max-width:56%;min-width:0;align-self:flex-start;aspect-ratio:16/9}
.private-server-page .item-game-hero-media img{display:block;width:100%;height:100%}
.private-server-page .ps-cover-placeholder{display:grid;place-items:center;width:100%;height:100%;padding:20px;text-align:center;background:linear-gradient(110deg,#e9f5ed 8%,#f7fbf8 35%,#e9f5ed 65%);background-size:200% 100%;color:var(--text-2);font-size:13px;font-weight:700;animation:ps-cover-loading 1.5s ease-in-out infinite}
.private-server-page .ps-cover-placeholder.is-unavailable{animation:none;background:#edf4ef}
@keyframes ps-cover-loading{from{background-position:100% 0}to{background-position:-100% 0}}
@media(prefers-reduced-motion:reduce){.private-server-page .ps-cover-placeholder{animation:none}}
.private-server-page .item-game-hero-copy{flex:1 1 0;min-width:0;display:flex;flex-direction:column;padding:8px 8px 8px 0}
.private-server-page .item-game-hero-copy .item-back-btn{align-self:flex-start}
.private-server-page .item-game-hero-copy h2{overflow-wrap:anywhere}
.private-server-page .ps-game-snapshot{flex:none;min-width:0;height:51px;max-height:51px;overflow:hidden;margin-top:3px}
.private-server-page .ps-game-snapshot-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;line-height:14px}
.private-server-page .ps-game-snapshot-head b{font-size:11px;color:var(--text-1)}
.private-server-page .ps-game-snapshot-head a{flex:none;color:var(--primary);font-size:10.5px;font-weight:800;text-decoration:none}
.private-server-page .ps-game-snapshot-head a.hidden{display:none}
.private-server-page .ps-game-snapshot-head a:hover{text-decoration:underline}
.private-server-page .ps-game-snapshot p{display:-webkit-box;max-width:100%;margin:3px 0 0;color:var(--text-2);font-size:11.5px;line-height:16px;white-space:normal;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.private-server-page .ps-checkout-action{display:grid;grid-template-columns:1fr;gap:9px;justify-content:stretch;width:100%;margin:auto 0 0;padding-top:8px}
.private-server-page .ps-checkout-action.hidden{display:none}
.private-server-page .ps-checkout-action .btn{width:100%;min-width:0;min-height:44px;margin:0}
.private-server-page .ps-checkout-action .btn:not(:disabled){transition:transform .18s ease,box-shadow .18s ease}
.private-server-page .ps-checkout-action .btn:not(:disabled):hover{transform:translateY(-1px)}
.private-server-page .ps-checkout-action .btn:focus-visible{outline:3px solid #9be3b7;outline-offset:2px}
.private-server-page .ps-checkout-action #cartBtn{border-color:var(--border);background:#fff;color:var(--text-1)}
@media(max-width:800px){.private-server-page .item-game-hero{flex-direction:column;gap:14px}.private-server-page .item-game-hero-media{flex:none;width:100%;max-width:none}.private-server-page .item-game-hero-copy{width:100%;padding:4px 2px 2px}}
@media(max-width:640px){.private-server-page .ps-checkout-action{margin:0;padding-top:14px}.private-server-page .ps-checkout-action .btn{min-height:42px}}
@media(max-width:640px){.private-server-page .ps-game-snapshot{height:51px;max-height:51px}.private-server-page .ps-game-snapshot p{display:-webkit-box!important;max-width:100%!important;margin:3px 0 0!important;font-size:11px!important;line-height:16px!important;white-space:normal!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}}
