@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;700&display=swap";:root{--admin-bg: #f2eadf;--admin-bg-2: #e8dbc7;--admin-surface: rgba(255, 252, 247, .86);--admin-panel: rgba(255, 249, 239, .92);--admin-line: rgba(102, 73, 39, .2);--admin-text: #24190f;--admin-muted: #6f5a44;--admin-accent: #c16a21;--admin-accent-2: #0f7a72;--admin-shadow: 0 22px 48px rgba(58, 36, 12, .14)}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;font-family:Space Grotesk,Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;color:var(--admin-text);background:radial-gradient(circle at 0% 0%,#ffe5bd 0%,transparent 40%),radial-gradient(circle at 100% 100%,#d6efe9 0%,transparent 34%),linear-gradient(165deg,#f7efe5 0%,var(--admin-bg) 50%,var(--admin-bg-2) 100%)}body{overflow-x:hidden;position:relative}#root{min-height:100vh}.admin-shell{min-height:100vh;display:grid;grid-template-columns:300px minmax(0,1fr);align-items:start}.admin-bg-orb,.admin-login-orb{position:fixed;z-index:-1;border-radius:999px;filter:blur(48px);opacity:.56}.admin-bg-orb-a{width:320px;height:320px;background:#ffd5a0;top:-60px;left:-110px}.admin-bg-orb-b{width:400px;height:400px;background:#9edfd5;right:-120px;bottom:-80px}.glass{border:1px solid rgba(255,243,223,.9);background:var(--admin-surface);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--admin-shadow)}.sidebar{margin:14px;border-radius:24px;padding:18px 16px;display:flex;flex-direction:column;gap:14px;position:sticky;top:14px;align-self:start}.sidebar h1{margin:0;font-size:1.5rem;letter-spacing:.01em}.admin-subtitle{margin:0;font-size:.82rem;color:var(--admin-muted);letter-spacing:.08em;text-transform:uppercase}.admin-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:2px}.admin-meta span{color:var(--admin-muted);font-size:.88rem}.sidebar nav{display:grid;gap:8px}.nav-btn,button,.ghost-btn{min-height:44px;border-radius:14px;border:1px solid var(--admin-line);font:inherit;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background-color .18s ease}.nav-btn{text-decoration:none;color:var(--admin-text);background:#fff8ead6;display:flex;align-items:center;padding:0 12px}.nav-btn:hover{transform:translateY(-1px);border-color:#c16a2170}.nav-btn.active{border-color:#c16a219e;color:#6d3b10;background:linear-gradient(120deg,#fff2d8,#ffe3bb);font-weight:700}button{color:#fff;border-color:#8d4d10;background:linear-gradient(125deg,#c76c21,#e59035 52%,#e1a04a)}button:disabled,.ghost-btn:disabled,input:disabled,textarea:disabled,select:disabled{cursor:not-allowed;opacity:.62;transform:none}.ghost-btn{width:auto;padding:0 12px;color:var(--admin-text);background:#fff4de}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,.nav-btn:focus-visible,.ghost-btn:focus-visible,a:focus-visible{outline:3px solid rgba(193,106,33,.44);outline-offset:2px}main{min-width:0;padding:14px 14px 16px 0;position:relative}.panel{border-radius:24px;padding:18px;min-height:calc(100vh - 30px)}.panel-head{display:flex;justify-content:space-between;align-items:start;gap:10px;margin-bottom:12px}.panel h2{margin:0}.panel-subtitle{margin:6px 0 0;color:var(--admin-muted);font-size:.9rem}.loading-banner{margin:8px 0 12px;padding:10px 12px;border-radius:12px;border:1px dashed rgba(115,82,48,.22);background:#fff6e8d1;color:#7b5428;font-size:.86rem}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.kpi-item{border-radius:16px;border:1px solid rgba(115,82,48,.2);background:linear-gradient(145deg,#fffaf1,#fff2dc);padding:12px}.kpi-item .value{margin-top:6px;font-size:1.6rem;font-weight:700}.split-grid{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.card-panel{background:var(--admin-panel);border:1px solid rgba(115,82,48,.18);border-radius:16px;padding:12px}.card-panel h3{margin:0 0 10px}.model-config-panel{margin-bottom:12px}.trend-item,.status-item,.audit-item,.candidate-item,.template-item{border-bottom:1px solid rgba(115,82,48,.14);padding:8px 0;font-size:.9rem}.candidate-item code{color:#6e4618;font-weight:600}.table-wrap{overflow-x:auto;margin-top:10px;border-radius:14px;border:1px solid rgba(115,82,48,.15);background:#fffbf6eb}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 8px;border-bottom:1px solid rgba(115,82,48,.13);font-size:.88rem;vertical-align:top}thead th{font-size:.8rem;color:var(--admin-muted);text-transform:uppercase;letter-spacing:.04em}tbody tr:hover{background:#fff2dd85}.loading-row td{color:var(--admin-muted);text-align:center;padding:16px 10px}.filters{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:8px}.table-pagination{margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.pagination-info{color:var(--admin-muted);font-size:.82rem}.pagination-info strong{color:var(--admin-text)}.pagination-actions{display:inline-flex;align-items:center;gap:8px}.pagination-actions label{display:inline-flex;align-items:center;gap:6px;color:var(--admin-muted);font-size:.8rem}.pagination-actions select{width:auto;min-width:72px;height:34px;padding:0 10px}.pagination-actions .ghost-btn{min-height:34px}.filters label{display:grid;gap:4px;font-size:.82rem}.form-block{display:grid;gap:8px;margin-bottom:12px}input,textarea,select{width:100%;border-radius:12px;border:1px solid var(--admin-line);padding:10px;font:inherit;background:#fffcf6f2}.quota-input{min-width:86px;max-width:108px;text-align:center}.quota-editor{display:inline-grid;gap:4px}.quota-editor small{color:var(--admin-muted);font-size:.74rem}textarea{min-height:110px;resize:vertical}.inline-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.inline-actions button{width:auto;min-height:36px;padding:6px 10px}.inline-actions a{display:inline-flex;align-items:center;min-height:36px;border-radius:10px;border:1px solid rgba(15,122,114,.34);color:#0b675f;text-decoration:none;padding:0 10px;background:#e7fcf8e0}.task-image-cell{display:inline-flex;align-items:center;gap:8px}.prompt-cell{min-width:240px;max-width:440px}.prompt-text{margin:0;line-height:1.45;color:var(--admin-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.task-thumb{width:52px;height:52px;border-radius:10px;border:1px solid rgba(113,89,57,.18);object-fit:cover;background:#fff1dc85}.task-preview-btn{min-height:34px;border-radius:10px}.status-pill{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;padding:0 10px;font-size:.74rem;letter-spacing:.04em;text-transform:uppercase;border:1px solid rgba(113,89,57,.2);background:#fff6e8d9;color:#6b4b24}.status-pill.success{border-color:#188c7159;color:#0f6a56;background:#e1f7f0e6}.status-pill.failed,.status-pill.cancelled{border-color:#b6472757;color:#8e321b;background:#ffece4eb}.status-pill.processing,.status-pill.waiting{border-color:#c66a1f61;color:#965216;background:#fff1dceb}.image-preview-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:52;display:grid;place-items:center;padding:18px;background:#140c0494;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.image-preview-panel{width:min(920px,100%);max-height:min(86vh,960px);border-radius:18px;border:1px solid rgba(255,241,218,.26);background:#fffcf7fa;box-shadow:0 28px 54px #110b045c;overflow:auto}.user-task-panel{width:min(1080px,100%)}.image-preview-head{position:sticky;top:0;z-index:1;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;background:#fff5e4f5;border-bottom:1px solid rgba(113,89,57,.14)}.user-metric-row{display:flex;flex-wrap:wrap;gap:8px;padding:12px}.user-metric{display:inline-flex;align-items:center;min-height:34px;border-radius:999px;border:1px solid rgba(113,89,57,.18);background:#fff4e2db;color:#6d4b25;padding:0 12px;font-size:.84rem;font-weight:600}.user-task-filters{padding:0 12px 12px}.user-task-table-wrap{margin:0 12px 12px;max-height:min(58vh,640px)}.image-preview-full{width:100%;display:block;object-fit:contain}.page-loading-wrap{min-height:44vh;display:inline-flex;align-items:center;gap:12px;color:var(--admin-muted);font-size:.92rem}.loading-spinner{width:18px;height:18px;border-radius:50%;border:2px solid rgba(193,106,33,.2);border-top-color:#c16a21e6;animation:adminSpin .9s linear infinite}@keyframes adminSpin{to{transform:rotate(360deg)}}#toast{position:fixed;right:16px;bottom:16px;color:#fff;background:linear-gradient(135deg,#2f1f0f,#49301b);border-radius:12px;padding:10px 12px;opacity:0;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease}#toast.show{opacity:1;transform:translateY(0)}.admin-login-shell{min-height:100vh;display:grid;place-items:center;padding:16px;grid-column:1 / -1;position:relative}.admin-login-card{width:min(480px,100%);border-radius:24px;border:1px solid rgba(255,241,218,.88);padding:24px;background:linear-gradient(165deg,#fffbf4f5,#fcf3e2e6);box-shadow:0 22px 44px #42270d26;text-align:center}.admin-login-card h2{margin:8px 0 10px;font-size:clamp(1.7rem,3vw,2.2rem)}.admin-login-card p{margin:0 0 10px;color:var(--admin-muted)}.admin-login-points{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:8px 0 14px}.admin-login-points span{display:inline-flex;align-items:center;min-height:34px;border-radius:999px;border:1px solid rgba(15,122,114,.32);background:#e7fcf8e0;color:#0b675f;padding:0 12px;font-size:.82rem}.login-badge{margin:0;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--admin-accent)}.form-error{margin-top:10px;border-radius:12px;border:1px solid rgba(188,62,34,.35);background:#fff1ec;color:#8b321e;padding:10px 12px;font-size:.86rem;text-align:left}.empty-inline{margin-top:8px;color:var(--admin-muted);font-size:.86rem}.orb-a{width:340px;height:340px;background:#ffd39f;top:-70px;left:-80px}.orb-b{width:360px;height:360px;background:#9cddd3;right:-90px;bottom:-70px}@media (max-width: 1060px){.split-grid{grid-template-columns:1fr}.admin-shell{grid-template-columns:268px minmax(0,1fr)}}@media (max-width: 940px){.admin-shell{grid-template-columns:1fr}.sidebar{position:relative;top:0}main{padding:0 14px 14px}.panel{min-height:auto}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}:root{--admin-bg: #050506;--admin-bg-2: #090a0f;--admin-surface: rgba(255, 255, 255, .05);--admin-panel: rgba(255, 255, 255, .04);--admin-line: rgba(255, 255, 255, .08);--admin-text: #ededef;--admin-muted: #8a8f98;--admin-accent: #5e6ad2;--admin-accent-2: #6872d9;--admin-shadow: 0 0 0 1px rgba(255, 255, 255, .06), 0 14px 30px rgba(0, 0, 0, .5), 0 0 64px rgba(94, 106, 210, .08)}html,body{font-family:Inter,Geist Sans,Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;color:var(--admin-text);background:radial-gradient(ellipse at top,#0a0a0f,#050506 52%,#020203),linear-gradient(180deg,rgba(94,106,210,.05),transparent 45%)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;opacity:.02;pointer-events:none;background-image:linear-gradient(to right,rgba(255,255,255,.8) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.8) 1px,transparent 1px);background-size:64px 64px}.admin-bg-orb,.admin-login-orb{filter:blur(120px);opacity:.3}.admin-bg-orb-a,.orb-a{background:radial-gradient(circle,rgba(94,106,210,.34),transparent 70%)}.admin-bg-orb-b,.orb-b{background:radial-gradient(circle,rgba(120,82,203,.26),transparent 70%)}.glass{border:1px solid var(--admin-line);background:linear-gradient(180deg,#ffffff12,#ffffff08);box-shadow:var(--admin-shadow);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.sidebar{border-radius:18px;padding:16px 14px;gap:10px}.sidebar h1{background:linear-gradient(180deg,#fffffffa,#ffffffbd);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:1.42rem}.admin-subtitle,.admin-meta span,.panel-subtitle,.loading-row td,.empty-inline{color:var(--admin-muted)}.sidebar nav{gap:6px}.nav-btn{min-height:38px;border-radius:10px;border-color:transparent;background:#ffffff0a;color:#ffffffc7;font-size:.88rem;padding:0 10px}.nav-btn:hover{border-color:var(--admin-line);background:#ffffff0f;color:#fff}.nav-btn.active{border-color:#5e6ad275;background:linear-gradient(135deg,#5e6ad257,#5e6ad229);color:#fff;font-weight:600;box-shadow:inset 0 1px #ffffff29,0 0 22px #5e6ad233}button,.ghost-btn{min-height:36px;border-radius:10px;padding:0 12px;font-size:.84rem;letter-spacing:.004em}button{color:#f2f4ff;border-color:#7884f894;background:linear-gradient(180deg,#a7b2ff52,#a7b2ff1a 28%,#a7b2ff00 55%),linear-gradient(135deg,#6773e6,#5f6ad7 55%,#5662d0);box-shadow:0 0 0 1px #6c79f18f,0 8px 16px #4f5cdb4d,inset 0 1px #ffffff4d}.ghost-btn{border-color:#ffffff24;color:#eceffff0;background:linear-gradient(180deg,#ffffff14,#ffffff08),#0a0c14c2;box-shadow:inset 0 1px #ffffff1a,0 6px 14px #00000057}button:hover,.ghost-btn:hover{transform:translateY(-1px)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,.nav-btn:focus-visible,.ghost-btn:focus-visible,a:focus-visible{outline:2px solid rgba(94,106,210,.58);outline-offset:2px}main{padding:12px 12px 14px 0}.panel{border-radius:16px;padding:16px;min-height:calc(100vh - 28px)}.panel-head{margin-bottom:10px}.kpi-grid,.split-grid{gap:8px}.kpi-item,.card-panel{border-radius:14px;border:1px solid var(--admin-line);background:linear-gradient(180deg,#ffffff12,#ffffff08)}.kpi-item .value{font-size:1.35rem}.trend-item,.status-item,.audit-item,.candidate-item,.template-item{border-bottom-color:#ffffff1a}.loading-banner{border:1px solid rgba(94,106,210,.28);background:#5e6ad224;color:#d5ddff}.table-wrap{border-color:var(--admin-line);background:#ffffff08;border-radius:12px}th,td{border-bottom-color:#ffffff1a;color:var(--admin-text)}thead th{color:var(--admin-muted)}tbody tr:hover{background:#ffffff0d}input,textarea,select{border-radius:10px;border-color:#ffffff1f;background:#0a0b10e6;color:var(--admin-text)}input::placeholder,textarea::placeholder{color:#ffffff75}.inline-actions a{border-color:#ffffff24;color:#e3e8ff;background:#ffffff0d}.task-thumb{border-color:#ffffff1f;background:#ffffff0f}.status-pill{border-color:#ffffff24;background:#ffffff0f;color:#ffffffc7}.status-pill.success{color:#9ee8cc;border-color:#35be9359;background:#28987729}.status-pill.failed,.status-pill.cancelled{color:#ffb3ab;border-color:#cf4e4259;background:#cf4e4224}.status-pill.processing,.status-pill.waiting{color:#d5ddff;border-color:#5e6ad259;background:#5e6ad229}.image-preview-mask{background:#020306cc}.image-preview-panel{border-color:var(--admin-line);background:linear-gradient(180deg,#111218fa,#0c0d13f5);box-shadow:0 0 0 1px #ffffff14,0 24px 52px #00000094}.image-preview-head{background:#090a0feb;border-bottom-color:var(--admin-line)}#toast{border:1px solid rgba(94,106,210,.45);background:linear-gradient(135deg,#0c0d13f0,#090a0ef5);box-shadow:0 0 0 1px #5e6ad247,0 14px 34px #0000007a}.admin-login-shell{background:transparent}.admin-login-card{border-radius:16px;border:1px solid var(--admin-line);background:linear-gradient(180deg,#ffffff14,#ffffff08);box-shadow:var(--admin-shadow)}.admin-login-card h2{background:linear-gradient(180deg,#fff,#ffffffb8);-webkit-background-clip:text;background-clip:text;color:transparent}.admin-login-card p,.login-badge{color:var(--admin-muted)}.admin-login-points span{border-color:#ffffff29;background:#ffffff0d;color:#dbe0f6}.form-error{border-color:#cf4e4259;background:#cf4e4224;color:#ffb7b0}@media (max-width: 1060px){.admin-shell{grid-template-columns:262px minmax(0,1fr)}}@media (max-width: 940px){.sidebar{margin:10px;padding:12px}main{padding:0 10px 10px}.panel{padding:12px}}.tasks-panel thead th{white-space:nowrap}.tasks-panel .task-op-col .task-inline-actions{gap:6px}.tasks-panel .task-op-col .task-inline-actions button{min-height:30px;padding:4px 8px;border-radius:8px;font-size:.74rem;white-space:nowrap}
