/* 望川入城名单：独立信笺色域，不继承其它页面的品牌配色。 */
.intent-dialog{--intent-paper:#f3eee2;--intent-paper-deep:#eae2d2;--intent-ink:#243b34;--intent-muted:#7c8073;--intent-gold:#a88c58;--intent-line:#ac987b45;--intent-font:'Wangchuan Sans','PingFang SC','Hiragino Sans GB',sans-serif;--intent-serif:'Wangchuan Serif','Songti SC','STSong',serif;width:min(780px,calc(100vw - 40px));max-width:calc(100vw - 40px);max-height:min(800px,calc(100svh - 40px));max-height:min(800px,calc(100dvh - 40px));height:fit-content;block-size:fit-content;margin:auto;padding:0;border:1px solid #b7a17b99;border-radius:12px;background:var(--intent-paper);color:var(--intent-ink);color-scheme:light;box-shadow:0 24px 75px #06110d66;font:13px/1.8 var(--intent-font);overflow:auto;overscroll-behavior:contain;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#b9ad94 var(--intent-paper)}
.intent-dialog:not([open]){display:none}
.intent-dialog::backdrop{background:#07140fc4}
.intent-dialog *{box-sizing:border-box}
.intent-dialog [hidden]{display:none!important}
/* 仅暂停背景画面的CSS动画，不改音频播放状态。 */
body.intent-is-open .record,body.intent-is-open .hero,body.intent-is-open .hero *,body.intent-is-open .hero::before,body.intent-is-open .hero::after{animation-play-state:paused!important}
.intent-panel{position:relative;min-width:0;padding:25px 28px 20px;background:var(--intent-paper)}
.intent-header{position:sticky;top:-25px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 17px;border-bottom:1px solid var(--intent-line);background:var(--intent-paper)}
.intent-brand{display:flex;align-items:center;gap:15px;min-width:0}
.intent-brand>div{min-width:0}
.intent-seal{display:grid;place-items:center;flex:0 0 39px;width:39px;height:49px;padding:5px;border:1px solid #a88c588c;outline:1px solid #a88c583b;outline-offset:-4px;color:#987c4a;background:#ecdfbf30;writing-mode:vertical-rl;white-space:nowrap;letter-spacing:.08em;font:15px/1.15 var(--intent-serif)}
.intent-panel .eyebrow{margin:0 0 3px;padding:0;color:#9b865e;font:9px/1.6 var(--intent-font);letter-spacing:.18em}
.intent-panel h2#intent-title{margin:0;padding:0;color:var(--intent-ink);font:500 27px/1.5 var(--intent-serif);letter-spacing:.055em}
.intent-close{position:static;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;gap:6px;min-width:43px;min-height:40px;margin:0;padding:7px 10px;border:1px solid var(--intent-line);border-radius:6px;background:transparent;color:#6d786b;font:11px/1.5 var(--intent-font);letter-spacing:.04em;cursor:pointer}
.intent-close:hover{border-color:#92836199;background:#e7dfce;color:var(--intent-ink)}
.intent-close:focus-visible,.intent-panel a:focus-visible,.intent-panel button:focus-visible,.intent-contact summary:focus-visible{outline:2px solid #9a7c46;outline-offset:3px}
.intent-lead{max-width:48em;margin:15px 0 17px;padding:0;color:#73796d;font:12px/1.9 var(--intent-font);letter-spacing:.02em;overflow-wrap:anywhere}
.intent-form-area{min-width:0}
.intent-form-tools{display:flex;align-items:center;justify-content:space-between;gap:8px 18px;min-width:0;margin:0 0 8px;color:#687569;font:10px/1.7 var(--intent-font);letter-spacing:.04em}
#intent-context{min-width:0;overflow-wrap:anywhere}
.intent-connection{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;max-width:60%;color:#8a8d7e;text-align:right;font-size:9px;letter-spacing:.03em}
.intent-connection>i{display:block;flex:0 0 5px;width:5px;height:5px;border-radius:50%;background:#a99a78}
#intent-status{min-width:0;overflow-wrap:anywhere}
.intent-frame-shell{position:relative;isolation:isolate;width:100%;height:clamp(300px,54svh,420px);height:clamp(300px,54dvh,420px);min-width:0;overflow:hidden;border:1px solid #b4a38966;border-radius:7px;background:#fff}
.intent-frame{display:block;width:100%;max-width:100%;height:100%;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:#fff;color-scheme:light}
.intent-loading{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:24px;text-align:center;color:var(--intent-ink);background:linear-gradient(150deg,#f7f3e9,#eee7d8)}
.intent-loading-mark{position:relative;display:grid;place-items:center;flex:0 0 52px;width:56px;height:52px;margin:0 0 18px;color:#9b8150}
.intent-loading-mark::before{content:'';position:absolute;width:36px;height:36px;inset:8px auto auto 10px;border:1px solid #ad986c6b;transform:rotate(45deg)}
.intent-loading-mark::after{content:'';position:absolute;width:26px;height:26px;inset:13px auto auto 15px;border:1px solid #ad986c33;transform:rotate(45deg)}
.intent-loading-mark>span{position:relative;z-index:1;color:#8e7546;font:19px/1 var(--intent-serif);letter-spacing:0}
.intent-loading-mark>i{position:absolute;top:5px;left:25px;width:5px;height:5px;border-radius:50%;background:#b49a65;opacity:.45}
.intent-loading>strong{display:block;margin:0;color:#3b5145;font:500 17px/1.7 var(--intent-serif);letter-spacing:.08em}
.intent-loading>p{max-width:30em;margin:10px 0 0;color:#8a8b7c;font:11px/1.9 var(--intent-font);letter-spacing:.025em;overflow-wrap:anywhere}
.intent-skeleton{display:grid;gap:9px;width:min(245px,76%);margin:24px 0 0}
.intent-skeleton>i{position:relative;display:block;height:5px;border-radius:3px;background:#c3b18e26;opacity:.55}
.intent-skeleton>i:nth-child(2){width:86%}
.intent-skeleton>i:nth-child(3){width:62%}
.intent-reveal{margin:18px 0 0;padding:5px 0;border:0;border-bottom:1px solid #aa936564;border-radius:0;background:none;color:#7c754f;font:10px/1.7 var(--intent-font);letter-spacing:.04em;cursor:pointer}
.intent-reveal:hover{color:#314b3b;border-color:#7a805d}
/* 加载状态不提供虚假进度；未配置及失败态使用静态图案。 */
.intent-frame-shell[data-state='loaded'] .intent-loading{display:none}
.intent-frame-shell[data-state='loaded']{background:#fff}
.intent-frame-shell[data-state='idle'] .intent-frame,.intent-frame-shell[data-state='unconfigured'] .intent-frame,.intent-frame-shell[data-state='error'] .intent-frame{visibility:hidden;pointer-events:none}
.intent-frame-shell[data-state='unconfigured'],.intent-frame-shell[data-state='error']{height:240px}
.intent-frame-shell[data-state='unconfigured'] .intent-skeleton,.intent-frame-shell[data-state='error'] .intent-skeleton,.intent-frame-shell[data-state='idle'] .intent-skeleton{display:none}
.intent-frame-shell[data-state='unconfigured'] .intent-loading-mark>i,.intent-frame-shell[data-state='error'] .intent-loading-mark>i,.intent-frame-shell[data-state='idle'] .intent-loading-mark>i{display:none}
.intent-frame-shell[data-state='unconfigured'] .intent-reveal,.intent-frame-shell[data-state='error'] .intent-reveal{display:none}
.intent-frame-shell[data-state='slow'] .intent-loading>strong{color:#7f704f}
.intent-frame-shell[data-state='error'] .intent-loading>strong{color:#88664f}
.intent-frame-shell[data-state='unconfigured'] .intent-loading{background:#f4efe3}
.no-link-mark{position:relative;display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;margin:0 0 18px;border:1px solid #aa93656b;border-radius:6px;color:#967d50;background:#e7d9ba33;font:20px/1 var(--intent-serif)}
.no-link-mark::before{content:'';position:absolute;inset:6px;border-top:1px solid #aa936533;border-bottom:1px solid #aa936533;pointer-events:none}
.intent-loading-mark.no-link-mark{width:48px;height:48px;border-radius:5px}
.intent-loading-mark.no-link-mark::before,.intent-loading-mark.no-link-mark::after{inset:6px;width:auto;height:auto;border:1px solid #aa936533;transform:none}
.intent-loading-mark.no-link-mark>i{display:none}
.intent-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:9px 16px;min-height:42px;padding:10px 0 0}
.intent-external{display:inline-flex;align-items:center;gap:15px;min-height:32px;padding:6px 0;border:0;border-bottom:1px solid #a68b594f;background:none;color:#7b6e4d;font:11px/1.7 var(--intent-font);letter-spacing:.04em;text-decoration:none}
.intent-external:hover{color:#253e32;border-color:#7a805d}
.intent-retry{display:inline-flex;align-items:center;justify-content:center;min-height:33px;min-width:74px;margin-left:auto;padding:6px 12px;border:1px solid var(--intent-line);border-radius:5px;background:#e9e1d0;color:#626e5e;font:10px/1.7 var(--intent-font);letter-spacing:.04em;cursor:pointer}
.intent-retry:hover{background:#dfd6c3;color:#2e4736;border-color:#aa956c99}
.intent-retry:disabled,.intent-reveal:disabled{opacity:.45;cursor:default}
.intent-note{margin:9px 0 0;padding:0;color:#8b8c7f;font:10px/1.8 var(--intent-font);letter-spacing:.02em;overflow-wrap:anywhere}
.intent-footer{display:flex;justify-content:space-between;align-items:flex-start;gap:12px 25px;margin-top:17px;padding:14px 0 0;border-top:1px solid var(--intent-line);background:none}
.intent-footer>p{flex:1;max-width:43em;margin:0;padding:0;color:#888c7c;font:9px/1.9 var(--intent-font);letter-spacing:.02em;overflow-wrap:anywhere}
.intent-contact{flex:0 0 132px;max-width:100%;margin:0;color:#747b68}
.intent-contact>summary{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-height:25px;padding:1px 0;list-style:none;color:#7e785e;font:10px/1.8 var(--intent-font);letter-spacing:.04em;cursor:pointer}
.intent-contact>summary::-webkit-details-marker{display:none}
.intent-contact>summary>span[aria-hidden='true']{display:none}
.intent-contact>summary::after{content:'＋';font-size:13px;color:#a08c61}
.intent-contact[open]>summary::after{content:'−'}
.intent-contact[open]>summary{margin-bottom:10px}
.intent-qr{display:block;width:132px;max-width:100%;margin:0;padding:0;border:0;text-align:center}
.intent-qr img{display:block;width:132px;max-width:100%;height:auto;margin:0;padding:5px;border:1px solid #c5b6999c;border-radius:4px;background:#fff}
.intent-qr p{margin:7px 0 2px;color:#727a68;font:10px/1.7 var(--intent-font);letter-spacing:.02em}
.intent-qr small{display:block;margin:0;color:#949482;font:9px/1.7 var(--intent-font);letter-spacing:.015em}
/* 仅打开的弹窗、且处于连接中状态，才启动轻量动画。 */
.intent-dialog[open] .intent-frame-shell:is([data-state='pending'],[data-state='slow']) .intent-loading-mark:not(.no-link-mark)>i{animation:intent-orbit 2.7s linear infinite;transform-origin:3px 22px}
.intent-dialog[open] .intent-frame-shell:is([data-state='pending'],[data-state='slow']) .intent-skeleton>i{animation:intent-breathe 2.2s ease-in-out infinite}
.intent-dialog[open] .intent-frame-shell:is([data-state='pending'],[data-state='slow']) .intent-skeleton>i:nth-child(2){animation-delay:.18s}
.intent-dialog[open] .intent-frame-shell:is([data-state='pending'],[data-state='slow']) .intent-skeleton>i:nth-child(3){animation-delay:.36s}
.intent-dialog:not([open]) *{animation:none!important}
@keyframes intent-orbit{from{transform:rotate(0deg);opacity:.45}50%{opacity:.9}to{transform:rotate(360deg);opacity:.45}}
@keyframes intent-breathe{0%,100%{opacity:.3;transform:translateX(0)}50%{opacity:.75;transform:translateX(3px)}}
@media(max-width:600px){.intent-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100svh - 28px);max-height:calc(100dvh - 28px);height:fit-content;block-size:fit-content;border-radius:10px;margin:auto}.intent-panel{padding:18px 18px 15px}.intent-header{top:-18px;gap:10px;padding-bottom:13px}.intent-brand{gap:11px}.intent-seal{flex-basis:32px;width:32px;height:42px;font-size:13px}.intent-panel .eyebrow{font-size:8px;margin-bottom:3px;letter-spacing:.12em}.intent-panel h2#intent-title{font-size:23px;letter-spacing:.035em}.intent-close{min-width:39px;min-height:38px;padding:6px 8px;font-size:10px}.intent-lead{font-size:11px;line-height:1.8;margin:12px 0 13px}.intent-form-tools{gap:7px 10px;font-size:9px;margin-bottom:7px;flex-wrap:wrap}.intent-connection{font-size:8px;max-width:65%}.intent-frame-shell{height:min(400px,44svh);height:min(400px,44dvh);min-height:220px;border-radius:5px}.intent-frame-shell[data-state='unconfigured'],.intent-frame-shell[data-state='error']{height:min(260px,36svh);height:min(260px,36dvh);min-height:205px}.intent-loading{padding:20px 17px}.intent-loading-mark{margin-bottom:14px}.intent-loading>strong{font-size:16px}.intent-loading>p{font-size:10px;line-height:1.9;max-width:25em;margin-top:8px}.intent-skeleton{margin-top:19px;width:min(205px,76%)}.intent-actions{gap:9px 13px;padding-top:9px;min-height:39px}.intent-external{font-size:10px;min-height:32px;gap:9px}.intent-retry{font-size:9px;min-width:66px;min-height:32px;padding:5px 10px}.intent-note{font-size:9px;line-height:1.85;margin-top:8px}.intent-footer{gap:12px 15px;margin-top:13px;padding-top:11px}.intent-footer>p{font-size:8px;line-height:1.9}.intent-contact{flex-basis:106px}.intent-contact>summary{font-size:9px;gap:10px}.intent-qr,.intent-qr img{width:106px}.intent-qr p{font-size:9px}.intent-qr small{font-size:8px}}
@media(max-width:360px){.intent-dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px)}.intent-panel{padding:16px 14px 13px}.intent-header{top:-16px;gap:8px}.intent-brand{gap:9px}.intent-panel h2#intent-title{font-size:21px;letter-spacing:.02em}.intent-seal{flex-basis:29px;width:29px;height:39px;font-size:12px}.intent-close{min-width:36px;padding-inline:6px}.intent-lead{font-size:10px}.intent-form-tools{font-size:8px}.intent-connection{max-width:70%;font-size:8px}.intent-footer{display:block}.intent-contact{width:106px;margin:9px 0 0 auto}.intent-contact>summary{min-height:27px}.intent-frame-shell{min-height:205px}.intent-loading>p{font-size:10px;max-width:22em}}
@media(max-height:620px) and (min-width:601px){.intent-panel{padding-top:18px;padding-bottom:16px}.intent-header{top:-18px;padding-bottom:12px}.intent-lead{margin:11px 0 12px;font-size:11px}.intent-frame-shell{height:clamp(200px,43svh,330px);height:clamp(200px,43dvh,330px)}.intent-frame-shell[data-state='unconfigured'],.intent-frame-shell[data-state='error']{height:210px}.intent-footer{margin-top:12px;padding-top:11px}}
@media(prefers-reduced-motion:reduce){.intent-dialog *,.intent-dialog *::before,.intent-dialog *::after{animation:none!important;transition:none!important}}
