*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;background:#0f0f1a;color:#e8e8f0;min-height:100vh}.login-page{display:flex;align-items:center;justify-content:center}.login-card{background:#1a1a2e;border:1px solid #2a2a40;border-radius:8px;padding:40px;width:100%;max-width:400px}.login-logo{display:flex;align-items:center;gap:8px;margin-bottom:32px}.login-logo .logo-icon{font-size:24px;color:#6c63ff}.login-logo .logo-text{font-size:20px;font-weight:600}.login-logo .logo-badge{background:#6c63ff;color:#fff;font-size:11px;padding:2px 8px;border-radius:20px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;background:#1a1a2e;border-bottom:1px solid #2a2a40}.topbar .topbar-brand{display:flex;align-items:center;gap:8px}.topbar .topbar-brand .logo-icon{font-size:20px;color:#6c63ff}.topbar .topbar-brand .logo-text{font-size:17px;font-weight:600}.topbar .topbar-brand .logo-badge{background:#6c63ff;color:#fff;font-size:11px;padding:2px 8px;border-radius:20px}.container{margin:0 auto;padding:32px 24px}.stats-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:16px;margin-bottom:28px}.stat-card{background:#1a1a2e;border:1px solid #2a2a40;border-radius:8px;padding:20px 24px;border-left:4px solid #6c63ff}.stat-card.stat-green{border-left-color:#2ecc71}.stat-card.stat-orange{border-left-color:#f39c12}.stat-card.stat-red{border-left-color:#e74c3c}.stat-card .stat-value{font-size:32px;font-weight:700;line-height:1}.stat-card .stat-label{color:#889;font-size:13px;margin-top:4px}.settings-bar{display:flex;align-items:center;gap:12px;background:#1a1a2e;border:1px solid #2a2a40;border-radius:8px;padding:12px 16px;margin-bottom:20px;flex-wrap:wrap}.settings-label{font-size:13px;color:#889;white-space:nowrap}.settings-control{display:flex;align-items:center;gap:8px}.settings-input{background:#0f0f1a;border:1px solid #2a2a40;border-radius:4px;color:#e8e8f0;padding:5px 10px;font-size:14px;width:90px;text-align:right}.settings-input:focus{outline:none;border-color:#6c63ff}.settings-unit{font-size:13px;color:#889}.settings-hint{font-size:11px;color:#556;margin-left:4px}.toolbar{margin-bottom:16px}.search-input{background:#1a1a2e;border:1px solid #2a2a40;border-radius:4px;color:#e8e8f0;padding:8px 14px;width:300px;font-size:14px}.search-input::placeholder{color:#889}.search-input:focus{outline:none;border-color:#6c63ff}.table-wrapper{background:#1a1a2e;border:1px solid #2a2a40;border-radius:8px;overflow-x:auto}.users-table{width:100%;border-collapse:collapse}.users-table th{text-align:left;padding:12px 16px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#889;border-bottom:1px solid #2a2a40}.users-table td{padding:12px 16px;border-bottom:1px solid #2a2a40}.users-table td:last-child{border-bottom:none}.users-table tr:last-child td{border-bottom:none}.users-table tr:hover td{background:rgba(255,255,255,.02)}.users-table .td-email{font-weight:500}.users-table .td-empty{text-align:center;color:#889;padding:40px}.users-table .td-actions{display:flex;gap:6px}.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:500}.badge-green{background:rgba(46,204,113,.15);color:#2ecc71}.badge-orange{background:rgba(243,156,18,.15);color:#f39c12}.badge-red{background:rgba(231,76,60,.15);color:#e74c3c}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:4px;border:none;font-size:14px;font-weight:500;cursor:pointer;text-decoration:none;transition:opacity .15s}.btn:hover{opacity:.85}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:#6c63ff;color:#fff}.btn-outline{background:rgba(0,0,0,0);border:1px solid #2a2a40;color:#e8e8f0}.btn-green{background:rgba(46,204,113,.15);color:#2ecc71}.btn-orange{background:rgba(243,156,18,.15);color:#f39c12}.btn-red{background:rgba(231,76,60,.15);color:#e74c3c}.btn-delete{background:rgba(255,255,255,.04);color:#889;border:1px solid transparent;font-size:13px;padding:4px 8px}.btn-delete:hover{background:rgba(231,76,60,.15);color:#e74c3c;border-color:rgba(231,76,60,.3)}.btn-block{width:100%;justify-content:center}.btn-sm{padding:5px 10px;font-size:12px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:13px;color:#889;margin-bottom:6px}.form-group input{width:100%;background:#0f0f1a;border:1px solid #2a2a40;border-radius:4px;color:#e8e8f0;padding:10px 14px;font-size:14px}.form-group input::placeholder{color:#889}.form-group input:focus{outline:none;border-color:#6c63ff}.alert{padding:10px 14px;border-radius:4px;margin-bottom:20px;font-size:13px}.alert-error{background:rgba(231,76,60,.15);color:#e74c3c;border:1px solid rgba(231,76,60,.3)}.toast{position:fixed;bottom:24px;right:24px;background:#1a1a2e;border:1px solid #2a2a40;border-radius:8px;padding:12px 20px;font-size:14px;opacity:0;transform:translateY(8px);transition:all .25s;pointer-events:none;z-index:999}.toast.show{opacity:1;transform:translateY(0)}.toast.toast-ok{border-left:4px solid #2ecc71}.toast.toast-err{border-left:4px solid #e74c3c}
/* ── Sidebar layout ─────────────────────────────────────────────────────── */
.app-shell{display:flex;min-height:100vh}.sidebar{width:220px;min-width:220px;background:#13132a;border-right:1px solid #2a2a40;display:flex;flex-direction:column;padding:0;position:sticky;top:0;height:100vh}.sidebar-logo{display:flex;align-items:center;gap:8px;padding:20px 18px 16px;border-bottom:1px solid #2a2a40}.sidebar-logo .logo-icon{font-size:18px;color:#6c63ff}.sidebar-logo .logo-text{font-size:16px;font-weight:700}.sidebar-logo .logo-badge{background:#6c63ff;color:#fff;font-size:10px;padding:2px 7px;border-radius:20px;margin-left:2px}.sidebar-nav{padding:12px 10px;flex:1}.nav-section{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#445;padding:12px 8px 4px;font-weight:600}.nav-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;color:#889;text-decoration:none;font-size:14px;transition:background .12s,color .12s;cursor:pointer}.nav-item:hover{background:rgba(108,99,255,.1);color:#c8c0ff}.nav-item.active{background:rgba(108,99,255,.18);color:#a09aff;font-weight:500}.nav-icon{font-size:15px;width:20px;text-align:center;flex-shrink:0}.sidebar-footer{padding:10px;border-top:1px solid #2a2a40}.content-area{flex:1;overflow-y:auto}.container{margin:0 auto;padding:32px 28px}

/* ── Page header ────────────────────────────────────────────────────────── */
.page-header{margin-bottom:28px}.page-title{font-size:22px;font-weight:700;margin-bottom:4px}.page-sub{color:#889;font-size:13px}

/* ── Section title ──────────────────────────────────────────────────────── */
.section-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#889;margin-bottom:14px;display:flex;align-items:center;gap:8px}.section-count{background:#2a2a40;color:#c8c0ff;font-size:12px;padding:1px 7px;border-radius:20px;font-weight:600}.badge-built-in{background:rgba(108,99,255,.15);color:#a09aff;font-size:11px;padding:2px 8px;border-radius:20px;font-weight:500}

/* ── Asset grid ─────────────────────────────────────────────────────────── */
.asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:32px}.asset-card{background:#1a1a2e;border:1px solid #2a2a40;border-radius:8px;padding:18px}.asset-card-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.asset-name{font-size:15px;font-weight:600;flex:1}.asset-desc{font-size:13px;color:#889;margin-bottom:8px;min-height:18px}.asset-meta{display:flex;align-items:center;gap:12px;font-size:12px;color:#556;margin-bottom:8px}.asset-hash{font-family:monospace;font-size:11px;color:#445}.asset-url{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:10px}.url-link{color:#a09aff;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.url-link:hover{text-decoration:underline}.url-missing{color:#556;font-style:italic}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.status-ok{background:#2ecc71}.status-warn{background:#f39c12}.badge-version{background:rgba(108,99,255,.15);color:#a09aff;font-size:11px;padding:2px 8px;border-radius:20px}

/* ── Empty state ────────────────────────────────────────────────────────── */
.empty-state{color:#556;font-style:italic;padding:20px 0;margin-bottom:24px}

/* ── Add asset panel ────────────────────────────────────────────────────── */
.add-asset-panel{background:#1a1a2e;border:1px solid #2a2a40;border-radius:8px;padding:22px;max-width:640px}.add-asset-title{font-size:15px;font-weight:600;margin-bottom:16px;color:#c8c0ff}.scp-hint{background:#0f0f1a;border:1px solid #2a2a40;border-radius:6px;padding:12px 14px;margin-bottom:18px;font-size:13px;line-height:1.7;color:#889}.scp-hint code{font-family:monospace;font-size:12px;color:#a09aff;word-break:break-all}.add-asset-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}

/* ── Settings panel ─────────────────────────────────────────────────────── */
.settings-panel{background:#1a1a2e;border:1px solid #2a2a40;border-radius:8px;overflow:hidden;max-width:760px}.settings-section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#556;padding:12px 20px;background:#13132a;border-bottom:1px solid #2a2a40}.settings-row{display:flex;align-items:flex-start;gap:24px;padding:18px 20px;border-bottom:1px solid #2a2a40}.settings-row:last-child{border-bottom:none}.settings-row-label{flex:1}.settings-row-name{font-size:14px;font-weight:500;margin-bottom:4px}.settings-row-desc{font-size:12px;color:#556;line-height:1.6}.settings-row-control{display:flex;align-items:center;gap:10px;flex-shrink:0}.settings-input-lg{background:#0f0f1a;border:1px solid #2a2a40;border-radius:4px;color:#e8e8f0;padding:7px 12px;font-size:14px;width:100px;text-align:right}.settings-input-lg:focus{outline:none;border-color:#6c63ff}.settings-unit{font-size:13px;color:#889;white-space:nowrap}.settings-info-block{padding:16px 20px;border-bottom:1px solid #2a2a40;display:flex;flex-direction:column;gap:10px}.settings-info-block p{font-size:13px;color:#889;line-height:1.7}.settings-info-block strong{color:#c8c0ff;font-weight:500}

/* ── Edit modal ─────────────────────────────────────────────────────────── */
#edit-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center}#edit-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6)}#edit-box{position:relative;background:#1a1a2e;border:1px solid #2a2a40;border-radius:10px;padding:28px 32px;width:100%;max-width:500px;box-shadow:0 20px 60px rgba(0,0,0,.5)}#edit-title{font-size:16px;font-weight:700;color:#e8e8f0;margin-bottom:4px}

/*# sourceMappingURL=main.css.map */
.tippy-box[data-theme~=dark-ls]{background:#1a1a2e;border:1px solid #2a2a40;color:#e8e8f0;font-size:12px;border-radius:6px}.tippy-box[data-theme~=dark-ls][data-placement^=top]>.tippy-arrow::before{border-top-color:#2a2a40}.tippy-box[data-theme~=dark-ls][data-placement^=bottom]>.tippy-arrow::before{border-bottom-color:#2a2a40}.tippy-box[data-theme~=dark-ls][data-placement^=left]>.tippy-arrow::before{border-left-color:#2a2a40}.tippy-box[data-theme~=dark-ls][data-placement^=right]>.tippy-arrow::before{border-right-color:#2a2a40}#confirm-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center}#confirm-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6)}#confirm-box{position:relative;background:#1a1a2e;border:1px solid #2a2a40;border-radius:10px;padding:28px 32px;width:100%;max-width:380px;box-shadow:0 20px 60px rgba(0,0,0,.5)}#confirm-title{font-size:16px;font-weight:700;color:#e8e8f0;margin-bottom:10px}#confirm-message{font-size:14px;color:#889;line-height:1.6;margin-bottom:24px}#confirm-actions{display:flex;gap:10px;justify-content:flex-end}
.asset-card-active{border-color:#16a34a;box-shadow:0 0 0 1px #16a34a33}.modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6)}.modal-box{position:relative;z-index:1;background:#1a1a2e;border:1px solid #2a2a40;border-radius:10px;padding:24px;width:480px;max-width:90vw}.modal-title{font-size:15px;font-weight:600;color:#e8e8f0;margin-bottom:4px}
.legal-panel{max-width:1180px}.legal-panel .settings-row{gap:32px}.legal-panel .settings-row-label{flex:0 0 40%;max-width:420px}.legal-alert-ok{margin-bottom:18px;background:rgba(46,204,113,.12);color:#2ecc71;border:1px solid rgba(46,204,113,.22)}.legal-row-control{flex:1 1 520px;align-items:stretch;min-width:360px}.settings-row-stack{display:flex;flex-direction:column;gap:10px;width:100%;max-width:none}.settings-row-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}.settings-doc-tag{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;border:1px solid #2a2a40;background:#13132a;color:#c8c0ff;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.settings-doc-tag--cgu{color:#f4c27a;border-color:rgba(244,194,122,.35);background:rgba(244,194,122,.08)}.settings-doc-tag--mentions{color:#7ed6ff;border-color:rgba(126,214,255,.35);background:rgba(126,214,255,.08)}.settings-doc-tag--privacy{color:#8fe6b5;border-color:rgba(143,230,181,.35);background:rgba(143,230,181,.08)}.settings-textarea{width:100%;min-height:116px;resize:vertical;background:#0f0f1a;border:1px solid #2a2a40;border-radius:6px;color:#e8e8f0;padding:12px 14px;font-size:14px;line-height:1.55}.settings-textarea:focus,.settings-input-full:focus{outline:none;border-color:#6c63ff}.settings-input-full{width:100%;min-height:44px;background:#0f0f1a;border:1px solid #2a2a40;border-radius:6px;color:#e8e8f0;padding:11px 14px;font-size:14px}.settings-actions{display:flex;justify-content:flex-end;padding:18px 20px;border-top:1px solid #2a2a40}@media (max-width: 980px){.legal-panel .settings-row{flex-direction:column;gap:14px}.legal-panel .settings-row-label{flex:none;max-width:none}.legal-row-control{min-width:0}}
.theme-toggle{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #2a2a40;border-radius:8px;background:rgba(255,255,255,.03);color:#e8e8f0;cursor:pointer;transition:background .15s,border-color .15s,color .15s;margin-bottom:8px}.theme-toggle:hover{background:rgba(108,99,255,.1);border-color:rgba(108,99,255,.28)}.theme-toggle-icon{width:20px;text-align:center;flex-shrink:0}.theme-toggle-text{font-size:13px;font-weight:500}:root{--ls-admin-bg:#0f0f1a;--ls-admin-surface:#1a1a2e;--ls-admin-surface-alt:#13132a;--ls-admin-border:#2a2a40;--ls-admin-text:#e8e8f0;--ls-admin-muted:#888899;--ls-admin-input-bg:#0f0f1a;--ls-admin-hover:rgba(108,99,255,.1);--ls-admin-hover-strong:rgba(108,99,255,.18);--ls-admin-table-hover:rgba(255,255,255,.02);--ls-admin-overlay:rgba(0,0,0,.6)}:root[data-theme=light]{--ls-admin-bg:#f6f1ea;--ls-admin-surface:#fffdfa;--ls-admin-surface-alt:#f3ece4;--ls-admin-border:#dfd3c4;--ls-admin-text:#2d261f;--ls-admin-muted:#76695d;--ls-admin-input-bg:#fffaf4;--ls-admin-hover:rgba(108,99,255,.08);--ls-admin-hover-strong:rgba(108,99,255,.14);--ls-admin-table-hover:rgba(66,52,40,.035);--ls-admin-overlay:rgba(40,28,20,.28)}body,.login-page{background:var(--ls-admin-bg);color:var(--ls-admin-text)}.login-card,.topbar,.stat-card,.settings-bar,.search-input,.table-wrapper,.asset-card,.add-asset-panel,.settings-panel,.toast,#edit-box,#confirm-box,.modal-box{background:var(--ls-admin-surface);border-color:var(--ls-admin-border);color:var(--ls-admin-text)}.sidebar,.sidebar-logo,.sidebar-footer,.settings-section-title{background:var(--ls-admin-surface-alt);border-color:var(--ls-admin-border)}.logo-text,.page-title,.asset-name,.add-asset-title,#confirm-title,#edit-title,.modal-title,.settings-row-name,.stat-value{color:var(--ls-admin-text)}.nav-section,.page-sub,.stat-card .stat-label,.settings-label,.settings-hint,.settings-unit,.search-input::placeholder,.asset-desc,.asset-meta,.asset-hash,.url-missing,.empty-state,.settings-row-desc,.settings-info-block p,.form-group label,#confirm-message{color:var(--ls-admin-muted)}.nav-item{color:var(--ls-admin-muted)}.nav-item:hover{background:var(--ls-admin-hover)}.nav-item.active{background:var(--ls-admin-hover-strong);color:#6c63ff}.theme-toggle{background:var(--ls-admin-surface);border-color:var(--ls-admin-border);color:var(--ls-admin-text)}.theme-toggle:hover{background:var(--ls-admin-hover);border-color:rgba(108,99,255,.25)}.search-input,.settings-input,.settings-input-lg,.form-group input,.settings-input-full,.settings-textarea,#edit-box input{background:var(--ls-admin-input-bg);border-color:var(--ls-admin-border);color:var(--ls-admin-text)}.search-input::placeholder,.form-group input::placeholder,.settings-input-full::placeholder,.settings-textarea::placeholder{color:var(--ls-admin-muted)}.btn-outline{border-color:var(--ls-admin-border);color:var(--ls-admin-text)}.btn-delete{color:var(--ls-admin-muted)}.users-table th,.users-table td,.settings-row,.settings-info-block,.settings-section-title,.sidebar,.sidebar-logo,.sidebar-footer,.topbar{border-color:var(--ls-admin-border)}.users-table tr:hover td{background:var(--ls-admin-table-hover)}#confirm-backdrop,#edit-backdrop,.modal-backdrop{background:var(--ls-admin-overlay)}:root[data-theme=light] .tippy-box[data-theme~=dark-ls]{background:#fffdf8;border:1px solid var(--ls-admin-border);color:var(--ls-admin-text)}
.scp-hint{background:var(--ls-admin-input-bg);border-color:var(--ls-admin-border);color:var(--ls-admin-muted)}.scp-hint code{color:#6c63ff}
