:root{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;color:#20231f;background:#f7f4ee;--pine: #24503d;--pine-dark: #102d23;--pine-soft: #e4eee8;--canvas: #f7f4ee;--surface: #fffdf9;--ink: #20231f;--text-secondary: #6b726c;--text-tertiary: #8e938e;--divider: #ded8cc;--danger: #963e36;--warning: #7a5a21;font-synthesis:none}*{box-sizing:border-box}body{min-width:1024px;margin:0;background:var(--canvas)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.admin-login{display:grid;min-width:1024px;min-height:100vh;place-items:center;padding:48px;background:radial-gradient(circle at 78% 18%,rgba(185,147,90,.16),transparent 32%),linear-gradient(145deg,#f8f4eb,#e8eee9)}.admin-login__card{width:min(520px,100%);padding:52px;background:#fffdf9f5;border:1px solid var(--divider);border-radius:10px;box-shadow:0 22px 70px #102d231f}.admin-login__eyebrow{color:var(--pine);font-size:14px;letter-spacing:.24em}.admin-login h1{margin:12px 0 0;font-family:Songti SC,STSong,SimSun,serif;font-size:38px;font-weight:500}.admin-login p{margin:20px 0 0;color:var(--text-secondary);line-height:1.8}.admin-login__error{margin-top:20px;padding:12px 14px;color:var(--danger);background:#f8e9e6;border-radius:5px;font-size:13px;line-height:1.6}.admin-login__button{width:100%;margin-top:28px}.admin-login small{display:block;margin-top:18px;color:var(--text-tertiary);text-align:center}.session-button{padding:5px 10px;color:var(--pine);background:transparent;border:1px solid var(--divider);border-radius:4px}.admin-shell{min-height:100vh;display:grid;grid-template-columns:236px minmax(0,1fr)}.admin-sidebar{position:sticky;top:0;display:flex;height:100vh;flex-direction:column;color:#f6f2e8;background:#112e24;border-right:1px solid rgba(255,255,255,.08)}.admin-brand{display:flex;flex-direction:column;padding:28px 32px 20px}.admin-brand strong{font-family:Songti SC,STSong,SimSun,serif;font-size:28px;font-weight:500;letter-spacing:.08em}.admin-brand span{margin-top:6px;color:#bdc9c1;font-size:13px}.admin-nav{flex:1;overflow-y:auto;padding:8px 16px 24px}.admin-nav__group{margin:22px 16px 8px;color:#9eb0a5;font-size:13px}.admin-nav__item{display:flex;width:100%;height:46px;align-items:center;gap:14px;padding:0 16px;color:#e8eee9;background:transparent;border:0;border-radius:6px;text-align:left}.admin-nav__item:hover,.admin-nav__item:focus-visible{background:#ffffff14;outline:none}.admin-nav__item--active{color:#fff;background:#1e6048}.admin-nav__item img{width:22px;height:22px;filter:brightness(0) invert(1);opacity:.88}.admin-sidebar__collapse{display:flex;height:58px;align-items:center;gap:12px;padding:0 32px;color:#c6d0c9;background:transparent;border:0;border-top:1px solid rgba(255,255,255,.1)}.admin-workspace{min-width:0}.admin-topbar{display:flex;height:68px;align-items:center;justify-content:space-between;padding:0 36px;background:#fffdf9eb;border-bottom:1px solid var(--divider)}.breadcrumbs,.admin-session{display:flex;align-items:center;gap:12px;color:var(--text-secondary);font-size:14px}.breadcrumbs strong,.admin-session strong{color:var(--ink);font-weight:500}.breadcrumb-button{padding:0;color:var(--text-secondary);background:transparent;border:0}.breadcrumb-button:hover,.breadcrumb-button:focus-visible{color:var(--pine);outline:none}.acceptance-strip{padding:9px 36px;color:#5b451e;background:#f7edda;border-bottom:1px solid #e5d5b9;font-size:13px}.admin-main{width:100%;max-width:1480px;padding:34px 36px 56px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:32px}.page-heading h1,.pending-panel h1{margin:0;font-family:Songti SC,STSong,SimSun,serif;font-size:36px;font-weight:500;line-height:1.2}.page-heading p,.pending-panel p{margin:8px 0 0;color:var(--text-secondary);font-size:15px}.page-actions{display:flex;gap:12px}.more-actions{position:relative}.more-actions>.button{display:flex;align-items:center;gap:9px}.more-actions>.button img{width:14px;height:14px;transform:rotate(90deg)}.more-actions__menu{position:absolute;top:calc(100% + 8px);right:0;z-index:12;display:grid;width:156px;padding:6px;background:var(--surface);border:1px solid var(--divider);border-radius:6px;box-shadow:0 12px 30px #14191624}.more-actions__menu button{padding:10px 12px;color:var(--ink);background:transparent;border:0;border-radius:4px;text-align:left}.more-actions__menu button:hover{background:#f1efe9}.more-actions__menu .danger-link{color:var(--danger)}.button{min-height:44px;padding:0 20px;color:var(--ink);background:var(--surface);border:1px solid var(--divider);border-radius:6px;font-weight:500}.button--primary{color:#fff;background:var(--pine);border-color:var(--pine)}.button--primary:hover{background:var(--pine-dark)}.button--secondary:hover{color:var(--pine);border-color:#9caf9f}.admin-feedback,.stock-alert{display:flex;min-height:54px;align-items:center;gap:12px;margin-top:22px;padding:12px 16px;border:1px solid var(--divider);border-radius:6px}.admin-feedback__mark{width:10px;height:10px;background:currentColor;border-radius:50%}.admin-feedback--success{color:var(--pine);background:#e8f2eb;border-color:#c8ddce}.admin-feedback--warning{color:var(--warning);background:#f7edda;border-color:#e7d7b9}.admin-feedback--error{color:var(--danger);background:#f8e8e5;border-color:#ecc6c0}.admin-feedback--info{color:#4f6258;background:#eef1ec}.admin-feedback>span:nth-child(2){flex:1}.icon-button{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;padding:0;color:currentColor;background:transparent;border:0;border-radius:4px}.icon-button:hover{background:#20231f0f}.icon-button img{width:18px;height:18px}.filters{display:grid;grid-template-columns:minmax(260px,1.45fr) minmax(170px,.85fr) minmax(170px,.85fr) auto;gap:14px;margin-top:32px}.filters input,.filters select,.inventory-modal input,.inventory-modal select,.inventory-modal textarea{width:100%;min-height:44px;padding:10px 13px;color:var(--ink);background:#fff;border:1px solid #cfd3cd;border-radius:6px;outline:none}.learning-tabs{display:flex;gap:6px;margin:22px 0;border-bottom:1px solid var(--divider)}.learning-tabs button{padding:11px 18px;color:var(--text-secondary);background:transparent;border:0;border-bottom:2px solid transparent}.learning-tabs button.is-active{color:var(--pine);border-bottom-color:var(--pine)}.learning-tabs span{margin-left:8px;color:var(--text-tertiary);font-size:11px}.learning-stack{display:grid;gap:18px}.learning-card{overflow:hidden;background:var(--surface);border:1px solid var(--divider);border-radius:7px}.learning-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:22px 24px;border-bottom:1px solid var(--divider)}.learning-card h2{display:inline-block;margin:0 0 5px 10px;font-family:Songti SC,STSong,serif;font-size:22px;font-weight:500}.learning-card header p{margin:0;color:var(--text-secondary)}.learning-card header>small{color:var(--text-tertiary)}.learning-card__tools{display:flex;align-items:center;gap:14px;color:var(--text-tertiary)}.learning-card__tools button{padding:0;color:var(--pine);background:transparent;border:0}.learning-unit+.learning-unit{border-top:8px solid var(--background)}.learning-facts{display:grid;grid-template-columns:1.3fr repeat(6,auto);gap:18px;align-items:center;padding:15px 24px;background:#f5f3ee;font-size:12px}.learning-facts strong{font-size:14px}.learning-sessions{display:grid;gap:1px;background:var(--divider)}.learning-sessions>div{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:18px;align-items:center;padding:12px 24px;background:var(--surface);font-size:12px}.learning-sessions button,.learning-inline-action button{padding:0;color:var(--pine);background:transparent;border:0}.learning-table{width:100%;border-collapse:collapse;font-size:12px}.learning-table th,.learning-table td{padding:13px 16px;text-align:left;vertical-align:top;border-top:1px solid var(--divider)}.learning-table th{color:var(--text-secondary);background:#faf9f6;font-weight:500;white-space:nowrap}.learning-table strong,.learning-table small{display:block}.learning-table small{margin-top:4px;color:var(--text-tertiary)}.learning-table code{color:var(--text-secondary);font-family:inherit;font-size:11px}.learning-inline-action{display:flex;gap:8px;justify-content:space-between;margin-bottom:5px}.camp-redeem{display:flex;gap:10px;padding:14px 24px;border-top:1px solid var(--divider)}.camp-redeem input{max-width:360px}.learning-create-modal{width:min(820px,100%)}.learning-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.learning-form-grid .span-2{grid-column:1 / -1}.learning-session-fields{margin:0;padding:16px;border:1px solid var(--divider);border-radius:6px}.learning-session-fields>.check-label{margin-bottom:14px}.check-label{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.check-label input{width:16px;min-height:16px}@media(max-width:1100px){.learning-facts{grid-template-columns:repeat(3,minmax(0,1fr))}}.filters input:focus,.filters select:focus,.inventory-modal input:focus,.inventory-modal select:focus,.inventory-modal textarea:focus{border-color:var(--pine);box-shadow:0 0 0 2px #24503d1f}.stock-alert{justify-content:space-between;color:#704f21;background:#faf3e8;border-color:#e5d7c2}.stock-alert button,.row-actions button{padding:6px 4px;color:var(--pine);background:transparent;border:0;font-weight:500}.data-panel{margin-top:24px;overflow:hidden;background:var(--surface);border:1px solid var(--divider);border-radius:6px}.table-scroll{overflow-x:auto}.product-table{width:100%;min-width:1050px;border-collapse:collapse;font-size:14px}.product-table th,.product-table td{padding:16px 14px;text-align:left;vertical-align:middle;border-bottom:1px solid #e7e2d9;white-space:nowrap}.product-table th{color:#4f5750;background:#f4f2ed;font-weight:500}.product-table tbody tr:hover{background:#fbfaf6}.product-cell{display:flex;min-width:270px;align-items:center;gap:14px}.product-cell>img{width:72px;height:56px;flex:0 0 auto;object-fit:cover;background:#ece9e2;border-radius:4px}.product-cell span,.product-cell strong,.product-cell small{display:block}.product-cell strong{max-width:210px;overflow:hidden;color:var(--ink);text-overflow:ellipsis}.product-cell small{max-width:230px;margin-top:6px;overflow:hidden;color:var(--text-tertiary);text-overflow:ellipsis}.status-pill{display:inline-flex;padding:5px 9px;border-radius:4px;font-size:12px}.status-pill--published{color:var(--pine);background:var(--pine-soft)}.status-pill--draft{color:var(--warning);background:#f4ecd9}.status-pill--archived{color:#6e736e;background:#ecebe7}.inventory-low{color:#b24b35}.row-actions{display:flex;gap:10px}.table-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;color:var(--text-secondary);font-size:13px}.empty-state{height:180px;color:var(--text-tertiary);text-align:center!important}.order-management-page{min-width:0}.order-management-page.has-detail{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:28px}.order-list-pane{min-width:0}.order-filters{grid-template-columns:minmax(260px,1.5fr) repeat(4,minmax(132px,.75fr)) auto auto}.order-table{width:100%;min-width:1220px;border-collapse:collapse;font-size:13px}.order-table th,.order-table td{padding:14px 12px;text-align:left;vertical-align:middle;border-bottom:1px solid #e7e2d9;white-space:nowrap}.order-table th{color:#4f5750;background:#f4f2ed;font-weight:500}.order-table tbody tr:hover,.order-table tbody tr.is-selected{background:#f8f7f2}.order-table strong,.order-table small{display:block}.order-table small{margin-top:5px;color:var(--text-tertiary)}.order-status{display:inline-flex;padding:4px 8px;border-radius:4px;background:#eef1ec}.order-status--pending_payment{color:var(--warning);background:#f7edda}.order-status--confirmed,.order-status--completed{color:var(--pine);background:var(--pine-soft)}.order-status--cancelled,.order-status--closed{color:var(--text-secondary);background:#ecebe7}.order-detail-pane{position:sticky;top:20px;align-self:start;max-height:calc(100vh - 40px);overflow-y:auto;background:var(--surface);border:1px solid var(--divider);border-radius:7px}.order-detail-heading{display:flex;align-items:flex-start;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--divider)}.order-detail-heading small{color:var(--text-secondary)}.order-detail-heading h2{margin:5px 0 0;font-size:19px;font-weight:500}.order-state-grid{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--divider)}.order-state-grid span{display:flex;min-height:70px;flex-direction:column;justify-content:center;padding:12px;text-align:center}.order-state-grid span+span{border-left:1px solid var(--divider)}.order-state-grid small{color:var(--text-tertiary);font-size:11px}.order-state-grid strong{margin-top:5px;font-size:12px;font-weight:500}.order-detail-pane section{padding:20px 24px;border-bottom:1px solid var(--divider)}.order-detail-pane section h3{margin:0 0 14px;font-family:Songti SC,STSong,serif;font-size:18px;font-weight:500}.order-action-section .muted-copy{margin:0 0 14px;line-height:1.65}.order-action-section .button{width:100%}.order-detail-pane dl{margin:0}.order-detail-pane dl>div{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;padding:7px 0;font-size:13px;line-height:1.55}.order-detail-pane dt{color:var(--text-secondary)}.order-detail-pane dd{margin:0;word-break:break-all}.audit-timeline>div{display:grid;grid-template-columns:10px minmax(0,1fr);gap:10px;padding-bottom:18px}.audit-timeline>div>span{width:8px;height:8px;margin-top:5px;background:var(--pine);border-radius:50%}.audit-timeline strong,.audit-timeline small{display:block}.audit-timeline strong{font-size:13px}.audit-timeline small{margin-top:4px;color:var(--text-tertiary);font-size:11px}.audit-timeline p{margin:6px 0 0;font-size:12px}.audit-timeline code{display:block;margin-top:6px;overflow-wrap:anywhere;color:var(--text-secondary);font-family:inherit;font-size:11px}.inventory-facts{display:grid;gap:12px}.inventory-facts>div{padding:12px;background:#f5f3ee;border-radius:5px}.inventory-facts strong,.inventory-facts span,.inventory-facts small{display:block}.inventory-facts strong{font-size:12px}.inventory-facts span{margin-top:5px;font-size:12px}.inventory-facts small{margin-top:5px;color:var(--text-tertiary);font-size:11px}@media(max-width:1280px){.order-management-page.has-detail{display:block}.order-detail-pane{position:fixed;top:0;right:0;z-index:80;width:420px;height:100vh;max-height:none;border-radius:0;box-shadow:-18px 0 44px #1419162e}.order-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.order-filters input:first-child{grid-column:span 2}}.modal-backdrop{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:40px;background:#14191685}.inventory-modal{width:min(520px,100%);max-height:calc(100vh - 80px);overflow-y:auto;padding:26px;background:var(--surface);border:1px solid var(--divider);border-radius:8px;box-shadow:0 18px 48px #14191638}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.modal-heading h2{margin:0;font-family:Songti SC,STSong,SimSun,serif;font-size:24px;font-weight:500}.modal-heading p{margin:6px 0 0;color:var(--text-secondary)}.inventory-modal form{display:grid;gap:18px;margin-top:22px}.order-action-modal .muted-copy{margin:0;line-height:1.65}.inventory-modal label{display:grid;gap:7px;color:#3f4640;font-size:14px}.inventory-modal label>small{color:var(--text-tertiary);font-size:12px}.inventory-summary{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--divider);border-radius:6px}.inventory-summary span{display:flex;min-height:70px;align-items:center;justify-content:center;flex-direction:column}.inventory-summary span+span{border-left:1px solid var(--divider)}.inventory-summary small{color:var(--text-secondary)}.inventory-summary strong{margin-top:5px;font-size:18px;font-variant-numeric:tabular-nums}.direction-field{display:flex;align-items:center;gap:24px;margin:0;padding:0;border:0}.direction-field legend{float:left;margin-right:8px;color:#3f4640;font-size:14px}.direction-field .radio-label{display:flex;align-items:center;gap:7px}.direction-field input{width:16px;min-height:16px;accent-color:var(--pine)}.inventory-modal textarea{min-height:92px;resize:vertical}.form-error{padding:11px 13px;color:var(--danger);background:#f8e8e5;border:1px solid #ecc6c0;border-radius:6px;font-size:13px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.pending-panel{min-height:360px;padding:34px;background:var(--surface);border:1px solid var(--divider);border-radius:8px}.product-editor-heading{padding-bottom:28px}.title-with-status{display:flex;align-items:center;gap:14px}.product-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;border-top:1px solid var(--divider)}.product-editor-main{min-width:0;padding-right:42px}.product-editor-side{padding-left:38px;border-left:1px solid var(--divider)}.editor-section{padding:28px 0 16px}.product-editor-main .editor-section+.editor-section,.product-editor-side .editor-section+.editor-section{border-top:1px solid var(--divider)}.editor-section h2{margin:0 0 16px;font-family:Songti SC,STSong,SimSun,serif;font-size:22px;font-weight:500}.form-grid{display:grid;gap:10px}.form-grid>label,.cover-field{display:grid;grid-template-columns:132px minmax(0,1fr);align-items:start;gap:8px 18px;color:#424842;font-size:14px}.form-grid>label>span,.field-label{padding-top:12px}.form-grid>label>input,.form-grid>label>textarea,.product-editor-side input,.product-editor-side select,.product-editor-side textarea,.new-sku-card input{width:100%;min-height:42px;padding:9px 12px;color:var(--ink);background:#fff;border:1px solid #cfd3cd;border-radius:5px;outline:none}.form-grid>label>textarea,.product-editor-side textarea{resize:vertical}.form-grid>label>input:focus,.form-grid>label>textarea:focus,.product-editor-side input:focus,.product-editor-side select:focus,.product-editor-side textarea:focus,.new-sku-card input:focus{border-color:var(--pine);box-shadow:0 0 0 2px #24503d1f}.form-grid small,.cover-field small,.product-editor-side small{grid-column:2;color:var(--text-tertiary);font-size:12px;line-height:1.5}.cover-preview{width:210px;aspect-ratio:4 / 3;overflow:hidden;background:#ece9e2;border:1px solid var(--divider);border-radius:5px}.cover-editor{display:flex;align-items:center;gap:18px}.cover-editor__actions{display:grid;gap:10px}.cover-editor__actions .button{white-space:nowrap}.cover-preview img{width:100%;height:100%;object-fit:cover}.cover-preview__failure{display:flex;height:100%;align-items:center;justify-content:center;color:var(--text-tertiary);font-size:13px}.editor-table-scroll{border:1px solid var(--divider);border-radius:5px}.sku-table{width:100%;min-width:760px;border-collapse:collapse;font-size:13px}.sku-table th,.sku-table td{padding:12px 13px;text-align:left;border-bottom:1px solid #e7e2d9;white-space:nowrap}.sku-table th{color:#4f5750;background:#f4f2ed;font-weight:500}.sku-table tbody tr:last-child td{border-bottom:0}.sku-enabled,.sku-disabled{display:inline-flex;padding:4px 8px;border-radius:4px;font-size:12px}.sku-enabled{color:var(--pine);background:var(--pine-soft)}.sku-disabled{color:var(--text-secondary);background:#ecebe7}.table-link,.danger-link{padding:4px 0;color:var(--pine);background:transparent;border:0}.section-note{margin:16px 0 0;color:var(--text-secondary);font-size:13px}.new-sku-list{display:grid;gap:14px}.new-sku-card{margin:0;padding:16px;border:1px solid var(--divider);border-radius:6px}.new-sku-card legend{padding:0 7px;color:#3f4640;font-weight:500}.new-sku-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.new-sku-grid label{display:grid;gap:7px;color:#424842;font-size:13px}.new-sku-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:14px}.checkbox-label{display:flex!important;align-items:center;gap:9px!important}.checkbox-label input{width:16px;min-height:16px;accent-color:var(--pine)}.danger-link{color:var(--danger)}.add-sku-button{justify-self:start}.editor-section--side{display:grid;gap:15px;padding-bottom:24px}.editor-section--side h2{margin-bottom:2px}.product-editor-side label:not(.checkbox-label){display:grid;grid-template-columns:112px minmax(0,1fr);align-items:start;gap:8px 12px;color:#424842;font-size:13px}.product-editor-side label:not(.checkbox-label)>span{padding-top:12px}.product-editor-side label:not(.checkbox-label)>small{grid-column:2}.record-section dl{display:grid;gap:15px;margin:0}.record-section dl div{display:flex;justify-content:space-between;gap:18px}.record-section dt{color:var(--text-secondary)}.record-section dd{margin:0;text-align:right}.record-log-link{justify-self:start;margin-top:2px}.danger-section h2{color:var(--danger)}.danger-section p{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.7}.button--danger{color:var(--danger);background:#fffaf8;border-color:#bd6a61}.button--danger:hover{color:#fff;background:var(--danger);border-color:var(--danger)}.danger-confirm{display:grid;gap:20px}.danger-confirm>label{display:grid;gap:8px}.danger-confirm textarea{min-height:94px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.card{margin-top:24px;padding:24px;background:var(--surface);border:1px solid var(--divider);border-radius:8px}.table-wrap{overflow-x:auto}.section-heading{display:flex;justify-content:space-between;gap:20px}.admin-page,.contact-page{width:100%}.admin-tabs{display:flex;min-height:62px;align-items:flex-end;gap:42px;margin-top:22px;border-bottom:1px solid var(--divider)}.admin-tab{position:relative;min-height:48px;padding:0 2px;color:var(--text-secondary);background:transparent;border:0;font-size:15px}.admin-tab:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;background:transparent;content:""}.admin-tab--active{color:var(--pine);font-weight:600}.admin-tab--active:after{background:var(--pine)}.admin-tab span{margin-left:5px;font-weight:400}.tab-summary{min-height:48px;padding-top:15px;color:var(--text-secondary);font-size:14px}.content-filters{grid-template-columns:minmax(280px,1.35fr) repeat(2,minmax(170px,.75fr)) auto;margin-top:20px}.banner-filters{grid-template-columns:minmax(280px,1.15fr) repeat(2,minmax(190px,.85fr)) auto;margin-top:22px}.content-info-strip,.banner-order-panel{margin-top:18px;padding:14px 16px;color:#38423b;background:#f7f5f0;border:1px solid var(--divider);border-radius:4px;font-size:14px}.content-info-strip strong{margin-right:9px;color:var(--pine)}.content-table,.banner-table,.contact-table{width:100%;min-width:1040px;border-collapse:collapse;font-size:13px}.content-table th,.content-table td,.banner-table th,.banner-table td,.contact-table th,.contact-table td{padding:11px 12px;text-align:left;vertical-align:middle;border-bottom:1px solid #e5e0d7;white-space:nowrap}.content-table th,.banner-table th,.contact-table th{height:48px;color:#424842;background:#f4f2ed;font-weight:500}.content-table tbody tr:hover,.banner-table tbody tr:hover,.contact-table tbody tr:hover{background:#fbfaf6}.content-cell,.banner-cell{display:flex;min-width:258px;align-items:center;gap:13px}.content-cell img,.content-cell__no-image{width:84px;height:60px;flex:0 0 auto;object-fit:cover;background:#ece8df;border-radius:4px}.content-cell__no-image{display:grid;place-items:center;color:var(--text-tertiary);font-size:12px}.content-cell strong,.content-cell small,.banner-cell strong{display:block}.content-cell strong,.banner-cell strong{max-width:210px;overflow:hidden;text-overflow:ellipsis}.content-cell small{max-width:210px;margin-top:5px;overflow:hidden;color:var(--text-tertiary);text-overflow:ellipsis}.content-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 388px;gap:30px;border-top:1px solid var(--divider)}.content-editor-main{min-width:0}.content-editor-side{display:grid;align-content:start;gap:14px;padding-top:28px}.content-cover-field{align-items:start}.content-cover-preview{width:min(390px,45vw);aspect-ratio:3 / 2;overflow:hidden;background:#ece9e2;border:1px solid var(--divider);border-radius:4px}.content-cover-preview img,.banner-image-preview img,.popup-image-preview img{width:100%;height:100%;object-fit:cover}.editor-card{padding:18px;background:var(--surface);border:1px solid var(--divider);border-radius:6px}.editor-card h2,.popup-form-card h2{margin:0 0 16px;font-family:Songti SC,STSong,SimSun,serif;font-size:19px;font-weight:600}.editor-card>label:not(.checkbox-label),.popup-form-card>label,.popup-rule-section>label{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:start;gap:8px 12px;margin-top:10px;color:#424842;font-size:13px}.editor-card>label:not(.checkbox-label)>span,.popup-form-card>label>span,.popup-rule-section>label>span{padding-top:11px}.editor-card input,.editor-card select,.editor-card textarea,.popup-form-card input,.popup-form-card select,.popup-form-card textarea,.drawer-form input,.drawer-form select,.drawer-form textarea,.contact-form-fields input,.contact-form-fields select,.contact-form-fields textarea,.contact-list-toolbar input{width:100%;min-height:40px;padding:8px 11px;color:var(--ink);background:#fff;border:1px solid #cfd3cd;border-radius:4px;outline:none}.editor-card input:focus,.editor-card select:focus,.editor-card textarea:focus,.popup-form-card input:focus,.popup-form-card select:focus,.popup-form-card textarea:focus,.drawer-form input:focus,.drawer-form select:focus,.drawer-form textarea:focus,.contact-form-fields input:focus,.contact-form-fields select:focus,.contact-form-fields textarea:focus,.contact-list-toolbar input:focus{border-color:var(--pine);box-shadow:0 0 0 2px #24503d1f}.editor-card textarea,.popup-form-card textarea,.drawer-form textarea,.contact-form-fields textarea{resize:vertical}.editor-card small,.popup-form-card small,.contact-form-fields small{color:var(--text-tertiary);font-size:12px;line-height:1.5}.editor-card .checkbox-label{margin-top:13px;font-size:13px}.compact-records{display:grid;gap:10px;margin:0;font-size:13px}.compact-records div{display:flex;justify-content:space-between;gap:16px}.compact-records dt{color:var(--text-secondary)}.compact-records dd{margin:0;text-align:right}.feed-preview{display:grid;grid-template-columns:92px minmax(0,1fr);gap:13px;font-size:12px}.feed-preview img{width:92px;aspect-ratio:1;object-fit:cover;border-radius:4px}.feed-preview strong,.feed-preview span,.feed-preview small{display:block}.feed-preview span{display:-webkit-box;margin-top:6px;overflow:hidden;color:var(--text-secondary);line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.feed-preview small{margin-top:7px}.banner-order-panel{padding:12px 14px}.panel-label{display:flex;align-items:center;gap:14px;margin-bottom:10px}.panel-label small{color:var(--text-tertiary)}.banner-order-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;background:var(--surface);border:1px solid var(--divider);border-radius:4px}.banner-order-list>button{display:flex;min-width:0;height:66px;align-items:center;gap:11px;padding:7px 14px;color:var(--ink);background:var(--surface);border:0;text-align:left}.banner-order-list>button+button{border-left:1px solid var(--divider)}.banner-order-list img{width:100px;height:48px;object-fit:cover;border-radius:4px}.banner-order-list button>span{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.banner-order-list button>strong{color:var(--pine);font-variant-numeric:tabular-nums}.empty-inline{grid-column:1 / -1;padding:16px;color:var(--text-tertiary);text-align:center}.banner-cell img{width:94px;height:52px;object-fit:cover;border-radius:4px}.display-pill,.enabled-pill,.disabled-pill{display:inline-flex;padding:5px 9px;border-radius:4px;font-size:12px}.display-pill--展示中,.enabled-pill{color:var(--pine);background:var(--pine-soft)}.display-pill--待展示{color:#39657a;background:#e4eef2}.display-pill--草稿{color:var(--warning);background:#f4ecd9}.display-pill--已结束,.disabled-pill{color:#666b67;background:#e9e9e6}.drawer-backdrop{position:fixed;inset:0;z-index:90;background:#14191670}.admin-drawer{position:absolute;top:0;right:0;width:min(620px,58vw);height:100%;overflow-y:auto;padding:28px 30px;background:var(--surface);box-shadow:-14px 0 42px #1419162e}.drawer-form{display:grid;gap:16px;margin-top:24px}.drawer-form>label,.grid-fields label{display:grid;gap:7px;color:#424842;font-size:13px}.grid-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.banner-image-preview{aspect-ratio:3 / 1;overflow:hidden;background:#ece9e2;border:1px solid var(--divider);border-radius:4px}.drawer-actions{position:sticky;bottom:-28px;margin:0 -30px -28px;padding:16px 30px 28px;background:var(--surface);border-top:1px solid var(--divider)}.popup-editor-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(390px,.9fr);gap:24px;border-top:1px solid var(--divider);padding-top:24px}.popup-form-card{padding:20px}.popup-image-field{display:grid;grid-template-columns:122px minmax(0,1fr);gap:12px;margin-top:14px;font-size:13px}.popup-image-preview{width:min(300px,100%);aspect-ratio:4 / 3;overflow:hidden;background:#ece9e2;border:1px solid var(--divider);border-radius:4px}.popup-rule-section{margin-top:22px;padding-top:20px;border-top:1px solid var(--divider)}.popup-editor-side{display:grid;align-content:start;gap:14px}.miniapp-preview-stage{min-height:315px;display:grid;place-items:center;padding:24px;background:#3d403d;border-radius:4px}.miniapp-preview-modal{position:relative;width:min(280px,90%);padding:14px;color:var(--ink);background:#fffdfa;border-radius:7px;text-align:center}.miniapp-preview-modal img{width:100%;aspect-ratio:4 / 2.25;object-fit:cover;border-radius:4px}.miniapp-preview-modal .miniapp-preview-close{position:absolute;top:8px;right:8px;z-index:1;width:20px;height:20px;padding:2px;object-fit:contain;background:#fffdfae6;border-radius:50%}.miniapp-preview-modal strong,.miniapp-preview-modal p,.miniapp-preview-modal small{display:block}.miniapp-preview-modal strong{margin-top:10px;font-family:Songti SC,STSong,SimSun,serif;font-size:18px}.miniapp-preview-modal p{margin:8px 0;color:var(--text-secondary);font-size:12px;line-height:1.5}.miniapp-preview-modal small{margin-top:9px}.miniapp-preview-modal .button{width:100%;min-height:34px;margin-top:6px}.miniapp-preview-later{display:block;margin-top:9px;color:var(--text-secondary);font-size:12px}.popup-danger-row{display:flex;align-items:center;justify-content:flex-end;gap:20px;margin-top:18px;padding:18px 0 0;color:var(--danger);border-top:1px solid #e4c9c4;font-size:13px}.contact-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(390px,.65fr);gap:28px;margin-top:28px}.contact-list-panel{min-width:0}.contact-list-toolbar{display:flex;min-height:52px;align-items:center;justify-content:space-between;gap:16px;color:var(--text-secondary);border-bottom:1px solid var(--divider)}.contact-list-toolbar label{width:min(330px,65%)}.contact-table{min-width:760px;margin-top:12px;border:1px solid var(--divider)}.contact-table tbody tr{cursor:pointer}.contact-table tbody tr.is-selected{background:#eef3ef}.contact-table strong,.contact-table small{display:block}.contact-table small{margin-top:4px;color:var(--text-tertiary)}.contact-editor{padding-left:28px;border-left:1px solid var(--divider)}.contact-editor__heading{display:flex;justify-content:space-between;gap:18px;margin-bottom:22px}.contact-editor__heading h2{margin:0;font-family:Songti SC,STSong,SimSun,serif;font-size:22px;font-weight:500}.contact-editor__heading p{margin:7px 0 0;color:var(--text-secondary);font-size:13px}.contact-form-fields{display:grid;gap:12px}.contact-form-fields>label{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:start;gap:7px 12px;color:#424842;font-size:13px}.contact-form-fields>label>span:first-child{padding-top:11px}.contact-form-fields small{grid-column:2}.toggle-control{display:inline-flex;width:max-content;min-width:82px;min-height:36px;align-items:center;gap:8px;padding:4px 9px;color:var(--text-secondary);background:transparent;border:0}.toggle-control>span{position:relative;width:38px;height:22px;padding:0!important;background:#a8ada9;border-radius:999px}.toggle-control>span:after{position:absolute;top:3px;left:3px;width:16px;height:16px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000038;content:""}.toggle-control.is-on{color:var(--pine)}.toggle-control.is-on>span{background:var(--pine)}.toggle-control.is-on>span:after{left:19px}.contact-editor__footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding-top:18px;border-top:1px solid var(--divider)}.contact-editor__footer p{margin:0;color:var(--text-secondary);font-size:12px;line-height:1.5}@media(max-width:1400px){.admin-main,.admin-topbar{padding-right:26px;padding-left:26px}.contact-layout{grid-template-columns:minmax(0,1fr) 320px;gap:20px}.contact-editor{padding-left:20px}.contact-form-fields>label{grid-template-columns:76px minmax(0,1fr)}}@media(max-width:1180px){body{min-width:900px}.admin-shell{grid-template-columns:208px minmax(0,1fr)}.admin-main,.admin-topbar{padding-right:24px;padding-left:24px}.filters{grid-template-columns:minmax(240px,1.2fr) repeat(2,minmax(150px,.8fr)) auto}.product-editor-layout{grid-template-columns:minmax(0,1fr) 286px}.product-editor-main{padding-right:28px}.product-editor-side{padding-left:26px}.form-grid>label,.cover-field{grid-template-columns:112px minmax(0,1fr)}.cover-preview{width:180px}.content-editor-layout,.popup-editor-layout,.contact-layout{grid-template-columns:minmax(0,1fr)}.content-editor-side,.popup-editor-side{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-editor{padding-top:26px;padding-left:0;border-top:1px solid var(--divider);border-left:0}.banner-order-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.split-record-page{display:grid;min-width:0}.split-record-page.has-detail{grid-template-columns:minmax(0,1fr) 350px;margin-top:-34px;margin-right:-36px;margin-bottom:-56px}.record-list-pane{min-width:0}.split-record-page.has-detail .record-list-pane{padding-top:34px;padding-right:24px;padding-bottom:56px}.record-export-action{align-items:flex-end;flex-direction:column;gap:7px}.record-export-action small{color:var(--text-tertiary);font-size:12px}.privacy-strip{margin-top:24px;padding:14px 16px;color:#4d544e;background:#f8f6f1;border:1px solid var(--divider);border-radius:4px;font-size:13px;line-height:1.5}.privacy-strip strong{margin-right:10px;color:var(--pine)}.record-tabs{min-width:max-content;margin-top:18px;gap:34px;overflow-x:auto}.member-filters{grid-template-columns:minmax(250px,1.25fr) minmax(132px,.55fr) minmax(132px,.55fr) auto;margin-top:18px}.log-filters{grid-template-columns:minmax(160px,1.2fr) repeat(3,minmax(95px,.72fr)) minmax(112px,.78fr) auto;gap:10px;margin-top:24px}.record-data-panel{margin-top:20px}.record-table{width:100%;table-layout:fixed;border-collapse:collapse;color:#363b36;font-size:13px}.member-table{min-width:790px}.log-table{min-width:800px}.record-table th,.record-table td{height:58px;padding:11px 12px;text-align:left;vertical-align:middle;border-bottom:1px solid #e5e0d7;white-space:nowrap}.record-table td{overflow:hidden;text-overflow:ellipsis}.log-table td{height:72px;overflow-wrap:anywhere;line-height:1.45;white-space:normal}.log-table td:nth-child(7),.log-table td:nth-child(8){white-space:nowrap}.member-table th:nth-child(1){width:16%}.member-table th:nth-child(2){width:16%}.member-table th:nth-child(3){width:13%}.member-table th:nth-child(4),.member-table th:nth-child(5){width:11%}.member-table th:nth-child(6){width:9%}.member-table th:nth-child(7){width:17%}.member-table th:nth-child(8){width:7%}.log-table th:nth-child(1){width:14%}.log-table th:nth-child(2){width:16%}.log-table th:nth-child(3){width:12%}.log-table th:nth-child(4){width:16%}.log-table th:nth-child(5),.log-table th:nth-child(6){width:12%}.log-table th:nth-child(7){width:10%}.log-table th:nth-child(8){width:8%}.record-table th{height:48px;color:#454b46;background:#f4f2ed;font-weight:500}.record-table tbody tr:hover,.record-table tbody tr.is-selected{background:#f0f5f1}.member-level,.member-status,.audit-status{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:4px;font-size:12px;white-space:nowrap}.member-level--standard{color:#555b56;background:#efefec}.member-level--premium{color:#805d27;background:#f6ecd8}.member-level--founder{color:#95512f;background:#f7e4d8}.member-status--active,.audit-status{color:var(--pine);background:#e5f0e8}.member-status--pending{color:#8a651d;background:#f7ecd3}.member-status--disabled{color:#666b67;background:#e8e8e5}.record-cell-clamp{max-width:150px;overflow:hidden;text-overflow:ellipsis}.record-context-cell{max-width:190px;color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.record-detail-pane{position:sticky;top:0;min-height:calc(100vh - 102px);padding:28px 26px;background:var(--surface);border-left:1px solid var(--divider)}.record-detail-heading,.record-detail-title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.record-detail-heading h2,.record-detail-title h3,.related-records h3,.log-context-detail h3{margin:0;font-family:Songti SC,STSong,SimSun,serif;font-weight:500}.record-detail-heading h2{font-size:22px}.record-detail-title{align-items:center;margin-top:28px}.record-detail-title h3{min-width:0;font-size:26px;line-height:1.25}.member-identifier{margin:10px 0 0;overflow-wrap:anywhere;color:var(--text-secondary);font-size:13px}.record-detail-list{display:grid;gap:17px;margin:24px 0 0;padding:22px 0;border-top:1px solid var(--divider);border-bottom:1px solid var(--divider);font-size:13px}.record-detail-list div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:14px}.record-detail-list dt{color:var(--text-secondary)}.record-detail-list dd{min-width:0;margin:0;overflow-wrap:anywhere}.member-points-summary{display:grid;grid-template-columns:repeat(2,1fr);margin-top:24px}.member-points-summary span{display:grid;gap:8px;padding:0 16px}.member-points-summary span:first-child{padding-left:0;border-right:1px solid var(--divider)}.member-points-summary small{color:var(--text-secondary)}.member-points-summary strong{font-size:25px;font-weight:500;font-variant-numeric:tabular-nums}.detail-link{display:flex;align-items:center;gap:7px;margin-top:24px;padding:0;color:var(--pine);background:transparent;border:0}.detail-link img,.related-records button img{width:16px;height:16px}.detail-helper{margin:8px 0 0;color:var(--text-tertiary);font-size:12px;line-height:1.5}.privacy-card{display:flex;gap:11px;margin-top:28px;padding:15px;color:#4d544e;background:#f8f6f1;border:1px solid var(--divider);border-radius:4px;font-size:12px;line-height:1.6}.privacy-card img{width:19px;height:19px;flex:0 0 auto}.privacy-card p{margin:0}.related-records{margin-top:28px}.related-records h3,.log-context-detail h3{font-size:17px}.related-records button,.related-records__blocked{display:flex;width:100%;min-height:52px;align-items:center;justify-content:space-between;margin-top:13px;padding:0 14px;color:var(--pine);background:var(--surface);border:1px solid var(--divider);border-radius:4px;text-align:left}.related-records__blocked{color:var(--text-tertiary);cursor:not-allowed}.record-detail-close{width:100%;margin-top:32px}.log-detail-card{margin-top:22px;padding:18px;border:1px solid var(--divider);border-radius:5px}.log-detail-card .record-detail-title{margin-top:0}.log-detail-card .record-detail-title h3{font-size:20px}.log-context-detail{margin-top:22px}.log-context-detail code{display:block;margin-top:12px;padding:13px;overflow-wrap:anywhere;color:#4d544e;background:#f4f2ed;border-radius:4px;font-size:11px;line-height:1.7;white-space:pre-wrap}.member-invite-code{color:var(--pine);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600;letter-spacing:.04em}.relation-filters{grid-template-columns:minmax(280px,1fr) minmax(150px,.5fr) auto;margin-top:18px}.relation-table{min-width:800px;font-size:12px}.relation-table th,.relation-table td{padding-right:8px;padding-left:8px}.relation-table th:nth-child(1),.relation-table th:nth-child(3){width:14%}.relation-table th:nth-child(2),.relation-table th:nth-child(4){width:15%}.relation-table th:nth-child(5),.relation-table th:nth-child(7){width:11%}.relation-table th:nth-child(6){width:15%}.relation-table th:nth-child(8){width:5%}.relation-table td small{display:block;margin-top:4px;color:var(--text-tertiary);font-size:11px}.relation-path-card{display:grid;justify-items:center;gap:13px;margin-top:24px;padding:22px;background:#fbfaf7;border:1px solid var(--divider);border-radius:5px}.relation-person{display:flex;width:100%;align-items:center;justify-content:center;gap:13px}.relation-person img{width:38px;height:38px;padding:8px;background:#f0f5f1;border-radius:50%}.relation-person span{display:grid;min-width:112px;gap:4px}.relation-person strong{font-size:16px;font-weight:500}.relation-person small{color:var(--text-secondary);font-size:12px}.relation-arrow{width:18px;height:18px;transform:rotate(90deg);opacity:.58}@media(max-width:1400px){.split-record-page.has-detail{margin-right:-26px}.log-filters{grid-template-columns:minmax(170px,1fr) repeat(3,minmax(96px,.7fr)) auto}.log-date-filter{display:none}}@media(max-width:1180px){.split-record-page.has-detail{display:block;margin:0}.split-record-page.has-detail .record-list-pane{padding:0}.record-detail-pane{position:fixed;top:0;right:0;z-index:80;width:min(390px,48vw);height:100vh;min-height:0;overflow-y:auto;box-shadow:-14px 0 42px #1419162e}.member-filters{grid-template-columns:minmax(230px,1fr) repeat(2,minmax(130px,.65fr)) auto}.log-filters{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(130px,.7fr)) auto}.log-filters select:nth-of-type(3){display:none}}
