/* 后台表单、快捷入口与一键订阅弹层的补充样式。 */
.shortcut.clickable{cursor:pointer;transition:background .16s}
.shortcut.clickable:hover{background:#f8fbff}
.shortcut.clickable:focus-visible{outline:3px solid #93c5fd;outline-offset:-3px}
.shortcut-arrow{margin-left:auto;color:var(--blue);font-size:25px}
.doc-group{margin-bottom:20px}
.admin-table .user-row{cursor:pointer}
.admin-table .selected-row td{background:#dbeafe}
.admin-table th:last-child,.admin-table td:last-child{position:sticky;right:0;background:#fff;z-index:1;box-shadow:-4px 0 8px rgba(24,34,48,.06)}
.admin-table th:last-child{z-index:2}
.admin-table .selected-row td:last-child{background:#dbeafe}
.admin-search{display:flex;gap:9px;margin:-2px 0 16px;max-width:520px}
.admin-search .input{flex:1}
.id-sort{border:0;padding:0;background:transparent;color:inherit;font-weight:700}
.table-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;color:var(--muted);white-space:nowrap}
.table-pagination>div{display:flex;gap:7px}
@media(max-width:760px){.admin-search{max-width:none}.table-pagination{align-items:flex-start;flex-direction:column}.table-pagination>div{flex-wrap:wrap}}
.maintenance-panel{display:flex;justify-content:space-between;gap:18px;padding:17px 20px;align-items:center}
.maintenance-panel h2{margin:0 0 7px;font-size:16px}.maintenance-panel p{margin:4px 0;color:var(--muted);line-height:1.55}.maintenance-panel .maintenance-result{font-size:12px}.maintenance-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.maintenance-actions .btn{white-space:nowrap}
.maintenance-switch{display:flex;align-items:center;gap:5px;padding:8px 4px;color:var(--ink);font-weight:700;white-space:nowrap}.maintenance-switch input{width:16px;height:16px;accent-color:var(--blue)}
@media(max-width:760px){.maintenance-panel{display:block}.maintenance-actions{justify-content:flex-start;margin-top:12px}}
.rich-toolbar{display:flex;gap:6px;border:1px solid #ccd6e3;border-bottom:0;border-radius:8px 8px 0 0;padding:7px;background:#f8fafc}
.rich-toolbar button{border:1px solid #d7e0eb;border-radius:5px;background:#fff;padding:3px 8px;color:#334155}
.rich-editor{min-height:150px;border:1px solid #ccd6e3;border-radius:0 0 8px 8px;padding:10px;outline:none;line-height:1.7}
.rich-editor:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.11)}
.rich-editor img,.rich-editor video{display:block;max-width:100%!important;width:auto!important;height:auto!important;margin:12px auto}
.rich-editor a{color:var(--blue);overflow-wrap:anywhere}
.rich-source{min-height:230px;border-color:#64748b;border-radius:0 0 8px 8px;background:#0f172a;color:#e2e8f0;font-family:Consolas,"Courier New",monospace;font-size:13px;line-height:1.6;resize:vertical}
.rich-source:focus{border-color:#60a5fa;box-shadow:0 0 0 3px rgba(96,165,250,.22);outline:none}
.subscription-modal{position:relative;width:min(300px,100%);background:#fff;border-radius:4px;box-shadow:var(--shadow);overflow:hidden;padding:0 10px 10px}
.subscription-modal .modal-close{position:absolute;right:8px;top:3px}
.subscription-action{display:flex;align-items:center;gap:22px;width:100%;min-height:64px;border:0;border-bottom:1px solid var(--line);padding:12px 20px;background:#fff;text-align:left;color:#4b5563;font-size:15px}
.subscription-action:hover{background:#f8fafc}
.subscription-action>span{font-size:25px;color:#5f6875}
.document-modal{width:min(960px,100%);overflow-x:hidden;overflow-y:auto}
.document-modal .doc-content{max-width:100%;margin-top:18px;overflow-x:hidden;overflow-wrap:anywhere;word-break:break-word;line-height:1.8}
.document-modal .doc-content img,.document-modal .doc-content video,.document-modal .doc-content iframe,.document-modal .doc-content canvas{display:block;max-width:100%!important;width:auto!important;height:auto!important;margin:14px auto}
.document-modal .doc-content table{display:table;max-width:100%!important;width:100%!important;table-layout:fixed;word-break:break-word}
.document-modal .doc-content td,.document-modal .doc-content th{white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.document-modal .doc-content pre{max-width:100%;white-space:pre-wrap;overflow-x:hidden;overflow-wrap:anywhere}
.payment-modal{position:relative;width:min(360px,100%);background:#fff;border-radius:6px;padding:30px;box-shadow:var(--shadow)}
.payment-modal .modal-close{position:absolute;right:12px;top:8px}
.payment-modal h2{margin:8px 0 30px;font-size:23px}
.payment-plan{display:flex;justify-content:space-between;gap:18px;align-items:center;border-bottom:1px solid #8d97a5;padding:0 0 28px;font-size:17px;line-height:1.45}
.payment-plan strong{white-space:nowrap;font-size:16px}
.payment-total{display:flex;justify-content:space-between;align-items:end;padding:30px 0;font-size:18px}
.payment-total strong{font-size:30px;color:#05080d;white-space:nowrap}
.payment-actions{display:flex;gap:13px}
.payment-actions .btn{flex:1;border-radius:4px;color:#fff;font-size:15px}
.alipay-pay{background:#4267de}.alipay-pay:hover{background:#3155c8}
.payment-qr{text-align:center;border-top:1px solid var(--line);margin-top:22px;padding-top:18px;color:var(--muted)}
.payment-qr p{margin:0 0 14px}.payment-qr img{width:210px;max-width:100%;image-rendering:auto}
@media(max-width:760px){.payment-modal{padding:25px 22px}.payment-total strong{font-size:27px}}
.subscription-qr-row{cursor:default}
.subscription-qr-row p{margin:0}
.subscription-qr-loading{margin-top:5px;color:var(--muted);font-size:12px}
.subscription-qr-loading img{width:110px;height:110px;display:block;margin:7px 0 1px}
.subscription-help{display:block;width:calc(100% - 20px);margin:10px;border:0;border-radius:5px;padding:10px;background:var(--navy);color:#fff;font-weight:800;font-size:15px}
