:root{font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:#f4f1e8;background:#0c291f}*{box-sizing:border-box}body{margin:0;background:linear-gradient(155deg,#10362a 0%,#091f1a 80%);min-height:100vh;line-height:1.6}a{color:#f2cf7c}.bar{background:#0b251f;border-bottom:1px solid #97784855;padding:18px max(20px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.brand{color:#eed18a;font-weight:850;letter-spacing:.06em;text-decoration:none}.bar nav{display:flex;flex-wrap:wrap;gap:18px}.bar nav a{font-size:13px;color:#d5e4d9;text-decoration:none}.container{max-width:1120px;padding:28px 18px 70px;margin:0 auto}.intro{text-align:center;margin:0 auto 28px;max-width:730px}.intro h1{font-size:clamp(28px,4.5vw,42px);line-height:1.2;margin:8px 0}.intro p{color:#bbcfc5}.eyebrow,.tag{font-weight:850;color:#e9cd87;letter-spacing:.12em;font-size:11px}.plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.panel{background:linear-gradient(140deg,#1b4737,#113127);border:1px solid #69937c55;border-radius:20px;padding:26px;margin-bottom:19px;box-shadow:0 12px 44px #0002}.plan.vip{border-color:#d66b6b99;background:linear-gradient(150deg,#422731,#20382e)}.plan h2{font-size:32px;color:#f8df94;margin:9px 0}.plan.vip h2{color:#ffb7b3}.muted{color:#bdd0c2;font-size:14px}.cta{border:1px solid #e0c080;background:#e4c981;color:#14372b;text-align:center;text-decoration:none;border-radius:11px;font:800 14px/1.3 system-ui,-apple-system,"Segoe UI",Arial,sans-serif;display:block;width:100%;padding:14px 15px;cursor:pointer;margin-top:15px}.cta.inline{display:inline-block;width:auto}.cta.inactive{background:#2b4a3c;color:#bfd0c4;border-color:#567a62;cursor:not-allowed}label{display:block;font-weight:700;font-size:13px;margin:15px 0 0}input,textarea,select{font:inherit;display:block;width:100%;padding:12px;border:1px solid #8ca8967c;border-radius:9px;background:#09271e;color:#f7f5ed;margin-top:5px}input:focus,textarea:focus,select:focus{outline:2px solid #e7c980}label.agree{display:flex;gap:10px;align-items:flex-start;font-weight:500}label.agree input{width:auto;flex:none;margin-top:5px}.alert{border:1px solid #73b39a;background:#23503f;border-radius:10px;padding:15px;margin-bottom:20px}.alert.danger{border-color:#d38282;background:#482b32}.transfer{background:#10271e;padding:15px;border-radius:12px;border:1px dashed #d0bd80}.transfer p{margin:6px 0}.table-scroll{max-width:100%;overflow:auto}table{width:100%;border-collapse:collapse;min-width:650px}td,th{padding:12px;text-align:left;vertical-align:top;border-bottom:1px solid #78917a44}td{font-size:13px}th{color:#edca84;font-size:12px}summary{cursor:pointer;color:#f1d287}details{padding:9px 0}footer{text-align:center;color:#b5c8bb;font-size:12px;padding:20px}@media(max-width:680px){.plans{grid-template-columns:1fr}.panel{padding:20px}.bar{padding:14px 16px}.bar nav{gap:10px}}

/* GD4.4: visual feedback during the existing payOS checkout redirect. */
.pts-loading-dots{display:inline-flex;min-width:1.1em;margin-left:.12em}
.pts-loading-dots i{font-style:normal;opacity:.25;animation:pts-dot-rise 1s infinite}
.pts-loading-dots i:nth-child(2){animation-delay:.2s}
.pts-loading-dots i:nth-child(3){animation-delay:.4s}
.pts-loading-status{display:flex;align-items:center;gap:12px;color:#ddeddf;font-size:14px;padding:9px 0 5px}
.pts-loading-spinner{width:24px;height:24px;display:inline-block;flex:0 0 24px;border:3px solid rgba(231,198,118,.2);border-top-color:#f2d085;border-radius:50%;animation:pts-rotate .8s linear infinite}
@keyframes pts-dot-rise{0%,75%,100%{opacity:.2;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}
@keyframes pts-rotate{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.pts-loading-dots i,.pts-loading-spinner{animation:none;opacity:1}}

/* GD4.4 V2: approved animated payOS waiting screen (visual only). */
.pts-checkout-wait{position:relative;overflow:hidden}
.pts-checkout-wait::before{content:"";position:absolute;right:-105px;top:-185px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(212,186,111,.12),transparent 66%);pointer-events:none}
.pts-wait-top{display:flex;gap:17px;align-items:center;position:relative}
.pts-wait-emblem{width:94px;height:94px;object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 6px 18px rgba(0,0,0,.35))}
.pts-wait-top h2{font-size:clamp(20px,3vw,29px);margin:7px 0 0;line-height:1.25}
.pts-checkout-wait .pts-loading-status{display:flex;align-items:center;gap:16px;padding:21px 0 8px;margin-top:15px;border-top:1px solid rgba(115,154,125,.35)}
.pts-checkout-wait .pts-loading-spinner{width:47px;height:47px;flex:0 0 47px;border-width:4px;border-right-color:#efd18a}
.pts-loading-status strong{display:block;color:#fff0c4;font-size:16px}
.pts-loading-status small{display:block;color:#c6d9ca;font-size:13px;margin-top:4px}
.pts-wait-progress{height:11px;background:#0b241d;border:1px solid #699772;border-radius:999px;overflow:hidden;margin-top:18px}
.pts-wait-progress span{display:block;height:100%;width:0%;background:linear-gradient(90deg,#bb8c37,#ffe7a1,#d8bb6e);border-radius:999px;box-shadow:0 0 16px rgba(245,208,133,.4)}
.pts-wait-stat{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#c4d8ca;font-size:12px;margin:9px 1px}
.pts-wait-stat strong{color:#f9dda0;font-variant-numeric:tabular-nums}
.pts-wait-order{border-top:1px solid rgba(115,154,125,.30);padding-top:12px;color:#c4d8c9}
.pts-wait-order strong{color:#f4d48b}
@media(max-width:680px){.pts-wait-emblem{width:66px;height:66px}.pts-wait-top{gap:11px}.pts-checkout-wait .pts-loading-spinner{width:38px;height:38px;flex-basis:38px}.pts-checkout-wait .pts-loading-status{gap:12px}}
@media(prefers-reduced-motion:reduce){.pts-wait-progress span{transition:none}}

/* GD4.5: stronger visual feedback and disabled purchase controls. */
.pts-cta-locked{opacity:.48;filter:grayscale(.45);pointer-events:none;user-select:none}
.pts-checkout-wait .pts-wait-progress{height:13px;border-color:#c5a45e}
.pts-checkout-wait .pts-wait-progress>span{box-shadow:0 0 18px #f7d69370;transition:width .09s linear}
.pts-checkout-wait .pts-loading-spinner{animation-duration:.75s}

/* GD4.5.1: spinner driven by the same requestAnimationFrame clock as progress. */
.pts-checkout-wait .pts-loading-spinner{
  animation:none!important;
  transform-origin:50% 50%;
  will-change:transform;
  border:4px solid rgba(231,198,118,.22);
  border-top-color:#ffe1a0;
  border-right-color:#d7a84a;
  box-shadow:0 0 10px rgba(242,208,133,.13);
}
