/* Native Mini Program elements and browser-only controls; desktop shell lives separately. */
#page-root{--rpx:.5px;min-height:100%;font-size:calc(var(--rpx) * 28);font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;color:#182233}
:where(#page-root) *,#wx-overlays *{box-sizing:border-box}
:where(#page-root) view,:where(#page-root) scroll-view,:where(#page-root) picker,:where(#page-root) checkbox-group,:where(#page-root) form{display:block}
:where(#page-root) text,:where(#page-root) label{display:inline}
:where(#page-root) block{display:contents}
:where(#page-root) dialog[data-wx-portal]{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:inherit;overflow:visible}
:where(#page-root) dialog[data-wx-portal]::backdrop{background:transparent}
:where(#page-root) button{cursor:pointer;font:inherit;background:transparent;border:0;color:inherit;line-height:normal}
:where(#page-root) input,:where(#page-root) textarea{font:inherit;border:0;outline:none;color:inherit;background:transparent;padding:0;border-radius:0;min-width:0}
:where(#page-root) input{height:calc(var(--rpx) * 40)}
:where(#page-root) input[type=checkbox],:where(#page-root) input[type=radio]{width:18px;height:18px;margin:0 8px 0 0;vertical-align:middle;accent-color:#1677ff;cursor:pointer;flex-shrink:0}
:where(#page-root) textarea{display:block;resize:vertical;overflow:auto;min-height:calc(var(--rpx) * 150)}
:where(#page-root) input::placeholder,:where(#page-root) textarea::placeholder{color:#8b98aa}
:where(#page-root) button:disabled,:where(#page-root) input:disabled,:where(#page-root) textarea:disabled{opacity:.55;cursor:not-allowed}
:where(#page-root) scroll-view{overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c6d5e6 transparent}
:where(#page-root) scroll-view[scroll-x]{overflow-x:auto;overflow-y:hidden}
:where(#page-root) scroll-view[scroll-y]{overflow-y:auto}
:where(#page-root) image,:where(#page-root) img{display:inline-block;max-width:100%;object-fit:contain}
:where(#page-root) picker{position:relative;min-width:0}
:where(#page-root) [data-wx-component]{display:block}
:where(#page-root) .wx-picker-control{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;z-index:1;font-size:16px}
:where(#page-root) .wx-picker-control:disabled{cursor:not-allowed}
:where(#page-root) .wx-interactive{cursor:pointer}
:where(#page-root) .wx-interactive:focus-visible,:where(#page-root) button:focus-visible,:where(#page-root) input:focus-visible,:where(#page-root) textarea:focus-visible{outline:2px solid #86b9e8;outline-offset:3px}
:where(#page-root) canvas{display:block}
:where(#page-root) [hidden]{display:none!important}
.wx-toast{position:fixed;z-index:99999;left:50%;top:42%;transform:translate(-50%,-50%);max-width:min(86%,520px);width:max-content;padding:15px 20px;border-radius:12px;background:#14243ded;color:white;font-size:14px;line-height:1.7;text-align:center;box-shadow:0 8px 32px #10274426;pointer-events:none}
.wx-modal-mask{position:fixed;inset:0;z-index:99998;display:flex;align-items:center;justify-content:center;background:#0e203c60;padding:28px;backdrop-filter:blur(3px)}
.wx-modal{width:100%;max-width:420px;background:white;border-radius:18px;overflow:hidden;font:14px -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif;text-align:center;box-shadow:0 20px 80px #112e4729}
.wx-modal-head{padding:24px 24px 12px;font-weight:700;font-size:18px;color:#182233}
.wx-modal-content{padding:0 24px 24px;font-size:14px;line-height:1.7;color:#65758b;white-space:pre-wrap}
.wx-modal-input{display:block;width:100%;min-height:100px;margin:8px 0 0;padding:12px;border:1px solid #d7e2ef;border-radius:10px;resize:vertical;font:inherit;color:#182233;background:#f8fbff}
.wx-modal-buttons{display:flex;border-top:1px solid #e7edf3}
.wx-modal-buttons button{padding:16px;flex:1;font:600 15px -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif;color:#1677ff;background:transparent;border:0;cursor:pointer}
.wx-modal-buttons button+button{border-left:1px solid #e7edf3}
.wx-modal-buttons button:hover{background:#f0f7ff}
@media(prefers-reduced-motion:reduce){:where(#page-root) *,#wx-overlays *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
