:root{--bg:#f6f8fb;--surface:#fff;--ink:#131e2a;--muted:#5b6b7c;--line:#e3e9f1;--brand:#2457d6;--brand-dark:#1a43a8;--brand-soft:#eef3ff;--accent:#6b46ff;--radius:16px;--radius-sm:10px;--shadow:0 1px 2px #1020340f, 0 10px 30px #1020340f;--wrap:1120px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Hiragino Kaku Gothic ProN", "Apple SD Gothic Neo", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:88px}body{background:var(--bg);color:var(--ink);font-family:var(--font);margin:0;font-size:16px;line-height:1.65}img,svg{max-width:100%}a{color:var(--brand);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--brand-dark)}:focus-visible{outline-offset:2px;border-radius:4px;outline:3px solid #8ab4ff}.skip-link{z-index:200;background:var(--ink);color:#fff;border-radius:8px;padding:8px 14px;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:8px}.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}.muted{color:var(--muted)}.small{font-size:.875rem}.site-header{z-index:40;-webkit-backdrop-filter:saturate(180%)blur(10px);backdrop-filter:saturate(180%)blur(10px);border-bottom:1px solid var(--line);background:#ffffffeb;position:sticky;top:0}.header-in{flex-wrap:wrap;align-items:center;gap:24px;min-height:64px;padding-top:8px;padding-bottom:8px;display:flex}.brand{color:var(--ink);letter-spacing:-.01em;align-items:center;gap:10px;font-weight:700;text-decoration:none;display:inline-flex}.brand-name{font-size:1.05rem}.header-nav{gap:20px;margin-left:8px;display:flex}.header-nav a{color:var(--muted);font-size:.95rem;font-weight:600;text-decoration:none}.header-nav a:hover,.header-nav a.router-link-active{color:var(--ink)}.lang-switch{flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto;display:flex}.lang-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-right:2px;font-size:.75rem}.lang-chip{color:var(--muted);border:1px solid #0000;border-radius:999px;padding:2px 8px;font-size:.8rem;text-decoration:none}.lang-chip:hover{border-color:var(--line);color:var(--ink)}.lang-chip.is-active{background:var(--brand-soft);color:var(--brand-dark);font-weight:600}.site-main{width:100%;max-width:var(--wrap);min-height:60vh;margin:0 auto;padding:0 20px 56px}.home,.listing,.article,.tool-page,.codes-page,.legal{padding-top:28px}.hero{border:1px solid var(--line);box-shadow:var(--shadow);background:radial-gradient(120% 140% at 10% 0,#e9f0ff 0%,#f7f9ff 45%,#fff 100%);border-radius:24px;padding:clamp(28px,5vw,64px)}.kicker{color:var(--brand);letter-spacing:.09em;text-transform:uppercase;margin:0 0 8px;font-size:.8rem;font-weight:700}.hero h1{letter-spacing:-.025em;max-width:16ch;margin:0 0 16px;font-size:clamp(2.1rem,5vw,3.6rem);line-height:1.08}.lede{color:var(--muted);max-width:62ch;margin:0 0 24px;font-size:clamp(1rem,1.6vw,1.15rem)}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-stats{flex-wrap:wrap;gap:28px;margin:34px 0 0;padding:0;list-style:none;display:flex}.hero-stats li{border-right:1px solid var(--line);flex-direction:column;min-width:92px;padding-right:24px;display:flex}.hero-stats li:last-child{border-right:0}.hero-stats strong{font-size:1.5rem;line-height:1.2}.hero-stats span{color:var(--muted);font-size:.85rem}.section{margin-top:56px}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:20px;display:flex}.section-head h2{letter-spacing:-.02em;margin:0;font-size:clamp(1.4rem,2.4vw,1.9rem)}.section-head p{color:var(--muted);max-width:54ch;margin:0}.card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:18px;display:grid}.card-grid-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .18s,box-shadow .18s}.card:hover{transform:translateY(-2px);box-shadow:0 2px 4px #1020340f,0 18px 40px #10203417}.card-link{height:100%;color:inherit;flex-direction:column;gap:8px;padding:22px;text-decoration:none;display:flex}.card-link h3,.card-title{letter-spacing:-.01em;margin:0;font-size:1.2rem;line-height:1.35}.card-link p{color:var(--muted);margin:0;font-size:.95rem}.card-meta{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem!important}.arrow{color:var(--brand);margin-top:auto;padding-top:10px;font-size:.9rem;font-weight:600}.principle{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px}.principle h3{margin:0 0 8px;font-size:1.05rem}.principle p{color:var(--muted);margin:0;font-size:.95rem}.sample-note{border-left:3px solid var(--brand);background:var(--brand-soft);color:var(--muted);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin:48px 0 0;padding:12px 16px;font-size:.875rem}.btn{min-height:44px;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-dark);color:#fff}.btn-ghost{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn-ghost:hover{color:var(--ink);border-color:#b9c6d8}.btn-text{color:var(--muted);background:0 0;padding:0 8px}.btn-text:hover{color:var(--ink)}.breadcrumbs ol{color:var(--muted);flex-wrap:wrap;gap:6px;margin:0 0 18px;padding:0;font-size:.85rem;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";color:#a6b4c4;margin-right:6px}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs a:hover{color:var(--ink)}.page-head{margin-bottom:28px}.page-head h1{letter-spacing:-.02em;margin:0 0 8px;font-size:clamp(1.9rem,4vw,2.7rem)}.article-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:32px;display:grid}@media (width>=980px){.article-layout{grid-template-columns:minmax(0,1fr) 300px}}.article-head{margin-bottom:28px}.article-head h1{letter-spacing:-.025em;margin:0 0 14px;font-size:clamp(1.9rem,4.2vw,2.8rem);line-height:1.15}.meta{color:var(--muted);margin:0;font-size:.875rem}.prose{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(22px,4vw,42px)}.prose>p:first-child{margin-top:0}.prose h2{letter-spacing:-.015em;margin:2.2em 0 .6em;scroll-margin-top:88px;font-size:clamp(1.3rem,2.4vw,1.6rem)}.prose h2:first-child{margin-top:0}.prose p{margin:0 0 1.1em}.prose ul{margin:0 0 1.4em;padding-left:1.2em}.prose li{margin-bottom:.4em}.affiliate{border-radius:var(--radius);background:var(--brand-soft);border:1px solid #cfe0ff;margin:32px 0;padding:22px}.affiliate p{margin:0 0 12px}.affiliate-label{letter-spacing:.07em;text-transform:uppercase;color:var(--brand-dark);font-size:.75rem;font-weight:700}.affiliate .small{color:var(--muted);margin:12px 0 0}.faq{border-top:1px solid var(--line);margin-top:40px;padding-top:8px}.faq h2{margin-top:1.2em}.faq-item{border-bottom:1px solid var(--line);padding:6px 0}.faq-item summary{cursor:pointer;padding:10px 0;font-weight:600;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";float:right;color:var(--muted);font-weight:400}.faq-item[open] summary:after{content:"−"}.faq-item p{color:var(--muted);margin:0 0 14px}.related-tool{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-top:32px;padding:22px}.related-tool h2{margin:0 0 6px;font-size:1.15rem}.related-tool p{color:var(--muted);margin:0 0 14px}.article-side{flex-direction:column;gap:20px;display:flex}.toc{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;position:sticky;top:88px}.toc h2{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 10px;font-size:.8rem}.toc ol{margin:0;padding-left:18px;font-size:.9rem}.toc li{margin-bottom:8px}.toc a{color:var(--ink);text-decoration:none}.toc a:hover{color:var(--brand);text-decoration:underline}@media (width<=979px){.article-side{display:none}}.calculator{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));align-items:end;gap:16px;padding:22px;display:grid}.field{flex-direction:column;gap:6px;font-size:.9rem;font-weight:600;display:flex}.field input,.field select{border:1px solid var(--line);border-radius:var(--radius-sm);min-height:44px;font:inherit;color:var(--ink);background:#fff;width:100%;padding:8px 12px;font-weight:400}.field input[readonly]{background:var(--bg);color:var(--muted)}.field input:focus,.field select:focus{border-color:var(--brand);outline-offset:0;outline:2px solid #c9dbff}.field-check{grid-template-columns:auto 1fr;align-items:center;gap:4px 10px;display:grid}.field-check span{grid-column:1/-1}.field-check input{width:20px;height:20px;min-height:0;margin:0}.field-check small{color:var(--muted);grid-column:1/-1;font-weight:400}.calculator .btn{grid-column:1/-1;justify-self:start}.hint{color:var(--muted);margin:12px 0 0}.result{border-radius:var(--radius);color:#fff;background:#101a26;flex-direction:column;justify-content:center;gap:10px;min-height:96px;margin-top:18px;padding:22px;display:flex}.result-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:16px;display:grid}.result-grid>div{flex-direction:column;gap:4px;display:flex}.result-label{color:#a9bad0;text-transform:uppercase;letter-spacing:.06em;font-size:.8rem}.result-value{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:clamp(1.25rem,3vw,1.7rem);line-height:1.15}.result-meta{color:#cfdbea;margin:0;font-size:.9rem}.share-row{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.ranking{margin-top:40px}.table-wrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);overflow-x:auto}.price-table{border-collapse:collapse;width:100%;min-width:640px;font-size:.9rem}.price-table th,.price-table td{text-align:left;vertical-align:middle;border-bottom:1px solid var(--line);padding:12px 14px}.price-table thead th{background:var(--bg);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;font-size:.75rem}.price-table tbody tr:last-child th,.price-table tbody tr:last-child td{border-bottom:0}.price-table tbody tr.is-best{background:var(--brand-soft)}.price-table td{font-variant-numeric:tabular-nums}@media (width<=640px){.price-table{min-width:0}.price-table thead{display:none}.price-table tbody tr{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;padding:14px;display:grid}.price-table tbody tr+tr{border-top:1px solid var(--line)}.price-table th,.price-table td{border:0;padding:0}.price-table tbody th{grid-column:1/-1}.price-table td:before{content:attr(data-label);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px;font-size:.68rem;display:block}}.channel-name{font-weight:600}.channel-links{margin-top:4px;font-size:.8rem;font-weight:400;display:block}.badge{letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.7rem;font-weight:700;display:inline-block}.badge-best{background:var(--brand);color:#fff}.badge-valid{color:#166534;background:#dcfce7}.badge-expired{color:#6b7280;background:#eceff3}.badge-pending{color:#8a5a00;background:#fff4d6}.formula{color:var(--muted);margin:16px 0 0}.notice{border:1px solid #cfe0ff;border-left:4px solid var(--brand);border-radius:var(--radius-sm);background:var(--brand-soft);color:var(--ink);margin:0 0 20px;padding:14px 16px;font-size:.9rem}.filter-bar{flex-wrap:wrap;gap:8px;margin:22px 0 28px;display:flex}.filter-chip{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:.85rem;font-weight:600;display:inline-flex}.filter-chip:hover{color:var(--ink);border-color:#b9c6d8}.filter-chip.is-active{background:var(--ink);border-color:var(--ink);color:#fff}.filter-count{font-variant-numeric:tabular-nums;opacity:.8}.code-group{margin-top:32px}.code-group-title{flex-wrap:wrap;align-items:baseline;gap:10px;margin:0 0 12px;font-size:1.15rem;display:flex}.code-card{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px 18px;margin-bottom:12px;padding:18px 20px;display:grid}.code-card.is-valid{border-left-color:#16a34a}.code-card.is-expired{border-left-color:#c4ccd6}.code-card.is-pending{border-left-color:#e0a100}.code-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.code-value{background:var(--bg);letter-spacing:.04em;word-break:break-all;border:1px dashed #c8d4e3;border-radius:8px;padding:4px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.05rem}.btn-small{min-height:36px;padding:0 14px;font-size:.85rem}.code-reward{margin:12px 0 0;font-weight:600}.code-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-right:6px;font-size:.75rem;font-weight:700;display:inline-block}.code-pending-note{color:#8a5a00;margin:10px 0 0;font-size:.85rem}.code-meta{flex-wrap:wrap;gap:10px 26px;margin:14px 0 0;display:flex}.code-meta dt{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:700}.code-meta dd{margin:2px 0 0;font-size:.88rem}.code-meta a{word-break:break-all}.empty-state{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin:32px 0;padding:clamp(24px,5vw,44px)}.empty-state h2{margin:0 0 8px;font-size:1.25rem}.empty-state p{color:var(--muted);margin:0 0 16px}.related-games{flex-wrap:wrap;gap:10px;margin-top:36px;display:flex}.card-featured{background:linear-gradient(160deg,#fff 0%,#f2f6ff 100%);border-color:#bcd0ff}.legal-main{max-width:820px}.legal-main.prose,.legal .prose{padding:clamp(22px,4vw,40px)}.template-note{border-radius:var(--radius-sm);color:#43317f;background:#f6f2ff;border:1px dashed #c6b8ff;margin:0 0 24px;padding:14px 16px;font-size:.875rem}.contact-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);flex-wrap:wrap;justify-content:space-between;gap:16px;padding:16px 18px;display:flex}.contact-card span{color:var(--muted);font-weight:600}.legal-table{border-collapse:collapse;width:100%;margin:8px 0 20px;font-size:.9rem;overflow-x:auto}.legal-table th,.legal-table td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 10px}.legal-table th{background:var(--bg)}.not-found{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-width:640px;box-shadow:var(--shadow);margin:64px auto;padding:clamp(28px,6vw,56px)}.not-found h1{margin:0 0 12px;font-size:clamp(1.8rem,4vw,2.4rem)}.not-found p{color:var(--muted);margin:0 0 22px}.ad-slot{border-radius:var(--radius);color:var(--muted);background:repeating-linear-gradient(135deg,#f7fafd,#f7fafd 10px,#eff4fa 10px 20px);border:1px dashed #c8d4e3;flex-direction:column;justify-content:center;margin:28px 0;display:flex;position:relative;overflow:hidden}.ad-in-content{min-height:250px}@media (width>=800px){.ad-in-content{min-height:120px}}.ad-sidebar{min-height:600px}.ad-sticky{z-index:20;background:#fff;min-height:96px;margin-top:40px;position:sticky;bottom:0;box-shadow:0 -6px 24px #10203414}.ad-label{z-index:1;letter-spacing:.08em;text-transform:uppercase;color:#7a8a9c;font-size:10px;position:absolute;top:6px;left:8px}.ad-container{min-height:inherit;flex:1;justify-content:center;align-items:center;display:flex}.ad-placeholder{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;margin:0;padding:28px 16px 16px;font-size:.85rem;display:flex}.ad-placeholder small{color:#8a99aa;max-width:46ch;font-size:.78rem}.ad-close{z-index:2;width:28px;height:28px;color:var(--ink);cursor:pointer;background:#101a2614;border:0;border-radius:50%;font-size:18px;line-height:1;position:absolute;top:4px;right:6px}@media (width<=979px){.ad-sidebar{display:none}}.consent{z-index:100;pointer-events:none;padding:12px;position:fixed;bottom:0;left:0;right:0}.consent-inner{pointer-events:auto;color:#eef3f8;background:#101a26;border-radius:18px;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:center;gap:14px;max-width:1040px;margin:0 auto;padding:20px 22px;display:grid;box-shadow:0 18px 50px #080f1859}.consent-copy p{color:#cfdbea;margin:0 0 6px;font-size:.9rem}.consent-copy a{color:#a9c6ff}.consent-title{font-weight:700;color:#fff!important;font-size:1rem!important}.consent-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.consent .btn-primary{color:#101a26;background:#fff}.consent .btn-primary:hover{color:#101a26;background:#e6edf7}.consent .btn-ghost{color:#eef3f8;background:0 0;border-color:#3a4a5c}.consent .btn-ghost:hover{color:#fff;border-color:#6b7f94}.consent .btn-text{color:#a9bad0}.consent-prefs{flex-direction:column;gap:10px;display:flex}.consent-option{align-items:flex-start;gap:10px;font-size:.85rem;display:flex}.consent-option input{width:18px;height:18px;margin-top:3px}.consent-option span{flex-direction:column;display:flex}.consent-option small{color:#a9bad0}@media (width<=760px){.consent-inner{grid-template-columns:1fr;max-height:70vh;overflow-y:auto}.consent-actions{justify-content:flex-start}}.site-footer{color:#b9c7d8;background:#0e1721;margin-top:64px;padding:48px 0 20px}.footer-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:32px;display:grid}.footer-about{max-width:320px}.footer-brand{color:#fff;margin:0 0 6px;font-size:1.05rem;font-weight:700}.footer-about p{margin:0 0 10px;font-size:.9rem}.footer-heading{color:#fff;text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px;font-size:.8rem}.footer-list{margin:0 0 20px;padding:0;font-size:.9rem;list-style:none}.footer-list li{margin-bottom:7px}.footer-list a{color:#b9c7d8;text-decoration:none}.footer-list a:hover{color:#fff;text-decoration:underline}.footer-actions{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.link-button{color:#b9c7d8;font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;font-size:.9rem;text-decoration:underline}.link-button:hover{color:#fff}.footer-bottom{color:#7f8fa2;border-top:1px solid #24313f;margin-top:28px;padding-top:18px;font-size:.82rem}.footer-bottom p{margin:0}@media (width<=720px){.header-in{gap:10px 16px}.header-nav{order:3;width:100%;margin-left:0;padding-bottom:6px}.lang-switch{margin-left:auto}.lang-label{display:none}.hero-stats li{border-right:0;padding-right:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}
