:root{--bg:#fff;--fg:#1f2933;--mut:#6b7684;--line:#e5e9ee;--soft:#f6f8fa;--acc:#26cb7c;--accd:#14935a;--link:#0f7cc4;--side:#fafbfc;--head:64px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font:400 16px/1.7 'Lexend','Noto Sans Thai',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline}
.navtoggle{position:absolute;opacity:0;pointer-events:none}
.top{position:sticky;top:0;z-index:30;height:var(--head);display:flex;align-items:center;gap:14px;padding:0 20px;background:#fff;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;color:var(--fg);font:700 18px 'Saira',sans-serif;letter-spacing:.2px}
.brand:hover{text-decoration:none}
.brand img{border-radius:6px}
.brand em{font-style:normal;color:var(--accd)}
.toplink{margin-left:auto;font:600 14px 'Saira',sans-serif;background:var(--acc);color:#fff;padding:7px 16px;border-radius:999px;white-space:nowrap}
.toplink:hover{text-decoration:none;background:var(--accd)}
.burger{display:none;cursor:pointer;width:34px;height:34px;flex-direction:column;justify-content:center;gap:5px;padding:0 6px}
.burger span{display:block;height:2px;background:var(--fg);border-radius:2px}
.shell{display:flex;max-width:1360px;margin:0 auto;align-items:flex-start}
.side{width:300px;flex:none;position:sticky;top:var(--head);height:calc(100vh - var(--head));overflow-y:auto;background:var(--side);border-right:1px solid var(--line)}
.scrim{display:none}
.sidebar{padding:20px 14px 40px}
ul.nav,ul.nav ul{list-style:none;margin:0;padding:0}
ul.nav ul{margin-left:12px;border-left:1px solid var(--line);padding-left:6px}
ul.nav li>a,ul.nav summary a{display:block;padding:6px 10px;border-radius:8px;color:#3b4654;font-size:14.5px;line-height:1.4}
ul.nav li>a:hover,ul.nav summary a:hover{background:#eef2f5;text-decoration:none}
ul.nav a.active{background:rgba(38,203,124,.14);color:var(--accd);font-weight:600}
ul.nav summary{list-style:none;cursor:pointer;position:relative}
ul.nav summary a{padding-right:30px}
ul.nav summary::-webkit-details-marker{display:none}
ul.nav summary::after{content:'';position:absolute;right:10px;top:50%;width:6px;height:6px;border-right:2px solid #98a3b0;border-bottom:2px solid #98a3b0;transform:translateY(-70%) rotate(45deg);transition:transform .15s}
ul.nav details[open]>summary::after{transform:translateY(-30%) rotate(-135deg)}
.main{flex:1;min-width:0;padding:0 40px}
.page{max-width:820px;margin:0 auto;padding:36px 0 20px}
.crumbs{font-size:13px;color:var(--mut);margin-bottom:10px}
.crumbs a{color:var(--mut)}
h1{font:700 38px/1.2 'Saira',sans-serif;margin:0 0 8px;letter-spacing:.2px}
.lead{font-size:18px;color:var(--mut);margin:0 0 24px}
.content h2{font:700 27px/1.3 'Saira',sans-serif;margin:2em 0 .5em;padding-top:.2em}
.content h3{font:600 21px/1.3 'Saira',sans-serif;margin:1.6em 0 .4em}
.content h4{font:600 17px/1.3 'Saira',sans-serif;margin:1.4em 0 .4em}
.content p{margin:0 0 1em}
.content p,.content li,.content td{overflow-wrap:anywhere}
.content ul,.content ol{padding-left:1.4em;margin:0 0 1em}
.content li{margin:.3em 0}
.content li>figure{margin:.8em 0}
figure{margin:1.4em 0;text-align:center}
figure img{max-width:100%;height:auto;border-radius:10px;border:1px solid var(--line);background:var(--soft)}
figcaption{font-size:14px;color:var(--mut);margin-top:6px}
.tablewrap{overflow-x:auto;margin:1.2em 0}
table{border-collapse:collapse;width:100%;font-size:15px}
th,td{border:1px solid var(--line);padding:9px 14px;text-align:left;vertical-align:top}
th{background:var(--soft);font-weight:600}
tbody tr:nth-child(even) td{background:#fcfdfd}
td p{margin:0}
.twocol{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.twocol .tablewrap{margin:0}
.small{font-size:14px;color:var(--mut)}
.callout{border-left:4px solid var(--acc);background:rgba(38,203,124,.08);padding:12px 16px;border-radius:0 10px 10px 0;margin:0 0 1.4em;font-size:15px;line-height:1.6}
code{font-family:ui-monospace,Consolas,monospace;font-size:.9em;background:var(--soft);padding:1px 6px;border-radius:5px;word-break:break-all}
ul.articles{list-style:none;padding:0;margin:0 0 1em}
ul.articles li{margin:0}
ul.articles a{display:block;padding:12px 16px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;color:var(--fg);font-weight:500}
ul.articles a:hover{border-color:var(--acc);text-decoration:none;background:var(--soft)}
.meta{font-size:13px;color:var(--mut);margin:2.4em 0 0;padding-top:1em;border-top:1px dashed var(--line)}
.pns{display:flex;gap:14px;margin:28px 0 0}
.pn{flex:1;border:1px solid var(--line);border-radius:12px;padding:12px 16px;color:var(--fg);display:flex;flex-direction:column}
.pn:hover{border-color:var(--acc);text-decoration:none}
.pn span{font-size:12px;color:var(--mut);text-transform:uppercase;letter-spacing:.06em}
.pn b{font-weight:500;color:var(--accd)}
.pn.next{text-align:right;margin-left:auto}
.foot{max-width:820px;margin:30px auto 0;padding:22px 0 36px;border-top:1px solid var(--line);font-size:13px;color:var(--mut);text-align:center}
@media (max-width:900px){
  .burger{display:flex}
  .main{padding:0 16px}
  .side{position:fixed;left:0;top:var(--head);bottom:0;height:auto;z-index:40;transform:translateX(-100%);transition:transform .2s;width:min(320px,86vw);box-shadow:4px 0 24px rgba(0,0,0,.12)}
  .navtoggle:checked~.shell .side{transform:none}
  .navtoggle:checked~.shell .scrim{display:block;position:fixed;left:min(320px,86vw);right:0;top:var(--head);bottom:0;background:rgba(0,0,0,.3)}
  h1{font-size:30px}
  .content h2{font-size:23px}
  .twocol{grid-template-columns:1fr}
  .pns{flex-direction:column}
  .top{padding:0 14px}
}
@media (max-width:480px){
  .top{gap:10px}
  .brand{font-size:15px;gap:8px}
  .toplink{padding:6px 12px}
}

/* player guide additions */
.sidehead{margin:18px 10px 6px;font:600 12px 'Saira',sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--mut)}
.sidehead:first-child{margin-top:0}
.langrow{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.langrow a{padding:4px 12px;border:1px solid var(--line);border-radius:999px;font-size:14px;color:var(--fg)}
.langrow a:hover{border-color:var(--acc);text-decoration:none}
.langrow a.on{background:var(--acc);border-color:var(--acc);color:#fff;font-weight:600}
.risk{border-left:4px solid #d9822b;background:#fff4e5;color:#5c3a0c;padding:14px 18px;border-radius:0 10px 10px 0;margin:0 0 1.6em;font-size:15px;line-height:1.6}
.risk strong{display:block;font:700 17px 'Saira','Noto Sans Thai',sans-serif;margin-bottom:4px;color:#8a4b08}
.warn{border-left:4px solid #d64545;background:#fdecec;color:#5a1c1c;padding:12px 16px;border-radius:0 10px 10px 0;margin:1em 0;font-size:15px;line-height:1.6}
.tip{border-left:4px solid var(--link);background:#eaf4fb;padding:12px 16px;border-radius:0 10px 10px 0;margin:1em 0;font-size:15px;line-height:1.6}
.ui{display:inline-block;font:600 .85em/1.4 'Saira','Noto Sans Thai',sans-serif;background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:0 7px;white-space:normal}
q.msg{quotes:"“" "”";font-style:italic;color:#3b4654;background:var(--soft);padding:0 5px;border-radius:4px}
.content section{scroll-margin-top:80px}
.content ol.steps{list-style:none;counter-reset:st;padding:0}
.content ol.steps>li{counter-increment:st;position:relative;padding:2px 0 2px 46px;margin:0 0 1em;min-height:34px}
.content ol.steps>li::before{content:counter(st);position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;background:var(--acc);color:#fff;font:700 15px/32px 'Saira',sans-serif;text-align:center}
table.narrow{width:auto;min-width:50%}
details{border:1px solid var(--line);border-radius:10px;margin:0 0 10px;background:#fff}
details[open]{border-color:var(--acc)}
summary{cursor:pointer;padding:12px 16px;font-weight:500;list-style:none;position:relative;padding-right:40px}
summary::-webkit-details-marker{display:none}
summary::after{content:'';position:absolute;right:16px;top:50%;width:7px;height:7px;border-right:2px solid #98a3b0;border-bottom:2px solid #98a3b0;transform:translateY(-70%) rotate(45deg);transition:transform .15s}
details[open]>summary::after{transform:translateY(-30%) rotate(-135deg)}
details>div{padding:0 16px 6px}
.content details p:last-child{margin-bottom:.6em}
html[lang=th] .content h2,html[lang=th] h1{line-height:1.45}
@media (max-width:900px){.top{gap:10px}}
/* privacy section (s8): the contact for data requests, filled by the server (PRIVACY_CONTACT); a marker until it is set */
.contact{font-weight:600;overflow-wrap:anywhere}
.contact-missing{background:#fff3c4;color:#7a5600;padding:1px 6px;border-radius:5px}
