/* attachment_upload */
.attachment-uploader{display:grid;gap:8px}.attachment-input{position:absolute;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none}.attachment-drop{display:grid;justify-items:start;gap:2px;padding:0;border:0;background:transparent;color:var(--text-muted);text-align:left;cursor:pointer}.attachment-drop strong{color:var(--text);font-size:var(--font-size-md);line-height:1.4;display:inline-flex;align-items:center;justify-content:flex-start;gap:3px;vertical-align:middle}.attachment-drop strong svg.meta-icon{display:block;width:14px;height:14px;flex:none;margin:0}.attachment-drop span{font-size:var(--font-size-sm);line-height:1.45}.attachment-uploader:focus-within .attachment-drop,.attachment-drop:hover{background:transparent;color:var(--brand)}.attachment-field-muted>span{color:var(--text-subtle)}.attachment-field-muted .attachment-uploader{gap:6px}.attachment-field-muted .attachment-drop{display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:0;border:0;background:transparent;color:var(--text-subtle)}.attachment-field-muted .attachment-drop strong{flex:0 0 auto;color:var(--text-muted);font-size:var(--font-size-sm);font-weight:500}.attachment-field-muted .attachment-drop span{min-width:0;font-size:11px}.attachment-field-muted .attachment-uploader:focus-within .attachment-drop,.attachment-field-muted .attachment-drop:hover{background:transparent;color:var(--text-muted)}.attachment-upload-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 10px;color:var(--text-subtle);font-size:11px}.attachment-upload-toolbar[hidden],.attachment-upload-list[hidden]{display:none}.attachment-upload-insert{min-height:28px;padding:4px 9px;font-size:var(--font-size-sm);white-space:nowrap}.attachment-upload-list{display:grid;gap:6px;margin-top:2px;margin-bottom:8px}.attachment-upload-item{display:grid;gap:6px;min-width:0;padding:8px 10px;border:1px solid var(--line-soft);border-radius:var(--radius-sm);background:var(--bg)}.attachment-upload-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0}.attachment-upload-name{min-width:0;overflow:hidden;color:var(--text);font-size:var(--font-size-sm);font-weight:500;text-overflow:ellipsis;white-space:nowrap}.attachment-upload-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}.attachment-upload-status{max-width:220px;color:var(--text-subtle);font-size:11px;line-height:1.4;text-align:right;overflow-wrap:anywhere}.attachment-upload-head-actions .attachment-upload-remove{display:grid;place-items:center;justify-self:auto;width:20px;min-width:20px;min-height:20px;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-subtle);font-size:18px;line-height:1;box-shadow:none}.attachment-upload-remove:hover{background:var(--line-soft);color:var(--danger)}.attachment-upload-remove:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.attachment-upload-progress{display:block;width:100%;height:4px;overflow:hidden;border-radius:4px;background:var(--line)}.attachment-upload-progress>span{display:block;width:0;height:100%;border-radius:inherit;background:var(--brand);transition:width .15s ease}.attachment-upload-item[data-state="success"] .attachment-upload-status{color:var(--success)}.attachment-upload-item[data-state="success"] .attachment-upload-progress{display:none}.attachment-upload-item[data-state="success"][data-markdown]{cursor:pointer;transition:border-color .15s,background .15s}.attachment-upload-item[data-state="success"][data-markdown]:hover{border-color:var(--brand);background:var(--brand-soft)}.attachment-upload-item[data-state="success"][data-markdown]:focus-visible{border-color:var(--brand);outline:2px solid var(--focus-ring);outline-offset:1px}.attachment-upload-item[data-state="error"] .attachment-upload-status{color:var(--danger)}.attachment-upload-item[data-state="error"] .attachment-upload-progress>span{background:var(--danger)}
.attachment-upload-settings{max-width:none}.attachment-upload-settings-section{display:grid;gap:10px;margin-bottom:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.attachment-upload-settings-section>strong{font-size:12px}.attachment-upload-settings-section .grid{margin:0}.attachment-upload-settings-groups{display:grid;grid-template-columns:1fr;gap:10px}.attachment-upload-settings-groups .grid{grid-template-columns:minmax(90px,140px) minmax(0,1fr)}
@media(max-width:600px){.attachment-upload-settings-groups .grid{grid-template-columns:1fr}}
.attachment-upload-env-list{display:grid;gap:6px}.attachment-upload-env-item{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px}.attachment-upload-env-item strong{color:var(--text);font-size:var(--font-size-sm);font-weight:500}.attachment-upload-env-status{flex:0 0 auto;font-size:var(--font-size-sm);font-weight:600}.attachment-upload-env-status-ok{color:var(--ok)}.attachment-upload-env-status-bad{color:var(--danger)}.attachment-upload-env-detail{min-width:0;font-size:12px;color:var(--text-muted)}.attachment-upload-env-note{margin-top:2px;padding:10px 12px;border:1px solid var(--line-soft);border-radius:8px;font-size:12px;line-height:1.8;color:var(--text-muted)}.attachment-upload-env-note strong{color:var(--text)}.attachment-upload-env-note p{margin:6px 0 0}.attachment-upload-env-note ul{margin:6px 0 0;padding-left:18px;display:grid;gap:2px}.attachment-upload-env-note-bad{border-color:var(--warn)}.attachment-upload-env-note-ok{border-color:var(--ok)}
.form-panel .attachment-field{margin:0}.attachment-drop-float{position:absolute;right:4px;bottom:4px;z-index:2;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:6px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--text-muted);cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.05)}.attachment-drop-float:hover{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}.attachment-drop-float:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.attachment-drop-float span{display:none}
/* auto_upgrade */
.auto-upgrade-settings{max-width:none}.auto-upgrade-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.auto-upgrade-section{display:grid;align-content:start;gap:10px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.auto-upgrade-section>strong{font-size:12px}.auto-upgrade-times{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.auto-upgrade-section .grid{min-width:0;margin:0}.auto-upgrade-section input{max-width:none}.auto-upgrade-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.auto-upgrade-actions .post-action-form{margin:0}.auto-upgrade-actions button{margin:0!important}.auto-upgrade-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.auto-upgrade-status span{display:grid;gap:4px;min-width:0;padding:10px 12px;border:1px solid var(--line-soft);border-radius:6px;background:var(--bg);overflow-wrap:anywhere}.auto-upgrade-status small{color:var(--text-muted);font-size:11px}@media(max-width:680px){.auto-upgrade-grid,.auto-upgrade-times,.auto-upgrade-status{grid-template-columns:1fr}.auto-upgrade-actions{align-items:stretch;flex-direction:column}.auto-upgrade-actions .post-action-form{display:flex!important;width:100%}.auto-upgrade-actions button{width:100%}}
/* big_emoji */
.big-emoji-bar{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0 0 8px;padding:0 0 6px;border-bottom:1px solid var(--line-soft);min-width:0;width:100%;contain:inline-size}
.big-emoji-bar[data-big-emoji-docked]{margin:0;padding:0;border-bottom:0;flex:1 1 0%;min-width:0}
.big-emoji-bar-list{display:flex;flex-wrap:wrap;gap:2px;min-width:0}
.big-emoji-bar .big-emoji-option{display:flex;align-items:center;justify-content:center;width:34px;height:34px;min-width:0;min-height:0;justify-self:start;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;font-size:22px;line-height:1;cursor:pointer;opacity:.8;transition:opacity var(--transition-normal),transform var(--transition-normal),background var(--transition-normal)}
.big-emoji-bar .big-emoji-option:hover{opacity:1;background:var(--brand-soft)}
.big-emoji-bar .big-emoji-option:active{transform:scale(.9)}
.big-emoji-bar .big-emoji-option:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}
.big-emoji-icon{display:inline-block;font-size:5em;line-height:1;vertical-align:middle;cursor:pointer;user-select:none;transition:transform var(--transition-normal)}
.big-emoji-icon:hover{transform:scale(1.25)}
.big-emoji-icon:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:4px}
.big-emoji-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:3000}
@media(max-width:720px){
.big-emoji-bar-list{width:100%;justify-content: space-around}
.big-emoji-bar .big-emoji-option{width:24px;height:24px;font-size:15px;border-radius:4px}
}
/* ip_history */
.ip-history-search{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ip-history-search input{min-width:min(360px,70vw)}
.ip-history-rule-row{grid-template-columns:minmax(0,1fr) auto}
.ip-history-rule-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ip-history-rule-pattern,.ip-history-ip{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
.ip-history-ip-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}
.ip-history-ip{padding:2px 7px;border:1px solid var(--line);border-radius:999px;background:var(--bg);color:var(--text-muted);font-size:11px}
.ip-history-user-row,.ip-history-detail-row{grid-template-columns:minmax(0,1fr)}
.ip-history-detail-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ip-history-help{margin:0;color:var(--text-muted);font-size:12px;line-height:1.7}
@media (max-width:760px){.ip-history-rule-row{grid-template-columns:minmax(0,1fr)}.ip-history-rule-row>.admin-inline-ops{justify-content:flex-start}}
.post-meta.ip-history-location-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.ip-history-location-separator{color:var(--text-subtle);font-size:11px}.ip-history-location-subtitle{display:inline-flex;min-width:0;max-width:100%;overflow:hidden;color:var(--text-subtle);font-size:11px;font-weight:400;line-height:1.25;overflow-wrap:anywhere;text-overflow:ellipsis}.topic-post-list .post-meta.ip-history-location-meta{display:flex}.ip-history-recent-card .quick-wrap{display:grid;gap:7px}.ip-history-recent-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.ip-history-recent-item{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px;padding:6px 0}.ip-history-recent-ip{min-width:0;overflow:hidden;color:var(--text);font-family:var(--font-mono);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.ip-history-recent-time{flex:0 0 auto;color:var(--text-muted);font-size:11px}.ip-history-recent-empty{margin:0;color:var(--text-muted);font-size:12px}.ip-history-location-settings{max-width:none}
/* nb_editor */
.nb-editor-admin-settings{max-width:none;gap:16px}
.nb-editor-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.nb-editor-admin-section{display:grid;align-content:start;gap:10px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg)}
.nb-editor-admin-section-head{display:grid;gap:3px;padding-bottom:2px}
.nb-editor-admin-section-head strong{color:var(--text);font-size:var(--font-size-md);line-height:1.4}
.nb-editor-admin-section-head span{color:var(--text-subtle);font-size:var(--font-size-sm);line-height:1.45}
.nb-editor-admin-settings .nb-editor-admin-section>.grid{grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin:0;padding:9px 0;border-top:1px solid var(--line-soft)}
.nb-editor-admin-settings .nb-editor-admin-section-head+.grid{border-top:0}
.nb-editor-admin-settings .nb-editor-admin-section>.grid>span{padding-top:0;color:var(--text-muted);font-size:var(--font-size-sm);line-height:1.45}
.nb-editor-admin-settings .nb-editor-admin-section>.grid>span small{margin-top:2px;color:var(--text-subtle);line-height:1.4}
.nb-editor-admin-settings .nb-editor-admin-section>.grid input[type=number]{width:100%;max-width:130px}
.nb-editor-admin-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding-top:2px}
.nb-editor-admin-actions button{margin:0}
.nb-editor-admin-actions span{color:var(--text-subtle);font-size:var(--font-size-sm);line-height:1.45}
@media(max-width:720px){
.nb-editor-admin-grid{grid-template-columns:1fr}
.nb-editor-admin-section{padding:12px}
.nb-editor-admin-actions{align-items:stretch;flex-direction:column}
.nb-editor-admin-actions button{width:100%}
}
.nb-editor-field{position:relative;display:grid;row-gap:0;margin:8px 0}
.reply-panel .nb-editor-field{margin:0}
.nb-editor-field>.grid{display:contents}
.nb-editor-field>.grid>span{order:1;margin-bottom:6px;padding-top:0}
.nb-editor-field>.nb-editor{order:2}
/* 正文框固定白底，和主题色工具栏拉开层次；高度仍交给核心按场景决定。 */
.nb-editor-field>.grid>textarea[name=body]{order:3;border-top:0;border-radius:0 0 var(--radius-sm) var(--radius-sm);background:var(--panel);resize:vertical}
/* 分栏预览：左边写 Markdown，右边常驻渲染结果，随输入更新。 */
.nb-editor-field.nb-editor-live{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.nb-editor-field.nb-editor-live>.grid>span,.nb-editor-field.nb-editor-live>.nb-editor{grid-column:1/-1}
.nb-editor-field.nb-editor-live>.grid>textarea[name=body]{grid-column:1;border-bottom-right-radius:0}
.nb-editor-field.nb-editor-live>.nb-editor-preview{grid-column:2;max-height:60vh;overflow:auto;border-left:0;border-bottom-left-radius:0}
.nb-editor{min-width:0}
/* 工具栏跟随站点主题色，不写死中性灰。 */
.nb-editor-bar{display:flex;align-items:center;flex-wrap:wrap;gap:2px;padding:4px 6px;border:1px solid var(--line);border-bottom:0;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--brand-soft)}
.nb-editor-field:focus-within>.nb-editor>.nb-editor-bar{border-color:var(--brand)}
/* 选择器带上根容器，避免被 .reply-panel button 之类的核心规则按特异性压过。 */
.nb-editor .nb-editor-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;min-width:30px;min-height:28px;height:28px;padding:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--brand-hover);cursor:pointer}
.nb-editor .nb-editor-btn svg{width:16px;height:16px}
.nb-editor .nb-editor-btn:hover{border-color:var(--line);background:var(--panel);color:var(--brand-hover)}
.nb-editor .nb-editor-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}
.nb-editor .nb-editor-btn.nb-editor-btn-active{border-color:var(--brand);background:var(--panel);color:var(--brand-hover)}
.nb-editor-split{width:1px;height:16px;margin:0 4px;background:var(--line)}
.nb-editor-space{flex:1 1 auto;min-width:0}
/* 面板用 fixed 浮层：既不挤占正文框空间，也不会被祖先的 overflow:hidden 裁掉。位置由 JS 计算，优先向上弹。 */
.nb-editor-panel{position:fixed;z-index:60;display:flex;flex-direction:column;width:min(360px,100%);max-height:min(60vh,340px);border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:0 12px 32px var(--shadow-medium);overflow:hidden}
.nb-editor-panel[hidden]{display:none}
.nb-editor-panel-title{flex:0 0 auto;padding:8px 12px 0;color:var(--text-subtle);font-size:var(--font-size-xs);line-height:1.4}
.nb-editor-items{flex:1 1 auto;min-height:0;display:flex;align-items:flex-start;align-content:flex-start;flex-wrap:wrap;gap:3px;margin:0;padding:8px 10px;overflow-y:auto;list-style:none}
.nb-editor-items[hidden]{display:none}
.nb-editor-items li{padding:4px 7px;border-radius:var(--radius-sm);color:var(--text);font-size:var(--font-size-sm);line-height:1.4;cursor:pointer;user-select:none}
.nb-editor-items li:hover{background:var(--bg)}
.nb-editor-items-emoji li{padding:2px 5px;font-size:var(--font-size-xl)}
.nb-editor-tabs{flex:0 0 auto;display:flex;align-items:stretch;flex-wrap:wrap;border-top:1px solid var(--line);background:var(--brand-soft)}
.nb-editor .nb-editor-tab{min-width:0;min-height:34px;padding:0 12px;border:0;border-radius:0;background:transparent;color:var(--text-muted);font-size:var(--font-size-sm);font-weight:400;cursor:pointer}
.nb-editor .nb-editor-tab:hover{background:var(--panel);color:var(--text)}
.nb-editor .nb-editor-tab.nb-editor-tab-active{background:var(--panel);color:var(--brand-hover);font-weight:500}
/* 预览框借用核心 .post-content 的排版，但要去掉它的 margin-top，否则与正文框差 2px。 */
.nb-editor-preview{order:4;margin-top:0;min-height:120px;padding:12px 14px;border:1px solid var(--line);border-top:0;border-radius:0 0 var(--radius-sm) var(--radius-sm);background:var(--panel)}
.nb-editor-preview[hidden]{display:none}
.nb-editor-preview-empty{color:var(--text-subtle);font-size:var(--font-size-sm)}
.nb-editor-draft{order:2;display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:7px 10px;border:1px solid var(--line);border-top:0;background:var(--info-soft);color:var(--text-muted);font-size:var(--font-size-sm);line-height:1.5}
.nb-editor-draft[hidden]{display:none}
.nb-editor-draft-text{flex:1 1 auto;min-width:0}
.nb-editor-status{order:2;padding:6px 10px;border:1px solid var(--line);border-top:0;background:var(--brand-soft);color:var(--text-muted);font-size:var(--font-size-sm);line-height:1.5;overflow-wrap:anywhere}
.nb-editor-status[hidden]{display:none}
.nb-editor-draft .nb-editor-draft-action{min-width:0;min-height:26px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--text);font-size:var(--font-size-sm);font-weight:500;cursor:pointer}
.nb-editor-draft .nb-editor-draft-action:hover{border-color:var(--brand);color:var(--brand-hover)}
.nb-editor-field.nb-editor-full{position:fixed;inset:0;z-index:60;align-content:start;margin:0;padding:14px;background:var(--panel);overflow:auto}
.nb-editor-field.nb-editor-full>.grid>textarea[name=body]{min-height:calc(100vh - 120px)}
.nb-editor-field.nb-editor-full>.nb-editor-preview{min-height:calc(100vh - 120px)}
.nb-editor-field.nb-editor-full.nb-editor-live>.nb-editor-preview{max-height:none}
.nb-editor-dialog-field{display:grid;gap:5px;color:var(--text-muted);font-size:var(--font-size-sm)}
.nb-editor-dialog-field .prompt-input{box-sizing:border-box}
.nb-editor-upload{display:grid;gap:7px;margin:2px 0 6px;text-align:center}
.nb-editor-upload .nb-editor-upload-pick{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:110px;padding:16px 14px;border:1px dashed var(--line-soft);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}
.nb-editor-upload .nb-editor-upload-pick:hover{border-color:var(--brand);background:var(--brand-soft);color:var(--text)}
.nb-editor-upload .nb-editor-upload-pick.is-busy{opacity:.6;pointer-events:none}
.nb-editor-upload-plus{font-size:36px;line-height:1;color:var(--brand)}
.nb-editor-upload-tip{font-size:var(--font-size-xs);line-height:1.5}
.nb-editor-upload-status{color:var(--text-muted);font-size:var(--font-size-xs);line-height:1.5;overflow-wrap:anywhere}
/* 窄屏放不下两栏，预览改到正文框下方，仍然实时更新。 */
@media(max-width:820px){
.nb-editor-field.nb-editor-live{grid-template-columns:minmax(0,1fr)}
.nb-editor-field.nb-editor-live>.grid>textarea[name=body]{grid-column:1;border-radius:0}
.nb-editor-field.nb-editor-live>.nb-editor-preview{grid-column:1;max-height:50vh;border-left:1px solid var(--line);border-radius:0 0 var(--radius-sm) var(--radius-sm)}
}
@media(max-width:480px){
.nb-editor-bar{gap:1px;padding:4px}
.nb-editor .nb-editor-btn{width:28px;min-width:28px}
.nb-editor-split{margin:0 2px}
}
/* next_admin */
.next-admin-app{--next-admin-bg:#f3f5f4;--next-admin-panel:#fff;--next-admin-panel-alt:#f8f9f8;--next-admin-sidebar:#151917;--next-admin-sidebar-text:#d5dad7;--next-admin-text:#171b19;--next-admin-muted:#69716d;--next-admin-subtle:#929a96;--next-admin-line:#dde2df;--next-admin-line-strong:#ccd3cf;--next-admin-accent:#21b67a;--next-admin-accent-dark:#087a50;--next-admin-accent-soft:#e7f8f0;--next-admin-danger:#c94747;--next-admin-danger-soft:#fff0ef;--next-admin-warning:#ad6a14;--next-admin-warning-soft:#fff6e7;--next-admin-cyan:#168aa1;--next-admin-cyan-soft:#e8f7fa;--next-admin-command-bg:#151917;--next-admin-command-hover:#29302c;--next-admin-command-text:#fff;--next-admin-shadow:0 10px 30px rgba(24,35,29,.06);--next-admin-font-size-xs:12px;--next-admin-font-size-sm:13px;--next-admin-font-size-md:14px;--next-admin-font-size-lg:16px;--next-admin-font-size-xl:20px;--next-admin-font-size-title:30px;position:fixed;inset:0;min-height:100vh;overflow:auto;background:var(--next-admin-bg);color:var(--next-admin-text);font-family:"IBM Plex Sans","Noto Sans SC","Microsoft YaHei",sans-serif;line-height:1.5;letter-spacing:0;color-scheme:light}
.next-admin-app,.next-admin-app *{box-sizing:border-box}
.next-admin-app a{color:inherit;text-decoration:none}
.next-admin-icon{display:block;width:20px;height:20px;flex:none}
.next-admin-sidebar{position:fixed;inset:0 auto 0 0;z-index:30;display:flex;width:236px;flex-direction:column;background:var(--next-admin-sidebar);color:var(--next-admin-sidebar-text);box-shadow:8px 0 30px rgba(0,0,0,.08)}
.next-admin-brand{display:flex;align-items:center;gap:11px;height:76px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.next-admin-brand>span{display:grid;width:38px;height:38px;place-items:center;border-radius:7px;background:var(--next-admin-accent);color:#072b1d;font-family:Georgia,serif;font-size:var(--next-admin-font-size-md);font-weight:800}
.next-admin-brand>div{display:grid;min-width:0}.next-admin-brand strong{overflow:hidden;color:#fff;font-family:Georgia,"Noto Serif SC",serif;font-size:var(--next-admin-font-size-lg);text-overflow:ellipsis;white-space:nowrap}.next-admin-brand small{color:#78827d;font-size:10px;letter-spacing:.14em}
.next-admin-brand button{display:none;margin-left:auto;border:0;background:none;color:#fff;padding:6px}
.next-admin-sidebar nav{display:grid;align-content:start;gap:4px;min-height:0;flex:1;padding:25px 12px;overflow:auto}
.next-admin-nav-label{padding:0 12px 8px;color:#66706b;font-size:10px;font-weight:700;letter-spacing:.16em}
.next-admin-sidebar nav a,.next-admin-sidebar-foot a{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 13px;border-radius:6px;color:#99a29e;font-size:var(--next-admin-font-size-md);font-weight:600;transition:background .18s,color .18s}
.next-admin-sidebar nav a:hover,.next-admin-sidebar-foot a:hover{background:rgba(255,255,255,.06);color:#fff}.next-admin-sidebar nav a.is-active{background:var(--next-admin-accent);color:#092a1d}.next-admin-sidebar nav a.is-active .next-admin-icon{stroke-width:2.2}
.next-admin-sidebar-foot{display:grid;gap:4px;margin-top:auto;padding:14px 12px 20px;border-top:1px solid rgba(255,255,255,.08)}
.next-admin-workspace{min-height:100vh;margin-left:236px}
.next-admin-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:20px;height:76px;padding:0 clamp(20px,3vw,44px);border-bottom:1px solid var(--next-admin-line);background:color-mix(in srgb,var(--next-admin-bg) 90%,transparent);backdrop-filter:blur(16px)}
.next-admin-menu-button{display:none;border:0;background:none;color:var(--next-admin-text);padding:7px}
.next-admin-global-search{display:flex;align-items:center;gap:10px;width:min(420px,45vw);height:40px;padding:0 12px;border:1px solid var(--next-admin-line);border-radius:6px;background:var(--next-admin-panel);transition:border-color .18s,box-shadow .18s}.next-admin-global-search:focus-within{border-color:var(--next-admin-accent);box-shadow:0 0 0 3px var(--next-admin-accent-soft)}.next-admin-global-search .next-admin-icon{width:17px;color:var(--next-admin-subtle)}.next-admin-global-search input{width:100%;border:0;outline:0;background:transparent;color:var(--next-admin-text);font:inherit;font-size:var(--next-admin-font-size-sm)}.next-admin-global-search kbd{padding:1px 6px;border:1px solid var(--next-admin-line);border-bottom-width:2px;border-radius:4px;color:var(--next-admin-subtle);font-size:var(--next-admin-font-size-xs)}
.next-admin-top-actions{display:flex;align-items:center;gap:15px;margin-left:auto}.next-admin-theme{display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--next-admin-line);border-radius:6px;background:var(--next-admin-panel);color:var(--next-admin-muted);cursor:pointer}.next-admin-theme span{grid-area:1/1}.next-admin-theme .next-admin-theme-moon{display:none}.next-admin-theme .next-admin-icon{width:17px;height:17px}
.next-admin-profile{display:flex;align-items:center;gap:9px}.next-admin-avatar{display:block;width:34px;height:34px;overflow:hidden;border-radius:6px;background:var(--next-admin-panel-alt)}.next-admin-avatar img,.next-admin-avatar svg{display:block;width:100%;height:100%;object-fit:cover}.next-admin-profile>span:last-child{display:grid}.next-admin-profile strong{font-size:var(--next-admin-font-size-sm)}.next-admin-profile small{color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs)}
.next-admin-main{width:min(1480px,100%);margin:0 auto;padding:36px clamp(20px,3vw,44px) 56px}
.next-admin-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.next-admin-page-head h1{margin:4px 0 2px;font-family:Georgia,"Noto Serif SC",serif;font-size:var(--next-admin-font-size-title);line-height:1.2}.next-admin-page-head p{margin:0;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-sm)}.next-admin-eyebrow{color:var(--next-admin-accent-dark);font-size:10px;font-weight:800;letter-spacing:.16em}
.next-admin-app .next-admin-primary-button,.next-admin-app .next-admin-secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 15px;border:1px solid var(--next-admin-command-bg);border-radius:6px;background:var(--next-admin-command-bg);color:var(--next-admin-command-text);font:inherit;font-size:var(--next-admin-font-size-sm);font-weight:700;white-space:nowrap;cursor:pointer}.next-admin-app .next-admin-secondary-button{border-color:var(--next-admin-line-strong);background:var(--next-admin-panel);color:var(--next-admin-text)}.next-admin-app .next-admin-primary-button:hover{border-color:var(--next-admin-command-hover);background:var(--next-admin-command-hover);color:var(--next-admin-command-text)}.next-admin-app .next-admin-secondary-button:hover{border-color:var(--next-admin-accent);background:var(--next-admin-panel-alt);color:var(--next-admin-text)}.next-admin-primary-button .next-admin-icon,.next-admin-secondary-button .next-admin-icon{width:16px;height:16px}
.next-admin-head-actions{display:flex;align-items:center;gap:9px}
.next-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.next-admin-stat{display:grid;min-height:144px;padding:18px;border:1px solid var(--next-admin-line);border-radius:7px;background:var(--next-admin-panel);box-shadow:var(--next-admin-shadow)}.next-admin-stat-top{display:flex;align-items:center;justify-content:space-between}.next-admin-stat-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:6px;background:var(--next-admin-panel-alt);color:var(--next-admin-text)}.next-admin-stat-icon .next-admin-icon{width:18px;height:18px}.next-admin-stat-delta{padding:3px 7px;border-radius:4px;background:var(--next-admin-panel-alt);color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs);font-weight:700}.next-admin-stat>strong{align-self:end;margin-top:17px;font-family:Georgia,serif;font-size:26px;line-height:1}.next-admin-stat>span:last-child{margin-top:5px;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-sm)}.next-admin-tone-cyan .next-admin-stat-icon{background:var(--next-admin-cyan-soft);color:var(--next-admin-cyan)}.next-admin-tone-green .next-admin-stat-icon{background:var(--next-admin-accent-soft);color:var(--next-admin-accent-dark)}.next-admin-tone-amber .next-admin-stat-icon{background:var(--next-admin-warning-soft);color:var(--next-admin-warning)}
.next-admin-grid{display:grid;gap:18px;margin-bottom:18px}.next-admin-grid-main{grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr)}.next-admin-grid-list{grid-template-columns:minmax(0,1.6fr) minmax(280px,.65fr)}.next-admin-grid-system{grid-template-columns:minmax(0,1.5fr) minmax(260px,.65fr)}
.next-admin-panel{min-width:0;margin-bottom:18px;border:1px solid var(--next-admin-line);border-radius:7px;background:var(--next-admin-panel);box-shadow:var(--next-admin-shadow);overflow:hidden}.next-admin-grid>.next-admin-panel{margin-bottom:0}.next-admin-panel>header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:55px;padding:0 18px;border-bottom:1px solid var(--next-admin-line)}.next-admin-panel h2{margin:0;font-family:Georgia,"Noto Serif SC",serif;font-size:var(--next-admin-font-size-lg)}.next-admin-panel-note{color:var(--next-admin-subtle);font-size:var(--next-admin-font-size-xs)}.next-admin-panel .next-admin-text-link{color:var(--next-admin-accent-dark);font-size:var(--next-admin-font-size-xs);font-weight:700}.next-admin-text-link:hover{text-decoration:underline}
.next-admin-chart{position:relative;height:280px;padding:24px 20px 16px}.next-admin-chart:before{position:absolute;inset:24px 20px 45px;content:"";background:repeating-linear-gradient(to bottom,var(--next-admin-line) 0,var(--next-admin-line) 1px,transparent 1px,transparent 25%);opacity:.65}.next-admin-chart-legend{position:absolute;z-index:2;top:14px;right:20px;display:flex;gap:13px;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs)}.next-admin-chart-legend span:before{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:2px;background:var(--next-admin-accent);content:""}.next-admin-chart-legend .is-reply:before{background:var(--next-admin-cyan)}.next-admin-bars{position:relative;z-index:1;display:grid;height:100%;grid-template-columns:repeat(7,1fr);gap:clamp(8px,2vw,20px);align-items:end}.next-admin-bar-day{display:grid;height:100%;grid-template-rows:1fr 24px;gap:7px;text-align:center}.next-admin-bar-stack{display:flex;align-items:end;justify-content:center;gap:3px}.next-admin-bar-stack i{display:block;width:min(15px,35%);min-height:3px;border-radius:3px 3px 0 0;background:var(--next-admin-accent);transition:filter .18s}.next-admin-bar-stack i.is-reply{background:var(--next-admin-cyan)}.next-admin-bar-day:hover i{filter:brightness(.85)}.next-admin-bar-day>span{color:var(--next-admin-subtle);font-size:var(--next-admin-font-size-xs)}
.next-admin-health{display:grid;padding:8px 18px}.next-admin-health>div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:10px;min-height:47px;border-bottom:1px solid var(--next-admin-line);font-size:var(--next-admin-font-size-sm)}.next-admin-health>div:last-child{border-bottom:0}.next-admin-health strong{font-size:var(--next-admin-font-size-xs)}.next-admin-health-dot{width:8px;height:8px;border-radius:50%;background:var(--next-admin-subtle);box-shadow:0 0 0 3px var(--next-admin-panel-alt)}.next-admin-health-dot.is-success{background:var(--next-admin-accent)}.next-admin-health-dot.is-danger{background:var(--next-admin-danger)}.next-admin-health-dot.is-warning{background:var(--next-admin-warning)}
.next-admin-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--next-admin-line)}.next-admin-quick-grid>a{display:flex;align-items:center;gap:12px;min-width:0;padding:18px;background:var(--next-admin-panel);transition:background .18s}.next-admin-quick-grid>a:hover{background:var(--next-admin-panel-alt)}.next-admin-quick-grid>a>span:first-child{display:grid;width:36px;height:36px;place-items:center;border-radius:6px;background:var(--next-admin-panel-alt);color:var(--next-admin-accent-dark)}.next-admin-quick-grid>a>span:first-child .next-admin-icon{width:18px}.next-admin-quick-grid>a>div{display:grid;min-width:0}.next-admin-quick-grid strong{font-size:var(--next-admin-font-size-sm)}.next-admin-quick-grid small{overflow:hidden;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs);text-overflow:ellipsis;white-space:nowrap}.next-admin-quick-grid>a>.next-admin-icon{width:15px;margin-left:auto;color:var(--next-admin-subtle)}
.next-admin-table-wrap{overflow:auto}.next-admin-table{width:100%;border-collapse:collapse;font-size:var(--next-admin-font-size-sm)}.next-admin-table th{height:40px;padding:0 15px;background:var(--next-admin-panel-alt);color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs);font-weight:700;text-align:left;white-space:nowrap}.next-admin-table td{height:66px;padding:9px 15px;border-top:1px solid var(--next-admin-line);vertical-align:middle}.next-admin-table tbody tr:hover{background:var(--next-admin-panel-alt)}.next-admin-primary{display:grid;min-width:210px;max-width:520px}.next-admin-primary>a{overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.next-admin-primary>a:hover{color:var(--next-admin-accent-dark)}.next-admin-primary>span,.next-admin-primary>small{overflow:hidden;color:var(--next-admin-subtle);font-size:var(--next-admin-font-size-xs);font-weight:400;text-overflow:ellipsis;white-space:nowrap}.next-admin-chip{display:inline-flex;padding:3px 7px;border:1px solid var(--next-admin-line);border-radius:4px;background:var(--next-admin-panel-alt);font-size:var(--next-admin-font-size-xs);white-space:nowrap}.next-admin-metric-pair{display:grid;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs);white-space:nowrap}.next-admin-table time{color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs);white-space:nowrap}.next-admin-icon-button{display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--next-admin-line);border-radius:5px;background:var(--next-admin-panel);color:var(--next-admin-muted)}.next-admin-icon-button:hover{border-color:var(--next-admin-accent);color:var(--next-admin-accent-dark)}.next-admin-icon-button .next-admin-icon{width:15px;height:15px}
.next-admin-cell-note{display:block;color:var(--next-admin-subtle);font-size:var(--next-admin-font-size-xs);font-weight:400}.next-admin-row-actions{display:flex;align-items:center;gap:5px;white-space:nowrap}.next-admin-inline-form{display:inline-flex;margin:0}.next-admin-app .next-admin-small-button{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 9px;border:1px solid var(--next-admin-line-strong);border-radius:5px;background:var(--next-admin-panel);color:var(--next-admin-text);font:inherit;font-size:var(--next-admin-font-size-xs);font-weight:700;cursor:pointer}.next-admin-app .next-admin-small-button:hover{border-color:var(--next-admin-accent);background:var(--next-admin-panel-alt);color:var(--next-admin-accent-dark)}.next-admin-app .next-admin-small-button.is-primary{border-color:var(--next-admin-command-bg);background:var(--next-admin-command-bg);color:var(--next-admin-command-text)}.next-admin-app .next-admin-small-button.is-primary:hover{border-color:var(--next-admin-command-hover);background:var(--next-admin-command-hover);color:var(--next-admin-command-text)}.next-admin-app .next-admin-small-button.is-danger{border-color:var(--next-admin-danger-soft);background:var(--next-admin-danger-soft);color:var(--next-admin-danger)}.next-admin-app .next-admin-small-button.is-warning{border-color:var(--next-admin-warning-soft);background:var(--next-admin-warning-soft);color:var(--next-admin-warning)}
.next-admin-recent-users{display:grid;padding:7px 16px}.next-admin-recent-users>a{display:flex;align-items:center;gap:10px;min-height:57px;border-bottom:1px solid var(--next-admin-line)}.next-admin-recent-users>a:last-child{border-bottom:0}.next-admin-recent-users>a>span:nth-child(2){display:grid;min-width:0}.next-admin-recent-users strong{overflow:hidden;font-size:var(--next-admin-font-size-sm);text-overflow:ellipsis;white-space:nowrap}.next-admin-recent-users small{color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs)}.next-admin-recent-users>a>.next-admin-icon{width:14px;margin-left:auto;color:var(--next-admin-subtle)}
.next-admin-filter{display:flex;align-items:center;gap:9px;margin-bottom:18px;padding:12px;border:1px solid var(--next-admin-line);border-radius:7px;background:var(--next-admin-panel)}.next-admin-filter label{display:flex;align-items:center;gap:8px;min-width:220px;max-width:560px;flex:1;height:38px;padding:0 11px;border:1px solid var(--next-admin-line);border-radius:5px;background:var(--next-admin-panel-alt)}.next-admin-filter label:focus-within{border-color:var(--next-admin-accent)}.next-admin-filter label .next-admin-icon{width:16px;color:var(--next-admin-subtle)}.next-admin-filter input,.next-admin-filter select{border:0;outline:0;background:transparent;color:var(--next-admin-text);font:inherit;font-size:var(--next-admin-font-size-sm)}.next-admin-filter input{width:100%}.next-admin-filter select{height:38px;padding:0 30px 0 10px;border:1px solid var(--next-admin-line);border-radius:5px;background:var(--next-admin-panel-alt)}.next-admin-filter button{height:38px;padding:0 16px;border:0;border-radius:5px;background:var(--next-admin-command-bg);color:var(--next-admin-command-text);font:inherit;font-size:var(--next-admin-font-size-sm);font-weight:700;cursor:pointer}.next-admin-filter button:hover{background:var(--next-admin-command-hover)}.next-admin-filter>a{padding:8px;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-sm)}
.next-admin-filter-users{flex-wrap:wrap}.next-admin-filter-users label{min-width:260px}.next-admin-select-col{width:42px;text-align:center}.next-admin-select-col input{accent-color:var(--next-admin-accent)}.next-admin-bulk{display:flex;align-items:center;gap:9px;margin:-7px 0 18px;padding:12px 14px;border:1px solid var(--next-admin-line);border-radius:7px;background:var(--next-admin-panel)}.next-admin-bulk>label{display:flex;align-items:center;gap:7px;margin-right:auto;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-sm)}.next-admin-bulk input{accent-color:var(--next-admin-accent)}.next-admin-bulk select{height:36px;padding:0 30px 0 10px;border:1px solid var(--next-admin-line-strong);border-radius:5px;background:var(--next-admin-panel-alt);color:var(--next-admin-text);font:inherit;font-size:var(--next-admin-font-size-sm)}.next-admin-bulk button{height:36px;padding:0 14px;border:0;border-radius:5px;background:var(--next-admin-command-bg);color:var(--next-admin-command-text);font:inherit;font-size:var(--next-admin-font-size-sm);font-weight:700;cursor:pointer}.next-admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-sm)}.next-admin-pagination>div{display:flex;align-items:center;gap:9px}.next-admin-pagination a{display:inline-flex;min-height:34px;align-items:center;padding:0 11px;border:1px solid var(--next-admin-line-strong);border-radius:5px;background:var(--next-admin-panel);color:var(--next-admin-text)}.next-admin-pagination a:hover{border-color:var(--next-admin-accent)}.next-admin-pagination strong{color:var(--next-admin-text);font-size:var(--next-admin-font-size-xs)}
.next-admin-segments{display:inline-flex;margin-bottom:12px;padding:3px;border:1px solid var(--next-admin-line);border-radius:6px;background:var(--next-admin-panel)}.next-admin-app .next-admin-segments a{min-width:72px;padding:7px 12px;border-radius:4px;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-sm);font-weight:700;text-align:center}.next-admin-app .next-admin-segments a:hover{background:var(--next-admin-panel-alt);color:var(--next-admin-text)}.next-admin-app .next-admin-segments a.is-active{background:var(--next-admin-command-bg);color:var(--next-admin-command-text)}.next-admin-table-link{display:block;overflow:hidden;max-width:280px;color:var(--next-admin-text);text-overflow:ellipsis;white-space:nowrap}.next-admin-table-link:hover{color:var(--next-admin-accent-dark)}
.next-admin-user{display:flex;align-items:center;gap:10px;min-width:200px}.next-admin-user>span:last-child{display:grid;min-width:0}.next-admin-user strong,.next-admin-user small{overflow:hidden;max-width:220px;text-overflow:ellipsis;white-space:nowrap}.next-admin-user small{color:var(--next-admin-subtle);font-size:var(--next-admin-font-size-xs)}.next-admin-badges{display:flex;gap:5px}.next-admin-badge{display:inline-flex;align-items:center;min-height:22px;padding:1px 7px;border-radius:4px;background:var(--next-admin-panel-alt);color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs);font-weight:700;white-space:nowrap}.next-admin-badge.is-success{background:var(--next-admin-accent-soft);color:var(--next-admin-accent-dark)}.next-admin-badge.is-danger{background:var(--next-admin-danger-soft);color:var(--next-admin-danger)}.next-admin-badge.is-warning{background:var(--next-admin-warning-soft);color:var(--next-admin-warning)}
.next-admin-forum-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.next-admin-forum-card{display:flex;min-height:280px;flex-direction:column;padding:18px;border:1px solid var(--next-admin-line);border-radius:7px;background:var(--next-admin-panel);box-shadow:var(--next-admin-shadow)}.next-admin-forum-card-top{display:flex;align-items:center;justify-content:space-between}.next-admin-forum-card-top>span{display:grid;width:40px;height:40px;place-items:center;border-radius:6px;background:var(--next-admin-accent-soft);color:var(--next-admin-accent-dark)}.next-admin-forum-card h2{margin:19px 0 5px;font-family:Georgia,"Noto Serif SC",serif;font-size:var(--next-admin-font-size-xl)}.next-admin-forum-card p{display:-webkit-box;overflow:hidden;min-height:42px;margin:0;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-sm);-webkit-box-orient:vertical;-webkit-line-clamp:2}.next-admin-forum-count{display:flex;align-items:baseline;gap:6px;margin-top:18px}.next-admin-forum-count strong{font-family:Georgia,serif;font-size:26px}.next-admin-forum-count span{color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs)}.next-admin-forum-permissions{margin-top:5px;color:var(--next-admin-subtle);font-size:var(--next-admin-font-size-xs)}.next-admin-forum-card .next-admin-forum-open{display:flex;align-items:center;gap:7px;margin-top:auto;padding-top:15px;border-top:1px solid var(--next-admin-line);color:var(--next-admin-accent-dark);font-size:var(--next-admin-font-size-sm);font-weight:700}.next-admin-forum-open .next-admin-icon{width:14px}
.next-admin-system-tools{display:grid;grid-template-columns:1fr 1fr}.next-admin-system-tools>a{display:flex;align-items:center;gap:11px;min-width:0;min-height:78px;padding:14px 17px;border-right:1px solid var(--next-admin-line);border-bottom:1px solid var(--next-admin-line)}.next-admin-system-tools>a:nth-child(2n){border-right:0}.next-admin-system-tools>a:nth-last-child(-n+2){border-bottom:0}.next-admin-system-tools>a>span{display:grid;width:36px;height:36px;place-items:center;border-radius:6px;background:var(--next-admin-panel-alt);color:var(--next-admin-accent-dark)}.next-admin-system-tools>a>span .next-admin-icon{width:17px}.next-admin-system-tools>a>div{display:grid;min-width:0}.next-admin-system-tools strong{font-size:var(--next-admin-font-size-sm)}.next-admin-system-tools small{overflow:hidden;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs);text-overflow:ellipsis;white-space:nowrap}.next-admin-system-tools>a>.next-admin-icon{width:14px;margin-left:auto;color:var(--next-admin-subtle)}.next-admin-system-tools>a:hover{background:var(--next-admin-panel-alt)}
.next-admin-environment{display:grid;padding:8px 18px}.next-admin-environment>div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:49px;border-bottom:1px solid var(--next-admin-line);font-size:var(--next-admin-font-size-sm)}.next-admin-environment>div:last-child{border-bottom:0}.next-admin-environment span{color:var(--next-admin-muted)}.next-admin-environment strong{font-size:var(--next-admin-font-size-xs)}.next-admin-plugin-list{display:grid;grid-template-columns:1fr 1fr}.next-admin-plugin-list>div{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;min-height:70px;padding:10px 18px;border-right:1px solid var(--next-admin-line);border-bottom:1px solid var(--next-admin-line)}.next-admin-plugin-list>div:nth-child(2n){border-right:0}.next-admin-plugin-list>div>span:nth-child(2){display:grid;min-width:0}.next-admin-plugin-list strong,.next-admin-plugin-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.next-admin-plugin-list strong{font-size:var(--next-admin-font-size-sm)}.next-admin-plugin-list small{color:var(--next-admin-subtle);font-size:var(--next-admin-font-size-xs)}.next-admin-plugin-mark{display:grid;width:34px;height:34px;place-items:center;border-radius:6px;background:var(--next-admin-panel-alt);color:var(--next-admin-subtle)}.next-admin-plugin-mark.is-on{background:var(--next-admin-accent-soft);color:var(--next-admin-accent-dark)}.next-admin-plugin-mark.is-error{background:var(--next-admin-danger-soft);color:var(--next-admin-danger)}.next-admin-plugin-mark .next-admin-icon{width:16px}
.next-admin-editor{display:grid;gap:22px;padding:22px}.next-admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.next-admin-field{display:grid;gap:7px;min-width:0}.next-admin-field>span{display:grid;color:var(--next-admin-text);font-size:var(--next-admin-font-size-sm);font-weight:700}.next-admin-field>span small{color:var(--next-admin-subtle);font-size:var(--next-admin-font-size-xs);font-weight:400}.next-admin-field input,.next-admin-field select,.next-admin-field textarea{width:100%;min-height:40px;padding:8px 11px;border:1px solid var(--next-admin-line-strong);border-radius:5px;outline:0;background:var(--next-admin-panel-alt);color:var(--next-admin-text);font:inherit;font-size:var(--next-admin-font-size-sm)}.next-admin-field textarea{resize:vertical}.next-admin-field input:focus,.next-admin-field select:focus,.next-admin-field textarea:focus{border-color:var(--next-admin-accent);box-shadow:0 0 0 3px var(--next-admin-accent-soft)}.next-admin-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.next-admin-check{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid var(--next-admin-line);border-radius:6px;background:var(--next-admin-panel-alt)}.next-admin-check input{margin-top:3px;accent-color:var(--next-admin-accent)}.next-admin-check span{display:grid}.next-admin-check strong{font-size:var(--next-admin-font-size-sm)}.next-admin-check small{color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs)}.next-admin-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:18px;border-top:1px solid var(--next-admin-line)}.next-admin-form-actions>a{color:var(--next-admin-muted);font-size:var(--next-admin-font-size-sm)}.next-admin-form-actions>button{min-height:40px;padding:0 18px;border:0;border-radius:5px;background:var(--next-admin-command-bg);color:var(--next-admin-command-text);font:inherit;font-size:var(--next-admin-font-size-sm);font-weight:700;cursor:pointer}.next-admin-form-actions>button:hover{background:var(--next-admin-command-hover)}.next-admin-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:17px 20px;border:1px solid var(--next-admin-danger-soft);border-radius:7px;background:var(--next-admin-panel)}.next-admin-danger-zone>div{display:grid}.next-admin-danger-zone strong{color:var(--next-admin-danger);font-size:var(--next-admin-font-size-sm)}.next-admin-danger-zone span{color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs)}
.next-admin-permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.next-admin-permission{margin:0;padding:14px;border:1px solid var(--next-admin-line);border-radius:6px}.next-admin-permission legend{padding:0 5px;font-size:var(--next-admin-font-size-sm);font-weight:700}.next-admin-permission p{margin:0 0 10px;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs)}.next-admin-permission>div{display:grid;gap:7px}.next-admin-mini-check{display:flex;align-items:center;gap:7px;font-size:var(--next-admin-font-size-sm)}.next-admin-mini-check input{accent-color:var(--next-admin-accent)}
.next-admin-setting-section{display:grid;gap:16px;padding-bottom:22px;border-bottom:1px solid var(--next-admin-line)}.next-admin-setting-section:last-of-type{border-bottom:0}.next-admin-setting-section h3{margin:0;font-family:Georgia,"Noto Serif SC",serif;font-size:var(--next-admin-font-size-lg)}.next-admin-tool-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:70px;padding:12px 18px;border-bottom:1px solid var(--next-admin-line)}.next-admin-tool-row:last-child{border-bottom:0}.next-admin-tool-row>div{display:grid}.next-admin-tool-row strong{font-size:var(--next-admin-font-size-sm)}.next-admin-tool-row span{color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs)}
.next-admin-plugin-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.next-admin-plugin-cards>article{display:grid;align-content:start;gap:13px;min-height:190px;padding:17px;border:1px solid var(--next-admin-line);border-radius:7px;background:var(--next-admin-panel);box-shadow:var(--next-admin-shadow)}.next-admin-plugin-card-head{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px}.next-admin-plugin-card-head>span:nth-child(2){display:grid;min-width:0}.next-admin-plugin-card-head strong,.next-admin-plugin-card-head small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.next-admin-plugin-card-head strong{font-size:var(--next-admin-font-size-sm)}.next-admin-plugin-card-head small{color:var(--next-admin-subtle);font-size:var(--next-admin-font-size-xs)}.next-admin-plugin-cards p{margin:0;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-sm)}.next-admin-plugin-features{color:var(--next-admin-subtle);font-size:var(--next-admin-font-size-xs)}.next-admin-plugin-error{padding:8px;border-radius:5px;background:var(--next-admin-danger-soft);color:var(--next-admin-danger);font-size:var(--next-admin-font-size-xs)}.next-admin-plugin-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:11px;border-top:1px solid var(--next-admin-line)}.next-admin-plugin-more{position:relative}.next-admin-plugin-more summary{width:max-content;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs);font-weight:700;cursor:pointer}.next-admin-plugin-more>div{margin-top:9px;padding:9px;border-radius:5px;background:var(--next-admin-panel-alt)}.next-admin-uninstall-form{display:flex;align-items:center;justify-content:space-between;gap:12px}.next-admin-plugin-more label{display:flex;align-items:center;gap:7px;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-xs)}.next-admin-plugin-more input{accent-color:var(--next-admin-accent)}.next-admin-upload{display:flex;align-items:center;gap:6px}.next-admin-upload label{position:relative;overflow:hidden}.next-admin-upload input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.next-admin-log-message{display:block;overflow:hidden;max-width:360px;color:var(--next-admin-muted);text-overflow:ellipsis;white-space:nowrap}
.next-admin-toast{position:fixed;z-index:50;right:24px;bottom:24px;max-width:360px;padding:12px 16px;border:1px solid var(--next-admin-line);border-left:4px solid var(--next-admin-accent);border-radius:6px;background:var(--next-admin-panel);box-shadow:0 14px 35px rgba(0,0,0,.18);font-size:var(--next-admin-font-size-sm);animation:next-admin-toast-in .2s ease-out}.next-admin-toast.is-leaving{opacity:0;transform:translateY(8px);transition:opacity .2s,transform .2s}@keyframes next-admin-toast-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.next-admin-empty{padding:45px 20px;color:var(--next-admin-muted);font-size:var(--next-admin-font-size-sm);text-align:center}.next-admin-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.next-admin-overlay{display:none}
.next-admin-app.is-dark{--next-admin-bg:#111513;--next-admin-panel:#191e1b;--next-admin-panel-alt:#202622;--next-admin-text:#edf1ee;--next-admin-muted:#a2aaa5;--next-admin-subtle:#77807a;--next-admin-line:#2c342f;--next-admin-line-strong:#3a453e;--next-admin-accent-soft:#153a2b;--next-admin-danger-soft:#3a2020;--next-admin-warning-soft:#3c301d;--next-admin-cyan-soft:#17363d;--next-admin-command-bg:#edf1ee;--next-admin-command-hover:#fff;--next-admin-command-text:#171b19;--next-admin-shadow:0 10px 30px rgba(0,0,0,.16);color-scheme:dark}.next-admin-app.is-dark .next-admin-theme-sun{display:none}.next-admin-app.is-dark .next-admin-theme-moon{display:block}
@media(max-width:1100px){.next-admin-stats{grid-template-columns:1fr 1fr}.next-admin-grid-list{grid-template-columns:1fr}.next-admin-quick-grid{grid-template-columns:1fr 1fr}.next-admin-forum-grid{grid-template-columns:1fr 1fr}.next-admin-permission-grid{grid-template-columns:1fr}.next-admin-plugin-cards{grid-template-columns:1fr}}
@media(max-width:820px){.next-admin-sidebar{transform:translateX(-100%);transition:transform .22s}.next-admin-app.is-menu-open .next-admin-sidebar{transform:translateX(0)}.next-admin-brand button{display:grid}.next-admin-workspace{margin-left:0}.next-admin-menu-button{display:grid}.next-admin-overlay{position:fixed;inset:0;z-index:25;background:rgba(0,0,0,.45)}.next-admin-app.is-menu-open .next-admin-overlay{display:block}.next-admin-grid-main,.next-admin-grid-system{grid-template-columns:1fr}.next-admin-topbar{padding:0 18px}.next-admin-main{padding:28px 18px 44px}}
@media(max-width:600px){.next-admin-topbar{height:66px;gap:9px}.next-admin-global-search{width:auto;min-width:0;flex:1}.next-admin-global-search kbd,.next-admin-profile>span:last-child{display:none}.next-admin-top-actions{gap:8px}.next-admin-page-head{align-items:flex-start;flex-direction:column}.next-admin-head-actions{width:100%;flex-wrap:wrap}.next-admin-page-head h1{font-size:26px}.next-admin-stats{gap:10px}.next-admin-stat{min-height:126px;padding:14px}.next-admin-stat>strong{font-size:22px}.next-admin-quick-grid,.next-admin-forum-grid,.next-admin-system-tools,.next-admin-plugin-list,.next-admin-form-grid,.next-admin-check-grid{grid-template-columns:1fr}.next-admin-quick-grid>a,.next-admin-system-tools>a,.next-admin-plugin-list>div{border-right:0}.next-admin-system-tools>a:nth-last-child(2){border-bottom:1px solid var(--next-admin-line)}.next-admin-filter{align-items:stretch;flex-direction:column}.next-admin-filter label{width:100%;min-width:0}.next-admin-filter select{width:100%}.next-admin-bulk{align-items:stretch;flex-direction:column}.next-admin-bulk>label{margin-right:0}.next-admin-bulk select,.next-admin-bulk button{width:100%}.next-admin-pagination{align-items:flex-start;flex-direction:column}.next-admin-chart{height:240px;padding-inline:12px}.next-admin-bars{gap:6px}.next-admin-panel>header{padding:0 14px}.next-admin-table th,.next-admin-table td{padding-inline:12px}.next-admin-editor{padding:16px}.next-admin-danger-zone,.next-admin-tool-row{align-items:flex-start;flex-direction:column}.next-admin-toast{right:14px;bottom:14px;left:14px}}
.next-admin-filter-content{flex-wrap:wrap}.next-admin-filter-content label{min-width:220px}.next-admin-standalone-input{height:38px;min-width:120px;padding:0 10px;border:1px solid var(--next-admin-line);border-radius:5px;outline:0;background:var(--next-admin-panel-alt);color:var(--next-admin-text);font:inherit;font-size:var(--next-admin-font-size-sm)}.next-admin-standalone-input:focus{border-color:var(--next-admin-accent);box-shadow:0 0 0 3px var(--next-admin-accent-soft)}.next-admin-date-range{display:inline-flex;align-items:center;gap:6px;max-width:100%;flex:none;white-space:nowrap}.next-admin-date-range i{color:var(--next-admin-subtle);font-size:var(--next-admin-font-size-xs);font-style:normal}.next-admin-date-range .next-admin-standalone-input{width:clamp(105px,12vw,135px);min-width:0}
/* paste_image_upload */
.paste-image-upload-hint{display:inline-flex;color:var(--text-subtle);font-size:11px}.paste-image-upload-toast{position:fixed;left:50%;bottom:24px;z-index:1100;transform:translateX(-50%);padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--inverse);color:var(--inverse-text);font-size:var(--font-size-sm);box-shadow:0 6px 22px var(--shadow-medium)}.paste-image-upload-toast[hidden]{display:none}@media(max-width:600px){.paste-image-upload-hint{display:block}}
/* post_edit_time_plus */
.post-edit-time-plus-note{margin-top:14px;padding-top:10px;border-top:1px dashed var(--line);color:var(--text-subtle);font-size:var(--font-size-xs);line-height:1.5}.post-edit-time-plus-note a{color:inherit;text-decoration:underline;text-underline-offset:2px}.post-edit-time-plus-note a:hover{color:var(--brand)}.post-edit-time-plus-rel{position:relative;cursor:default;outline:none}.post-edit-time-plus-tip{position:absolute;top:calc(100% + 6px);left:0;z-index:20;display:block;padding:4px 8px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);color:var(--text);box-shadow:var(--shadow-medium);font-size:var(--font-size-xs);line-height:1.4;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:var(--transition-normal)}.post-edit-time-plus-rel:hover .post-edit-time-plus-tip,.post-edit-time-plus-rel:focus .post-edit-time-plus-tip,.post-edit-time-plus-rel:focus-visible .post-edit-time-plus-tip{opacity:1;visibility:visible}.post-edit-time-plus-meta{margin-left:8px;color:var(--text-subtle);font-size:var(--font-size-xs);line-height:1.5}.post-edit-time-plus-meta a{color:inherit;text-decoration:underline;text-underline-offset:2px}.post-edit-time-plus-meta a:hover{color:var(--brand)}.post-edit-time-plus-fieldset{border:1px solid var(--line);border-radius:var(--radius);margin-top:18px;padding:10px 14px}.post-edit-time-plus-fieldset>legend{font-weight:600;color:var(--text-subtle);padding:0 6px}.post-edit-time-plus-rules{width:100%;border-collapse:collapse;margin-top:6px;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.post-edit-time-plus-rules th,.post-edit-time-plus-rules td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left}.post-edit-time-plus-rules th{color:var(--text-subtle);font-weight:600}.post-edit-time-plus-rule{width:120px}.post-edit-time-plus-rule-disabled{opacity:.45;background:var(--line-soft);cursor:not-allowed}.post-edit-time-plus-inline{display:inline-flex;align-items:center;gap:6px;color:var(--text-subtle);font-size:var(--font-size-sm)}.post-edit-time-plus-rules td:last-child{white-space:nowrap}
/* red_packet_wechat */
.red-packet-wechat-badge{display:inline-flex;align-items:center;gap:4px;min-height:20px;margin-left:6px;padding:1px 9px;border-radius:999px;font-size:var(--font-size-xs);font-weight:600;line-height:1.5;white-space:nowrap;vertical-align:middle}.red-packet-wechat-badge.red-packet-wechat-badge-active{background:var(--danger);color:#fff}.red-packet-wechat-badge.red-packet-wechat-badge-finished{background:var(--line-soft);color:var(--text-muted)}.red-packet-wechat-badge-icon{width:12px;height:9px;flex:none}.red-packet-wechat-compose{margin-bottom:12px}.red-packet-wechat-compose-details{border:1px solid var(--line);border-radius:var(--radius)}.red-packet-wechat-compose-details>summary{padding:10px 16px;cursor:pointer;font-weight:600;font-size:var(--font-size-sm);color:var(--text);background:var(--panel);user-select:none}.red-packet-wechat-compose-body{padding:14px 16px;display:grid;gap:12px}.red-packet-wechat-compose-enable{margin-right:8px;vertical-align:middle}.red-packet-wechat-compose-toggle{display:inline-flex;align-items:center;font-size:var(--font-size-sm);cursor:pointer}.red-packet-wechat-compose-grid{display:none;gap:12px}.red-packet-wechat-compose-enable:checked~.red-packet-wechat-compose-grid{display:grid}.red-packet-wechat-compose-grid .grid{display:grid;gap:4px}.red-packet-wechat-compose-grid .grid span{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:600}.red-packet-wechat-compose-grid input,.red-packet-wechat-compose-grid select{min-height:36px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--text);font-size:var(--font-size-sm);box-sizing:border-box}.red-packet-wechat-compose-grid input:disabled,.red-packet-wechat-compose-grid select:disabled{opacity:.55;cursor:not-allowed}.red-packet-wechat-compose-note{margin:0;padding:8px 12px;border-radius:var(--radius-sm);background:var(--line-soft);color:var(--text-muted);font-size:var(--font-size-xs)}.red-packet-wechat-card-wrapper{--red-packet-wechat-red:#e2513f;--red-packet-wechat-red-deep:#c93a2a;--red-packet-wechat-red-light:#f47a63;--red-packet-wechat-gold:#f8dc96;--red-packet-wechat-gold-deep:#e0b34a;--red-packet-wechat-gold-text:#8f4a17;--red-packet-wechat-width:340px;--red-packet-wechat-cover-ratio:.68;--red-packet-wechat-seal-size:78px;--red-packet-wechat-seal-text-size:27px;--red-packet-wechat-amount-size:40px;--red-packet-wechat-late-size:17px;--red-packet-wechat-from-size:15px;--red-packet-wechat-bless-size:22px;--red-packet-wechat-fu-size:160px;--red-packet-wechat-pad-x:20px;--red-packet-wechat-cover-pad-top:44px;--red-packet-wechat-cover-pad-bottom:40px;--red-packet-wechat-bottom-pad:56px;--red-packet-wechat-gap:20px;--red-packet-wechat-lip:22px;--red-packet-wechat-lip-radius:40px;--red-packet-wechat-detail-pad:18px;--red-packet-wechat-ease:cubic-bezier(.22,.61,.36,1);width:var(--red-packet-wechat-width);max-width:100%;margin:0 0 18px}@media(max-width:720px){.red-packet-wechat-card-wrapper{margin-left:auto;margin-right:auto}}@media(max-width:420px){.red-packet-wechat-card-wrapper{--red-packet-wechat-width:100%;--red-packet-wechat-cover-ratio:.74;--red-packet-wechat-pad-x:14px;--red-packet-wechat-cover-pad-top:26px;--red-packet-wechat-cover-pad-bottom:24px;--red-packet-wechat-bottom-pad:40px;--red-packet-wechat-gap:12px;--red-packet-wechat-lip:16px;--red-packet-wechat-lip-radius:28px;--red-packet-wechat-detail-pad:14px;--red-packet-wechat-seal-size:64px;--red-packet-wechat-seal-text-size:22px;--red-packet-wechat-amount-size:32px;--red-packet-wechat-late-size:15px;--red-packet-wechat-bless-size:19px;--red-packet-wechat-fu-size:120px;margin:0 0 14px}}.red-packet-wechat-card-wrapper,.red-packet-wechat-card-wrapper *{box-sizing:border-box}.red-packet-wechat-env{position:relative;width:100%;border-radius:14px;overflow:hidden;background:var(--red-packet-wechat-red);box-shadow:0 6px 20px var(--shadow-medium);transition:height .45s var(--red-packet-wechat-ease)}.red-packet-wechat-cover{position:relative;display:flex;flex-direction:column;aspect-ratio:var(--red-packet-wechat-cover-ratio);text-align:center;background:linear-gradient(180deg,var(--red-packet-wechat-red) 0%,var(--red-packet-wechat-red-deep) 100%);transition:opacity .28s ease,transform .4s var(--red-packet-wechat-ease)}.red-packet-wechat-cover::before{content:"福";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;opacity:.06;font-size:var(--red-packet-wechat-fu-size);font-weight:700;font-family:"STKaiti","KaiTi","SimSun",serif;line-height:1;pointer-events:none}.red-packet-wechat-cover-art{position:absolute;left:0;right:0;top:0;height:66%;overflow:hidden;opacity:.34;pointer-events:none}.red-packet-wechat-cover-art img{display:block;width:100%;height:100%;object-fit:cover}.red-packet-wechat-cover-top{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;justify-content:flex-start;padding:var(--red-packet-wechat-cover-pad-top) var(--red-packet-wechat-pad-x) var(--red-packet-wechat-cover-pad-bottom);min-width:0}.red-packet-wechat-cover-sender{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0}.red-packet-wechat-cover-avatar{background:rgba(255,255,255,.25);box-shadow:0 0 0 1.5px rgba(255,255,255,.55)}.red-packet-wechat-cover-from{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:rgba(255,255,255,.92);font-size:var(--red-packet-wechat-from-size);font-weight:600}.red-packet-wechat-cover-bless{margin:var(--red-packet-wechat-gap) 0 0;color:var(--red-packet-wechat-gold);font-size:var(--red-packet-wechat-bless-size);font-weight:700;line-height:1.4;word-break:break-word;text-shadow:0 1px 2px rgba(120,20,5,.28)}.red-packet-wechat-cover-type{display:inline-block;align-self:center;margin-top:var(--red-packet-wechat-gap);padding:2px 10px;border-radius:999px;max-width:100%;background:rgba(255,255,255,.16);color:rgba(255,255,255,.9);font-size:var(--font-size-xxs);font-weight:600}.red-packet-wechat-cover-bottom{position:relative;z-index:1;flex:none;margin-top:calc(var(--red-packet-wechat-lip) * -1);padding:0 var(--red-packet-wechat-pad-x) var(--red-packet-wechat-bottom-pad);background:var(--red-packet-wechat-red-light);border-radius:50% 50% 0 0/var(--red-packet-wechat-lip-radius) var(--red-packet-wechat-lip-radius) 0 0}.red-packet-wechat-seal{display:flex;align-items:center;justify-content:center;width:var(--red-packet-wechat-seal-size);height:var(--red-packet-wechat-seal-size);margin:calc(var(--red-packet-wechat-seal-size) * -.44) auto 0;padding:0;border:0;border-radius:50%;background:radial-gradient(circle at 32% 28%,#fff3cd,var(--red-packet-wechat-gold) 46%,var(--red-packet-wechat-gold-deep));color:var(--red-packet-wechat-gold-text);cursor:pointer;user-select:none;box-shadow:0 4px 12px rgba(120,20,5,.34),inset 0 2px 3px rgba(255,255,255,.7),inset 0 -2px 4px rgba(0,0,0,.16);transition:transform .2s ease,opacity .2s ease;animation:red-packet-wechat-glow 2.2s ease-in-out infinite}@keyframes red-packet-wechat-glow{0%,100%{box-shadow:0 4px 12px rgba(120,20,5,.34),inset 0 2px 3px rgba(255,255,255,.7),inset 0 -2px 4px rgba(0,0,0,.16),0 0 0 0 rgba(248,220,150,.6)}50%{box-shadow:0 4px 12px rgba(120,20,5,.34),inset 0 2px 3px rgba(255,255,255,.7),inset 0 -2px 4px rgba(0,0,0,.16),0 0 0 9px rgba(248,220,150,0)}}.red-packet-wechat-seal:hover{transform:scale(1.06);background:radial-gradient(circle at 32% 28%,#fff3cd,var(--red-packet-wechat-gold) 46%,var(--red-packet-wechat-gold-deep));color:var(--red-packet-wechat-gold-text)}.red-packet-wechat-seal:active{transform:scale(.94)}.red-packet-wechat-seal:focus-visible{outline:2px solid #fff;outline-offset:3px}.red-packet-wechat-seal-done{background:radial-gradient(circle at 32% 28%,#f6ead0,#e3cfa4 46%,#c9ae78);animation:none}.red-packet-wechat-seal-text{font-size:var(--red-packet-wechat-seal-text-size);font-weight:900;letter-spacing:1px;line-height:1}.red-packet-wechat-seal.red-packet-wechat-is-spinning{pointer-events:none;animation:red-packet-wechat-spin .7s linear infinite}@keyframes red-packet-wechat-spin{from{transform:rotateY(0)}to{transform:rotateY(360deg)}}.red-packet-wechat-cover-hint{margin:12px 0 0;color:rgba(255,255,255,.85);font-size:var(--font-size-xs)}.red-packet-wechat-detail{position:relative;display:flex;flex-direction:column;aspect-ratio:var(--red-packet-wechat-cover-ratio);padding:var(--red-packet-wechat-detail-pad) var(--red-packet-wechat-pad-x) 10px;background:var(--panel);transform:translateY(100%);opacity:0;transition:transform .45s var(--red-packet-wechat-ease),opacity .25s ease}.red-packet-wechat-env.red-packet-wechat-is-open .red-packet-wechat-cover{position:absolute;left:0;right:0;top:0;opacity:0;transform:scale(.96);pointer-events:none}.red-packet-wechat-env.red-packet-wechat-is-revealed .red-packet-wechat-detail{transform:translateY(0);opacity:1}.red-packet-wechat-env.red-packet-wechat-is-done .red-packet-wechat-cover{display:none}.red-packet-wechat-card-wrapper [hidden]{display:none}.red-packet-wechat-detail-head{flex:none;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.red-packet-wechat-detail-avatar{background:var(--line-soft)}.red-packet-wechat-detail-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:var(--font-size-md);font-weight:700}.red-packet-wechat-detail-bless{color:var(--text-subtle);font-size:var(--font-size-xs)}.red-packet-wechat-detail-amount{display:flex;align-items:baseline;justify-content:center;gap:5px;padding:18px 0 2px;color:var(--warning)}.red-packet-wechat-detail-amount b{font-size:var(--red-packet-wechat-amount-size);line-height:1.1;font-weight:800;font-variant-numeric:tabular-nums}.red-packet-wechat-detail-amount span{font-size:var(--font-size-sm);font-weight:600}.red-packet-wechat-detail-tip{margin:6px 0 0;color:var(--text-subtle);font-size:var(--font-size-xs);text-align:center}.red-packet-wechat-detail-late{padding:26px 8px 20px;color:var(--text-muted);font-size:var(--red-packet-wechat-late-size);font-weight:700;text-align:center;line-height:1.5}.red-packet-wechat-detail-stat{margin-top:14px;padding:9px 2px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);color:var(--text-muted);font-size:var(--font-size-xs)}.red-packet-wechat-detail-stat b{font-weight:700;color:var(--text)}.red-packet-wechat-detail-list{list-style:none!important;margin:0!important;padding:0!important;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.red-packet-wechat-record{display:flex;align-items:center;gap:10px;padding:9px 2px;border-bottom:1px solid var(--line-soft);list-style:none!important;margin:0!important}.red-packet-wechat-record:last-child{border-bottom:none}.red-packet-wechat-record-avatar{background:var(--line-soft)}.red-packet-wechat-record-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.red-packet-wechat-record-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:var(--font-size-sm);font-weight:600;line-height:1.3}.red-packet-wechat-record-time{color:var(--text-subtle);font-size:var(--font-size-xs);line-height:1.3}.red-packet-wechat-record-amount{display:flex;align-items:center;gap:6px;flex:none;color:var(--text);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums}.red-packet-wechat-record-amount b{font-weight:700}.red-packet-wechat-record-best{padding:1px 6px;border-radius:3px;background:var(--warning-soft);color:var(--warning);font-style:normal;font-size:var(--font-size-xxs);font-weight:600;white-space:nowrap}.red-packet-wechat-record-me .red-packet-wechat-record-name{color:var(--warning)}.red-packet-wechat-record-empty{padding:22px 2px;color:var(--text-subtle);font-size:var(--font-size-xs);text-align:center;list-style:none!important;margin:0!important}.red-packet-wechat-refund{display:flex;justify-content:center;padding:10px 0 0}.red-packet-wechat-refund-btn{min-height:28px;padding:0 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text-muted);font-size:var(--font-size-xs);cursor:pointer;transition:border-color .15s ease,color .15s ease,background-color .15s ease}.red-packet-wechat-refund-btn:hover{border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.red-packet-wechat-refund-btn:disabled{opacity:.5;cursor:not-allowed}@media(prefers-reduced-motion:reduce){.red-packet-wechat-env,.red-packet-wechat-cover,.red-packet-wechat-detail{transition:none}.red-packet-wechat-seal,.red-packet-wechat-seal.red-packet-wechat-is-spinning{animation:none}}.red-packet-wechat-admin-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.red-packet-wechat-admin-card{display:grid;gap:4px;padding:16px;border-radius:var(--radius);background:var(--panel);text-align:center}.red-packet-wechat-admin-card span{font-size:var(--font-size-xs);color:var(--text-muted)}.red-packet-wechat-admin-card strong{font-size:var(--font-size-xl);font-weight:700}.red-packet-wechat-group-checks{display:flex;flex-wrap:wrap;gap:10px;padding-top:4px}.red-packet-wechat-group-check{display:flex;align-items:center;gap:5px;font-size:var(--font-size-sm);cursor:pointer}.red-packet-wechat-group-check input[type="checkbox"]{accent-color:var(--danger)}.red-packet-wechat-form{display:grid;gap:16px}.red-packet-wechat-form .grid{display:grid;gap:6px}.red-packet-wechat-form .grid>span{font-weight:600;font-size:var(--font-size-sm)}.red-packet-wechat-form .grid>span small{display:block;margin-top:2px;font-weight:400;color:var(--text-muted)}.red-packet-wechat-form button{justify-self:start;min-width:120px;min-height:38px;padding:0 20px;border:none;border-radius:var(--radius-sm);background:var(--brand);color:var(--inverse-text);font-size:var(--font-size-sm);font-weight:600;cursor:pointer}.red-packet-wechat-note{color:var(--text-muted);font-size:var(--font-size-sm)}
/* timed_backup */
.timed-backup-summary{margin:0 0 .6rem;font-size:var(--font-size-sm)}
.timed-backup-settings-section{display:flex;flex-direction:column;gap:.45rem;padding:.8rem .9rem;border:1px solid var(--line);border-radius:12px;margin-bottom:.7rem}
.timed-backup-settings-section>summary{font-size:var(--font-size-md);font-weight:600;cursor:pointer;padding:.15rem 0}
.timed-backup-settings-section>strong{font-size:var(--font-size-md)}
.timed-backup-env-list{display:flex;flex-direction:column;gap:.35rem}
.timed-backup-env-row{display:flex;gap:.5rem;align-items:baseline;font-size:var(--font-size-sm)}
.timed-backup-env-status.is-ok{color:var(--success);font-weight:700}
.timed-backup-env-status.is-bad{color:var(--danger);font-weight:700}
.timed-backup-env-detail{color:var(--text-muted)}
.timed-backup-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin:.4rem 0 .8rem}
.timed-backup-doc{margin:0 0 .9rem;font-size:var(--font-size-sm)}
.timed-backup-log-list{display:flex;flex-direction:column;gap:.3rem}
.timed-backup-log-row{display:grid;grid-template-columns:auto auto 1fr auto auto 1fr;gap:.6rem;align-items:baseline;font-size:var(--font-size-sm);padding:.35rem .55rem;border:1px solid var(--line);border-radius:9px}
.timed-backup-log-trigger{color:var(--text-muted)}
.timed-backup-log-size{white-space:nowrap}
.timed-backup-log-status.is-success{color:var(--success);font-weight:600}
.timed-backup-log-status.is-failed{color:var(--danger);font-weight:600}
.timed-backup-log-status.is-running{color:var(--warning);font-weight:600}
.timed-backup-log-error{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.timed-backup-pager{font-size:var(--font-size-xs);color:var(--text-muted);margin:.4rem 0 .6rem}
.timed-backup-pager a{color:var(--brand)}
.timed-backup-runlog-list{display:flex;flex-direction:column;gap:.3rem}
.timed-backup-runlog-row{display:grid;grid-template-columns:auto auto 1fr auto;gap:.6rem;align-items:baseline;font-size:var(--font-size-sm);padding:.35rem .55rem;border:1px solid var(--line);border-radius:9px}
.timed-backup-runlog-level{font-weight:600}
.timed-backup-runlog-level.is-info{color:var(--text-muted)}
.timed-backup-runlog-level.is-warn{color:var(--warning)}
.timed-backup-runlog-level.is-error{color:var(--danger)}
.timed-backup-runlog-msg{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.timed-backup-runlog-dur{color:var(--text-muted);white-space:nowrap}
/* topic_quick_actions */
.topic-quick-actions-toggle{display:inline-flex;align-items:center;flex-shrink:0;gap:5px;color:var(--text-muted);font-size:var(--font-size-sm);white-space:nowrap;cursor:pointer}.topic-quick-actions-pick{display:inline-flex;align-items:center;flex-shrink:0;order:9;margin:10px 0 0 auto;cursor:pointer}.topic-quick-actions-toggle input[type=checkbox],.topic-quick-actions-pick input[type=checkbox]{position:absolute;width:1px;height:1px;margin:0;padding:0;border:0;opacity:0;pointer-events:none}.topic-quick-actions-box{position:relative;box-sizing:border-box;display:block;flex-shrink:0;width:16px;height:16px;border:1px solid var(--line);border-radius:4px;background:var(--panel);transition:border-color var(--transition-normal),background-color var(--transition-normal)}.topic-quick-actions-toggle:hover .topic-quick-actions-box,.topic-quick-actions-pick:hover .topic-quick-actions-box{border-color:var(--brand)}.topic-quick-actions-toggle input[type=checkbox]:checked+.topic-quick-actions-box,.topic-quick-actions-pick input[type=checkbox]:checked+.topic-quick-actions-box,.topic-quick-actions-toggle input[type=checkbox]:indeterminate+.topic-quick-actions-box{border-color:var(--brand);background:var(--brand)}.topic-quick-actions-toggle input[type=checkbox]:checked+.topic-quick-actions-box::after,.topic-quick-actions-pick input[type=checkbox]:checked+.topic-quick-actions-box::after{content:"";position:absolute;left:5px;top:1px;width:4px;height:8px;border:solid var(--inverse-text);border-width:0 2px 2px 0;transform:rotate(45deg)}.topic-quick-actions-toggle input[type=checkbox]:indeterminate+.topic-quick-actions-box::after{content:"";position:absolute;left:3px;top:6px;width:8px;height:2px;background:var(--inverse-text)}.topic-quick-actions-toggle input[type=checkbox]:focus-visible+.topic-quick-actions-box,.topic-quick-actions-pick input[type=checkbox]:focus-visible+.topic-quick-actions-box{outline:2px solid var(--focus-ring);outline-offset:2px}.topic-quick-actions-bar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:none;padding:10px 14px;border-top:1px solid var(--line);background:var(--panel);box-shadow:0 -6px 24px var(--shadow-medium)}.topic-quick-actions-bar.topic-quick-actions-open{display:block}.topic-quick-actions-inner{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;max-width:1120px;margin:0 auto}.topic-quick-actions-head{display:flex;align-items:center;gap:10px;min-width:0}.topic-quick-actions-count{color:var(--text);font-size:var(--font-size-sm);font-weight:600;white-space:nowrap}.topic-quick-actions-plain{min-height:0;padding:0;border:0;background:transparent;color:var(--text-muted);font-size:var(--font-size-sm);white-space:nowrap;cursor:pointer}.topic-quick-actions-plain:hover{background:transparent;color:var(--brand)}.topic-quick-actions-ops{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.topic-quick-actions-op{min-height:28px;padding:4px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);color:var(--text);font-size:var(--font-size-sm);line-height:1.4;white-space:nowrap;cursor:pointer;transition:border-color var(--transition-normal),color var(--transition-normal)}.topic-quick-actions-op:hover{border-color:var(--brand);background:var(--panel);color:var(--brand)}.topic-quick-actions-op.topic-quick-actions-danger:hover{border-color:var(--danger);color:var(--danger)}.topic-quick-actions-highlight{display:inline-flex;align-items:center;gap:6px;padding:3px 7px;border:1px solid var(--line-soft);border-radius:var(--radius)}.topic-quick-actions-swatch{width:18px;height:18px;min-height:18px;padding:0;border:2px solid transparent;border-radius:4px;box-shadow:none;cursor:pointer}.topic-quick-actions-swatch.active{border-color:var(--text)}.topic-quick-actions-swatch:hover{filter:brightness(.95)}@media(max-width:720px){.topic-quick-actions-bar{padding:8px 10px}.topic-quick-actions-inner{gap:6px 8px}.topic-quick-actions-op{padding:4px 8px}}@media(prefers-reduced-motion:reduce){.topic-quick-actions-op,.topic-quick-actions-box{transition:none}}
/* topic_share */
.topic-share-button{flex:0 0 24px;padding:0;border:0;background:transparent;cursor:pointer}.topic-share-icon:before{background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27currentColor%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M12 15V3m0 0L8 7m4-4 4 4M5 11v8a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-8%27/%3E%3C/svg%3E") center/14px 14px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27currentColor%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M12 15V3m0 0L8 7m4-4 4 4M5 11v8a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-8%27/%3E%3C/svg%3E") center/14px 14px no-repeat}.topic-share-title-button{margin-left:auto;opacity:.75}.topic-share-button.is-done{color:var(--success);opacity:1}.topic-share-button.is-failed{color:var(--danger);opacity:1}.topic-share-modal{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--backdrop)}.topic-share-modal[hidden]{display:none}.topic-share-dialog{width:min(420px,100%);padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:0 20px 60px var(--shadow-medium)}.topic-share-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.topic-share-dialog-head strong{font-size:var(--font-size-lg)}.topic-share-dialog-close{width:28px;min-width:28px;height:28px;min-height:28px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--text-muted);font-size:var(--font-size-lg);cursor:pointer}.topic-share-url{width:100%;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit}.topic-share-dialog-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.topic-share-dialog-actions button{min-height:36px;padding:0 13px;border-radius:var(--radius-sm);cursor:pointer}.topic-share-copy{border:1px solid var(--line);background:var(--bg);color:var(--text)}.topic-share-wechat{border:1px solid #07c160;background:#07c160;color:#fff}.topic-share-qq{border:1px solid #12b7f5;background:#12b7f5;color:#fff}.topic-share-system{border:1px solid var(--brand);background:var(--brand);color:var(--inverse-text)}.topic-share-status{min-height:18px;margin:9px 0 0;color:var(--text-muted);font-size:var(--font-size-sm)}
/* video_player */
.bbs-video-wrap{
    margin:16px 0;
}
/* PC端：高度固定400px */
.bbs-video-player{
    width:100%;
    height:400px;
    border-radius:8px;
    background:#000000;
    object-fit:contain;
}
.bbs-video-iframe-wrap{
    position:relative;
    width:100%;
    height:400px;
    margin:16px 0;
    border-radius:8px;
    overflow:hidden;
}
.bbs-video-iframe-wrap iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border:0;
}
/* 移动端：高度固定300px */
@media(max-width:768px){
    .bbs-video-player{
        width:100%;
        height:350px;
    }
    .bbs-video-iframe-wrap{
        width:100%;
        height:350px;
    }
}
