:root{color:#202124;font-synthesis:none;letter-spacing:0;--red:#b91c32;--red-dark:#941527;--red-soft:#fff1f3;--line:#e2e5e9;--muted:#6d747c;--green:#16805a;--amber:#b46b09;--blue:#2866a6;--surface:#fff;--shadow:0 1px 4px #14191e14;background:#f4f5f7;font-family:Inter,Segoe UI,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{background:#f4f5f7;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}h1,h2,h3,p{margin-top:0}svg{stroke-width:1.8px}.admin-shell{min-height:100vh}.admin-sidebar{z-index:30;color:#fff;background:#202327;flex-direction:column;width:232px;padding:0 14px 18px;display:flex;position:fixed;inset:0 auto 0 0}.admin-brand{border-bottom:1px solid #33373c;align-items:center;gap:10px;height:72px;padding:0 6px;display:flex}.admin-brand>span{background:var(--red);border-radius:5px;place-items:center;width:36px;height:36px;font-size:18px;font-weight:900;display:grid}.admin-brand>div{display:grid}.admin-brand strong{font-size:15px}.admin-brand small{color:#aeb3b8;font-size:10px}.admin-sidebar nav{gap:3px;margin-top:16px;display:grid}.admin-sidebar nav button{color:#bec3c8;text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:11px;height:44px;padding:0 12px;display:flex}.admin-sidebar nav button:hover{color:#fff;background:#2a2e33}.admin-sidebar nav button.active{color:#fff;background:var(--red);font-weight:700}.admin-sidebar nav svg{width:18px}.security-note{border-left:3px solid var(--green);background:#292d31;gap:9px;margin-top:auto;padding:13px;font-size:11px;display:flex}.security-note>svg{color:#63c9a4;flex:0 0 17px}.security-note div{gap:4px;display:grid}.security-note span{color:#9ea5ab;line-height:1.45}.admin-main{margin-left:232px}.admin-topbar{z-index:20;border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:13px;height:64px;padding:0 24px;display:flex;position:sticky;top:0}.breadcrumb{gap:5px;font-size:12px;display:flex}.breadcrumb span{color:var(--muted)}.admin-search{background:#f2f3f5;border:1px solid #0000;border-radius:5px;align-items:center;gap:8px;width:min(380px,35%);height:38px;margin-left:auto;padding:0 11px;display:flex}.admin-search:focus-within{background:#fff;border-color:#cd8d98}.admin-search svg{width:17px;color:var(--muted)}.admin-search input{background:0 0;border:0;outline:0;width:100%;font-size:12px}.icon-btn{border:1px solid var(--line);color:#565c62;background:#fff;border-radius:5px;place-items:center;width:36px;height:36px;padding:0;display:grid}.icon-btn svg{width:17px}.icon-btn:hover{color:var(--red);border-color:#dfa5af}.admin-user{text-align:left;background:0 0;border:0;align-items:center;gap:8px;max-width:180px;padding:0 4px;display:flex}.admin-user>span{background:var(--red-soft);height:34px;color:var(--red);border-radius:50%;flex:0 0 34px;place-items:center;font-weight:800;display:grid}.admin-user>div{min-width:0;display:grid}.admin-user strong,.admin-user small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-user strong{font-size:12px}.admin-user small{color:var(--muted);font-size:9px}.admin-user>svg{width:13px}.menu-toggle,.mobile-close{display:none}.admin-content{padding:24px}.admin-page{width:min(1440px,100%);margin:auto}.admin-page-title{justify-content:space-between;align-items:center;gap:20px;min-height:55px;margin-bottom:18px;display:flex}.admin-page-title h1{margin:0 0 5px;font-size:23px}.admin-page-title p{color:var(--muted);margin:0;font-size:12px}.btn{border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;gap:6px;min-height:37px;padding:0 14px;font-size:12px;font-weight:700;display:inline-flex}.btn svg{width:15px}.btn-primary{background:var(--red);border-color:var(--red);color:#fff}.btn-primary:hover{background:var(--red-dark)}.btn-secondary{color:#3f454a;background:#fff;border-color:#cfd3d7}.btn-danger{color:#a9142b;background:#fff0f2;border-color:#efb9c2}.btn-ghost{border-color:var(--line);color:#555;background:0 0}.btn.full{width:100%}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:6px;margin-bottom:16px}.panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:62px;padding:14px 17px;display:flex}.panel-header h2{margin:0 0 3px;font-size:15px}.panel-header p{color:var(--muted);margin:0;font-size:10px}.icon-header{justify-content:flex-start;gap:10px}.icon-header>svg{width:22px;color:var(--red)}.panel-state{min-height:250px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.panel-state>svg{color:#9fa5ab;width:27px}.panel-state strong{color:#34393e}.panel-state span{max-width:440px;font-size:11px}.panel-state.error>svg{color:var(--red)}.metric-grid{grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:16px;display:grid}.metric-card{border:1px solid var(--line);min-height:145px;box-shadow:var(--shadow);background:#fff;border-radius:6px;grid-template-columns:1fr auto;padding:17px;display:grid}.metric-icon{background:var(--red-soft);width:40px;height:40px;color:var(--red);border-radius:6px;grid-area:1/2/3;place-items:center;display:grid}.metric-icon svg{width:20px}.metric-card>span{color:var(--muted);align-self:end;font-size:11px}.metric-card>strong{font-size:24px}.metric-card>small{color:var(--muted);border-top:1px solid #eee;grid-column:1/-1;align-items:center;gap:4px;margin-top:9px;padding-top:9px;font-size:9px;display:flex}.metric-card>small svg{width:12px}.metric-card>small.up{color:var(--green)}.dashboard-grid{grid-template-columns:2fr 1fr;gap:15px;display:grid}.chart-panel,.todo-panel{min-height:360px}.simple-chart{align-items:flex-end;gap:8px;height:270px;padding:30px 20px 18px;display:flex}.simple-chart>div{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:5px;height:100%;display:flex}.simple-chart span{background:var(--red);border-radius:3px 3px 0 0;width:65%;min-width:7px}.simple-chart small{color:var(--muted);font-size:8px}.todo-row{border-bottom:1px solid #eee;align-items:center;gap:11px;min-height:67px;margin:0 16px;padding:10px 0;display:flex}.todo-row>span{border-radius:6px;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.todo-row>span.red{background:var(--red-soft);color:var(--red)}.todo-row>span.amber{color:var(--amber);background:#fff6e7}.todo-row>span.green{color:var(--green);background:#e9f6f1}.todo-row div{gap:3px;display:grid}.todo-row small{color:var(--muted);font-size:9px}.liability{background:#f5f6f7;border-radius:5px;align-items:center;gap:10px;margin:14px 16px;padding:12px;display:flex}.liability>svg{color:var(--amber)}.liability div{display:grid}.liability span{color:var(--muted);font-size:9px}.toolbar{border:1px solid var(--line);background:#fff;border-radius:6px;align-items:center;gap:8px;min-height:58px;margin-bottom:12px;padding:9px;display:flex}.toolbar-search{border:1px solid #d4d7da;border-radius:5px;align-items:center;gap:7px;width:min(380px,45%);height:38px;padding:0 10px;display:flex}.toolbar-search svg{width:16px;color:var(--muted)}.toolbar-search input{border:0;outline:0;width:100%}.toolbar select{background:#fff;border:1px solid #d4d7da;border-radius:5px;min-width:140px;height:38px;padding:0 9px}.table-panel{overflow:hidden}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{color:#687078;text-align:left;white-space:nowrap;background:#f7f8f9;height:42px;padding:0 13px;font-weight:700}td{vertical-align:middle;border-top:1px solid #eceef0;min-height:58px;padding:12px 13px}tr:hover td{background:#fffafb}.main-cell{gap:4px;min-width:190px;display:grid}.main-cell span,td small{color:var(--muted);font-size:9px}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.status{color:#555;white-space:nowrap;background:#eef0f2;border-radius:4px;align-items:center;min-height:22px;padding:0 7px;font-size:8px;font-weight:800;display:inline-flex}.status-on_sale,.status-active,.status-paid,.status-approved,.status-sent,.status-drawn{color:var(--green);background:#e8f5ef}.status-pending,.status-published,.status-processing,.status-drawing{color:var(--blue);background:#eaf2fb}.status-draft,.status-paused{color:#5e656b;background:#f0f1f2}.status-sold_out{color:var(--amber);background:#fff4df}.status-locked,.status-disabled,.status-rejected,.status-failed{background:var(--red-soft);color:var(--red)}.sales-progress{min-width:170px}.sales-progress>div{justify-content:space-between;margin-bottom:5px;font-size:9px;display:flex}.sales-progress>div b{color:var(--red)}.sales-progress>i{background:#eceef0;border-radius:3px;height:5px;display:block;overflow:hidden}.sales-progress>i span{background:var(--red);height:100%;display:block}.row-actions{gap:5px;display:flex}.row-actions button{border:1px solid var(--line);color:#555;background:#fff;border-radius:4px;place-items:center;width:30px;height:30px;padding:0;display:grid}.row-actions svg{width:14px}.row-actions button:hover{color:var(--red);border-color:#dda0aa}.table-link{color:var(--blue);background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:10px;font-weight:700;display:inline-flex}.table-link.danger{color:var(--red)}.table-link svg{width:13px}.pager{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:7px;min-height:52px;padding:8px 12px;display:flex}.pager>span{color:var(--muted);margin-right:auto;font-size:9px}.points-value{color:var(--red)}.modal-mask{z-index:100;background:#16191c9e;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:7px;width:min(520px,100%);max-height:calc(100vh - 36px);overflow:auto;box-shadow:0 20px 60px #00000040}.modal.wide{width:min(820px,100%)}.modal>header{z-index:2;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:60px;padding:0 18px;display:flex;position:sticky;top:0}.modal>header h2{margin:0;font-size:17px}.modal-content{padding:18px}.form-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.form-stack{gap:13px;display:grid}.field{color:#454b51;gap:5px;font-size:10px;font-weight:700;display:grid}.wide-field{grid-column:1/-1}.field input,.field select,.field textarea{resize:vertical;background:#fff;border:1px solid #ccd1d5;border-radius:4px;outline:0;width:100%;min-height:40px;padding:8px 10px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px var(--red-soft)}.check{align-items:center;gap:6px;min-height:40px;font-size:10px;display:flex}.check input{accent-color:var(--red)}.form-footer{border-top:1px solid var(--line);grid-column:1/-1;padding-top:13px}.form-footer>div:last-child,.modal-actions{justify-content:flex-end;gap:8px;display:flex}.form-error{background:var(--red-soft);color:var(--red);border-radius:4px;align-items:center;gap:6px;margin-bottom:10px;padding:9px;font-size:10px;display:flex}.form-error svg{width:14px}.segmented{background:#f0f1f2;border-radius:5px;grid-template-columns:1fr 1fr;margin-bottom:15px;padding:3px;display:grid}.segmented button{height:38px;color:var(--muted);background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;gap:6px;display:flex}.segmented button.active{color:var(--red);background:#fff;font-weight:800;box-shadow:0 1px 4px #0000001f}.segmented svg{width:15px}.draw-summary{background:#f5f6f7;border-radius:5px;justify-content:space-between;margin-bottom:14px;padding:12px;display:flex}.draw-summary span{color:var(--muted);font-size:10px}.operation-warning{color:#744500;border-left:3px solid var(--amber);background:#fff6e7;margin-bottom:14px;padding:11px;font-size:10px;line-height:1.5}.candidate-select{border:1px solid #ccd1d5;border-radius:4px;align-items:center;display:flex}.candidate-select svg{width:15px;color:var(--muted);margin-left:9px}.candidate-select select{border:0;box-shadow:none!important}.review-summary{grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:14px;display:grid}.review-summary>div{background:#f5f6f7;gap:4px;padding:11px;display:grid}.review-summary span{color:var(--muted);font-size:9px}.review-summary strong{font-size:14px}.image-file-input{display:none}.image-upload-empty{width:100%;min-height:126px;color:var(--muted);background:#fafbfc;border:1px dashed #c4c9ce;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:18px;display:flex}.image-upload-empty:hover{border-color:var(--red);background:var(--red-soft);color:var(--red)}.image-upload-empty svg{width:25px}.image-upload-empty strong{color:#3f454a;font-size:11px}.image-upload-empty small{font-size:9px}.image-upload-preview{background:#fafbfc;border:1px solid #d7dade;border-radius:5px;align-items:center;gap:13px;min-height:126px;padding:10px;display:flex}.image-upload-preview img{object-fit:cover;background:#eceef0;border-radius:4px;width:150px;height:104px}.image-upload-preview>div{flex-wrap:wrap;gap:7px;display:flex}.image-upload-field>.form-error{margin:0}.draw-cards{gap:8px;padding:13px;display:grid}.draw-cards article{border:1px solid var(--line);border-radius:5px;grid-template-columns:1fr auto auto;align-items:center;gap:24px;min-height:78px;padding:12px;display:grid}.draw-cards h3{margin:5px 0 3px;font-size:13px}.draw-cards article>div>span{color:var(--muted);font-size:9px}.draw-progress{text-align:right;display:grid}.draw-progress span{color:var(--muted);font-size:9px}.user-cell{align-items:center;gap:8px;min-width:185px;display:flex}.user-cell>span{background:var(--red-soft);width:33px;height:33px;color:var(--red);border-radius:50%;place-items:center;font-weight:800;display:grid}.user-cell div{gap:3px;display:grid}.user-cell small{color:var(--muted);font-size:9px}.tabs{border:1px solid var(--line);background:#fff;border-radius:5px;margin-bottom:12px;display:flex}.tabs button{min-height:44px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:0 18px;font-size:11px}.tabs button.active{color:var(--red);border-color:var(--red);font-weight:800}.settings-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.channel-list,.setting-list{padding:0 15px}.channel-list article{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;min-height:66px;padding:10px 0;display:flex}.channel-list article>div{gap:4px;display:grid}.channel-list article>div:last-child{justify-items:end}.channel-list span,.channel-list small{color:var(--muted);font-size:9px}.setting-list label{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;gap:15px;min-height:68px;padding:10px 0;display:flex}.setting-list label>div{gap:4px;display:grid}.setting-list span{color:var(--muted);font-size:9px}.setting-list input,.setting-list select{border:1px solid #ccd1d5;border-radius:4px;width:150px;height:36px;padding:0 8px}.setting-list>.btn{margin:14px 0}.login-page{background:#fff;grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.login-brand{color:#fff;background:#202327;flex-direction:column;justify-content:center;padding:8vw;display:flex}.brand-logo{background:var(--red);border-radius:7px;place-items:center;width:58px;height:58px;font-size:27px;font-weight:900;display:grid}.login-brand h1{margin:22px 0 5px;font-size:34px}.login-brand>p{color:#b5bac0}.login-points{gap:14px;margin-top:35px;display:grid}.login-points span{color:#d5d8db;align-items:center;gap:9px;font-size:12px;display:flex}.login-points svg{color:#69c8a6;width:18px}.login-panel{justify-content:center;align-items:center;padding:8vw;display:flex}.login-panel>div{width:min(390px,100%)}.login-panel h2{margin:7px 0;font-size:25px}.login-panel p{color:var(--muted);font-size:12px}.eyebrow{color:var(--red);font-size:10px;font-weight:900}.login-form{gap:15px;margin-top:25px;display:grid}.login-form label{gap:6px;font-size:10px;font-weight:700;display:grid}.login-form label>div{border:1px solid #ccd1d5;border-radius:5px;align-items:center;height:43px;padding-left:10px;display:flex}.login-form label svg{width:16px;color:var(--muted)}.login-form input{border:0;outline:0;width:100%;height:100%;padding:0 10px}.login-panel>small{color:var(--muted);font-size:9px;position:absolute;bottom:25px}.app-loading{min-height:100vh;color:var(--muted);place-items:center;display:grid}.forum-toolbar{justify-content:flex-end}.forum-post-link{text-align:left;background:0 0;border:0;gap:5px;min-width:260px;max-width:430px;padding:0;display:grid}.forum-post-link strong,.forum-post-link span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.forum-post-link strong{color:var(--ink);font-size:11px}.forum-post-link span{color:var(--muted);font-size:9px}.forum-post-link span svg{vertical-align:middle;width:10px;height:10px}.forum-author{min-width:135px}.forum-reason{text-overflow:ellipsis;white-space:nowrap;max-width:190px;color:var(--muted);display:block;overflow:hidden}.forum-preview{border:1px solid var(--line);border-left:3px solid var(--red);background:#f7f8f9;margin-bottom:16px;padding:16px}.forum-preview>div{align-items:center;gap:8px;display:flex}.forum-preview>div>span:last-child{color:var(--muted);font-size:9px}.forum-preview h3{margin:13px 0 7px;font-size:17px}.forum-preview p{color:#4c5257;white-space:pre-wrap;overflow-wrap:anywhere;max-height:45vh;margin:0 0 12px;font-size:12px;line-height:1.7;overflow:auto}.forum-preview small{color:var(--muted);font-size:9px}.forum-preview.compact p{max-height:110px;overflow:hidden}.admin-forum-media{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:12px 0;display:grid}.admin-forum-media img,.admin-forum-media video{object-fit:cover;background:#111;border-radius:4px;width:100%;height:150px}.admin-forum-media video:only-child,.admin-forum-media img:only-child{object-fit:contain;grid-column:1/-1;height:auto;max-height:430px}.forum-preview.compact .admin-forum-media img,.forum-preview.compact .admin-forum-media video{height:90px}.status-cancelled{color:#5e656b;background:#f0f1f2}@media (width<=1050px){.metric-grid{grid-template-columns:1fr 1fr}.dashboard-grid,.settings-grid{grid-template-columns:1fr}.admin-search{display:none}}@media (width<=760px){.admin-sidebar{transition:transform .2s;transform:translate(-102%)}.admin-sidebar.open{transform:translate(0)}.sidebar-mask{z-index:29;background:#0006;border:0;position:fixed;inset:0}.mobile-close{color:#fff;background:#292d31;border-color:#444;margin-left:auto;display:grid}.admin-main{margin-left:0}.admin-topbar{height:58px;padding:0 10px}.menu-toggle{display:grid}.breadcrumb span,.admin-user>div,.admin-user>svg,.logout{display:none}.admin-user{width:34px}.admin-user>span{flex-basis:34px}.admin-content{padding:12px}.admin-page-title{align-items:flex-start}.admin-page-title h1{font-size:20px}.admin-page-title p{font-size:10px}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{min-height:125px;padding:12px}.metric-card>strong{font-size:19px}.metric-icon{width:34px;height:34px}.toolbar{flex-wrap:wrap;align-items:stretch}.toolbar-search{width:100%}.toolbar select{flex:1}.table-panel{border-left:0;border-right:0;border-radius:0;margin-left:-12px;margin-right:-12px}.form-grid{grid-template-columns:1fr}.wide-field,.form-footer{grid-column:auto}.draw-cards article{grid-template-columns:1fr auto;gap:10px}.draw-cards article>.btn{grid-column:1/-1}.settings-grid,.review-summary,.login-page{grid-template-columns:1fr}.login-brand{display:none}.login-panel{padding:24px}.modal-mask{align-items:end;padding:0}.modal,.modal.wide{border-radius:8px 8px 0 0;width:100%;max-height:94vh}.tabs{overflow-x:auto}.tabs button{flex:none}.security-note{display:none}}@media (width<=420px){.metric-grid{grid-template-columns:1fr}.metric-card{min-height:115px}.admin-page-title .btn{padding:0 9px}.admin-page-title .btn svg{display:none}}@media (width>=761px){.admin-page{width:100%;margin:0}}
