:root{--radius:18px;--radius-sm:12px;--radius-lg:26px;--maxw:1120px;--font:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Noto Color Emoji","Apple Color Emoji","Segoe UI Emoji";--text:#0f172a;--text-dim:rgba(15,23,42,0.64);--text-faint:rgba(15,23,42,0.42);--glass-bg:rgba(255,255,255,0.62);--glass-bg-strong:rgba(255,255,255,0.8);--glass-border:rgba(148,163,184,0.34);--glass-shadow:0 12px 36px rgba(15,23,42,0.12);--glass-blur:20px;--accent:#0ea5e9;--accent-2:#38bdf8;--accent-ink:#075985;--accent-soft:rgba(14,165,233,0.12);--bg-1:#eef4fb;--bg-2:#dbe8f5;--bg-3:#f6f9fd;--blob-1:rgba(56,189,248,0.4);--blob-2:rgba(74,222,128,0.3)}[data-theme=emerald]{--accent:#16a34a;--accent-2:#4ade80;--accent-ink:#14532d;--accent-soft:rgba(22,163,74,0.12);--bg-1:#eef7f1;--bg-2:#dcefe2;--bg-3:#f5fbf7;--blob-1:rgba(74,222,128,0.36);--blob-2:rgba(56,189,248,0.28)}[data-theme=indigo]{--accent:#4f46e5;--accent-2:#6366f1;--accent-ink:#312e81;--accent-soft:rgba(79,70,229,0.12);--bg-1:#eef0fb;--bg-2:#e0e3f6;--bg-3:#f6f7fe;--blob-1:rgba(99,102,241,0.36);--blob-2:rgba(56,189,248,0.3)}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body,html{overflow-x:clip}body{margin:0;min-height:100vh;font-family:var(--font);color:var(--text);line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:var(--bg-3);-webkit-tap-highlight-color:transparent}.backdrop,body{transition:background .4s ease}.backdrop{position:fixed;inset:0;z-index:-2;background:linear-gradient(160deg,var(--bg-1) 0,var(--bg-2) 55%,var(--bg-3) 100%)}.backdrop:after,.backdrop:before{content:"";position:absolute;border-radius:50%;filter:blur(80px);opacity:.85}.backdrop:before{width:46vw;height:46vw;top:-10vw;right:-8vw;background:var(--blob-1);animation:float1 18s ease-in-out infinite}.backdrop:after{width:40vw;height:40vw;bottom:-12vw;left:-6vw;background:var(--blob-2);animation:float2 22s ease-in-out infinite}@keyframes float1{0%,to{transform:translate(0)}50%{transform:translate(-4vw,4vw)}}@keyframes float2{0%,to{transform:translate(0)}50%{transform:translate(5vw,-3vw)}}.grain{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.glass{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur)) saturate(140%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(140%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--radius)}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}.page{min-height:100vh;display:flex;flex-direction:column}main{flex:1 1;padding:32px 0 72px}a{color:var(--accent-ink);text-decoration:none;transition:color .2s ease}@media (hover:hover){a:hover{color:var(--accent)}}h1,h2,h3{line-height:1.25;letter-spacing:-.01em}.header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:rgba(255,255,255,.6);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);border-bottom:1px solid var(--glass-border)}.header-inner{display:flex;align-items:center;gap:16px;height:66px}.brand{display:inline-flex;align-items:center;gap:11px;font-weight:800;color:var(--text);font-size:1.12rem;letter-spacing:-.02em}.brand-mark{width:34px;height:34px;display:inline-grid;place-items:center}.brand small{display:block;font-weight:500;font-size:.66rem;color:var(--text-dim);letter-spacing:.02em}.nav{display:flex;align-items:center;gap:4px;margin-left:auto}.nav a{color:var(--text-dim);padding:8px 13px;border-radius:999px;font-size:.92rem;font-weight:600;white-space:nowrap;transition:background .2s ease,color .2s ease}@media (hover:hover){.nav a:hover{color:var(--text);background:var(--accent-soft)}}.nav a.active{color:var(--accent-ink);background:var(--accent-soft)}.nav-checkbox,.nav-toggle{display:none}.nav-toggle{margin-left:auto;width:42px;height:42px;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text);font-size:1.2rem;cursor:pointer;align-items:center;justify-content:center}.nav-backdrop{display:none}@media (max-width:760px){.nav-toggle{display:inline-flex}.nav-backdrop{position:fixed;inset:0;margin:0;border:0;background:transparent}.nav-checkbox:checked~.nav-backdrop{display:block}.nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;margin:0;padding:10px max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px));background:rgba(255,255,255,.92);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);border-bottom:1px solid var(--glass-border);box-shadow:var(--glass-shadow);opacity:0;visibility:hidden;transform:translateY(-10px)}.nav a{border-radius:0;padding:13px 12px;position:relative}.nav a+a:before{content:"";position:absolute;top:-1.5px;left:0;right:0;height:1px;background:var(--glass-border)}.nav-checkbox:checked~.nav{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .2s ease,transform .25s ease}}.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:999px;font-weight:700;font-size:.95rem;cursor:pointer;border:1px solid transparent;box-shadow:0 6px 18px rgba(15,23,42,.14);transition:transform .15s ease,box-shadow .2s ease,background .2s ease}.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;box-shadow:0 10px 24px rgba(15,23,42,.2),0 4px 12px var(--accent-soft)}@media (hover:hover){.btn-primary:hover{transform:translateY(-2px);color:#fff;box-shadow:0 16px 32px rgba(15,23,42,.26),0 6px 16px var(--accent-soft)}}.btn-ghost{background:var(--glass-bg);border-color:var(--glass-border);color:var(--text)}@media (hover:hover){.btn-ghost:hover{background:var(--glass-bg-strong);transform:translateY(-2px);box-shadow:0 12px 26px rgba(15,23,42,.18)}}.hero{padding:30px;margin-bottom:34px;display:grid;grid-template-columns:1.2fr 1fr;grid-gap:28px;gap:28px;align-items:center}.hero-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-ink);background:var(--accent-soft);padding:5px 12px;border-radius:999px;margin-bottom:16px}.hero h1{font-size:clamp(1.9rem,4vw,2.9rem);margin:0 0 14px;font-weight:800}.hero p{color:var(--text-dim);font-size:1.05rem;margin:0 0 22px}.hero-art{display:grid;place-items:center}.hero-art svg{width:100%;height:auto;max-width:360px;filter:drop-shadow(0 12px 30px rgba(31,38,64,.16))}.btc-stage{position:relative;width:100%;max-width:280px;margin:0 auto;perspective:820px;display:flex;flex-direction:column;align-items:center;transform:translateY(90px)}.coin3d{position:relative;width:218px;height:218px;transform-style:preserve-3d;animation:btc-spin 7s linear infinite;will-change:transform}.coin-face{position:absolute;inset:0;width:100%;height:100%;border-radius:50%;backface-visibility:hidden;-webkit-backface-visibility:hidden}.coin-front{transform:translateZ(7px)}.coin-back{transform:rotateY(180deg) translateZ(7px)}.coin-edge{position:absolute;inset:0;transform-style:preserve-3d}.coin-edge span{position:absolute;left:50%;top:50%;display:block;background:linear-gradient(180deg,#4a2f04 0,#936112 24%,#d8aa3e 50%,#936112 76%,#4a2f04)}@keyframes btc-spin{0%{transform:rotateY(0deg)}to{transform:rotateY(1turn)}}.btc-surface{width:88%;max-width:250px;height:26px;margin-top:4px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(247,201,72,.55),rgba(247,201,72,0) 70%);filter:blur(2px)}.btc-mirror{transform:scaleY(-1);margin-top:-8px;opacity:.3;perspective:820px;-webkit-mask-image:linear-gradient(0deg,rgba(0,0,0,.85),transparent 60%);mask-image:linear-gradient(0deg,rgba(0,0,0,.85),transparent 60%);pointer-events:none}@media (max-width:820px){.hero{grid-template-columns:1fr;text-align:center}.hero-art{order:-1}}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin:8px 4px 18px}.section-head h2{font-size:1.5rem;margin:0}.section-head span{color:var(--text-faint);font-size:.9rem}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));grid-gap:20px;gap:20px}.card{padding:22px;display:flex;flex-direction:column;gap:12px;transition:transform .2s ease,box-shadow .25s ease}@media (hover:hover){.card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(31,38,64,.16)}}.card-index{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 6px 14px rgba(15,23,42,.22),0 2px 5px var(--accent-soft)}.card h3{margin:0;font-size:1.18rem;color:var(--text)}.card p{margin:0;color:var(--text-dim);font-size:.95rem;flex:1 1}.card-meta{display:flex;align-items:center;gap:12px;font-size:.82rem;color:var(--text-faint)}.article{display:grid;grid-template-columns:1fr 240px;grid-gap:36px;gap:36px;align-items:start}.article-main{min-width:0}.article-head{padding:28px 30px;margin-bottom:26px}.article-head h1{font-size:clamp(1.7rem,3.4vw,2.5rem);margin:12px 0 14px}.article-head .card-meta{font-size:.9rem}.crumbs{font-size:.85rem;color:var(--text-faint);margin-bottom:4px}.figure{margin:26px 0;padding:0;overflow:hidden}.figure svg{display:block;width:100%;height:auto}.figure-zoomable{cursor:zoom-in;transition:transform .2s ease,box-shadow .25s ease}@media (hover:hover){.figure-zoomable:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(15,23,42,.16)}}.lightbox{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:rgba(241,245,249,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:zoom-out;animation:lightboxIn .18s ease}@keyframes lightboxIn{0%{opacity:0}to{opacity:1}}.lightbox-img{max-width:min(100%,1600px);max-height:100%;width:auto;height:auto;display:block;cursor:default;background:#fff;border-radius:22px;box-shadow:0 24px 64px rgba(15,23,42,.26)}.lightbox-close{position:fixed;top:18px;right:22px;width:46px;height:46px;border-radius:50%;border:none;cursor:pointer;background:rgba(255,255,255,.95);color:#0f172a;font-size:1.15rem;font-weight:700;display:grid;place-items:center;box-shadow:0 6px 20px rgba(0,0,0,.3);transition:transform .15s ease}.lightbox-close:hover{transform:scale(1.08)}.prose{padding:4px 30px 30px;overflow-wrap:break-word;word-break:break-word}.prose h2{font-size:1.5rem;margin:34px 0 12px;padding-top:8px}.prose h2,.prose h3{scroll-margin-top:84px}.prose h3{font-size:1.18rem;margin:24px 0 10px}.prose p{margin:0 0 16px;color:#2c3040}.prose ol,.prose ul{margin:0 0 18px;padding-left:22px}.prose li{margin:6px 0}.prose strong{color:var(--text)}.prose a{color:var(--accent-ink);border-bottom:1px solid var(--accent-soft)}.prose blockquote{margin:18px 0;padding:14px 20px;border-left:4px solid var(--accent);background:var(--accent-soft);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text)}.prose code{background:rgba(31,38,64,.07);padding:2px 7px;border-radius:7px;font-size:.9em}.prose pre{background:#1a1d29;color:#e8eaf2;padding:16px 18px;border-radius:var(--radius-sm);overflow-x:auto}.prose pre code{background:none;padding:0}.prose hr{border:none;border-top:1px solid var(--glass-border);margin:28px 0}.prose table{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-collapse:collapse;margin:18px 0;font-size:.94rem}.prose th{white-space:nowrap}.prose td,.prose th{border:1px solid var(--glass-border);padding:9px 12px;text-align:left}.prose th{background:var(--accent-soft)}.toc{position:-webkit-sticky;position:sticky;top:84px;padding:20px;font-size:.9rem}.toc h4{margin:0 0 12px;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint)}.toc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.toc a{color:var(--text-dim);display:block;padding:4px 0}.toc a.lvl3{padding-left:14px;font-size:.86rem}@media (hover:hover){.toc a:hover{color:var(--accent)}}.article-nav{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin-top:30px}.article-nav a{padding:16px 18px;display:flex;flex-direction:column;gap:4px;color:var(--text)}.article-nav span{font-size:.76rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em}.article-nav .next{text-align:right}@media (max-width:900px){.article{grid-template-columns:1fr}.toc{display:none}}.form-wrap{max-width:620px;margin:0 auto;padding:30px}.field{margin-bottom:16px}.field label{display:block;font-weight:600;font-size:.9rem;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:rgba(255,255,255,.7);color:var(--text);font:inherit;transition:border-color .2s ease,box-shadow .2s ease}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field textarea{min-height:140px;resize:vertical}.form-note{padding:12px 16px;border-radius:var(--radius-sm);font-size:.92rem;margin-bottom:16px}.form-note.ok{background:var(--accent-soft);color:var(--accent-ink)}.form-note.err{background:rgba(220,53,69,.12);color:#b02a37}.theme-switch{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--glass-bg);border:1px solid var(--glass-border)}.theme-dot{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .15s ease,border-color .2s ease}.theme-dot:hover{transform:scale(1.12)}.theme-dot[aria-pressed=true]{border-color:var(--text)}.theme-dot.ocean{background:linear-gradient(135deg,#0ea5e9,#38bdf8)}.theme-dot.emerald{background:linear-gradient(135deg,#16a34a,#4ade80)}.theme-dot.indigo{background:linear-gradient(135deg,#4f46e5,#6366f1)}.footer{background:rgba(255,255,255,.5);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--glass-border);padding:30px 0;margin-top:auto}.footer-wide{width:100%;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}.footer-inner{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:space-between;align-items:center;color:var(--text-dim);font-size:.9rem}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-right{margin-left:auto;text-align:right}.footer-brand strong{color:var(--text)}.footer-powered{margin-top:2px}.footer-powered a{color:var(--accent-ink);font-weight:700}.footer-legal{margin-top:6px;font-size:.8rem;color:var(--text-faint)}@media (max-width:560px){.footer-right{text-align:left;margin-left:0}.footer-inner{flex-direction:column;align-items:stretch}.footer-powered{text-align:right}}.admin-bar{background:#1a1d29;color:#fff;padding:10px 0;position:-webkit-sticky;position:sticky;top:0;z-index:60}.admin-bar-inner{display:flex;align-items:center;gap:16px}.admin-bar a{color:rgba(255,255,255,.8);font-weight:600;font-size:.9rem}.admin-bar a:hover{color:#fff}.admin-bar .spacer{margin-left:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table td,.admin-table th{padding:12px 14px;border-bottom:1px solid var(--glass-border);text-align:left}.admin-table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint)}.tag{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.78rem;font-weight:700}.tag.on{background:var(--accent-soft);color:var(--accent-ink)}.tag.off{background:rgba(31,38,64,.1);color:var(--text-faint)}.iconbtn{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:8px;padding:6px 9px;cursor:pointer;color:var(--text);font-size:.85rem}.iconbtn:hover{background:var(--glass-bg-strong)}@media (max-width:560px){.hero{padding:22px}.article-head,.prose{padding-left:18px;padding-right:18px}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}