:root{--g-bg:#070a13;--g-panel:#0e1424;--g-text:#f3f0f8;--g-muted:#aaa8b5;--g-gold:#d8c27a;--g-violet:#b89aff;--g-line:rgba(216,194,122,.23)}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(900px 540px at 82% 10%,rgba(28,106,119,.12),transparent 65%),radial-gradient(760px 500px at 15% 0%,rgba(116,69,190,.13),transparent 60%),var(--g-bg);color:var(--g-text);font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif}.guide-shell,.article-shell{width:min(900px,calc(100% - 32px));margin:0 auto}.guide-hero{padding:104px 0 70px;position:relative}.guide-eyebrow{color:var(--g-gold)!important;font-size:11px!important;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin:0 0 18px!important}.guide-hero h1{font-size:clamp(34px,4.8vw,52px);line-height:1.18;letter-spacing:.025em;margin:0;max-width:720px}.guide-hero h1 span{color:var(--g-violet)}.guide-lead{color:#c5c1ce;font-size:clamp(16px,2vw,19px);line-height:2;margin:28px 0 36px}.guide-principle{border-left:2px solid var(--g-gold);padding:12px 18px;color:var(--g-muted);font-size:13px;line-height:1.8}.guide-principle span{color:var(--g-gold);font-weight:800;letter-spacing:.14em;margin-right:12px}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.guide-card{min-height:300px;padding:30px;border:1px solid rgba(190,174,226,.19);border-radius:20px;background:linear-gradient(145deg,rgba(20,25,45,.96),rgba(7,17,29,.96));color:inherit;text-decoration:none;display:flex;flex-direction:column;transition:.25s ease}.guide-card:hover{transform:translateY(-3px);border-color:rgba(216,194,122,.52);box-shadow:0 18px 50px rgba(0,0,0,.25)}.guide-card-top{display:flex;align-items:center;justify-content:space-between}.guide-glyph{width:46px;height:46px;border:1px solid var(--g-line);border-radius:50%;display:grid;place-items:center;color:var(--g-gold);font-size:23px}.guide-category{font-size:11px;color:var(--g-muted);letter-spacing:.12em}.guide-card h2{font-size:21px;line-height:1.55;margin:28px 0 12px}.guide-card>p{font-size:14px;line-height:1.9;color:var(--g-muted);margin:0}.guide-card-foot{display:flex;justify-content:space-between;margin-top:auto;padding-top:24px;color:#d8d2e4;font-size:12px}.guide-card-foot span:last-child{color:var(--g-gold)}.guide-method{padding:100px 0}.guide-method>h2{font-size:30px;margin:0 0 32px}.guide-method-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--g-line);border-bottom:1px solid var(--g-line)}.guide-method-grid>div{padding:30px 25px;border-right:1px solid var(--g-line)}.guide-method-grid>div:last-child{border:0}.guide-method-grid b{color:var(--g-gold);font-size:11px}.guide-method-grid h3{font-size:16px}.guide-method-grid p{color:var(--g-muted);font-size:13px;line-height:1.8}.guide-breadcrumb{padding:52px 0 24px;font-size:12px;color:var(--g-muted);display:flex;gap:10px}.guide-breadcrumb a{color:#d5c8f7;text-decoration:none}.article-shell{max-width:900px}.article-hero{padding:48px 0 76px;border-bottom:1px solid var(--g-line)}.article-glyph{font-size:64px;color:var(--g-gold);margin-bottom:30px}.article-hero h1{font-size:clamp(32px,5vw,52px);line-height:1.35;margin:0 0 24px;letter-spacing:.02em}.article-hero>p:not(.guide-eyebrow){max-width:680px;color:#c3bfcc;font-size:17px;line-height:1.9}.article-hero time{font-size:11px;color:#757380}.article-section{display:grid;grid-template-columns:70px 1fr;gap:24px;padding:70px 0;border-bottom:1px solid rgba(255,255,255,.1)}.article-num{font:700 12px/1 ui-monospace,monospace;color:#706d7d;padding-top:6px}.article-section h2,.article-tips h2{font-size:27px;margin:0 0 26px}.article-section p:not(.guide-eyebrow){font-size:16px;line-height:2.05;color:#d2ced8;margin:0 0 18px}.article-fact,.article-code{position:relative}.article-fact:before,.article-code:before{content:"";position:absolute;left:-26px;top:70px;width:3px;height:68px;background:var(--g-gold);border-radius:4px}.article-code:before{background:var(--g-violet)}.article-tips{padding:70px 0}.article-tips ul{list-style:none;padding:0;margin:25px 0 0;border-top:1px solid rgba(255,255,255,.12)}.article-tips li{display:flex;gap:20px;padding:20px 4px;border-bottom:1px solid rgba(255,255,255,.1);font-size:15px;line-height:1.7}.article-tips li span{font:700 11px/1.8 ui-monospace,monospace;color:var(--g-gold)}.article-disclaimer{padding:24px 28px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.025);color:var(--g-muted)}.article-disclaimer b{font-size:13px;color:#d9d5df}.article-disclaimer p{font-size:12px;line-height:1.8;margin:8px 0 0}.guide-next{margin:90px 0 40px;padding:48px;border:1px solid var(--g-line);border-radius:24px;background:linear-gradient(130deg,rgba(52,37,90,.45),rgba(8,25,34,.65))}.guide-next h2{font-size:28px}.guide-next>p:not(.guide-eyebrow){color:var(--g-muted);line-height:1.8}.guide-next>div{display:flex;gap:12px;margin-top:28px}.guide-primary,.guide-secondary{display:inline-block;padding:14px 20px;border-radius:999px;text-decoration:none;font-weight:700;font-size:13px}.guide-primary{background:#8055e8;color:white}.guide-secondary{border:1px solid rgba(255,255,255,.2);color:#ddd8e7}
@media(max-width:700px){.guide-shell,.article-shell{width:min(100% - 28px,900px)}.guide-hero{padding:70px 4px 50px}.guide-hero h1{font-size:32px}.guide-grid{grid-template-columns:1fr}.guide-card{min-height:260px;padding:25px}.guide-method{padding:70px 0}.guide-method-grid{grid-template-columns:1fr}.guide-method-grid>div{border-right:0;border-bottom:1px solid var(--g-line)}.article-section{grid-template-columns:1fr;gap:8px;padding:52px 5px}.article-num{display:none}.article-fact:before,.article-code:before{left:-8px;top:56px}.article-hero{padding:32px 5px 55px}.guide-next{padding:30px 24px;margin-top:60px}.guide-next>div{flex-direction:column;text-align:center}}

/* Reading scale: body 16px, supporting information 14px minimum. */
.guide-eyebrow,
.guide-category,
.guide-card-foot,
.guide-method-grid b,
.guide-breadcrumb,
.article-hero time,
.article-num,
.article-tips li span,
.article-disclaimer b,
.article-disclaimer p,
.guide-primary,
.guide-secondary{
  font-size:14px!important;
}
.guide-principle,
.guide-card>p,
.guide-method-grid p,
.article-tips li,
.guide-next>p:not(.guide-eyebrow){
  font-size:16px!important;
}
