@charset "UTF-8";
:root{font-family:Inter,"Avenir Next",Avenir,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang TC","Microsoft JhengHei",sans-serif;color-scheme:light;font-synthesis:none;font-weight:400;--bg:#f8f9fc;--surface:#fff;--ink:#23324b;--muted:#5b687d;--accent:#315b99;--soft:#e8eff9;--line:#dce3ee;--serif:"Iowan Old Style","Palatino Linotype","Songti TC","Noto Serif TC",Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.8;overflow-wrap:break-word}a{color:var(--accent);text-underline-offset:4px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}button{font:inherit}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.4}p+p{margin-top:18px}strong{font-weight:650}code{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace;font-size:.9em;background:var(--soft);border-radius:4px;padding:3px 6px;white-space:nowrap}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px;border-radius:3px}::selection{background:var(--soft);color:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-90px;left:16px;z-index:100;background:var(--surface);padding:12px 20px}.skip-link:focus{top:10px}
.theme-bigfatfish{--bg:#f5faff;--surface:#fff;--ink:#17375c;--muted:#526a83;--accent:#2265b3;--soft:#e5f0fc;--line:#d7e5f4}.theme-kurone{color-scheme:dark;--bg:#19181e;--surface:#222128;--ink:#eeeae4;--muted:#b7b1bf;--accent:#d6c4ec;--soft:#35303f;--line:#3d3844}.theme-sennchan{--bg:#f8f5f9;--surface:#fffdfd;--ink:#413652;--muted:#756681;--accent:#755b91;--soft:#eee6f4;--line:#e4d9e8}.theme-hub{--bg:#f7f9fc}
.site-header{position:sticky;top:0;z-index:30;background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{max-width:1320px;padding:19px 48px;margin:auto;display:flex;align-items:center;gap:32px;min-height:84px}.wordmark{display:flex;gap:12px;align-items:center;color:var(--ink);text-decoration:none;font-size:13px;font-weight:750;letter-spacing:1.7px;line-height:1.5}.wordmark-icon{font-size:34px;color:var(--accent);font-weight:400}.wordmark-sub{display:block;font-size:8px;letter-spacing:3.3px;font-weight:500;color:var(--muted)}.bot-nav{display:flex;gap:9px;margin-left:auto;font-size:13px}.bot-nav a{display:block;min-width:70px;padding:7px 12px;color:var(--muted);text-align:center;text-decoration:none;white-space:nowrap;border-radius:6px}.bot-nav a:hover,.bot-nav a.selected{background:var(--soft);color:var(--accent)}.header-contact{font-size:12px;text-decoration:none;color:var(--muted);white-space:nowrap;border-left:1px solid var(--line);padding-left:27px}.page-shell{max-width:1224px;padding:0 48px;margin:auto}.eyebrow{font-size:11px;font-weight:650;letter-spacing:1.6px;color:var(--accent);display:block}.eyebrow>span{padding-right:7px;font-size:17px}.hero{display:grid;grid-template-columns:1fr 1.06fr;align-items:center;gap:50px;padding:68px 0 61px}.hero h1{font-size:clamp(36px,4vw,54px);font-weight:650;letter-spacing:-1.8px;line-height:1.35;margin:17px 0 21px}.hero-description{font-size:14px;line-height:1.95;max-width:400px;color:var(--muted)}.primary-link{display:inline-flex;align-items:center;gap:36px;text-decoration:none;background:var(--accent);color:var(--bg);padding:11px 21px;font-size:13px;border-radius:7px;font-weight:600;margin-top:26px;transition:transform .18s}.primary-link:hover{transform:translateY(-2px);text-decoration:none}.art-frame{position:relative;border:1px solid var(--line);overflow:hidden;background:var(--surface)}.banner{width:100%;aspect-ratio:17/6;object-fit:cover}.art-badge{position:absolute;bottom:12px;left:15px;font-size:9px;letter-spacing:1.4px;background:var(--surface);color:var(--ink);padding:4px 9px;border-radius:3px;line-height:1.5}.art-caption{display:flex;align-items:center;gap:13px;margin-top:16px;color:var(--muted)}.art-caption p{font-size:12px}.art-symbol{font-size:24px;color:var(--accent)}.art-caption-label{font-size:8px;letter-spacing:1.5px;margin-left:auto;white-space:nowrap}.theme-bigfatfish .art-frame{border-radius:90px 90px 16px 16px;box-shadow:0 14px 35px #4b8dc014}.theme-bigfatfish .hero-art{position:relative}.theme-bigfatfish .hero-art:before{content:"";position:absolute;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;top:-32px;right:20px}.theme-bigfatfish .hero-art:after{content:"";position:absolute;width:14px;height:14px;border:1px solid var(--line);border-radius:50%;top:-8px;right:-18px}.theme-kurone .hero h1,.theme-kurone .legal-hero h1{font-family:var(--serif);font-weight:400;letter-spacing:-1px}.theme-kurone .art-frame{border:5px solid var(--surface);outline:1px solid var(--line)}.theme-kurone .primary-link{border-radius:0}.theme-kurone .art-symbol{font-size:19px}.theme-sennchan .hero h1,.theme-sennchan .legal-hero h1,.theme-sennchan .doc-section h2{font-family:var(--serif);font-weight:500;letter-spacing:1px}.theme-sennchan .art-frame{border-radius:160px 160px 8px 8px;outline:1px solid var(--line);outline-offset:7px}.theme-sennchan .art-caption{margin-top:24px}.theme-sennchan .primary-link{background:transparent;color:var(--accent);border-bottom:1px solid var(--accent);border-radius:0;padding:5px 0;gap:50px}.theme-sennchan .hero-copy .eyebrow{letter-spacing:3px}
.page-tabs{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:20px}.page-tabs>nav:first-child{display:flex;gap:28px}.page-tabs a{font-size:13px;text-decoration:none;color:var(--muted);display:inline-block;padding:14px 0}.page-tabs>nav:first-child a[aria-current]{color:var(--accent);box-shadow:0 2px 0 var(--accent);font-weight:650}.language-switch{display:flex;gap:3px;background:var(--soft);border-radius:5px;padding:3px}.language-switch a{font-size:10px;padding:3px 10px;line-height:1.8;border-radius:3px}.language-switch a[aria-current]{background:var(--surface);color:var(--ink)}.legal-language{font-size:9px;letter-spacing:2px;color:var(--muted)}.docs-layout{display:grid;grid-template-columns:208px minmax(0,1fr);gap:60px;padding-top:42px}.toc{align-self:start;position:sticky;top:112px;font-size:12px;max-height:calc(100vh - 138px);overflow:auto;scrollbar-width:thin}.toc-identity{display:flex;gap:11px;align-items:center;padding-bottom:25px;border-bottom:1px solid var(--line);margin-bottom:24px}.toc-identity img{border-radius:50%;width:46px;height:46px;object-fit:cover}.toc-identity strong{display:block;font-size:14px}.toc-identity span{display:block;font-size:9px;color:var(--muted);margin-top:2px}.toc-label{font-size:9px;font-weight:650;letter-spacing:2px;color:var(--muted);margin-bottom:13px}.toc nav a{display:flex;gap:13px;padding:8px 6px 8px 0;font-size:11px;line-height:1.65;text-decoration:none;color:var(--muted);transition:color .15s}.toc nav a:hover,.toc nav a.active{color:var(--accent)}.toc-number{font-size:9px;min-width:17px;opacity:.7;font-variant-numeric:tabular-nums}.toc-bottom{border-top:1px solid var(--line);margin-top:27px;padding-top:18px;display:flex;gap:13px;align-items:center;color:var(--muted)}.toc-bottom>span{color:var(--accent);font-size:24px}.toc-bottom p{font-size:10px;white-space:pre-line}.article-content{min-width:0;padding-top:1px}.doc-section{padding:0 0 36px;border-bottom:1px solid var(--line);margin-bottom:36px;font-size:14px;line-height:1.95;scroll-margin-top:112px}.doc-section h2{font-size:23px;font-weight:650;letter-spacing:-.5px;margin-bottom:20px}.doc-section h3{font-size:16px;margin-bottom:12px;font-weight:650}.doc-section p,.doc-section li{color:var(--muted)}.doc-section strong{color:var(--ink)}.doc-section ul{padding-left:21px}.doc-section li+li{margin-top:11px}.steps{list-style:none;counter-reset:steps;padding:0;margin:22px 0}.steps li{position:relative;padding-left:38px;counter-increment:steps;margin:17px 0}.steps li:before{content:counter(steps,decimal-leading-zero);position:absolute;top:1px;left:0;color:var(--accent);font-size:11px;font-weight:650;line-height:2.4}.steps strong{font-weight:650}.chat-example{display:flex;align-items:center;gap:14px;padding:18px 21px;border:1px solid var(--line);background:var(--surface);border-radius:8px;margin:25px 0 16px}.chat-example img{border-radius:50%;width:40px;height:40px;flex-shrink:0}.example-label{font-size:9px;color:var(--muted);letter-spacing:.5px;display:block;margin-bottom:3px}.chat-example p{font-size:12px}.mention{color:var(--accent);background:var(--soft);padding:2px 3px;border-radius:3px}.small{font-size:12px!important;color:var(--muted);line-height:1.9}.notice{background:var(--soft);border-left:2px solid var(--accent);padding:20px 23px;margin-top:24px;border-radius:0 7px 7px 0;font-size:13px}.notice p{margin-top:8px}.table-wrap{width:100%;overflow:auto;margin-bottom:16px;border:1px solid var(--line);border-radius:7px}table{border-collapse:collapse;width:100%;text-align:left;min-width:480px;font-size:12px}th,td{padding:15px 15px;vertical-align:top;border-bottom:1px solid var(--line)}thead th{font-size:10px;font-weight:600;letter-spacing:.4px;background:var(--soft);color:var(--ink)}tbody th{white-space:nowrap;width:155px}tbody td:nth-child(2){width:125px;color:var(--muted)}tbody tr:last-child>*{border-bottom:0}.copy{border:0;color:var(--muted);background:transparent;padding:3px 5px;cursor:pointer;line-height:1;font-size:15px;margin-left:4px;min-width:26px;min-height:26px}.copy:hover{color:var(--accent);background:var(--soft)}.feature-pair{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:26px;margin-bottom:22px}.feature-pair>div+div{border-left:1px solid var(--line);padding-left:30px}.feature-index{display:block;letter-spacing:1.4px;color:var(--accent);font-size:9px;margin-bottom:12px}.feature-pair p{font-size:13px}.faq{margin:10px 0 28px}.faq details{border-bottom:1px solid var(--line);padding:15px 0}.faq summary{font-size:14px;font-weight:600;cursor:pointer;color:var(--ink);padding-right:10px}.faq details p{margin:13px 0 5px;font-size:13px}.contact-box{padding:25px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.contact-box h3{margin:12px 0 10px}.contact-box p{font-size:12px}.contact-box>a{font-size:11px;display:inline-block;margin-top:15px}.contact-box code{background:none;padding:0;font-weight:500}.article-end{display:flex;align-items:center;justify-content:space-between;margin-top:-5px;margin-bottom:50px}.article-end>span{font-size:32px;color:var(--accent)}.article-end a{font-size:11px;text-decoration:none}.site-footer{max-width:1224px;margin:30px auto 0;padding:33px 48px 35px;border-top:1px solid var(--line);display:flex;gap:30px;align-items:center;justify-content:space-between}.footer-brand{font-size:11px;letter-spacing:1.3px;font-weight:650;color:var(--ink);text-decoration:none}.footer-brand span{color:var(--muted);font-weight:400;letter-spacing:0;font-size:10px}.site-footer p{color:var(--muted);font-size:10px;margin-top:6px}.site-footer nav{display:flex;gap:24px;font-size:10px}.site-footer nav a{color:var(--muted);text-decoration:none}
.legal-hero{display:flex;justify-content:space-between;align-items:center;gap:50px;padding:55px 0 42px}.legal-hero h1{font-size:48px;font-weight:600;letter-spacing:-1.5px;margin:12px 0 13px}.legal-hero p{font-size:14px;color:var(--muted);max-width:660px}.legal-hero .revision{font-size:10px;letter-spacing:.5px;margin-top:21px}.revision time{margin-left:13px;color:var(--ink)}.legal-hero>img{width:112px;height:112px;border-radius:50%;object-fit:cover;border:5px solid var(--surface);outline:1px solid var(--line)}.policy-note{display:flex;gap:20px;align-items:center;background:var(--soft);border-radius:6px;padding:16px 23px;margin-top:25px}.policy-note>span{font-size:26px;color:var(--accent)}.policy-note p{font-size:12px;color:var(--muted);line-height:1.8}
.hub-heading{padding:65px 0 42px;text-align:center}.hub-heading h1{font-size:40px;letter-spacing:-1.7px;margin:15px 0 16px;font-weight:650}.hub-heading h1 span{color:var(--accent)}.hub-heading p{font-size:13px;color:var(--muted)}.hub-heading .hub-english{font-size:11px;margin-top:7px}.companion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.companion-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;color:#23324b;transition:transform .2s,box-shadow .2s}.companion-card:hover{transform:translateY(-4px);box-shadow:0 12px 35px #2e436011}.card-art{display:block;position:relative;overflow:hidden;background:#eee}.card-art img{aspect-ratio:17/6;object-fit:cover;width:100%;transition:transform .4s}.card-art:hover img{transform:scale(1.04)}.card-number{position:absolute;left:15px;top:12px;font-size:8px;letter-spacing:1px;color:#253754;background:#ffffffd9;border-radius:3px;padding:2px 7px}.card-body{position:relative;padding:35px 23px 21px}.card-avatar{position:absolute;top:-31px;left:23px;width:56px;height:56px;border-radius:50%;object-fit:cover;border:4px solid #fff}.card-symbol{position:absolute;top:15px;right:25px;font-size:25px;color:var(--accent)}.card-body h2{font-size:23px;margin:0 0 12px}.card-body h2>span{display:block;font-size:9px;font-family:inherit;letter-spacing:1.7px;color:#68768b;font-weight:500;margin-top:4px}.card-body p{font-size:12px;color:#58677d;line-height:1.9}.card-body .card-english{font-size:10px;line-height:1.85;margin-top:10px;min-height:56px;color:#657389}.card-guides{display:flex;flex-direction:column;gap:6px;margin-top:22px}.card-guides a{font-size:11px;display:flex;justify-content:space-between;align-items:center;text-decoration:none;border:1px solid #dce3ee;padding:7px 12px;border-radius:5px;color:var(--accent)}.card-guides a:hover{background:var(--soft)}.card-legal{display:flex;gap:18px;margin-top:17px;font-size:9px}.card-legal a{color:#67748a;text-decoration:none}.card-bigfatfish{--accent:#2265b3;--soft:#e5f0fc}.card-kurone{--accent:#d6c4ec;--soft:#35303f;background:#222128;border-color:#3d3844;color:#eeeae4}.card-kurone .card-body h2{font-family:var(--serif)}.card-kurone .card-avatar{border-color:#222128}.card-kurone .card-body p,.card-kurone .card-body h2>span,.card-kurone .card-legal a{color:#c0b8ca}.card-kurone .card-guides a{border-color:#4b4355}.card-sennchan{--accent:#755b91;--soft:#eee6f4;background:#fbf8fc}.card-sennchan .card-body h2{font-family:var(--serif)}.card-sennchan .card-avatar{border-color:#fbf8fc}.hub-contact{margin-top:45px;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}.hub-contact h2{font-size:21px;margin:7px 0}.hub-contact p{font-size:11px;color:var(--muted)}.contact-handle{padding-left:28px;border-left:1px solid var(--line);min-width:175px}.contact-handle>span{display:block;font-size:9px;letter-spacing:2px;color:var(--muted)}.contact-handle strong{font-size:22px;font-weight:500;letter-spacing:.8px}.hub-note{font-size:10px;text-align:center;color:var(--muted);padding:25px 0 0;line-height:2}.hub-note span{font-size:9px}.not-found{padding-top:100px;padding-bottom:100px;min-height:70vh}.not-found h1{font-size:48px;margin:20px 0}.not-found p{max-width:560px;color:var(--muted)}
@media(min-width:1500px){.page-shell,.site-footer{max-width:1336px}.hero{padding:88px 0 75px;gap:75px}.hero h1{font-size:60px}.docs-layout{gap:80px;grid-template-columns:225px minmax(0,1fr)}}
@media(max-width:1000px){.page-shell{padding:0 32px}.header-inner{padding:17px 32px;gap:20px}.header-contact{display:none}.hero{gap:27px;padding:48px 0}.hero h1{font-size:42px}.hero .eyebrow{font-size:9px}.hero-description{font-size:12px}.art-caption-label{display:none}.docs-layout{grid-template-columns:170px minmax(0,1fr);gap:35px}.toc-identity span{font-size:8px}.toc nav a{font-size:10px}.doc-section h2{font-size:22px}.companion-grid{gap:15px}.card-body{padding-left:17px;padding-right:17px}.card-body h2{font-size:21px}.card-legal{gap:12px}.site-footer{padding-left:32px;padding-right:32px}.site-footer nav{gap:14px}}
@media(max-width:720px){html{scroll-padding-top:130px}.header-inner{padding:14px 22px;gap:14px;flex-wrap:wrap;min-height:auto}.wordmark{font-size:11px}.wordmark-sub{font-size:7px;letter-spacing:2.6px}.wordmark-icon{font-size:27px}.bot-nav{gap:2px;font-size:10px}.bot-nav a{min-width:0;padding:7px 9px}.page-shell{padding:0 23px}.hero{grid-template-columns:1fr;gap:34px;padding:36px 0 31px}.hero h1{font-size:42px;line-height:1.32;margin:15px 0}.hero-description{font-size:13px;max-width:520px}.primary-link{margin-top:21px}.hero-art{max-width:560px;width:100%}.art-caption{margin-top:12px}.art-caption p{font-size:11px}.art-frame{max-height:none}.theme-bigfatfish .hero-art:before,.theme-bigfatfish .hero-art:after{display:none}.theme-sennchan .hero-art{padding:0 7px}.theme-sennchan .art-frame{border-radius:110px 110px 5px 5px}.page-tabs>nav:first-child{gap:23px}.page-tabs a{font-size:12px}.page-tabs{gap:12px}.language-switch a{font-size:10px;padding:3px 9px}.docs-layout{grid-template-columns:1fr;gap:27px;padding-top:25px}.toc{position:static;max-height:none;overflow:visible}.toc-identity,.toc-bottom{display:none}.toc nav{display:flex;gap:6px 15px;flex-wrap:wrap;padding-bottom:20px;border-bottom:1px solid var(--line)}.toc-label{width:100%;margin:0 0 2px;font-size:8px}.toc nav a{font-size:10px;gap:5px;padding:2px 0}.toc-number{min-width:auto;font-size:8px}.doc-section{font-size:13px;margin-bottom:29px;padding-bottom:29px;scroll-margin-top:95px}.doc-section h2{font-size:22px;margin-bottom:16px}.chat-example{padding:15px;gap:11px}.chat-example p{font-size:11px}.chat-example img{width:34px;height:34px}.notice{padding:17px;font-size:12px}.feature-pair{gap:18px}.feature-pair>div+div{padding-left:18px}.feature-pair h3{font-size:15px}.feature-pair p{font-size:12px}.small{font-size:11px!important}.site-footer{display:block;padding:26px 23px 30px;margin-top:5px}.site-footer nav{flex-wrap:wrap;margin-top:18px;gap:20px}.legal-hero{padding:35px 0 30px;gap:20px}.legal-hero h1{font-size:36px}.legal-hero p{font-size:12px}.legal-hero .revision{font-size:9px;line-height:2}.revision time{margin-left:0;display:block}.legal-hero>img{width:65px;height:65px;border-width:3px}.policy-note{padding:15px;gap:13px}.policy-note p{font-size:11px}.legal-language{font-size:8px}.hub-heading{padding:40px 0 30px;text-align:left}.hub-heading .eyebrow{font-size:8px}.hub-heading h1{font-size:32px;line-height:1.5;letter-spacing:-1px}.hub-heading h1 span{display:block}.hub-heading p{font-size:12px}.hub-heading .hub-english{font-size:10px}.companion-grid{grid-template-columns:1fr;gap:25px}.card-body{padding:34px 23px 23px}.card-body h2{font-size:25px}.card-body h2>span{font-size:10px}.card-body p{font-size:13px}.card-body .card-english{min-height:0;font-size:11px}.card-guides{flex-direction:row;gap:10px;margin-top:20px}.card-guides a{flex:1;font-size:11px}.card-legal{font-size:10px;gap:23px}.hub-contact{display:block;margin-top:35px}.hub-contact h2{font-size:20px}.contact-handle{margin-top:22px;padding:0;border:0}.hub-note{text-align:left;font-size:10px}.not-found{padding-top:60px}.not-found h1{font-size:35px}}
@media(max-width:380px){.header-inner{gap:10px;padding-left:17px;padding-right:17px}.wordmark{font-size:10px;gap:7px}.wordmark-sub{font-size:6px}.bot-nav a{padding:6px}.page-shell{padding:0 18px}.hero h1{font-size:37px}.feature-pair{grid-template-columns:1fr}.feature-pair>div+div{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:20px}.legal-hero h1{font-size:31px}.legal-hero>img{display:none}.page-tabs>nav:first-child{gap:17px}.card-guides{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.primary-link:hover,.companion-card:hover{transform:none}}
/* Invitation links share each companion's existing accent and preserve guide navigation. */
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:26px}.hero-actions .primary-link{margin-top:0}.guide-link{font-size:12px;text-decoration:none;padding:10px 0}.guide-link:hover{text-decoration:underline}.card-invite{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:3px 6px;margin-top:20px;padding:10px 12px;border-radius:5px;background:var(--accent);color:#fff;font-size:11px;font-weight:600;text-decoration:none}.card-invite:hover{text-decoration:underline}.card-invite+ .card-guides{margin-top:10px}.card-kurone .card-invite{color:#222128;border-radius:0}

/* Dark is the default, including when JavaScript or browser storage is unavailable. */
html[data-color-mode="dark"] {
  color-scheme: dark;
  background: #10141c;
}
html[data-color-mode="light"] { color-scheme: light; }
html[data-color-mode="dark"] body {
  --bg: #10141c;
  --surface: #18212e;
  --ink: #e2eaf5;
  --muted: #adbbcf;
  --accent: #8cbcff;
  --soft: #202e43;
  --line: #2c3a4e;
}
html[data-color-mode="dark"] .theme-bigfatfish,
html[data-color-mode="dark"] .card-bigfatfish {
  --bg: #101925;
  --surface: #182638;
  --ink: #e2edff;
  --muted: #a9bdd8;
  --accent: #8cbcff;
  --soft: #223952;
  --line: #2c425d;
}
html[data-color-mode="dark"] .theme-kurone,
html[data-color-mode="dark"] .card-kurone {
  --bg: #17151d;
  --surface: #211e2a;
  --ink: #eeE8f4;
  --muted: #beb2cc;
  --accent: #d6bbee;
  --soft: #342b42;
  --line: #41364f;
}
html[data-color-mode="dark"] .theme-sennchan,
html[data-color-mode="dark"] .card-sennchan {
  --bg: #1b1623;
  --surface: #272031;
  --ink: #eee5f7;
  --muted: #c4b3d2;
  --accent: #ceb1ed;
  --soft: #392d49;
  --line: #4b3b5b;
}
html[data-color-mode="dark"] .companion-card {
  background: var(--surface);
  color: var(--ink);
  border-color: var(--line);
}
html[data-color-mode="dark"] .card-avatar { border-color: var(--surface); }
html[data-color-mode="dark"] .card-body h2 > span,
html[data-color-mode="dark"] .card-body p,
html[data-color-mode="dark"] .card-body .card-english,
html[data-color-mode="dark"] .card-legal a { color: var(--muted); }
html[data-color-mode="dark"] .card-guides a { border-color: var(--line); }
html[data-color-mode="dark"] .card-invite { color: var(--bg); }
html[data-color-mode="dark"] .card-number {
  color: var(--ink);
  background: var(--surface);
}
html[data-color-mode="dark"] .banner,
html[data-color-mode="dark"] .card-art img { filter: brightness(.8) saturate(.9); }
html[data-color-mode="dark"] .theme-bigfatfish .art-frame { box-shadow: 0 14px 35px #0003; }

/* A readable paper-and-ink alternative for Kurone when light is explicitly selected. */
html[data-color-mode="light"] .theme-kurone {
  color-scheme: light;
  --bg: #f4f1f5;
  --surface: #fff;
  --ink: #302936;
  --muted: #6e6177;
  --accent: #70518b;
  --soft: #e8dfee;
  --line: #d9cfe0;
}
.mode-toggle {
  display: inline-flex;
  flex: 0 0 38px;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: var(--soft);
  color: var(--accent);
  font-size: 21px;
  line-height: 1;
  cursor: pointer;
}
.mode-toggle[hidden] { display: none; }
.mode-toggle:hover { background: var(--surface); }
@media (max-width: 720px) {
  .header-inner { gap: 10px; }
  .bot-nav { margin-left: auto; }
  .mode-toggle { width: 32px; height: 32px; flex-basis: 32px; font-size: 19px; }
}
