.xuanji-app{--xj-ink:#1f3a5f;--xj-accent:#2e7d32;--xj-warn:#b7791f;--xj-bad:#b3261e;--xj-line:#c9d3de;--xj-soft:#f4f7fa;max-width:760px;margin:0 auto;font-size:16px;line-height:1.7;color:#222}
.xuanji-app h2{color:var(--xj-ink);margin:.2em 0 .3em}
.xuanji-app h3{color:var(--xj-ink);font-size:1.08em;margin:1.4em 0 .5em;border-bottom:1px solid var(--xj-line);padding-bottom:.2em}
.xj-note{color:#667;font-size:.9em}
.xj-q{margin:.9em 0 .35em}
.xj-yi{width:100%;box-sizing:border-box;padding:.55em .7em;font-size:1em;border:1px solid var(--xj-line);border-radius:6px}
.xj-seg{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--xj-line);border-radius:6px;overflow:hidden;width:max-content;max-width:100%}
.xj-seg button{border:0;border-right:1px solid var(--xj-line);background:#fff;padding:.4em .9em;cursor:pointer;font-size:.95em;color:#333}
.xj-seg button:last-child{border-right:0}
.xj-seg button.on{background:var(--xj-ink);color:#fff}
.xuanji-app button{font:inherit}
.xj-primary{background:var(--xj-accent)!important;color:#fff!important;border:0;border-radius:6px;padding:.55em 1.4em;cursor:pointer;margin-top:.6em}
.xj-danger{color:var(--xj-bad)}
.xj-out{margin-top:1.2em}
.xj-tags .tag{display:inline-block;background:var(--xj-soft);border:1px solid var(--xj-line);border-radius:999px;padding:.1em .8em;margin:0 .4em .4em 0;font-size:.9em}
.xj-penta{width:100%;max-width:360px;display:block;margin:.4em auto}
.xj-penta line.sheng{stroke:var(--xj-accent);stroke-width:3}
.xj-penta line.sheng.weak{stroke:var(--xj-bad);stroke-width:4}
.xj-penta line.sheng.open{stroke-dasharray:6 5;stroke:#999}
.xj-penta line.ke{stroke:var(--xj-warn);stroke-width:1.2;stroke-dasharray:3 4;opacity:.8}
.xj-penta circle.node{fill:#fff;stroke:var(--xj-ink);stroke-width:2}
.xj-penta circle.lv2{fill:#dce8f5}.xj-penta circle.lv3{fill:#9fbde0}
.xj-penta text{font-size:11px;fill:#333}
.xj-loop{background:var(--xj-soft);border-left:4px solid var(--xj-accent);padding:.6em 1em 1em;margin-top:1.4em;border-radius:4px}
.xj-loop input[type=date]{padding:.2em .4em}
.xj-loop textarea{width:100%;box-sizing:border-box}
.xj-wish{padding:.4em 0;border-bottom:1px dashed var(--xj-line)}
.xj-ai{margin-top:.6em}
.xj-lang{text-align:right;margin:0}
.xj-badge{display:inline-block;background:#fdf4e3;border-left:4px solid #b7791f;padding:.15em .7em;font-size:.88em;color:#6b4a12}
.xj-case{border-bottom:1px solid var(--xj-line,#c9d3de);padding:.4em 0 .8em}
.xj-case h3{border:0;margin:.4em 0 .2em}
