:root{--asp-bg:#ffffff;--asp-soft:#F8FAFC;--asp-card:#ffffff;--asp-text:#0F172A;--asp-muted:#475569;--asp-line:#E2E8F0;--asp-brand:#4F46E5;--asp-brand2:#6366F1;--asp-brand-soft:#EEF2FF;--asp-gold:#F59E0B;--asp-shadow:0 10px 30px rgba(15,23,42,.08);--asp-radius:16px}
html[data-theme=dark]{--asp-bg:#0B1120;--asp-soft:#0F172A;--asp-card:#111827;--asp-text:#F1F5F9;--asp-muted:#94A3B8;--asp-line:#1E293B;--asp-brand-soft:#1E1B4B;--asp-shadow:0 10px 30px rgba(0,0,0,.4)}
html[data-theme=dark] body{background:var(--asp-bg);color:var(--asp-text)}
html[data-theme=dark] .alcash-header{background:#0F172A!important;border-color:#1E293B!important}
html[data-theme=dark] .alcash-header a,html[data-theme=dark] .alcash-nav a{color:#E2E8F0!important}
html[data-theme=dark] footer,html[data-theme=dark] .alcash-footer{background:#020617!important;color:#CBD5E1}
.asp{background:var(--asp-bg);color:var(--asp-text);font-size:16px;line-height:1.6;overflow-x:hidden}
.asp *{box-sizing:border-box}
.asp a{color:inherit;text-decoration:none}
.asp h1,.asp h2,.asp h3,.asp h4{color:var(--asp-text);line-height:1.2;margin:0 0 .5em;font-weight:800;letter-spacing:-.01em}
.asp-wrap{max-width:1200px;margin:0 auto;padding:0 20px}
.asp-narrow{max-width:820px}
.asp-center{text-align:center;margin-top:36px}.asp-center-text{text-align:center}
.asp-section{padding:84px 0}.asp-pt0{padding-top:20px}
.asp-soft{background:var(--asp-soft)}
.asp-head{text-align:center;max-width:680px;margin:0 auto 44px}
.asp-head h2{font-size:clamp(28px,3.4vw,40px)}
.asp-head p{color:var(--asp-muted)}
.asp-kicker{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--asp-brand);margin-bottom:10px}
.asp-lead{font-size:18px;color:var(--asp-muted);max-width:560px}
.asp-btn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--asp-brand),var(--asp-brand2));color:#fff!important;font-weight:700;padding:14px 26px;border-radius:12px;box-shadow:0 8px 20px rgba(79,70,229,.3);transition:transform .2s,box-shadow .2s;border:0;cursor:pointer}
.asp-btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(79,70,229,.4)}
.asp-btn-sm{padding:9px 16px;font-size:14px;border-radius:10px}
.asp-btn-ghost{background:var(--asp-card);color:var(--asp-text)!important;border:1px solid var(--asp-line);box-shadow:none}
.asp-btn-ghost:hover{border-color:var(--asp-brand);box-shadow:none}
.asp-btn-light{background:#fff;color:var(--asp-brand)!important}
.asp-btn-outline{background:transparent;border:1px solid rgba(255,255,255,.6);box-shadow:none}
/* hero */
.asp-hero{padding:72px 0 80px;background:radial-gradient(900px 400px at 85% 10%,rgba(99,102,241,.14),transparent 60%),radial-gradient(700px 360px at 0% 100%,rgba(245,158,11,.08),transparent 60%),var(--asp-bg)}
.asp-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center}
.asp-hero h1{font-size:clamp(34px,5vw,58px);margin:16px 0 18px}
.asp-pill{display:inline-flex;align-items:center;gap:8px;background:var(--asp-brand-soft);color:var(--asp-brand);font-weight:700;font-size:13px;padding:6px 14px;border-radius:999px}
html[data-theme=dark] .asp-pill{color:#C7D2FE}
.asp-dot{width:8px;height:8px;border-radius:50%;background:#22C55E;box-shadow:0 0 0 0 rgba(34,197,94,.6);animation:aspPing 1.6s infinite}
.asp-hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}
.asp-trust{list-style:none;padding:0;margin:8px 0 0;display:flex;gap:28px;flex-wrap:wrap}
.asp-trust li{display:flex;flex-direction:column}.asp-trust b{font-size:22px}.asp-trust span{font-size:13px;color:var(--asp-muted)}
.asp-hero-visual{position:relative}
.asp-hero-card{display:block;position:relative;border-radius:22px;overflow:hidden;box-shadow:0 30px 60px rgba(15,23,42,.18);transform:rotate(1.2deg);transition:transform .4s}
.asp-hero-card:hover{transform:rotate(0) scale(1.01)}
.asp-hero-card img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover}
.asp-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-70%);width:68px;height:68px;border-radius:50%;background:rgba(255,255,255,.95);color:var(--asp-brand);display:grid;place-items:center;font-size:24px;box-shadow:0 0 0 0 rgba(255,255,255,.6);animation:aspPing 2s infinite}
.asp-hero-card-foot{display:flex;justify-content:space-between;gap:12px;padding:16px 18px;background:var(--asp-card)}
.asp-hero-card-foot span{color:var(--asp-brand);font-weight:700;white-space:nowrap}
.asp-float{position:absolute;background:var(--asp-card);color:var(--asp-text);font-weight:700;font-size:14px;padding:10px 14px;border-radius:12px;box-shadow:var(--asp-shadow);animation:aspFloat 5s ease-in-out infinite}
.asp-float-1{top:-16px;left:-18px}.asp-float-2{bottom:60px;right:-16px;animation-delay:1.5s}
/* grid + cards */
.asp-grid{display:grid;gap:24px}.asp-grid-3{grid-template-columns:repeat(3,1fr)}.asp-grid-4{grid-template-columns:repeat(4,1fr)}
.asp-card,.asp-post,.asp-step,.asp-feature,.asp-testi,.asp-toolcard{background:var(--asp-card);border:1px solid var(--asp-line);border-radius:var(--asp-radius);overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}
.asp-card:hover,.asp-post:hover,.asp-toolcard:hover{transform:translateY(-4px);box-shadow:var(--asp-shadow);border-color:rgba(99,102,241,.4)}
.asp-card-thumb{position:relative;display:block;aspect-ratio:16/9;background:var(--asp-brand-soft);overflow:hidden}
.asp-card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.asp-card:hover .asp-card-thumb img{transform:scale(1.05)}
.asp-chip{position:absolute;top:12px;left:12px;background:rgba(255,255,255,.95);color:#0F172A;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px}
.asp-chip-sale{left:auto;right:12px;background:#EF4444;color:#fff}
.asp-card-body{padding:20px}
.asp-card-body h3{font-size:19px}.asp-card-body h3 a:hover{color:var(--asp-brand)}
.asp-card-body p{color:var(--asp-muted);font-size:14px;margin:0 0 14px}
.asp-rating{display:flex;align-items:center;gap:6px;font-size:14px;margin-bottom:8px}.asp-rating span{color:var(--asp-muted)}
.asp-stars{--r:5;display:inline-block;font-size:15px;line-height:1;background:linear-gradient(90deg,var(--asp-gold) calc(var(--r)/5*100%),#CBD5E1 0);-webkit-background-clip:text;background-clip:text;color:transparent}
.asp-stars:before{content:"★★★★★";letter-spacing:1px}
.asp-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.asp-meta span{font-size:12px;background:var(--asp-soft);border:1px solid var(--asp-line);color:var(--asp-muted);padding:3px 10px;border-radius:999px}
.asp-card-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--asp-line);padding-top:14px}
.asp-price s{color:var(--asp-muted);font-size:14px}.asp-price b{font-size:22px;color:var(--asp-text)}
.asp-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:0 0 32px}
.asp-tabs button,.asp-tabs a{background:var(--asp-card);border:1px solid var(--asp-line);color:var(--asp-muted);padding:8px 18px;border-radius:999px;font-weight:600;cursor:pointer;transition:all .2s;font-size:14px}
.asp-tabs .is-active,.asp-tabs button:hover,.asp-tabs a:hover{background:var(--asp-brand);border-color:var(--asp-brand);color:#fff}
.asp-card.is-hidden{display:none}
.asp-step{padding:28px}.asp-step span{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--asp-brand-soft);color:var(--asp-brand);font-weight:800;margin-bottom:16px}
.asp-step p,.asp-feature p,.asp-toolcard p{color:var(--asp-muted);margin:0;font-size:15px}
.asp-feature{padding:26px}.asp-feature i{font-style:normal;font-size:28px;display:block;margin-bottom:12px}.asp-feature h3,.asp-step h3,.asp-toolcard h3{font-size:18px}
.asp-testi{padding:24px;margin:0}.asp-testi img{width:100%;border-radius:10px;margin-bottom:14px}.asp-testi blockquote{margin:0 0 12px;font-size:16px}.asp-testi figcaption{font-weight:700;color:var(--asp-brand)}
.asp-toolcard{display:block;padding:26px}.asp-toolcard span{display:inline-block;margin-top:14px;color:var(--asp-brand);font-weight:700}
/* faq */
.asp-faq details{background:var(--asp-card);border:1px solid var(--asp-line);border-radius:12px;margin-bottom:12px;padding:0 20px;transition:border-color .2s}
.asp-faq details[open]{border-color:rgba(99,102,241,.5)}
.asp-faq summary{cursor:pointer;font-weight:700;padding:18px 0;list-style:none;display:flex;justify-content:space-between}
.asp-faq summary::-webkit-details-marker{display:none}
.asp-faq summary:after{content:"+";font-size:22px;color:var(--asp-brand);transition:transform .2s}
.asp-faq details[open] summary:after{transform:rotate(45deg)}
.asp-faq p{color:var(--asp-muted);margin:0 0 18px}.asp-faq a{color:var(--asp-brand);text-decoration:underline}
.asp-final{padding:20px 0 90px}
.asp-final-inner{background:linear-gradient(135deg,#4F46E5,#7C3AED);border-radius:24px;padding:56px 32px;text-align:center;color:#fff;position:relative;overflow:hidden}
.asp-final-inner h2{color:#fff;font-size:clamp(26px,3.4vw,40px)}.asp-final-inner p{color:#E0E7FF}.asp-final-inner .asp-hero-ctas{justify-content:center;margin-bottom:0}
/* blog */
.asp-blog-hero{padding:64px 0 36px;background:radial-gradient(700px 300px at 50% 0,rgba(99,102,241,.12),transparent 70%)}
.asp-blog-hero h1{font-size:clamp(30px,4.4vw,48px)}.asp-blog-hero .asp-lead{margin:0 auto 26px}
.asp-search{display:flex;max-width:520px;margin:0 auto;background:var(--asp-card);border:1px solid var(--asp-line);border-radius:14px;padding:6px;box-shadow:var(--asp-shadow)}
.asp-search input[type=search]{flex:1;border:0;background:transparent;padding:10px 14px;font-size:15px;color:var(--asp-text);outline:0}
.asp-search button{background:var(--asp-brand);color:#fff;border:0;border-radius:10px;padding:10px 18px;font-weight:700;cursor:pointer}
.asp-post-thumb{display:block;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#EEF2FF,#E0E7FF)}
.asp-post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.asp-post:hover .asp-post-thumb img{transform:scale(1.05)}
.asp-post-ph{display:grid;place-items:center;height:100%;font-size:54px;font-weight:800;color:var(--asp-brand2)}
.asp-post-body{padding:20px}.asp-post-body h3{font-size:19px}.asp-post-body h3 a:hover{color:var(--asp-brand)}.asp-post-body p{color:var(--asp-muted);font-size:14px;margin:0}
.asp-post-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:13px;color:var(--asp-muted);margin-bottom:10px}
.asp-chip-inline{background:var(--asp-brand-soft);color:var(--asp-brand);font-weight:700;padding:3px 10px;border-radius:999px}
.asp-featured-wrap{grid-column:1/-1}
.asp-featured-wrap .asp-post{display:grid;grid-template-columns:1.2fr 1fr}
.asp-featured-wrap .asp-post-thumb{aspect-ratio:auto;min-height:280px}
.asp-featured-wrap .asp-post-body{padding:34px;display:flex;flex-direction:column;justify-content:center}.asp-featured-wrap h3{font-size:28px}
.asp-pager{display:flex;justify-content:center;gap:8px;margin-top:40px}
.asp-pager .page-numbers{padding:8px 14px;border:1px solid var(--asp-line);border-radius:10px;background:var(--asp-card)}.asp-pager .current{background:var(--asp-brand);color:#fff;border-color:var(--asp-brand)}
.asp-empty{text-align:center;padding:50px 20px;border:1px dashed var(--asp-line);border-radius:var(--asp-radius)}.asp-empty p{color:var(--asp-muted)}
.asp-blog-cta{margin-top:56px}
.asp-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--asp-brand),#A855F7);z-index:100000;transition:width .1s}
.asp-article-head{padding:48px 0 24px}
.asp-article-head h1{font-size:clamp(30px,4.4vw,46px);margin:14px 0}
.asp-crumbs{font-size:14px;color:var(--asp-muted)}.asp-crumbs a:hover{color:var(--asp-brand)}
.asp-article-img{max-width:1000px;margin-top:24px}.asp-article-img img{width:100%;border-radius:20px;box-shadow:var(--asp-shadow)}
.asp-article-grid{display:grid;grid-template-columns:240px minmax(0,760px);gap:48px;justify-content:center;padding-top:24px;padding-bottom:60px}
.asp-toc{position:sticky;top:100px;align-self:start;font-size:14px;border-left:2px solid var(--asp-line);padding-left:16px}
.asp-toc ol{list-style:none;padding:0;margin:10px 0 0}.asp-toc li{margin:8px 0}.asp-toc a{color:var(--asp-muted)}.asp-toc a.is-on{color:var(--asp-brand);font-weight:700}
.asp-toc.is-empty{display:none}
.asp-prose{font-size:18px;line-height:1.8;color:var(--asp-text)}
.asp-prose h2{font-size:28px;margin:1.8em 0 .6em;scroll-margin-top:90px}.asp-prose h3{font-size:22px;margin:1.5em 0 .5em;scroll-margin-top:90px}
.asp-prose p,.asp-prose ul,.asp-prose ol{margin:0 0 1.2em}.asp-prose a{color:var(--asp-brand);text-decoration:underline}
.asp-prose img{max-width:100%;height:auto;border-radius:12px}
.asp-prose blockquote{border-left:4px solid var(--asp-brand);background:var(--asp-soft);margin:1.5em 0;padding:14px 20px;border-radius:0 12px 12px 0}
.asp-prose code{background:var(--asp-soft);padding:2px 6px;border-radius:6px;font-size:.9em}
.asp-cta-box{display:flex;gap:20px;align-items:center;background:linear-gradient(135deg,var(--asp-brand-soft),var(--asp-card));border:1px solid rgba(99,102,241,.35);border-radius:var(--asp-radius);padding:20px;margin:2em 0;font-size:16px;line-height:1.5}
.asp-cta-box img{width:180px;border-radius:12px;flex-shrink:0;aspect-ratio:16/9;object-fit:cover}
.asp-cta-box h4{font-size:19px;margin:4px 0}.asp-cta-box p{color:var(--asp-muted);margin:0 0 12px!important}
.asp-cta-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.asp-prose .asp-cta-box a.asp-btn{text-decoration:none}
.asp-tools-box{margin:2em 0;padding:20px;border:1px solid var(--asp-line);border-radius:var(--asp-radius);background:var(--asp-soft)}
.asp-tools-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.asp-tool{display:block;background:var(--asp-card);border:1px solid var(--asp-line);border-radius:12px;padding:14px;text-decoration:none!important;font-size:15px}
.asp-tool b{display:block;color:var(--asp-text)}.asp-tool span{color:var(--asp-muted);font-size:13px}
/* dark-mode toggle */
.asp-mode{position:fixed;left:18px;bottom:18px;z-index:99980;width:46px;height:46px;border-radius:50%;border:1px solid var(--asp-line);background:var(--asp-card);color:var(--asp-text);box-shadow:var(--asp-shadow);cursor:pointer;font-size:20px;display:grid;place-items:center;transition:transform .2s}
.asp-mode:hover{transform:scale(1.08)}.asp-mode-moon{display:block}.asp-mode-sun{display:none}
html[data-theme=dark] .asp-mode-moon{display:none}html[data-theme=dark] .asp-mode-sun{display:block}
/* reveal */
.asp-js .asp-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.asp-js .asp-reveal.is-in{opacity:1;transform:none}
@keyframes aspPing{0%{box-shadow:0 0 0 0 rgba(255,255,255,.55)}70%{box-shadow:0 0 0 14px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
@keyframes aspFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media (max-width:1024px){.asp-grid-4{grid-template-columns:repeat(2,1fr)}.asp-article-grid{grid-template-columns:minmax(0,760px)}.asp-toc{display:none}}
@media (max-width:860px){.asp-hero-grid{grid-template-columns:1fr;gap:40px}.asp-grid-3{grid-template-columns:1fr 1fr}.asp-featured-wrap .asp-post{grid-template-columns:1fr}.asp-section{padding:60px 0}}
@media (max-width:600px){.asp-grid-3,.asp-grid-4{grid-template-columns:1fr}.asp-hero{padding:44px 0 56px}.asp-float{display:none}.asp-trust{gap:18px}.asp-cta-box{flex-direction:column;align-items:flex-start}.asp-cta-box img{width:100%}.asp-prose{font-size:17px}.asp-mode{bottom:84px}}
@media (prefers-reduced-motion:reduce){.asp *,.asp-reveal{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}}
.asp-prose table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:15px;display:block;overflow-x:auto}
.asp-prose th,.asp-prose td{border:1px solid var(--asp-line);padding:10px 12px;text-align:left;white-space:nowrap}
.asp-prose thead th{background:var(--asp-brand-soft);color:var(--asp-text)}
.asp-prose tbody tr:nth-child(even){background:var(--asp-soft)}
.asp-article-main{min-width:0}
.asp-author-box{display:flex;gap:16px;align-items:flex-start;margin:40px 0 8px;padding:20px;border:1px solid var(--asp-line);border-radius:16px;background:var(--asp-soft)}
.asp-author-avatar{flex:0 0 56px;height:56px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:22px;color:#fff;background:linear-gradient(135deg,#4F46E5,#7C3AED)}
.asp-author-box small{display:block;color:var(--asp-muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.asp-author-box b{display:block;font-size:18px;margin:2px 0 6px;color:var(--asp-text)}
.asp-author-box p{margin:0 0 8px;color:var(--asp-muted);font-size:15px}
.asp-author-box a{font-weight:600;color:var(--asp-brand)}
