/* Site-wide end-of-page block: share bar, author line, comments, floating share button.
   Injected by scripts/enhance.py. Every selector is prefixed with .sv- to avoid page CSS clashes. */
.sv-root{--sv-fg:#e6ebf5;--sv-dim:#9aa6bd;--sv-mute:#6b7790;--sv-bg:rgba(255,255,255,.04);--sv-bd:rgba(255,255,255,.12);--sv-acc:#22d3ee;--sv-acc-fg:#04131a;--sv-input:rgba(255,255,255,.06);
  max-width:760px;margin:56px auto 32px;padding:0 16px;box-sizing:border-box;color:var(--sv-fg);
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC","Noto Sans Khmer",sans-serif;font-size:15px;line-height:1.7;text-align:left}
.sv-root.sv-light{--sv-fg:#1f2a3d;--sv-dim:#4f5d75;--sv-mute:#7d889c;--sv-bg:#fff;--sv-bd:#dfe5ee;--sv-acc:#0e7490;--sv-acc-fg:#fff;--sv-input:#f6f8fb}
.sv-root *,.sv-modal *{box-sizing:border-box}
.sv-card{background:var(--sv-bg);border:1px solid var(--sv-bd);border-radius:14px;padding:18px 18px 16px;margin:0 0 16px}
.sv-h{font-size:14px;font-weight:700;color:var(--sv-dim);margin:0 0 12px;letter-spacing:.02em}
.sv-share-row{display:flex;flex-wrap:wrap;gap:8px}
.sv-btn{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 14px;border-radius:999px;border:1px solid var(--sv-bd);background:transparent;color:var(--sv-fg);font:inherit;font-size:14px;text-decoration:none!important;cursor:pointer;line-height:1.2;-webkit-tap-highlight-color:transparent}
.sv-btn:hover{border-color:var(--sv-acc);color:var(--sv-acc)}
.sv-btn.sv-primary{background:var(--sv-acc);border-color:var(--sv-acc);color:var(--sv-acc-fg);font-weight:700}
.sv-btn.sv-primary:hover{filter:brightness(1.08);color:var(--sv-acc-fg)}
.sv-btn svg{width:16px;height:16px;flex:none}
.sv-author{display:flex;gap:14px;align-items:flex-start}
.sv-avatar{flex:none;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;color:#fff;background:linear-gradient(135deg,#22d3ee,#818cf8)}
.sv-author b{display:block;font-size:16px;margin-bottom:2px}
.sv-author p{margin:0 0 8px;color:var(--sv-dim);font-size:14px}
.sv-links{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px}
.sv-links a{color:var(--sv-acc);text-decoration:none}
.sv-links a:hover{text-decoration:underline}
.sv-form{display:grid;gap:10px;margin-top:4px}
.sv-form .sv-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:560px){.sv-form .sv-two{grid-template-columns:1fr}}
.sv-form input,.sv-form textarea{width:100%;padding:11px 12px;border-radius:10px;border:1px solid var(--sv-bd);background:var(--sv-input);color:var(--sv-fg);font:inherit;font-size:16px}
.sv-form textarea{min-height:104px;resize:vertical}
.sv-form input:focus,.sv-form textarea:focus{outline:none;border-color:var(--sv-acc)}
.sv-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.sv-note{font-size:13px;color:var(--sv-mute);margin:0}
.sv-msg{font-size:14px;margin:6px 0 0;color:var(--sv-acc)}
.sv-msg.sv-err{color:#f87171}
.sv-list{list-style:none;margin:0 0 14px;padding:0}
.sv-item{padding:12px 0;border-bottom:1px solid var(--sv-bd)}
.sv-item:last-child{border-bottom:0}
.sv-item .sv-who{font-weight:700;font-size:14px}
.sv-item .sv-when{font-size:12px;color:var(--sv-mute);margin-left:8px;font-weight:400}
.sv-item .sv-body{margin:4px 0 0;white-space:pre-wrap;word-break:break-word}
.sv-reply{margin:8px 0 0;padding:8px 12px;border-left:3px solid var(--sv-acc);background:var(--sv-input);border-radius:0 8px 8px 0;font-size:14px}
.sv-reply b{color:var(--sv-acc)}
.sv-empty{color:var(--sv-mute);font-size:14px;margin:0 0 12px}
/* floating share button */
.sv-fab{position:fixed;right:16px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:9990;width:52px;height:52px;border-radius:50%;border:0;cursor:pointer;
  background:linear-gradient(135deg,#22d3ee,#818cf8);color:#fff;box-shadow:0 6px 20px rgba(0,0,0,.28);display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}
.sv-fab svg{width:22px;height:22px}
.sv-fab:focus-visible{outline:3px solid #fff;outline-offset:2px}
@media print{.sv-root,.sv-fab{display:none!important}}
/* modal sheet */
.sv-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:flex-end;justify-content:center;background:rgba(5,8,16,.62);
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;color:#1f2a3d}
@media (min-width:720px){.sv-modal{align-items:center}}
.sv-sheet{width:100%;max-width:520px;max-height:92vh;overflow:auto;background:#fff;border-radius:18px 18px 0 0;padding:18px 18px calc(18px + env(safe-area-inset-bottom));position:relative}
@media (min-width:720px){.sv-sheet{border-radius:18px}}
.sv-sheet h3{margin:0 0 4px;font-size:17px}
.sv-sheet .sv-sub{margin:0 0 14px;color:#5b6880;font-size:13px;line-height:1.5}
.sv-x{position:absolute;right:10px;top:8px;width:40px;height:40px;border:0;background:transparent;font-size:24px;color:#7d889c;cursor:pointer}
.sv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px 6px;margin:6px 0 4px}
.sv-tile{display:flex;flex-direction:column;align-items:center;gap:6px;border:0;background:transparent;color:#1f2a3d;font:inherit;font-size:12px;text-decoration:none;cursor:pointer;padding:4px 0}
.sv-ic{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:18px}
.sv-ic svg{width:24px;height:24px}
.sv-qrbox{display:flex;flex-direction:column;align-items:center;gap:10px;margin:8px 0}
.sv-qrbox canvas,.sv-qrbox img{width:200px;height:200px;image-rendering:pixelated}
.sv-poster{display:block;width:100%;max-width:360px;margin:6px auto 10px;border-radius:10px;box-shadow:0 4px 18px rgba(0,0,0,.18)}
.sv-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.sv-row .sv-btn{color:#1f2a3d;border-color:#dfe5ee}
.sv-row .sv-btn.sv-primary{background:#0e7490;border-color:#0e7490;color:#fff}
.sv-wx-guide{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.78);color:#fff;font-family:-apple-system,"PingFang SC",sans-serif}
.sv-wx-guide .sv-arrow{position:absolute;right:18px;top:6px;font-size:44px;line-height:1}
.sv-wx-guide .sv-tip{position:absolute;right:20px;top:64px;left:20px;text-align:right;font-size:17px;line-height:1.7}
.sv-wx-guide .sv-tip b{color:#5eead4}
.sv-wx-guide .sv-alt{position:absolute;left:20px;right:20px;bottom:calc(40px + env(safe-area-inset-bottom));display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.sv-wx-guide .sv-alt .sv-btn{color:#fff;border-color:rgba(255,255,255,.4)}
.sv-toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);z-index:10001;background:rgba(15,23,42,.92);color:#fff;padding:10px 16px;border-radius:999px;font-size:14px;font-family:-apple-system,"PingFang SC",sans-serif}
.sv-rel{margin:0;padding-left:1.1em;font-size:15px;line-height:1.9}
.sv-rel a{color:var(--sv-acc);text-decoration:none}
.sv-rel a:hover{text-decoration:underline}
