:root{--bg:#edf1f5;--panel:#fff;--panel-strong:#e6ebf1;--ink:#161a20;--muted:#687282;--line:#c7d1dd;--table-line:#b7c3d0;--accent:#0f766e;--accent-strong:#115e59;--danger:#b42318;--danger-soft:#fee4e2;--ok:#067647;--ok-soft:#dcfae6;--field:#fff;--sidebar-bg:#fbfcfd;--table-head:#e4eaf1;--row-hover:#edf7f5;--shadow:0 18px 50px #161a2014}:root[data-theme=dark]{--bg:#111417;--panel:#181d22;--panel-strong:#222a31;--ink:#edf2f7;--muted:#9aa7b5;--line:#303943;--table-line:#3a4652;--accent:#2dd4bf;--accent-strong:#14b8a6;--danger:#fb7185;--danger-soft:#3f1d25;--ok:#4ade80;--ok-soft:#12351f;--field:#12171c;--sidebar-bg:#151a1f;--table-head:#202830;--row-hover:#173530;--shadow:0 18px 50px #0000005c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--bg);color:var(--ink);letter-spacing:0;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.login-screen{place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{background:var(--panel);border:1px solid var(--line);width:min(430px,100%);box-shadow:var(--shadow);border-radius:8px;padding:26px}.brand-row,.sidebar-head,.toolbar,.editor-head,.toolbar-actions,.editor-actions,.status-row{align-items:center;display:flex}.brand-row,.sidebar-head{gap:12px}.brand-mark{color:#fff;background:var(--accent);border-radius:8px;place-items:center;width:42px;height:42px;display:grid}.brand-mark.compact{width:36px;height:36px}h1,h2,h3,p{margin:0}h1{font-size:20px;line-height:1.2}h2{font-size:22px;line-height:1.2}h3{font-size:15px;line-height:1.25}p,span,td,th,label,button{font-size:13px}p,.sidebar-head span,.toolbar p,.editor-head p{color:var(--muted)}.login-form{gap:14px;margin-top:24px;display:grid}label{color:var(--muted);gap:7px;display:grid}input,select,textarea{border:1px solid var(--line);background:var(--field);width:100%;color:var(--ink);border-radius:6px;outline:none}input{height:40px;padding:0 11px}select{height:40px;padding:0 10px}textarea{resize:vertical;min-height:520px;padding:12px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.55}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0f766e24}.primary-action,.secondary-action,.icon-button{border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.primary-action{background:var(--accent);color:#fff;gap:9px;height:42px}.primary-action:hover{background:var(--accent-strong)}.primary-action.danger-action{background:var(--danger)}.primary-action.danger-action:hover{background:#9f1d16}:root[data-theme=dark] .primary-action.danger-action:hover{background:#e11d48}.secondary-action{background:var(--panel);border-color:var(--line);min-width:66px;height:34px;color:var(--ink);padding:0 12px}.secondary-action:hover{border-color:var(--accent);color:var(--accent)}.icon-button{width:34px;height:34px;color:var(--ink);background:var(--panel);border-color:var(--line)}.icon-button:hover{border-color:var(--accent);color:var(--accent)}.icon-button.positive{color:var(--ok)}.icon-button.danger{color:var(--danger)}.admin-shell{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:var(--sidebar-bg);padding:18px}.model-list{gap:5px;margin-top:24px;display:grid}.model-list button{text-align:left;min-height:34px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:6px;padding:0 10px}.model-list button:hover,.model-list button.active{color:var(--ink);background:var(--panel-strong);border-color:var(--line)}.workspace{background:var(--bg);min-width:0;padding:20px}.toolbar{justify-content:space-between;gap:16px;padding-bottom:14px}.toolbar-actions,.editor-actions,.status-row{gap:8px}.status-row{align-items:flex-start;min-height:28px}.status{background:var(--panel-strong);color:var(--muted);border-radius:999px;align-items:center;gap:6px;padding:4px 8px;display:inline-flex}.status.ok{color:var(--ok);background:var(--ok-soft)}.status.bad,.alert.error{color:var(--danger);background:var(--danger-soft)}.alert.error{border-radius:6px;margin-top:14px;padding:10px 12px}.filter-band,.table-filter-band{grid-template-columns:auto auto minmax(260px,1fr) auto;align-items:center;gap:10px;padding:10px 0 14px;display:grid}.table-filter-band{border-top:1px solid var(--line);grid-template-columns:auto minmax(220px,1fr) auto}.filter-title,.status-filter,.filter-inputs,.filter-actions,.row-actions{align-items:center;display:flex}.filter-title{color:var(--muted);gap:6px}.status-filter{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:4px;padding:3px}.status-filter button{min-width:92px;height:28px;color:var(--muted);background:0 0;border:0;border-radius:6px;padding:0 9px}.status-filter button.active,.status-filter button:hover{color:var(--ink);background:var(--panel-strong)}.filter-inputs{gap:6px;min-width:0}.filter-inputs input,.filter-inputs select{min-width:0;height:34px}.table-filter-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;display:grid}.table-filter-grid label{gap:5px}.table-filter-grid span{color:var(--muted);font-size:12px}.table-filter-grid select{height:34px}.filter-actions,.row-actions{gap:6px}.empty{padding:12px 0}.content-grid{grid-template-columns:minmax(0,1.5fr) minmax(360px,.8fr);gap:18px;padding-top:14px;display:grid}.table-panel,.editor-panel{min-width:0}.table-wrap{border:1px solid var(--table-line);background:var(--panel);border-radius:8px;max-height:calc(100vh - 260px);overflow:auto}table{border-collapse:collapse;width:100%;min-width:720px}th,td{border-bottom:1px solid var(--table-line);text-align:left;text-overflow:ellipsis;white-space:nowrap;max-width:220px;padding:10px 11px;overflow:hidden}th{z-index:1;background:var(--table-head);color:var(--muted);font-weight:600;position:sticky;top:0}tbody tr{cursor:pointer}tbody tr:hover,tbody tr.selected{background:var(--row-hover)}.media-cell{width:64px;max-width:72px}.table-logo{object-fit:contain;border:1px solid var(--line);background:var(--field);border-radius:6px;width:34px;height:34px;display:block}.editor-panel{border:1px solid var(--table-line);background:var(--panel);box-shadow:var(--shadow);border-radius:8px;padding:12px}.editor-head{justify-content:space-between;gap:12px;padding-bottom:10px}.editor-form{gap:11px;max-height:calc(100vh - 220px);padding-right:2px;display:grid;overflow:auto}.editor-field{gap:6px;display:grid}.editor-field span{color:var(--muted);font-size:12px}.upload-editor{gap:8px;display:grid}.upload-preview,.upload-empty{border:1px solid var(--line);background:var(--field);border-radius:8px;width:72px;height:72px}.upload-preview{object-fit:contain}.upload-empty{color:var(--muted);place-items:center;display:grid}.upload-action{border:1px solid var(--line);width:fit-content;min-height:34px;color:var(--ink);background:var(--panel);cursor:pointer;border-radius:6px;align-items:center;gap:7px;padding:0 11px;display:inline-flex}.upload-action:hover{border-color:var(--accent);color:var(--accent)}.upload-action input{display:none}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c11178a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-modal{border:1px solid var(--line);background:var(--panel);width:min(420px,100%);box-shadow:var(--shadow);border-radius:8px;gap:16px;padding:18px;display:grid}.confirm-icon{width:42px;height:42px;color:var(--danger);background:var(--danger-soft);border-radius:8px;place-items:center;display:grid}.confirm-modal h3{margin-bottom:7px;font-size:17px}.confirm-modal p{line-height:1.45}.confirm-modal strong{color:var(--ink)}.confirm-actions{justify-content:flex-end;gap:8px;display:flex}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:980px){.admin-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.model-list{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.content-grid{grid-template-columns:1fr}.filter-band,.table-filter-band{grid-template-columns:1fr;align-items:stretch}.status-filter,.filter-inputs,.filter-actions{flex-wrap:wrap}textarea{min-height:360px}}
