:root{--bg:#0d0d0d;--bg-warm:#100e0d;--surface:#141414;--surface-2:#1b1a19;--line:#ffffff12;--line-strong:#ffffff24;--line-warm:#ed531a47;--accent:#ed531a;--accent-bright:#ee602c;--accent-tint:#ed531a1a;--text:#fff;--text-soft:#d6d5d4;--text-muted:#9a999a;--ok:#3ccf8e;--ok-tint:#3ccf8e1f;--warn:#f5b83d;--warn-tint:#f5b83d1f;--err:#ff6b5b;--err-tint:#ff6b5b1f;--line-green:#06c755;--font-display:"Archivo", "Anuphan", system-ui, sans-serif;--font-thai:"Anuphan", "IBM Plex Sans Thai", sans-serif;--font-body:"IBM Plex Sans Thai", "Anuphan", system-ui, sans-serif;--font-mono:"Share Tech Mono", ui-monospace, monospace;--r-sm:6px;--r-md:12px;--r-lg:20px;--maxw:720px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:radial-gradient(1200px 500px at 50% -200px, #ed531a1f, transparent 70%), var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:16px;line-height:1.6}a{color:var(--accent-bright)}h1,h2,h3{font-family:var(--font-thai);margin:0 0 .5em;line-height:1.25}h1{font-size:clamp(1.6rem,5vw,2.2rem);font-weight:700}h2{font-size:1.15rem;font-weight:600}p{margin:0 0 .75em}.muted{color:var(--text-muted)}.mono{font-family:var(--font-mono);letter-spacing:.04em}.center{text-align:center}.eyebrow{color:var(--accent);font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.4rem;font-size:.78rem}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:10;padding:12px 16px;padding-top:max(12px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#0d0d0dd9;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.logo{align-items:baseline;gap:8px;text-decoration:none;display:flex}.logo-mark{font-family:var(--font-display);color:var(--text);letter-spacing:.08em;font-weight:800}.logo-sub{font-family:var(--font-display);color:var(--accent);letter-spacing:.2em;font-size:.7rem;font-weight:600}.topnav{align-items:center;gap:16px;font-size:.92rem;display:flex}.topnav a{color:var(--text-soft);text-decoration:none}.topnav a:hover{color:var(--text)}.lang-switch{border:1px solid var(--line-strong);border-radius:var(--r-pill,999px);font-family:var(--font-display);padding:2px 10px;font-size:.75rem}.content{width:100%;max-width:var(--maxw);flex:1;margin:0 auto;padding:24px 16px 64px}.footer{padding:20px 16px calc(20px + env(safe-area-inset-bottom));border-top:1px solid var(--line);color:var(--text-muted);flex-wrap:wrap;justify-content:center;gap:8px 20px;font-size:.85rem;display:flex}.footer a{color:var(--text-muted)}.btn{border-radius:var(--r-md);min-height:48px;font:600 1rem var(--font-thai);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 20px;text-decoration:none;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}.btn:disabled,.btn.is-disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-bright)}.btn-ghost{color:var(--text);border-color:var(--line-strong);background:0 0}.btn-ghost:hover{border-color:var(--accent)}.btn-line{background:var(--line-green);color:#fff}.btn-sm{min-height:38px;padding:0 14px;font-size:.9rem}.btn-block{width:100%}.link-btn{color:inherit;font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.actions{flex-wrap:wrap;gap:12px;display:flex}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);margin:0 0 16px;padding:20px}fieldset.panel{min-width:0}legend{font-family:var(--font-thai);margin-left:-6px;padding:0 6px;font-size:1.05rem;font-weight:600}.alert{border-radius:var(--r-md);margin:8px 0 16px;padding:12px 14px;font-size:.95rem}.alert p{margin-bottom:8px}.alert-ok{background:var(--ok-tint);color:var(--ok);border:1px solid #3ccf8e4d}.alert-hint{background:var(--accent-tint);color:var(--text-soft);border:1px solid var(--line-warm)}.alert-error{background:var(--err-tint);color:#ffb3aa;border:1px solid #ff6b5b4d}.hero{padding:16px 0 24px}.hero .lead{color:var(--text-soft);font-size:1.05rem}.benefits{gap:10px;margin:20px 0 0;padding:0;list-style:none;display:grid}.benefits li{color:var(--text-soft);padding-left:28px;position:relative}.benefits li:before{content:"";background:var(--accent-tint);border:1px solid var(--accent);border-radius:4px;width:14px;height:14px;position:absolute;top:.45em;left:0}.login-panel .btn{width:100%;margin-top:12px}.choice-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.choice-row.three{grid-template-columns:repeat(3,1fr)}.choice{border-radius:var(--r-md);cursor:pointer;background:var(--surface-2);border:1px solid var(--line-strong);min-height:56px;color:var(--text);font:500 .95rem var(--font-thai);padding:8px}.choice.is-on{border-color:var(--accent);background:var(--accent-tint);box-shadow:0 0 0 1px var(--accent) inset}.divider{color:var(--text-muted);align-items:center;gap:12px;margin:16px 0 4px;font-size:.85rem;display:flex}.divider:before,.divider:after{content:"";background:var(--line-strong);flex:1;height:1px}.dev-only{color:var(--warn);border-style:dashed}.register h1,.field{margin-bottom:16px}.field:last-child{margin-bottom:0}.field>label,.label{color:var(--text-soft);margin-bottom:6px;font-weight:500;display:block}.optional{color:var(--text-muted);font-size:.88em;font-weight:400}input:not([type=checkbox]):not([type=radio]),select,textarea{border-radius:var(--r-md);background:var(--bg);width:100%;min-height:48px;color:var(--text);border:1px solid var(--line-strong);font:400 1rem var(--font-body);padding:10px 14px}textarea{resize:vertical}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-muted) 50%), linear-gradient(135deg, var(--text-muted) 50%, transparent 50%);background-position:calc(100% - 20px),calc(100% - 15px);background-repeat:no-repeat;background-size:5px 5px;padding-right:36px}select:disabled{opacity:.5}input:focus,select:focus,textarea:focus,.btn:focus-visible,.choice:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.hint{color:var(--text-muted);margin:6px 0 0;font-size:.85rem}.error{color:var(--err);margin:6px 0 0;font-size:.85rem}.has-error input,.has-error select,.has-error textarea{border-color:var(--err)}.grid-2{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.pill-group{flex-wrap:wrap;gap:8px;display:flex}.pill{cursor:pointer;background:var(--surface-2);border:1px solid var(--line-strong);-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;min-height:40px;padding:0 14px;font-size:.92rem;display:inline-flex}.pill input{opacity:0;pointer-events:none;position:absolute}.pill.is-on{background:var(--accent-tint);border-color:var(--accent);color:#fff}.pill:focus-within{outline:2px solid var(--accent);outline-offset:1px}.check{cursor:pointer;color:var(--text-soft);align-items:flex-start;gap:12px;margin-bottom:14px;font-size:.95rem;display:flex}.check input{width:20px;height:20px;accent-color:var(--accent);flex:none;margin-top:3px}.check.has-error{color:var(--err)}.check.is-locked{cursor:default}.brand-mark{border-radius:var(--r-sm);background:#fff;align-items:center;height:32px;padding:4px 10px;display:inline-flex}.brand-mark img{width:auto;height:24px;display:block}.brand-lenovo{padding:0;overflow:hidden}.brand-lenovo img{height:32px}.choice .brand-mark{pointer-events:none}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.page-head h1{margin:0}.cards{gap:14px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 20px;position:relative;overflow:hidden}.card:before{content:"";background:var(--ok);width:3px;position:absolute;inset:0 auto 0 0}.card.status-expiring:before{background:var(--warn)}.card.status-expired:before{background:var(--text-muted)}.card-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.card-title{font-family:var(--font-display);letter-spacing:.02em;margin-bottom:12px;font-size:1.3rem}.status-pill{border-radius:999px;padding:3px 10px;font-size:.78rem;font-weight:600}.status-pill.status-active{background:var(--ok-tint);color:var(--ok)}.status-pill.status-expiring{background:var(--warn-tint);color:var(--warn)}.status-pill.status-expired{color:var(--text-muted);background:#ffffff0f}.facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 8px;display:grid}.facts dt{color:var(--text-muted);font-size:.78rem}.facts dd{overflow-wrap:anywhere;margin:0;font-weight:500}.review-box{border-color:var(--line-warm);background:linear-gradient(180deg, var(--accent-tint), transparent 70%), var(--surface)}.review-links{flex-wrap:wrap;gap:10px;margin-bottom:10px;display:flex}.code-input{letter-spacing:.4em;text-align:center;max-width:240px;font-size:1.6rem}.claim form .btn{margin-top:4px}.back-link{color:var(--text-muted);margin-bottom:16px;text-decoration:none;display:inline-block}.videos{gap:14px;display:grid}.video{aspect-ratio:16/9;border-radius:var(--r-md);background:#000;width:100%;position:relative;overflow:hidden}.video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.video-facade{border:1px solid var(--line-strong);cursor:pointer;background-position:50%;background-size:cover;padding:0}.play-icon{background:var(--accent);border-radius:12px;width:68px;height:48px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.play-icon:after{content:"";border:10px solid #0000;border-left:17px solid #fff;border-right-width:0;position:absolute;top:14px;left:27px}.prose h2{margin-top:1.4em}.prose ul{color:var(--text-soft);padding-left:1.2em}.prose p{color:var(--text-soft)}.consent{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:50;border-radius:var(--r-lg);background:var(--surface-2);border:1px solid var(--line-strong);max-width:560px;margin:0 auto;padding:18px;position:fixed;box-shadow:0 20px 50px #0009}.consent h2{font-size:1rem}.consent p{color:var(--text-soft);font-size:.9rem}.consent-options{margin:8px 0 4px}.consent-actions{flex-wrap:wrap;gap:8px;display:flex}.consent-actions .btn{flex:auto;min-height:42px;font-size:.92rem}@media (width<=520px){.grid-2{grid-template-columns:1fr}.facts{grid-template-columns:1fr 1fr}.page-head .btn{width:100%}.choice-row.three{grid-template-columns:1fr}}
