:root{color-scheme:dark;--bg: #0a0d13;--panel: #10151d;--panel-2: #0d1118;--border: #1e2733;--border-strong: #2b3949;--text: #e7eef6;--muted: #8fa3b8;--faint: #5c6f84;--accent: #22d3ee;--accent-2: #a3e635;--amber: #fbbf24;--danger: #f87171;--radius: 8px;font-family:Segoe UI,Microsoft YaHei,PingFang SC,Noto Sans SC,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--text)}button{font:inherit}.auth-loading{min-height:100vh;display:grid;place-items:center;color:var(--accent)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 15% 20%,rgba(34,211,238,.1),transparent 34%),radial-gradient(circle at 85% 80%,rgba(163,230,53,.08),transparent 30%),var(--bg)}.auth-card{width:100%;max-width:420px;padding:26px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:0 24px 70px #00000059}.auth-brand{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:20px}.auth-mark{width:46px;height:46px;margin-bottom:12px;border-radius:var(--radius)}.auth-brand h1{margin:0;font-size:22px}.auth-brand p{margin:5px 0 0;font-size:13px;color:var(--muted)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);margin-bottom:18px}.auth-tabs button{height:34px;border:none;border-radius:6px;background:transparent;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer}.auth-tabs button.active{background:#132b36;color:var(--accent)}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-field{display:flex;flex-direction:column;gap:7px}.auth-field>span{font-size:12px;font-weight:600;color:var(--muted)}.auth-input{display:flex;align-items:center;gap:9px;height:42px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--faint)}.auth-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #22d3ee1f;color:var(--accent)}.auth-input input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--text);font:inherit;font-size:14px}.auth-input input::placeholder{color:var(--faint)}.password-toggle{width:26px;height:26px;display:grid;place-items:center;border:none;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;flex-shrink:0}.password-toggle:hover{color:var(--text)}.auth-error{margin:0;padding:9px 11px;border:1px solid rgba(248,113,113,.35);border-radius:var(--radius);background:#f8717114;color:var(--danger);font-size:12px;line-height:1.45;word-break:break-all}.auth-submit{width:100%;height:42px;display:flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--radius);background:linear-gradient(135deg,#0e7490,#3f6212);color:#fff;font-size:14px;font-weight:600;cursor:pointer;margin-top:2px}.auth-submit:hover:not(:disabled){filter:brightness(1.12)}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-switch{margin:16px 0 0;text-align:center;font-size:13px;color:var(--muted)}.auth-switch button{border:none;background:transparent;color:var(--accent);font-size:13px;font-weight:600;cursor:pointer;padding:0 0 0 5px}.auth-switch button:hover{text-decoration:underline}.admin-button{height:34px;display:inline-flex;align-items:center;gap:7px;padding:0 12px;border:1px solid rgba(34,211,238,.35);border-radius:var(--radius);background:#0f222b;color:var(--accent);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.admin-button:hover{border-color:var(--accent)}.admin-shell{width:100%;max-width:1180px;margin:0 auto;padding:20px 18px 40px;min-height:100vh}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.admin-header h1{margin:3px 0 0;font-size:22px}.admin-header-actions{display:flex;align-items:center;gap:8px}.back-button{height:34px;display:inline-flex;align-items:center;gap:7px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--muted);font-size:12px;font-weight:600;cursor:pointer}.back-button:hover{color:var(--text);border-color:var(--border-strong)}.admin-banner{margin-bottom:14px;padding:10px 13px;border-radius:var(--radius);font-size:13px}.admin-banner-error{border:1px solid rgba(248,113,113,.35);background:#f8717114;color:var(--danger)}.admin-banner-ok{border:1px solid rgba(163,230,53,.35);background:#a3e63514;color:var(--accent-2)}.admin-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:4px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);margin-bottom:16px;width:fit-content;max-width:100%}.admin-tabs button{height:34px;display:inline-flex;align-items:center;gap:7px;padding:0 14px;border:none;border-radius:6px;background:transparent;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer}.admin-tabs button.active{background:#132b36;color:var(--accent)}.admin-sub-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:4px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);width:fit-content;max-width:100%}.admin-sub-tabs button{height:32px;display:inline-flex;align-items:center;gap:6px;padding:0 12px;border:none;border-radius:6px;background:transparent;color:var(--muted);font-size:12px;font-weight:600;cursor:pointer}.admin-sub-tabs button.active{background:#132b36;color:var(--accent)}.admin-loading{min-height:320px;display:grid;place-items:center;color:var(--accent)}.admin-section{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.admin-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.admin-section-head h2{margin:0;font-size:16px}.admin-count{font-size:12px;color:var(--muted)}.pricing-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.admin-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.admin-table th{color:var(--muted);font-size:12px;font-weight:600}.admin-table tbody tr:hover{background:#ffffff05}.admin-table tbody tr:last-child td{border-bottom:none}.admin-user-cell{display:flex;align-items:center;gap:9px}.admin-user-avatar{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#0e7490,#3f6212);color:#fff;font-size:12px;font-weight:700;flex-shrink:0}.admin-user-name{display:inline-flex;align-items:center;gap:7px;font-weight:600}.admin-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:999px;border:1px solid rgba(163,230,53,.35);color:var(--accent-2);font-size:10px;font-weight:600}.admin-email{color:var(--muted)}.admin-muted{color:var(--faint)}.credit-value{font-weight:700;color:var(--accent)}.credit-editor{display:inline-flex;align-items:center;gap:5px}.credit-editor input{width:90px;height:30px;padding:0 8px;border:1px solid var(--border-strong);border-radius:6px;background:var(--panel-2);color:var(--text);font:inherit;font-size:12px;outline:none}.credit-editor input:focus{border-color:var(--accent)}.admin-mini-button{width:30px;height:30px;display:inline-grid;place-items:center;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);color:var(--muted);cursor:pointer}.admin-mini-button:hover{color:var(--text);border-color:var(--border-strong)}.admin-mini-button.ok{color:var(--accent-2);border-color:#a3e63559}.admin-mini-button.wide{width:auto;padding:0 11px;display:inline-flex;align-items:center;gap:6px;color:var(--accent);border-color:#22d3ee59}.admin-mini-button.danger{color:var(--danger);border-color:#f8717159}.admin-settings-form{display:flex;flex-direction:column;gap:14px}.admin-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-field-wide{grid-column:1 / -1}.admin-settings-group{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.admin-settings-group-head{display:flex;align-items:center;gap:8px;color:var(--accent)}.admin-settings-group-head h3{margin:0;font-size:13px;color:var(--text)}.admin-settings-group-head .admin-mini-button.wide{margin-left:auto}.admin-settings-desc{margin:0 0 2px;font-size:12px;line-height:1.55;color:var(--faint)}.admin-settings-subgroup{display:flex;flex-direction:column;gap:10px;margin-top:2px;padding-top:14px;border-top:1px dashed var(--border)}.model-add-button{align-self:flex-start}.channel-badge{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;margin-left:auto;border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--faint);font-size:10px;font-weight:700;white-space:nowrap}.channel-badge.is-active{color:var(--accent-2);border-color:#a3e63566;background:#a3e63512}.channel-badge.is-off{color:var(--danger);border-color:#f8717159;background:#f871710f}.channel-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.channel-card{display:flex;flex-direction:column;gap:8px;min-height:72px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);cursor:pointer;transition:opacity .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}.channel-card:hover{border-color:#22d3ee66}.channel-card.is-selected{border-color:var(--accent);background:#22d3ee14;box-shadow:inset 0 0 0 1px #22d3ee38}.channel-card.is-off{opacity:.62}.channel-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0}.channel-card-top strong{min-width:0;font-size:13px;line-height:1.35;color:var(--text);overflow-wrap:anywhere}.channel-card-meta{display:flex;align-items:center;gap:6px;min-width:0;font-size:11px;color:var(--faint);overflow:hidden}.channel-card-customer-name,.channel-customer-name{display:block;overflow:hidden;margin-top:4px;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.channel-customer-name{margin:0 0 0 8px;color:var(--faint)}.channel-card-meta>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-card-switch{width:36px;height:20px;transform:scale(.9);transform-origin:right center}.channel-add-card{display:flex;align-items:center;justify-content:center;gap:7px;min-height:64px;padding:12px;border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--panel);color:var(--faint);font-size:12px;font-weight:600;cursor:pointer;transition:color .15s ease,border-color .15s ease}.channel-add-card:hover{color:var(--accent);border-color:#22d3ee73}.channel-add-card.is-active{color:var(--accent);border-color:#22d3ee73;background:#22d3ee0f}.channel-type{margin-left:6px;padding:2px 6px;border-radius:999px;background:#22d3ee1a;border:1px solid rgba(34,211,238,.28);color:var(--accent);font-size:9px;font-weight:700;vertical-align:1px}.new-channel-form{border-color:#22d3ee59}.new-channel-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.channel-mock-note{margin-top:0}.switch{position:relative;flex-shrink:0;width:40px;height:22px;cursor:pointer}.switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.switch-track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:var(--border-strong);transition:background .15s ease}.switch-track:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s ease}.switch input:checked+.switch-track{background:#65a30d}.switch input:checked+.switch-track:after{transform:translate(18px)}.admin-settings-group.is-disabled{opacity:.55}.admin-settings-group.is-disabled .admin-field input,.admin-settings-group.is-disabled .admin-field textarea,.admin-settings-group.is-disabled .admin-field select,.admin-settings-group.is-disabled .model-admin-row input,.admin-settings-group.is-disabled .model-service-ids input,.admin-settings-group.is-disabled .admin-mini-button{cursor:not-allowed}.model-admin-list{display:flex;flex-direction:column;gap:10px}.model-admin-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 30px;align-items:end;gap:10px}.model-admin-row label{display:flex;flex-direction:column;gap:6px}.model-admin-row label span{font-size:11px;font-weight:600;color:var(--muted)}.model-admin-row input{width:100%;height:34px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--text);font:inherit;font-size:13px;outline:none}.model-admin-row input:focus{border-color:var(--accent)}.model-versions-field{grid-column:span 3}.model-admin-row .admin-mini-button{height:34px}.api-key-list-wrap,.api-key-list{display:flex;flex-direction:column;gap:10px}.api-key-row{display:grid;grid-template-columns:minmax(180px,2fr) 110px minmax(140px,1fr) 30px;align-items:end;gap:10px}.api-key-row label{display:flex;flex-direction:column;gap:6px}.api-key-row label span{font-size:11px;font-weight:600;color:var(--muted)}.api-key-row input{width:100%;height:34px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--text);font:inherit;font-size:13px;outline:none}.api-key-row input:focus{border-color:var(--accent)}.api-key-row .admin-mini-button{height:34px}.api-key-add-button{align-self:flex-start}.admin-settings-hint{color:var(--muted);font-size:11px}.pricing-block{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.pricing-block h3{margin:0;font-size:13px;color:var(--text)}.pricing-block-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.pricing-inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pricing-block-sub{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--border);border-radius:6px;background:var(--panel)}.pricing-block-sub h4{margin:0;font-size:12px;color:var(--accent)}.tier-list{display:flex;flex-direction:column;gap:8px}.tier-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 30px;align-items:end;gap:10px}.tier-row label{display:flex;flex-direction:column;gap:6px}.tier-row label span{font-size:11px;color:var(--muted);font-weight:600}.tier-row input{width:100%;height:34px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--text);font:inherit;font-size:13px;outline:none}.tier-row input:focus{border-color:var(--accent)}.admin-field{display:flex;flex-direction:column;gap:6px}.admin-field>span{font-size:12px;font-weight:600;color:var(--muted)}.admin-field input,.admin-field select{width:100%;height:38px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--text);font:inherit;font-size:13px;outline:none}.admin-field input:focus,.admin-field select:focus{border-color:var(--accent)}.admin-field textarea{width:100%;min-height:120px;padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--text);font:inherit;font-size:13px;line-height:1.5;font-family:ui-monospace,SFMono-Regular,Consolas,Courier New,monospace;resize:vertical;outline:none}.admin-field textarea:focus{border-color:var(--accent)}.admin-field textarea::placeholder{color:var(--faint)}.admin-field input::placeholder{color:var(--faint)}.admin-field small{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--faint)}.admin-check{display:flex;align-items:center;gap:8px;min-height:38px;font-size:13px;color:var(--muted);cursor:pointer}.admin-check input{width:16px;height:16px;accent-color:var(--accent)}.admin-settings-note{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--muted);font-size:12px;line-height:1.5}.admin-settings-note svg{color:var(--accent);flex-shrink:0;margin-top:1px}.admin-save-button{width:fit-content;min-width:130px;height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--radius);background:#0e7490;color:#fff;font-size:13px;font-weight:600;cursor:pointer}.admin-save-button:hover:not(:disabled){background:#155e75}.admin-save-button:disabled{opacity:.55;cursor:not-allowed}.admin-log-section{display:flex;flex-direction:column}.admin-log-head-actions{display:flex;align-items:center;gap:10px}.log-filter-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);margin-bottom:14px}.log-filter-bar label{display:flex;flex-direction:column;gap:5px;min-width:0}.log-filter-bar label>span{font-size:11px;font-weight:600;color:var(--muted)}.log-filter-bar input,.log-filter-bar select{width:100%;height:34px;padding:0 9px;border:1px solid var(--border);border-radius:6px;background:var(--panel);color:var(--text);font:inherit;font-size:12px;outline:none}.log-filter-bar input:focus,.log-filter-bar select:focus{border-color:var(--accent)}.log-filter-bar input::placeholder{color:var(--faint)}.log-filter-actions{display:flex;align-items:flex-end;gap:8px}.log-filter-actions .admin-mini-button{height:34px}.log-table{table-layout:fixed}.log-table th:nth-child(1){width:150px}.log-table th:nth-child(2){width:76px}.log-table th:nth-child(3){width:90px}.log-table th:nth-child(4){width:150px}.log-table th:nth-child(5){width:170px}.log-table th:nth-child(6){width:190px}.log-table th:nth-child(8){width:34px}.log-row{cursor:pointer}.log-row.is-expanded{background:#22d3ee0d}.log-time,.log-source,.log-event,.log-task{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.log-event{color:var(--accent)}.log-task{font-family:Consolas,Courier New,monospace;font-size:11px;color:var(--faint)}.log-message{max-width:420px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.log-level{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;font-size:10px;font-weight:700}.log-level-info{color:var(--accent);border:1px solid rgba(34,211,238,.35);background:#22d3ee12}.log-level-warn{color:var(--amber);border:1px solid rgba(251,191,36,.35);background:#fbbf2412}.log-level-error{color:var(--danger);border:1px solid rgba(248,113,113,.35);background:#f8717112}.log-level-debug{color:var(--muted);border:1px solid var(--border);background:var(--panel-2)}.log-details-row td{padding:0!important;background:var(--panel-2)}.log-details{padding:12px 14px;max-height:280px;overflow:auto;border-top:1px solid var(--border)}.log-details pre{margin:0;font-family:Consolas,Courier New,monospace;font-size:11px;line-height:1.55;color:#b9c9d8;white-space:pre-wrap;word-break:break-word}.log-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.log-pagination span{font-size:12px;color:var(--faint)}.admin-task-table th:first-child,.admin-task-table td:first-child{width:150px}.admin-task-ids{display:flex;flex-direction:column;gap:6px;min-width:230px}.admin-task-ids .task-id{width:100%}.admin-task-prompt{max-width:320px;min-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#c6d7e4}.admin-task-thumbs{display:flex;align-items:center;gap:5px;min-width:74px}.admin-task-thumbs img{width:30px;height:30px;object-fit:cover;border-radius:5px;border:1px solid var(--border)}.admin-task-thumb-more{font-size:10px;color:var(--faint);flex-shrink:0}.admin-task-detail{padding:16px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:16px}.admin-task-detail-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:12px;font-weight:600;color:var(--text)}.admin-task-detail-title a{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--border-strong);border-radius:6px;color:var(--accent);font-size:11px;font-weight:600;text-decoration:none}.admin-task-detail-title a:hover{border-color:var(--accent);background:#22d3ee14}.admin-task-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.admin-task-model,.admin-task-output{min-width:0;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.admin-task-viewer{position:relative;height:320px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.admin-task-output img{display:block;width:100%;height:320px;object-fit:contain;border:1px solid var(--border);border-radius:var(--radius);background:#0a0e14}.admin-task-ref-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.admin-task-ref-grid figure{margin:0;min-width:0}.admin-task-ref-grid img{display:block;width:100%;height:92px;object-fit:cover;border:1px solid var(--border);border-radius:6px;background:var(--panel-2)}.admin-task-ref-grid figcaption{margin-top:5px;overflow:hidden;font-size:11px;color:var(--muted);white-space:nowrap;text-overflow:ellipsis}.admin-task-detail-json{padding-top:12px;border-top:1px solid var(--border)}.admin-task-detail-json .log-details{padding:0;max-height:220px}.admin-task-detail-json .log-details pre{font-size:10px}.admin-error-customer{margin:0 0 8px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:#ef444414;color:#f0a3a3;font-size:12px;line-height:1.5;word-break:break-word}.advanced-setting-block{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);padding:14px}.advanced-setting-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.advanced-setting-head h3{margin:0 0 4px;font-size:14px}.advanced-setting-head p{margin:0;font-size:12px;color:var(--muted)}.new-user-setting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:12px}.new-user-setting-grid .switch-row{align-self:end;min-height:34px;padding:0 12px;border:1px solid var(--border);border-radius:6px;background:var(--panel)}.registration-whitelist-block{margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.registration-whitelist-block .advanced-setting-head{margin-bottom:10px}.registration-whitelist-textarea{display:block;width:100%;max-width:560px;min-height:120px;padding:10px 12px;border:1px solid var(--border);border-radius:6px;background:var(--panel);color:var(--text);font-family:inherit;font-size:13px;line-height:1.7;resize:vertical;outline:none}.registration-whitelist-textarea:focus{border-color:var(--accent)}.switch-row{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;flex-shrink:0}.switch-row input{width:34px;height:18px;accent-color:var(--accent-2);cursor:pointer}.blacklist-list{display:flex;flex-direction:column;gap:8px;max-height:260px;overflow:auto;margin-bottom:10px}.blacklist-row{display:flex;gap:8px}.blacklist-row input,.blacklist-add-row input{flex:1;min-width:0;height:34px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--panel);color:var(--text);font-size:13px;outline:none}.blacklist-row input:focus,.blacklist-add-row input:focus{border-color:var(--accent)}.blacklist-add-row{display:flex;gap:8px}.model-admin-item{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.model-service-ids{display:flex;flex-direction:column;gap:7px}.model-service-ids-title{font-size:11px;font-weight:600;color:var(--accent)}.model-service-ids-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.model-service-ids-grid label{display:flex;flex-direction:column;gap:5px}.model-service-ids-grid label>span{font-size:11px;font-weight:600;color:var(--muted)}.model-service-ids-grid input{width:100%;height:32px;padding:0 9px;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);color:var(--text);font:inherit;font-size:12px;outline:none}.model-service-ids-grid input:focus{border-color:var(--accent)}.app-shell{width:100%;max-width:1500px;margin:0 auto;padding:18px;min-height:100vh}.topbar{height:52px;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:11px;min-width:0}.brand-mark{width:34px;height:34px;border-radius:var(--radius);display:grid;place-items:center;color:#04121a;background:linear-gradient(135deg,#22d3ee,#a3e635);box-shadow:0 0 18px #22d3ee38;flex-shrink:0}.brand h1{margin:0;font-size:17px;line-height:1.2}.brand p{margin:2px 0 0;font-size:12px;color:var(--muted)}.topbar-right{display:flex;align-items:center;gap:10px;min-width:0}.user-chip{display:flex;align-items:center;gap:9px;height:40px;padding:0 12px 0 6px;border:1px solid var(--border);border-radius:999px;background:var(--panel);min-width:0;cursor:pointer;font:inherit;transition:border-color .15s ease,background .15s ease}.user-chip:hover{border-color:var(--border-strong);background:var(--panel-2)}.user-avatar{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#0e7490,#3f6212);color:#fff;font-size:12px;font-weight:700;flex-shrink:0}.user-meta{display:flex;flex-direction:column;min-width:0;line-height:1.2}.user-name{font-size:12px;font-weight:600;color:var(--text);display:inline-flex;align-items:center;gap:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.user-chip-chevron{color:var(--faint);flex-shrink:0}.user-sub{font-size:10px;color:var(--muted);margin-top:2px}.recharge-entry{display:inline-flex;align-items:center;gap:6px;height:34px;margin-left:8px;padding:0 16px;border:1px solid rgba(34,211,238,.45);border-radius:999px;background:#22d3ee1a;color:var(--accent);font:inherit;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0;vertical-align:middle}.recharge-entry:hover{border-color:var(--accent);background:#22d3ee2e;box-shadow:0 0 14px #22d3ee2e}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:18px;background:#05080cb8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.recharge-modal{width:min(440px,100%);max-height:calc(100vh - 36px);overflow-y:auto;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);box-shadow:0 26px 80px #00000080}.recharge-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;border-bottom:1px solid var(--border)}.recharge-modal-title{display:flex;align-items:center;gap:10px;min-width:0}.recharge-modal-icon{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(34,211,238,.35);border-radius:var(--radius);background:#22d3ee14;color:var(--accent);flex-shrink:0}.recharge-modal-title h2{margin:2px 0 0;font-size:16px;white-space:nowrap}.recharge-error{margin:14px 16px 0}.recharge-loading{min-height:220px;display:grid;place-items:center;color:var(--accent)}.recharge-disabled{min-height:160px;display:flex;align-items:center;justify-content:center;gap:9px;padding:24px;color:var(--muted);font-size:13px}.recharge-form{display:flex;flex-direction:column;gap:14px;padding:16px}.recharge-balance{display:flex;align-items:center;gap:7px;padding:11px 13px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--muted);font-size:12px}.recharge-balance svg{color:var(--accent)}.recharge-balance strong{margin-left:auto;color:var(--text);font-size:18px}.recharge-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.recharge-presets button{display:flex;flex-direction:column;align-items:center;gap:1px;height:52px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--text);font:inherit;cursor:pointer}.recharge-presets button:hover{border-color:#22d3ee73}.recharge-presets button.active{border-color:var(--accent);background:#22d3ee1a}.recharge-presets strong{font-size:13px}.recharge-presets span{font-size:10px;color:var(--faint)}.recharge-custom-field{display:flex;flex-direction:column;gap:6px}.recharge-custom-field>span{font-size:12px;font-weight:600;color:var(--muted)}.recharge-custom-field input{height:40px;padding:0 11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--text);font:inherit;font-size:14px;outline:none}.recharge-custom-field input:focus{border-color:var(--accent)}.recharge-total{display:flex;flex-direction:column;gap:7px;padding:12px 13px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.recharge-total>div{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted)}.recharge-total strong{color:var(--text);font-size:13px}.recharge-total>div:first-child strong{color:var(--amber);font-size:20px}.recharge-submit{width:100%;height:42px;display:flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--radius);background:#0e7490;color:#fff;font-size:13px;font-weight:600;cursor:pointer}.recharge-submit:hover:not(:disabled){background:#155e75}.recharge-submit:disabled{opacity:.6;cursor:not-allowed}.recharge-waiting{display:flex;flex-direction:column;gap:14px;padding:16px}.recharge-status-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.recharge-status{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border:1px solid var(--border);border-radius:999px;background:var(--panel-2);color:var(--muted);font-size:11px;font-weight:600;white-space:nowrap}.recharge-status-pending{color:var(--amber);border-color:#fbbf2466;animation:pulse 1.8s ease-in-out infinite}.recharge-status-paid{color:var(--accent-2);border-color:#a3e63566}.recharge-order-no{font-size:11px;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recharge-qr-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:9px;padding:16px;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.recharge-qr-img{width:210px;height:210px;object-fit:contain;padding:12px;border-radius:4px;background:#fff}.pseudo-qr{display:grid;grid-template-columns:repeat(21,10px);grid-template-rows:repeat(21,10px);gap:1px;padding:12px;border-radius:4px;background:#fff}.pseudo-qr span{display:block;width:10px;height:10px}.pseudo-qr span.on{background:#0b1220}.pseudo-qr span.off{background:#fff}.recharge-qr-note{color:#334155;font-size:12px;font-weight:600}.recharge-detail-list{display:flex;flex-direction:column;gap:8px}.recharge-detail-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted)}.recharge-detail-row>span{flex-shrink:0}.recharge-detail-row strong{min-width:0;color:var(--text);text-align:right;word-break:break-all}.recharge-address{display:flex;align-items:center;gap:6px;min-width:0}.recharge-address code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.recharge-hint{margin:0;font-size:12px;line-height:1.5;color:var(--muted)}.recharge-actions{display:flex;align-items:center;gap:8px}.recharge-actions .admin-mini-button.wide{flex:1}.recharge-paid-note{display:flex;align-items:center;gap:8px;padding:11px 13px;border:1px solid rgba(163,230,53,.35);border-radius:var(--radius);background:#a3e63512;color:var(--accent-2);font-size:12px}.recharge-history{border-top:1px solid var(--border)}.recharge-history-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px}.recharge-history-head h3{margin:0;font-size:13px}.recharge-history-list{display:flex;flex-direction:column;padding:0 16px 14px;gap:8px}.recharge-history-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.recharge-history-item>div:first-child{display:flex;flex-direction:column;gap:3px;min-width:0}.recharge-history-no{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--text)}.recharge-history-time{font-size:10px;color:var(--faint)}.recharge-history-meta{display:flex;align-items:center;gap:9px;flex-shrink:0;font-size:11px;color:var(--muted)}.recharge-order-table .recharge-order-no-cell,.recharge-order-table .recharge-order-address{display:flex;align-items:center;gap:7px;min-width:0}.recharge-order-table code{max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-method{display:inline-flex;align-items:center;height:22px;padding:0 8px;border:1px solid rgba(34,211,238,.35);border-radius:999px;background:#22d3ee14;color:var(--accent);font-size:10px;font-weight:600;white-space:nowrap}.payment-method-bitcoin{border-color:#fbbf2459;background:#fbbf2414;color:var(--amber)}.recharge-cny-cell{color:var(--amber);font-weight:600}.recharge-filter-bar{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.payment-config-block{display:flex;flex-direction:column;gap:12px;margin-top:18px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.payment-config-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.payment-config-head h3{margin:0;font-size:14px}.api-error{font-size:12px;color:var(--danger);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42vw}.icon-button{width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--muted);display:grid;place-items:center;cursor:pointer}.icon-button:hover{color:var(--text);border-color:var(--border-strong)}.service-chip{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 11px;border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--muted);font-size:12px;white-space:nowrap}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--accent-2);box-shadow:0 0 8px #a3e635b3}.service-chip.is-offline{border-color:#f8717173;color:var(--danger)}.service-chip.is-offline .live-dot{background:var(--danger);box-shadow:0 0 8px #f87171b3;animation:pulse 1.2s ease-in-out infinite}.layout{display:grid;grid-template-columns:390px minmax(0,1fr);gap:16px;align-items:start;min-height:calc(100vh - 110px)}.sidebar-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;position:sticky;top:16px;max-height:calc(100vh - 52px);display:flex;flex-direction:column}.task-form{display:flex;flex-direction:column;gap:12px;padding:16px}.form-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:2px}.form-heading h2,.task-list-wrap h2{margin:0;font-size:15px}.mode-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:3px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.mode-tab{min-width:0;display:flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 6px;border:none;border-radius:6px;background:transparent;color:var(--muted);font:inherit;font-size:11px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.mode-tab:hover{color:var(--text)}.mode-tab.is-active{background:#0e7490;color:#fff}.provider-tag{font-size:11px;color:var(--accent);border:1px solid rgba(34,211,238,.35);border-radius:999px;padding:2px 8px}.field-label{display:block;font-size:12px;color:var(--muted);font-weight:600}.task-form textarea{width:100%;min-height:96px;resize:vertical;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;color:var(--text);font:inherit;line-height:1.55;outline:none}.task-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #22d3ee1f}.task-form textarea::placeholder{color:var(--faint)}.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.option-field{display:flex;flex-direction:column;gap:6px;min-width:0}.option-field select{width:100%;height:36px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--text);font:inherit;font-size:12px;outline:none}.option-field select:focus{border-color:var(--accent)}.option-field select:disabled{color:var(--faint);cursor:not-allowed}.option-field:last-child{grid-column:1 / -1}.generate-type-hint{margin:-4px 0 0;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--muted);font-size:11px;line-height:1.5}.advanced-option-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.pbr-toggle{display:flex;align-items:center;gap:8px;min-width:0;cursor:pointer;color:var(--muted);font-size:12px;font-weight:600}.pbr-toggle input{width:15px;height:15px;margin:0;accent-color:var(--accent);flex-shrink:0}.pbr-toggle small{color:var(--faint);font-size:10px;font-weight:400}.pbr-toggle.is-disabled{opacity:.55;cursor:not-allowed}.option-limit-note{padding:3px 8px;border:1px solid rgba(251,191,36,.3);border-radius:999px;background:#fbbf2412;color:var(--amber);font-size:10px;white-space:nowrap}.cost-line{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid rgba(163,230,53,.28);border-radius:var(--radius);background:#a3e6350f;font-size:12px;color:var(--muted)}.cost-line strong{color:var(--accent-2);font-size:14px}.cost-addon{padding:2px 7px;border-radius:999px;background:#a3e6351f;color:var(--accent-2);font-size:11px;white-space:nowrap}.cost-divider{width:1px;height:14px;background:var(--border-strong)}.hidden-input{display:none}.upload-zone{width:100%;height:44px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--panel-2);color:var(--muted);font-size:13px;cursor:pointer}.upload-zone:hover{color:var(--text);border-color:var(--accent)}.upload-file{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.upload-file img{width:42px;height:42px;object-fit:cover;border-radius:6px;border:1px solid var(--border)}.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.upload-grid .upload-file{min-width:0}.upload-grid .upload-file-name{font-size:10px}.task-image-requirements{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.task-image-requirements-title{display:flex;align-items:center;gap:6px;margin-bottom:6px;color:var(--accent);font-size:12px;font-weight:600}.task-image-requirements ul{margin:0;padding-left:16px;display:grid;gap:4px}.task-image-requirements li{font-size:11px;line-height:1.55;color:var(--muted)}.single-upload-zone{min-height:118px;height:auto;flex-direction:column;gap:8px;border-color:var(--border-strong)}.single-upload-zone svg{width:22px;height:22px;color:var(--accent)}.single-upload-zone span{font-size:12px;font-weight:600}.single-upload-file{padding:10px}.single-upload-file img{width:76px;height:76px}.multi-view-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.multi-view-slot{position:relative;min-width:0;display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.multi-view-slot.has-image{border-color:var(--border-strong)}.multi-view-label{position:absolute;top:6px;left:6px;z-index:2;padding:2px 7px;border:1px solid rgba(34,211,238,.35);border-radius:5px;background:#0a0d13e6;color:var(--accent);font-size:10px;font-weight:600;pointer-events:none}.multi-view-slot img{width:100%;height:78px;object-fit:cover;border:1px solid var(--border);border-radius:5px}.multi-view-pick{width:100%;height:78px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px dashed var(--border-strong);border-radius:5px;background:var(--panel-2);color:var(--muted);font-size:11px;cursor:pointer}.multi-view-pick:hover{color:var(--accent);border-color:var(--accent)}.multi-view-name{min-width:0;padding-right:22px;font-size:10px;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.multi-view-clear{position:absolute;top:6px;right:6px;z-index:2;width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--border);border-radius:5px;background:#0a0d13e6;color:var(--muted);cursor:pointer}.multi-view-clear:hover{color:var(--danger);border-color:var(--danger)}.upload-file-meta{flex:1;min-width:0;display:flex;align-items:center;gap:8px}.upload-file-name{flex:1;min-width:0;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clear-file{width:26px;height:26px;flex-shrink:0;display:grid;place-items:center;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.clear-file:hover{color:var(--danger);border-color:var(--danger)}.form-error{margin:0;font-size:12px;color:var(--danger);word-break:break-all}.submit-button{width:100%;height:42px;display:flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--radius);background:#0e7490;color:#fff;font-size:14px;font-weight:600;cursor:pointer}.submit-button:hover:not(:disabled){background:#155e75}.submit-button:disabled{opacity:.55;cursor:not-allowed}.divider{height:1px;background:var(--border);flex-shrink:0}.task-list-wrap{padding:14px 16px 16px;min-height:0;display:flex;flex-direction:column}.task-list-wrap h2{margin-bottom:10px}.task-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;overflow-y:auto;max-height:340px}.task-item{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);cursor:pointer;transition:border-color .15s ease,background .15s ease}.task-item:hover{border-color:var(--border-strong)}.task-item.is-selected{border-color:var(--accent);background:#0f222b}.task-item-top{display:flex;align-items:center;gap:8px;margin-bottom:6px}.task-ids{display:flex;flex-direction:column;gap:4px;margin:2px 0 8px}.task-id{display:flex;align-items:center;gap:7px;height:24px;min-width:0;padding:0 5px 0 8px;border:1px solid var(--border);border-radius:6px;background:var(--panel)}.task-id-label{flex-shrink:0;font-size:9px;font-weight:700;color:var(--faint)}.task-id code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Consolas,Courier New,monospace;font-size:10px;color:var(--muted)}.task-copy{width:20px;height:20px;flex-shrink:0;display:grid;place-items:center;padding:0;border:none;border-radius:4px;background:transparent;color:var(--faint);cursor:pointer}.task-copy:hover{color:var(--accent);background:#132b36}.task-copy.is-copied{color:var(--accent-2)}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tone-pending{background:var(--amber)}.tone-processing{background:var(--accent);animation:pulse 1.2s ease-in-out infinite}.tone-succeeded{background:var(--accent-2)}.tone-failed{background:var(--danger)}.task-status{font-size:12px;color:var(--muted)}.task-time{margin-left:auto;font-size:11px;color:var(--faint)}.task-regenerate{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 8px;border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--muted);font:inherit;font-size:10px;font-weight:600;cursor:pointer;white-space:nowrap}.task-regenerate:hover{color:var(--accent);border-color:#22d3ee73}.task-prompt{margin:0;font-size:13px;line-height:1.5;color:#c8d5e2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-options{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:8px}.task-options span{padding:2px 8px;border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--muted);font-size:10px;white-space:nowrap}.task-options .task-cost{color:var(--accent-2);border-color:#a3e63547}.progress-track{height:5px;margin-top:9px;border-radius:999px;background:#1b2430;overflow:hidden}.progress-bar{height:100%;border-radius:999px;background:linear-gradient(90deg,#06b6d4,#a3e635);transition:width .4s ease}.empty-tasks{margin:10px 0 0;padding:18px;text-align:center;font-size:13px;color:var(--faint);border:1px dashed var(--border);border-radius:var(--radius)}.preview-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;min-height:calc(100vh - 110px)}.preview-header{padding:13px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px}.preview-title{min-width:0}.eyebrow{display:block;font-size:10px;font-weight:700;color:var(--accent-2)}.preview-title h2{margin:2px 0 0;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:58vw}.preview-tools{display:flex;align-items:center;flex-wrap:wrap;gap:10px;flex-shrink:0}.model-download{display:inline-flex;align-items:center;gap:6px}.model-format{height:30px;padding:0 8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--text);font:inherit;font-size:11px;font-weight:600;outline:none;cursor:pointer}.model-format:focus{border-color:var(--accent)}.model-download-button{height:30px;display:inline-flex;align-items:center;gap:5px;padding:0 10px;border:1px solid rgba(34,211,238,.35);border-radius:var(--radius);background:#0f222b;color:var(--accent);font:inherit;font-size:11px;font-weight:600;cursor:pointer;white-space:nowrap}.model-download-button:hover:not(:disabled){border-color:var(--accent)}.model-download-button:disabled{opacity:.55;cursor:not-allowed}.download-error{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:var(--danger)}.status-chip{font-size:12px;border-radius:999px;padding:4px 10px;border:1px solid var(--border);color:var(--muted);background:var(--panel-2);white-space:nowrap}.status-chip.tone-pending{color:var(--amber);border-color:#fbbf2466}.status-chip.tone-processing{color:var(--accent);border-color:#22d3ee66}.status-chip.tone-succeeded{color:var(--accent-2);border-color:#a3e63566}.status-chip.tone-failed{color:var(--danger);border-color:#f8717166}.segmented{display:flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.segmented button{width:34px;height:30px;display:grid;place-items:center;border:none;background:transparent;color:var(--muted);cursor:pointer}.segmented button+button{border-left:1px solid var(--border)}.segmented button.active{color:var(--accent);background:#132b36}.viewer-wrap{position:relative;flex:1;min-height:480px}.viewer-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.progress-overlay{position:absolute;top:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--border);border-radius:999px;background:#0d1118eb;color:var(--text);font-size:13px;white-space:nowrap}.model-hint{padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);background:#0d1118eb;color:var(--muted);font-size:12px;white-space:nowrap}.preview-footer{display:flex;align-items:center;gap:10px;padding:10px 14px;border-top:1px solid var(--border);background:var(--panel-2);font-size:12px;color:var(--muted)}.preview-footer img{width:44px;height:44px;object-fit:cover;border-radius:6px;border:1px solid var(--border)}.image-view{flex:1;min-height:480px;display:grid;place-items:center;padding:18px;background:var(--bg)}.image-view img{max-width:100%;max-height:68vh;border-radius:var(--radius);border:1px solid var(--border);box-shadow:0 18px 50px #00000073}.error-state{flex:1;min-height:480px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--danger);padding:24px;text-align:center}.error-state p{margin:0;font-size:13px;max-width:520px;word-break:break-all}.user-center-shell{width:100%;max-width:1180px;margin:0 auto;padding:20px 18px 40px;min-height:100vh}.user-center-head{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}.user-center-title{display:flex;align-items:center;gap:14px}.user-center-title h1{margin:3px 0 0;font-size:22px}.user-center-profile{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.user-center-avatar{width:40px;height:40px;font-size:15px}.user-center-profile-main{display:flex;flex-direction:column;gap:3px;min-width:0}.user-center-profile-main strong{overflow:hidden;font-size:14px;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.user-center-profile-main span{overflow:hidden;font-size:12px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.user-center-stats{display:flex;align-items:center;gap:8px;margin-left:auto;flex-wrap:wrap}.user-center-stats span{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px;border:1px solid var(--border);border-radius:999px;background:var(--panel-2);color:var(--muted);font-size:12px;white-space:nowrap}.user-center-stats svg{color:var(--accent)}.user-center-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.user-center-tabs{display:flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.user-center-tabs button{height:30px;display:inline-flex;align-items:center;gap:6px;padding:0 12px;border:none;border-radius:6px;background:transparent;color:var(--muted);font:inherit;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.user-center-tabs button span{min-width:20px;padding:1px 6px;border-radius:999px;background:var(--panel-2);color:var(--faint);font-size:10px}.user-center-tabs button.active{background:#132b36;color:var(--accent)}.user-center-tabs button.active span{color:var(--accent);background:#22d3ee24}.user-asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.user-asset-card{position:relative;min-width:0;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--text);font:inherit;text-align:left;cursor:pointer;overflow:hidden;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.user-asset-card:hover{border-color:#22d3ee8c;box-shadow:0 10px 28px #0000004d;transform:translateY(-2px)}.user-asset-media{position:relative;aspect-ratio:4 / 3;background:var(--panel-2)}.user-asset-media img{display:block;width:100%;height:100%;object-fit:cover}.user-asset-model-badge,.user-asset-ready-badge{position:absolute;top:9px;right:9px;display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border:1px solid rgba(163,230,53,.4);border-radius:999px;background:#0a0d13e0;color:var(--accent-2);font-size:10px;font-weight:700}.user-asset-ready-badge{border-color:#22d3ee66;color:var(--accent)}.user-asset-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--faint);font-size:12px}.user-asset-body{display:flex;flex-direction:column;gap:8px;min-height:82px;padding:12px 12px 10px}.user-asset-prompt{margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:36px;font-size:13px;line-height:1.45;color:#c8d5e2}.user-asset-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;margin-top:auto;font-size:10px;color:var(--faint)}.user-asset-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-asset-open{display:flex;align-items:center;justify-content:flex-end;gap:4px;padding:8px 12px;border-top:1px solid var(--border);color:var(--accent);font-size:11px;font-weight:600}.user-asset-card:hover .user-asset-open{background:#22d3ee0f}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@media (max-width: 980px){.layout{grid-template-columns:1fr}.recharge-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-settings-grid,.channel-picker-grid{grid-template-columns:1fr}.log-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-inline{grid-template-columns:1fr}.model-admin-row{grid-template-columns:repeat(2,minmax(0,1fr)) 30px}.model-versions-field{grid-column:span 2}.api-key-row{grid-template-columns:minmax(0,1fr) 110px 30px}.api-key-label-field{grid-column:1 / -1}.admin-task-detail-grid,.option-grid{grid-template-columns:1fr}.option-field:last-child{grid-column:auto}.sidebar-panel{position:static;max-height:none}.preview-panel{min-height:540px}}@media (max-width: 640px){.app-shell{padding:12px}.modal-backdrop{padding:10px}.recharge-modal{max-height:calc(100vh - 20px)}.recharge-presets{grid-template-columns:repeat(2,minmax(0,1fr))}.recharge-filter-bar{grid-template-columns:1fr}.recharge-history-item{flex-direction:column;align-items:flex-start}.topbar{height:auto;flex-wrap:wrap;padding-bottom:12px}.log-filter-bar{grid-template-columns:1fr}.log-filter-actions{align-items:stretch}.model-admin-row{grid-template-columns:1fr 30px}.model-versions-field{grid-column:1 / -1}.api-key-row{grid-template-columns:minmax(0,1fr) 30px}.api-key-weight-field,.api-key-label-field{grid-column:1 / -1}.multi-view-grid,.admin-task-ref-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-title h2{max-width:100%}.preview-header{flex-direction:column;align-items:flex-start}.viewer-wrap,.image-view,.error-state{min-height:380px}.api-error{max-width:40vw}}
