:root{--bg: #0b0f17;--panel: #151d2a;--panel-2: #1e293b;--text: #f1f5f9;--muted: #94a3b8;--accent: #3b82f6;--accent-2: #22c55e;--danger: #ef4444;--border: #263346;--radius: 12px;font-family:Segoe UI,system-ui,sans-serif}:root[data-theme=light]{--bg: #f8fafc;--panel: #ffffff;--panel-2: #f1f5f9;--text: #0f172a;--muted: #64748b;--accent: #1d4ed8;--accent-2: #166534;--danger: #b91c1c;--border: #cbd5e1}:root[data-theme=dark],:root.dark{--bg: #0b0f17;--panel: #151d2a;--panel-2: #1e293b;--text: #f1f5f9;--muted: #94a3b8;--accent: #3b82f6;--accent-2: #22c55e;--danger: #ef4444;--border: #263346}*{box-sizing:border-box;transition:background-color .2s ease,border-color .2s ease,color .15s ease}body{margin:0;background:radial-gradient(1200px 600px at 10% -10%,#1e3a5f 0%,transparent 50%),var(--bg);color:var(--text);min-height:100vh}a{color:inherit;text-decoration:none}*{scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.28) transparent}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#94a3b847;border-radius:9999px;transition:background-color .2s ease}::-webkit-scrollbar-thumb:hover{background:#64748b8c}::-webkit-scrollbar-button{display:none;width:0;height:0}::-webkit-scrollbar-corner{background:transparent}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.28) transparent}.custom-scrollbar::-webkit-scrollbar{width:5px;height:5px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#94a3b847;border-radius:9999px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#64748b8c}:root[data-theme=light] body{background:var(--bg)}:root[data-theme=light] .sidebar{background:#fff}:root[data-theme=light] .card{background:#fff;box-shadow:0 8px 22px #0f172a0f}:root[data-theme=light] input,:root[data-theme=light] select,:root[data-theme=light] textarea{background:#fff}:root[data-theme=light] .readonly-field,:root[data-theme=light] .chapter,:root[data-theme=light] .media-card,:root[data-theme=light] .stock-image-card,:root[data-theme=light] .pipeline-prompt-option,:root[data-theme=light] .chapter-editor-wrap{background:#fff}:root[data-theme=light] .guide-version{background:#eff6ff;border-color:#93c5fd}:root[data-theme=light] .guide-version strong,:root[data-theme=light] .guide-section h3{color:#1e40af}:root[data-theme=light] .guide-note{background:#fffbeb;border-left-color:#b45309;color:#92400e}:root[data-theme=light] .pipeline-prompt-option code,:root[data-theme=light] .chapter-rich-editor a{color:#1d4ed8}:root[data-theme=light] .pipeline-prompt-option em{color:#92400e}:root[data-theme=light] .badge{background:#fff;font-weight:700}:root[data-theme=light] .badge.ok{color:#166534;border-color:#86efac}:root[data-theme=light] .badge.warn{color:#92400e;border-color:#fcd34d}:root[data-theme=light] .badge.err{color:#b91c1c;border-color:#fca5a5}:root[data-theme=light] .alert{background:#fef2f2;border-color:#fca5a5;color:#991b1b}:root[data-theme=light] .okbox,:root[data-theme=light] .runtime-ok{background:#f0fdf4;border-color:#86efac;color:#166534}:root[data-theme=light] .runtime-warning{background:#fffbeb;border-color:#fcd34d;color:#92400e}:root[data-theme=light] .btn.primary,:root[data-theme=light] .btn.primary.active-progress{background:#1d4ed8;border-color:#1d4ed8;color:#fff}:root[data-theme=light] .btn.success,:root[data-theme=light] .btn.success.active-progress{background:#15803d;border-color:#15803d;color:#fff}:root[data-theme=light] .btn.warning,:root[data-theme=light] .btn.warning.active-progress,:root[data-theme=light] .pipeline-step.warning{background:#a16207;border-color:#a16207;color:#fff}:root[data-theme=light] .btn.active-progress{color:#fff}:root[data-theme=light] .btn:disabled{color:#94a3b8;background:#f8fafc;border-color:#e2e8f0;opacity:.65;cursor:not-allowed}:root[data-theme=light] .btn.primary:disabled,:root[data-theme=light] .btn.success:disabled,:root[data-theme=light] .btn.warning:disabled,:root[data-theme=light] .btn.danger:disabled{color:#fff;opacity:.58}.layout{display:flex;min-height:100vh;padding-left:270px;background:var(--bg);color:var(--text);transition:padding-left .2s cubic-bezier(.4,0,.2,1)}.layout.sidebar-collapsed{padding-left:68px}.sidebar{background:var(--panel);border-right:1px solid var(--border);padding:1rem .75rem;display:flex;flex-direction:column;gap:1.15rem;position:fixed;top:0;left:0;bottom:0;width:270px;height:100vh;transition:width .2s cubic-bezier(.4,0,.2,1),padding .2s ease;z-index:60;box-sizing:border-box;overflow-y:auto;overflow-x:hidden}.main{flex:1;min-width:0;box-sizing:border-box}:root[data-theme=light] .sidebar{background:#fff;border-right:1px solid #e2e8f0}:root[data-theme=dark] .sidebar,:root.dark .sidebar{background:#0b0f17;border-right:1px solid #1e293b}.sidebar-brand-wrapper{display:flex;flex-direction:column;gap:.65rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}:root[data-theme=light] .sidebar-brand-wrapper{border-bottom:1px solid #f1f5f9}.sidebar-brand-header{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:.5rem;width:100%;box-sizing:border-box}.sidebar-logo-box{width:32px;height:32px;border-radius:8px;background:var(--panel-2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--accent);box-shadow:0 1px 2px #0000000d}:root[data-theme=light] .sidebar-logo-box{background:#f1f5f9;border-color:#e2e8f0;color:#2563eb}.sidebar-brand-info{display:flex;flex-direction:column;flex:1;min-width:0;overflow:hidden}.sidebar-brand-title{font-size:.95rem;font-weight:800;letter-spacing:-.02em;color:var(--text);line-height:1.15}.sidebar-brand-sub{font-size:.7rem;font-weight:500;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.sidebar-header-actions{display:flex;align-items:center;gap:3px;flex-shrink:0}.sidebar-action-btn,.sidebar a.sidebar-action-btn,.sidebar.collapsed .sidebar-action-btn,.sidebar.collapsed a.sidebar-action-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:28px!important;min-width:28px!important;max-width:28px!important;height:28px!important;padding:0!important;margin:0!important;border-radius:6px!important;border:1px solid transparent!important;background:transparent!important;color:var(--muted)!important;cursor:pointer!important;transition:all .15s ease!important;flex-shrink:0!important;text-decoration:none!important}.sidebar-action-btn svg,.sidebar a.sidebar-action-btn svg{width:14px!important;height:14px!important;opacity:.75!important}.sidebar-action-btn:hover,.sidebar a.sidebar-action-btn:hover{background:var(--panel-2)!important;border-color:var(--border)!important;color:var(--text)!important}.sidebar-action-btn:hover svg,.sidebar a.sidebar-action-btn:hover svg{opacity:1!important}.sidebar a.sidebar-action-btn.active{background:var(--panel-2)!important;border-color:var(--border)!important;color:var(--accent)!important}:root[data-theme=light] .sidebar-action-btn:hover,:root[data-theme=light] .sidebar a.sidebar-action-btn:hover{background:#f1f5f9!important;border-color:#cbd5e1!important;color:#0f172a!important}:root[data-theme=light] .sidebar a.sidebar-action-btn.active{background:#eff6ff!important;border-color:#bfdbfe!important;color:#2563eb!important}.sidebar-version-card,.sidebar a.sidebar-version-card,.sidebar.collapsed .sidebar-version-card,.sidebar.collapsed a.sidebar-version-card{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;height:auto!important;padding:.35rem .55rem!important;margin:.2rem 0 0!important;border-radius:8px!important;background:var(--panel-2)!important;border:1px solid var(--border)!important;text-decoration:none!important;transition:all .15s ease!important;box-sizing:border-box!important}.sidebar-version-card:hover,.sidebar a.sidebar-version-card:hover{border-color:var(--accent)!important;background:#2563eb14!important}:root[data-theme=light] .sidebar-version-card,:root[data-theme=light] .sidebar a.sidebar-version-card{background:#f8fafc!important;border-color:#e2e8f0!important}:root[data-theme=light] .sidebar-version-card:hover,:root[data-theme=light] .sidebar a.sidebar-version-card:hover{background:#eff6ff!important;border-color:#bfdbfe!important}.sidebar.collapsed .sidebar-brand-header{flex-direction:column!important;align-items:center!important;gap:.5rem!important}.sidebar.collapsed .sidebar-version-card,.sidebar.collapsed a.sidebar-version-card{justify-content:center!important;padding:.35rem .2rem!important;width:48px!important;margin:0 auto!important}:root:not([data-theme=light]) .sidebar .system-version-box,:root[data-theme=dark] .sidebar .system-version-box{background:#ffffff0d!important;border-color:#ffffff1a!important}:root:not([data-theme=light]) .sidebar .system-version-box:hover,:root[data-theme=dark] .sidebar .system-version-box:hover{background:#ffffff14!important;border-color:#ffffff29!important}:root:not([data-theme=light]) .sidebar .aside-user-footer,:root[data-theme=dark] .sidebar .aside-user-footer{border-top-color:#ffffff14!important}:root:not([data-theme=light]) .sidebar .aside-user-footer>div,:root[data-theme=dark] .sidebar .aside-user-footer>div{background:#ffffff0a!important;border-color:#ffffff14!important}:root:not([data-theme=light]) .sidebar .aside-user-footer h4,:root:not([data-theme=light]) .sidebar .aside-user-footer span{color:var(--text)!important}:root:not([data-theme=light]) .sidebar .aside-user-footer p{color:var(--muted)!important}.sidebar-version-label{font-size:9px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:4px}.sidebar-version-dot{width:6px;height:6px;border-radius:9999px;background:#10b981;display:inline-block;animation:pulseDot 2s cubic-bezier(.4,0,.6,1) infinite;flex-shrink:0}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.9)}}.sidebar-version-badge{font-size:9.5px;font-weight:900;letter-spacing:-.025em;color:#2563eb;background:#eff6ff;padding:2px 6px;border-radius:6px;border:1px solid rgba(219,234,254,.8);display:inline-flex;align-items:center;justify-content:center;min-width:34px;line-height:1.2;-webkit-user-select:none;user-select:none;box-shadow:0 1px 2px #0000000d}:root[data-theme=dark] .sidebar-version-badge{background:#2563eb26;color:#60a5fa;border-color:#60a5fa4d}.sidebar.collapsed{width:68px!important;padding:1rem .35rem!important;gap:1rem!important;align-items:center!important;overflow-x:hidden!important}.sidebar.collapsed .sidebar-brand-wrapper{padding-bottom:.65rem;align-items:center;width:100%}.sidebar.collapsed nav{width:100%!important;padding:0!important;overflow-x:hidden!important}.sidebar.collapsed .nav-grouped{width:100%!important;gap:.5rem!important}.sidebar.collapsed .nav-group{width:100%!important;align-items:center!important;gap:.35rem!important}.sidebar.collapsed .nav-group-title{display:none!important}.sidebar.collapsed a{display:flex!important;justify-content:center!important;align-items:center!important;width:44px!important;height:40px!important;padding:0!important;margin:0 auto!important;gap:0!important;border-radius:8px!important}.sidebar.collapsed a span{display:none!important}.sidebar.collapsed a svg{margin:0!important;flex-shrink:0!important;width:18px!important;height:18px!important}.sidebar.collapsed .sidebar-foot{width:100%!important;align-items:center!important}.sidebar.collapsed .theme-toggle{width:44px!important;height:38px!important;padding:0!important;margin:0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:1rem!important;text-align:center!important}.sidebar.collapsed .theme-toggle span{display:none!important}.quick-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.quick-menu-modal{position:fixed;top:60px;left:245px;width:320px;max-width:90vw;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 10px 25px #0003;z-index:101;padding:1rem;display:flex;flex-direction:column;gap:.75rem;animation:fadeInDown .15s ease}:root[data-theme=light] .quick-menu-modal{background:#fff;border-color:#e2e8f0}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.brand{display:flex;flex-direction:column;gap:.15rem}.brand strong{font-size:1.4rem;letter-spacing:.08em;color:var(--accent)}.brand span{color:var(--muted);font-size:.85rem}.sidebar nav{display:flex;flex-direction:column;gap:.35rem;overflow-y:auto;overflow-x:hidden;padding-right:3px;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.25) transparent}.sidebar nav::-webkit-scrollbar{width:4px}.sidebar nav::-webkit-scrollbar-track{background:transparent}.sidebar nav::-webkit-scrollbar-thumb{background:#94a3b840;border-radius:9999px;transition:background-color .2s ease}.sidebar nav::-webkit-scrollbar-thumb:hover{background:#64748b8c}.sidebar nav::-webkit-scrollbar-button{display:none;width:0;height:0}.nav-grouped{display:flex;flex-direction:column;gap:.75rem}.nav-group{display:flex;flex-direction:column;gap:.2rem}.nav-group-title{font-size:.68rem;text-transform:uppercase;font-weight:700;letter-spacing:.06em;color:var(--muted);padding:.35rem .6rem .15rem;opacity:.85}.sidebar a{display:flex;align-items:center;gap:.6rem;padding:.5rem .7rem;border-radius:8px;color:var(--muted);font-size:.86rem;font-weight:500;transition:all .15s ease}.sidebar a svg{flex-shrink:0;opacity:.8}.sidebar a:hover svg,.sidebar a.active svg{opacity:1}.sidebar a.active,.sidebar a:hover{background:var(--panel-2);color:var(--text)}:root[data-theme=light] .sidebar a.active{background:#eff6ff;color:#1d4ed8}.sidebar nav .nav-submenu{margin-left:.75rem;padding-left:.7rem;font-size:.86rem;border-left:1px solid var(--border)}.sidebar-foot{margin-top:auto;color:var(--muted);font-size:.75rem;display:flex;flex-direction:column;gap:.7rem}.theme-toggle{width:100%;border:1px solid var(--border);background:var(--panel-2);color:var(--text);padding:.5rem;border-radius:8px;cursor:pointer;font:inherit;font-weight:600;text-align:left}.theme-toggle:hover{border-color:var(--accent)}.page-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1.25rem}.page-heading .sub{margin:0}.website-table-card{width:100%}.website-modal{width:min(760px,100%)}.website-modal fieldset{display:grid;gap:.65rem;border:1px solid var(--border);border-radius:8px;padding:.85rem}.website-modal legend{color:var(--muted);padding:0 .35rem}.main{padding:0;min-width:0;width:100%;display:flex;flex-direction:column;overflow-x:hidden;background:var(--bg);color:var(--text)}.page-container{width:100%;min-width:100%;display:flex;flex-direction:column;min-height:100%;background:var(--bg);color:var(--text)}.page-header-bar{background:var(--panel);border-bottom:1px solid var(--border);padding:.85rem 2rem;width:100%;box-sizing:border-box;box-shadow:0 1px 3px #0000001f;position:sticky;top:0;z-index:50;display:flex;flex-direction:column;gap:.5rem;transition:background-color .2s ease,border-color .2s ease}:root[data-theme=light] .page-header-bar{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0f172a0a}:root[data-theme=dark] .page-header-bar,:root.dark .page-header-bar{background:#0f172a;border-bottom:1px solid #1e293b;box-shadow:0 2px 8px #00000040}.page-header-main{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;width:100%}.page-header-title-area{display:flex;flex-direction:column;gap:.2rem;min-width:0}.page-header-breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--muted);margin-bottom:.1rem}.page-header-breadcrumb a{color:var(--muted);text-decoration:none}.page-header-breadcrumb a:hover{color:var(--accent)}.page-header-heading{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.page-header-title{margin:0;font-size:1.35rem;font-weight:800;color:var(--text);letter-spacing:-.02em;display:flex;align-items:center;gap:.6rem}:root[data-theme=light] .page-header-title{color:#0f172a}.page-header-subtitle{margin:0;font-size:.82rem;color:var(--muted);line-height:1.4}:root[data-theme=light] .page-header-subtitle{color:#64748b}.page-header-badge{display:flex;align-items:center;gap:.5rem}.page-header-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.page-header-actions .btn{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .9rem;font-size:.82rem;font-weight:600;border-radius:8px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);box-shadow:0 1px 2px #0000000a;cursor:pointer;transition:all .15s ease;text-decoration:none}.page-header-actions .btn:hover{background:#243044;border-color:var(--accent);color:#fff}:root[data-theme=light] .page-header-actions .btn{border:1px solid #cbd5e1;background:#f8fafc;color:#1e293b}:root[data-theme=light] .page-header-actions .btn:hover{background:#f1f5f9;border-color:#94a3b8;color:#0f172a}.page-header-actions .btn.primary{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;box-shadow:0 1px 3px #2563eb4d}.page-header-actions .btn.primary:hover{background:#1d4ed8!important;border-color:#1d4ed8!important}.page-header-actions .btn.success{background:#16a34a!important;border-color:#16a34a!important;color:#fff!important}.page-header-actions .btn.success:hover{background:#15803d!important;border-color:#15803d!important}.page-header-actions .btn.danger{background:#fff1f2!important;border-color:#fecdd3!important;color:#e11d48!important}.page-header-actions .btn.danger:hover{background:#ffe4e6!important;border-color:#fda4af!important}.page-header-extra{width:100%;border-top:1px solid #f1f5f9;padding-top:.6rem}.page-body{padding:1.5rem 2rem 3rem;width:100%;max-width:none!important;box-sizing:border-box;flex:1;background:var(--bg);color:var(--text)}h1{margin:0 0 .25rem;font-size:1.6rem;color:var(--text)}h2{margin:0 0 .75rem;font-size:1.15rem;color:var(--text)}.sub{color:var(--muted);margin-bottom:1.25rem}.grid{display:grid;gap:1rem}.grid.stats{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.grid.two{grid-template-columns:1fr 1fr;gap:1.25rem}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem;box-shadow:0 4px 16px #0000001f;color:var(--text)}.card h1,.card h2,.card h3,.card h4{color:var(--text)}.card .label{color:var(--muted);font-size:.8rem;font-weight:600}.card .value{font-size:1.6rem;font-weight:700;margin-top:.35rem;color:var(--text)}:root[data-theme=light] .card{background:#fff;border-color:#e2e8f0;box-shadow:0 4px 16px #0f172a0f;color:#0f172a}:root[data-theme=light] .card h1,:root[data-theme=light] .card h2,:root[data-theme=light] .card h3,:root[data-theme=light] .card h4{color:#0f172a}:root[data-theme=light] .card .value{color:#0f172a}:root[data-theme=light] .card .label{color:#64748b}:root[data-theme=dark] .card,:root.dark .card{background:#151d2a;border-color:#263346;box-shadow:0 8px 24px #00000059;color:#f1f5f9}:root[data-theme=dark] .card h1,:root[data-theme=dark] .card h2,:root[data-theme=dark] .card h3,:root[data-theme=dark] .card h4,:root.dark .card h1,:root.dark .card h2,:root.dark .card h3,:root.dark .card h4{color:#f8fafc}:root[data-theme=dark] .card .value,:root.dark .card .value{color:#fff}:root[data-theme=dark] .card .label,:root.dark .card .label{color:#94a3b8}.table-wrap{overflow-x:auto;overflow-y:hidden;border:1px solid var(--border);border-radius:var(--radius);max-width:100%;width:100%;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.28) transparent}.table-wrap::-webkit-scrollbar{width:5px;height:5px}.table-wrap::-webkit-scrollbar-track{background:transparent}.table-wrap::-webkit-scrollbar-thumb{background:#94a3b847;border-radius:9999px;transition:background-color .2s ease}.table-wrap::-webkit-scrollbar-thumb:hover{background:#64748b8c}.table-wrap::-webkit-scrollbar-button{display:none;width:0;height:0}table{width:100%;border-collapse:collapse;font-size:.92rem;color:var(--text)}th,td{padding:.7rem .8rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top;color:var(--text)}th{background:var(--panel-2);color:var(--muted);font-weight:600;position:sticky;top:0;white-space:nowrap}tr:hover td{background:#3b82f60f}:root[data-theme=light] th{background:#f8fafc;color:#475569;border-color:#e2e8f0}:root[data-theme=light] td{border-color:#e2e8f0;color:#0f172a}:root[data-theme=light] tr:hover td{background:#eff6ff}:root[data-theme=dark] th,:root.dark th{background:#1e293b;color:#94a3b8;border-color:#263346}:root[data-theme=dark] td,:root.dark td{border-color:#263346;color:#e2e8f0}:root[data-theme=dark] tr:hover td,:root.dark tr:hover td{background:#3b82f61f}.badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.75rem;background:var(--panel-2);border:1px solid var(--border)}.badge.ok{color:#86efac;border-color:#166534}.badge.warn{color:#fde68a;border-color:#854d0e}.badge.err{color:#fca5a5;border-color:#7f1d1d}.row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center;margin-bottom:1rem}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--panel-2);color:var(--text);padding:.5rem .9rem;border-radius:8px;cursor:pointer;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;white-space:nowrap;line-height:1.2}.btn svg{flex-shrink:0}.btn:hover{border-color:var(--accent)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary.active-progress{background:#2563eb;border-color:#3b82f6;color:#fff;box-shadow:inset 0 0 0 2px #60a5fa99}.btn.success{background:#15803d;border-color:#166534;color:#fff}.btn.success.active-progress{background:#16a34a;border-color:#22c55e;color:#fff;box-shadow:inset 0 0 0 2px #86efac99}.btn.warning{background:#a16207;border-color:#a16207;color:#fef3c7}.btn.warning.active-progress{background:#ca8a04;border-color:#eab308;box-shadow:inset 0 0 0 2px #facc1599}.btn.active-progress{background:#93c5fd;border-color:#bfdbfe;color:#1e3a5f;font-weight:700;box-shadow:inset 0 0 0 2px #93c5fdcc}.btn:disabled{opacity:.5;cursor:not-allowed}input:not([type=checkbox]):not([type=radio]),select,textarea{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:.55rem .7rem;min-width:180px}input[type=checkbox],input[type=radio]{min-width:16px;width:16px;height:16px;padding:0;margin:0;cursor:pointer;accent-color:#4f46e5;flex-shrink:0}textarea{width:100%;min-height:120px;font-family:ui-monospace,monospace;font-size:.85rem}label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:var(--muted)}.alert{padding:.75rem 1rem;border-radius:8px;background:#3f1d1d;border:1px solid #7f1d1d;color:#fecaca;margin-bottom:1rem;white-space:pre-wrap}.okbox{padding:.75rem 1rem;border-radius:8px;background:#14532d;border:1px solid #166534;color:#bbf7d0;margin-bottom:1rem}.runtime-warning,.runtime-ok{padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;white-space:pre-wrap}.runtime-warning{background:#d9770629;border:1px solid #a16207;color:#fde68a}.runtime-ok{background:#16653440;border:1px solid #166534;color:#bbf7d0}.preview{background:#fff;color:#111;border-radius:8px;padding:1.25rem;max-height:900px;overflow:auto}.preview-expanded{min-height:680px}.preview-modal-card{width:min(1440px,100%)}.preview-modal-content{min-height:calc(100vh - 190px);max-height:calc(100vh - 190px);overflow-x:hidden}.preview img{display:block;max-width:100%!important;width:auto;height:auto;margin:1rem auto;object-fit:contain}.preview figure{max-width:100%;margin:1.25rem 0;overflow:hidden}.preview table{display:block;max-width:100%;overflow-x:auto}.preview h2{color:#111}.muted{color:var(--muted)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.stack{display:flex;flex-direction:column;gap:.75rem}.chapter{border:1px solid var(--border);border-radius:10px;padding:.85rem;background:#00000026}.guide-page{width:100%;max-width:none}.guide-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}.guide-header .sub{margin:0}.guide-version{display:flex;flex-direction:column;gap:.2rem;min-width:125px;padding:.7rem;background:#3b82f61f;border:1px solid rgba(59,130,246,.45);border-radius:8px;color:var(--muted);font-size:.82rem}.guide-version strong{color:#bfdbfe}.guide-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:1.25rem;align-items:start}.guide-toc{position:sticky;top:1.5rem;display:flex;flex-direction:column;gap:.2rem;padding:.75rem}.guide-toc strong{padding:.35rem .5rem .5rem}.guide-toc a{color:var(--muted);padding:.4rem .5rem;border-radius:6px;font-size:.9rem}.guide-toc a:hover{background:var(--panel-2);color:var(--text)}.guide-content{display:flex;flex-direction:column;gap:1rem}.guide-section{scroll-margin-top:1.5rem}.guide-section p,.guide-section li{line-height:1.55}.guide-section h3{margin:1.1rem 0 .45rem;font-size:.98rem;color:#bfdbfe}.guide-section ul,.guide-section ol{margin:.35rem 0 0;padding-left:1.35rem}.guide-section li+li{margin-top:.3rem}.guide-section-title{display:flex;align-items:center;justify-content:space-between;gap:1rem}.guide-section-title .btn{white-space:nowrap;font-size:.82rem}.guide-note{margin-top:1rem;padding:.75rem .9rem;border-left:3px solid #d97706;background:#d977061f;border-radius:0 8px 8px 0;color:#fde68a}.guide-note ul{color:var(--text)}.outline-grid{display:block;width:100%;max-width:100%;max-height:calc(100vh - 280px);overflow-x:auto;overflow-y:auto;overscroll-behavior:contain}.outline-grid table{width:max-content;min-width:max-content}.outline-grid th{cursor:pointer;white-space:nowrap;resize:horizontal;overflow:hidden;min-width:150px}.outline-grid td{min-width:150px;max-width:340px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:cell}.outline-grid td:first-child,.outline-grid th:first-child{position:sticky;left:0;z-index:3;background:var(--panel);min-width:106px}.outline-grid td:first-child{background:var(--panel-2)}.outline-grid thead th{top:0;z-index:2}.outline-grid thead th:first-child{z-index:4}.actions{display:flex;gap:.35rem;align-items:center}.selection-column{width:42px!important;min-width:42px!important;max-width:42px!important;padding:.45rem!important;text-align:center!important}.selection-column input{min-width:0;width:16px;height:16px;padding:0;margin:0;vertical-align:middle}.icon-btn{min-width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;text-align:center}.actions .icon-btn{width:32px;height:32px;min-width:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);cursor:pointer;transition:all .15s ease}.actions .icon-btn:hover{border-color:var(--accent);color:var(--accent)}.actions .icon-btn.warning{color:#d97706;background:#fffbeb;border-color:#fde68a}.actions .icon-btn.warning:hover{background:#fef3c7;border-color:#f59e0b;color:#b45309}.actions .icon-btn.danger{color:#dc2626;background:#fef2f2;border-color:#fecaca}.actions .icon-btn.danger:hover{background:#fee2e2;border-color:#ef4444;color:#b91c1c}:root[data-theme=dark] .actions .icon-btn.warning{color:#fbbf24;background:#f59e0b1f;border-color:#f59e0b4d}:root[data-theme=dark] .actions .icon-btn.warning:hover{background:#f59e0b38;border-color:#f59e0b}:root[data-theme=dark] .actions .icon-btn.danger{color:#f87171;background:#ef44441f;border-color:#ef44444d}:root[data-theme=dark] .actions .icon-btn.danger:hover{background:#ef444438;border-color:#ef4444}.cell-editor{width:100%;min-width:240px;min-height:36px;padding:.35rem;font-family:inherit}.outline-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:1rem}.readonly-field{min-height:38px;padding:.55rem .7rem;border:1px solid var(--border);border-radius:8px;color:var(--muted);white-space:pre-wrap;background:#0000001f}.pipeline-action-sections{display:flex;flex-direction:column;gap:1rem;margin:1.25rem 0}.pipeline-action-section{margin:0}.pipeline-action-section h2{margin-bottom:.35rem}.pipeline-action-section p{margin:0 0 .85rem}.outline-pipeline{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;min-width:255px;white-space:normal}.pipeline-step{width:100%;padding:.38rem .55rem;text-align:left;font-size:.78rem;line-height:1.25;cursor:default;pointer-events:none}.pipeline-step.warning{background:#a16207;border-color:#a16207;color:#fef3c7}.pipeline-tabs .btn.active{outline:2px solid #bfdbfe;outline-offset:2px}.pipeline-prompt-list{width:100%;max-width:none}.pipeline-prompt-option{flex-direction:row;align-items:flex-start;padding:.8rem;border:1px solid var(--border);border-radius:8px;background:#0000001f;color:var(--text);cursor:pointer}.pipeline-prompt-option input{min-width:auto;margin:.2rem 0 0}.pipeline-prompt-option span{display:flex;flex-direction:column;gap:.25rem}.pipeline-prompt-option code{color:#93c5fd;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}.pipeline-prompt-option em{color:#fde68a;font-style:normal;font-size:.75rem}.pipeline-prompt-option small{color:var(--muted)}.chapter-editor-wrap{margin-top:.75rem;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:#0000001f}.chapter-editor-toolbar{display:flex;flex-wrap:wrap;gap:.35rem;padding:.5rem;border-bottom:1px solid var(--border);background:var(--panel)}.chapter-editor-toolbar .btn{min-width:36px;padding:.3rem .5rem;font-size:.78rem}.chapter-rich-editor{min-height:240px;padding:1rem;outline:none;line-height:1.65;white-space:normal}.chapter-rich-editor:focus{box-shadow:inset 0 0 0 2px #3b82f699}.chapter-rich-editor h2,.chapter-rich-editor h3{margin-top:1.1rem}.chapter-rich-editor a{color:#93c5fd;text-decoration:underline}.chapter-editor-footer{display:flex;justify-content:space-between;gap:.75rem;align-items:center;flex-wrap:wrap;padding:.6rem .75rem;border-top:1px solid var(--border);background:var(--panel)}.prompt-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,330px);gap:1rem;align-items:start}.prompt-editor-layout textarea{width:100%;max-width:100%;resize:vertical}.prompt-variable-palette{position:sticky;top:1rem;min-width:0;padding:.85rem;border:1px solid var(--border);border-radius:8px;background:var(--panel-2)}.prompt-variable-palette>strong{display:block;margin-bottom:.2rem}.prompt-variable-palette>p{margin:0 0 .7rem;font-size:.78rem;line-height:1.35}.prompt-variable-palette .stack{gap:.35rem}.prompt-variable-palette .btn{display:flex;width:100%;min-width:0;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .45rem;text-align:left;font-size:.75rem;background:transparent;border-color:var(--border)}.prompt-variable-palette .btn.is-used{border-color:var(--accent-2);background:color-mix(in srgb,var(--accent-2) 14%,transparent)}.prompt-variable-palette code{min-width:0;overflow:hidden;color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.prompt-variable-palette .btn span{min-width:0;flex:1;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prompt-variable-palette .btn b{flex:0 0 auto;color:var(--accent-2);font-size:.95rem;line-height:1}.prompt-variable-palette .btn:hover span{color:var(--text)}.chapter-editor-footer .row{margin:0}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1rem}.media-card{display:flex;flex-direction:column;gap:.55rem;min-width:0;padding:.75rem;border:1px solid var(--border);border-radius:8px;background:#0000001f;overflow:hidden}.media-card img,.media-placeholder{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:6px;border:1px solid var(--border);background:var(--panel)}.media-placeholder{display:grid;place-items:center;color:var(--muted)}.media-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-card .btn{align-self:flex-start}.media-website-section{margin-bottom:1.25rem}.media-text{margin:.2rem 0 0;color:var(--text);font-size:.82rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);border-radius:999px;padding:.45rem .75rem;background:var(--panel-2);color:var(--muted);cursor:pointer;font:inherit;font-size:.86rem}.tabs button:hover{border-color:var(--accent);color:var(--text)}.tabs button.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}.keyword-plan-modal{width:min(900px,100%)}.keyword-plan-modal form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.keyword-plan-modal form>label:has(textarea),.keyword-plan-modal form>.row{grid-column:1 / -1}.keyword-plan-modal input,.keyword-plan-modal select{min-width:0;width:100%}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:1.25rem;background:#000000b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{width:min(1280px,100%);max-height:calc(100vh - 2.5rem);overflow:auto;padding:1.25rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:0 24px 60px #0000008c}.modal-header{justify-content:space-between;align-items:flex-start}.modal-header h2{margin-bottom:.25rem}.modal-header p{margin:0}.stock-image-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.stock-image-card{display:flex;min-width:0;flex-direction:column;gap:.5rem;padding:.7rem;border:1px solid var(--border);border-radius:8px;background:#00000024}.stock-image-card img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border:1px solid var(--border);border-radius:6px}.stock-image-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-image-card p{margin:0;font-size:.8rem;line-height:1.4;overflow-wrap:anywhere}.stock-image-card .btn{align-self:flex-start;margin-top:auto}@media (max-width: 1100px){.layout{grid-template-columns:220px 1fr}.page-header-bar{padding:.75rem 1.25rem}.page-body{padding:1.25rem 1.25rem 2rem}}@media (max-width: 680px){.layout{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.grid.two,.guide-layout,.prompt-editor-layout{grid-template-columns:1fr}.guide-toc,.prompt-variable-palette{position:static}.stock-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-header-bar{padding:.65rem 1rem}.page-body{padding:1rem 1rem 1.5rem}}@media (max-width: 600px){.main{padding:1rem}.tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.6rem}.tabs button{flex:0 0 auto}.keyword-plan-modal form{grid-template-columns:1fr}.guide-header,.guide-section-title{flex-direction:column;align-items:stretch}.stock-image-grid{grid-template-columns:1fr}.modal-backdrop{padding:.5rem}}.pipeline-stepper-container{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.5rem;margin-bottom:1.5rem;overflow-x:auto;box-shadow:0 4px 16px #00000014}.pipeline-stepper{display:flex;align-items:center;justify-content:space-between;min-width:720px;position:relative}.pipeline-stepper-line{flex:1;height:2px;background:var(--border);margin:0 10px;position:relative;top:-12px;transition:background .3s ease}.pipeline-stepper-line.active{background:#22c55e}.pipeline-step-node{display:flex;flex-direction:column;align-items:center;gap:.45rem;text-align:center;min-width:90px;cursor:default;transition:transform .15s ease}.pipeline-step-node.clickable{cursor:pointer}.pipeline-step-node.clickable:hover{transform:translateY(-2px)}.pipeline-step-badge{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:.75rem;font-weight:700;background:var(--panel-2);border:2px solid var(--border);color:var(--muted);transition:all .25s ease}.pipeline-step-node.completed .pipeline-step-badge{background:#15803d;border-color:#22c55e;color:#fff}.pipeline-step-node.in_progress .pipeline-step-badge{background:#1d4ed8;border-color:#3b82f6;color:#fff}.pipeline-step-node.failed .pipeline-step-badge{background:#b91c1c;border-color:#ef4444;color:#fff}.pipeline-step-node.current .pipeline-step-badge{box-shadow:0 0 0 4px #3b82f640}.pipeline-step-info{display:flex;flex-direction:column;gap:.15rem}.pipeline-step-label{font-size:.78rem;font-weight:600;color:var(--text);white-space:nowrap}.pipeline-step-sublabel{font-size:.68rem;color:var(--muted)}.tab-group-container{margin-bottom:1.5rem;border-bottom:1px solid var(--border)}.tab-group-wrapper{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:-1px}.tab-item-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.1rem;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--muted);font-size:.88rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .15s ease}.tab-item-btn:hover{color:var(--text)}.tab-item-btn.active{color:var(--accent);border-bottom-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,transparent);border-radius:8px 8px 0 0}.tab-badge{background:var(--panel-2);color:var(--muted);font-size:.72rem;font-weight:700;padding:2px 7px;border-radius:999px;border:1px solid var(--border)}.tab-badge.active{background:var(--accent);color:#fff;border-color:var(--accent)}.sticky-table-wrap{overflow-x:auto;position:relative;max-width:100%;border:1px solid var(--border);border-radius:8px;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.28) transparent}.sticky-table-wrap::-webkit-scrollbar{width:5px;height:5px}.sticky-table-wrap::-webkit-scrollbar-track{background:transparent}.sticky-table-wrap::-webkit-scrollbar-thumb{background:#94a3b847;border-radius:9999px}.sticky-table-wrap::-webkit-scrollbar-thumb:hover{background:#64748b8c}.sticky-table{border-collapse:separate;border-spacing:0;width:100%}.sticky-table th,.sticky-table td{white-space:nowrap;padding:.6rem .8rem;border-bottom:1px solid var(--border)}.sticky-table th.sticky-col-1,.sticky-table td.sticky-col-1{position:sticky;left:0;z-index:10;background:var(--panel);min-width:130px}.sticky-table th.sticky-col-2,.sticky-table td.sticky-col-2{position:sticky;left:130px;z-index:10;background:var(--panel);min-width:130px}.sticky-table th.sticky-col-3,.sticky-table td.sticky-col-3{position:sticky;left:260px;z-index:10;background:var(--panel);border-right:2px solid var(--border);min-width:200px}.sticky-table thead th{position:sticky;top:0;z-index:20;background:var(--panel-2)}.sticky-table thead th.sticky-col-1,.sticky-table thead th.sticky-col-2,.sticky-table thead th.sticky-col-3{z-index:30;background:var(--panel-2)}.pagination-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding:.85rem 1rem;background:var(--panel);border:1px solid var(--border);border-radius:8px;margin-top:1rem;font-size:.82rem}.pagination-controls{display:flex;align-items:center;gap:.35rem}.pagination-btn{padding:.35rem .65rem;background:var(--panel-2);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px}.pagination-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.pagination-btn:disabled{opacity:.38;cursor:not-allowed;color:var(--muted)!important}.pagination-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.pagination-bar .btn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 .5rem}.rbac-page{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg);width:100%}.rbac-header{height:60px;background:var(--panel);border-bottom:1px solid var(--border);padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20;flex-shrink:0;gap:1rem}:root[data-theme=light] .rbac-header{background:#fff;border-bottom-color:#e2e8f0}.rbac-breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--muted);min-width:0}.rbac-breadcrumb-crumb{font-weight:600;color:var(--muted);cursor:pointer;text-decoration:none}.rbac-breadcrumb-crumb:hover{color:var(--accent)}.rbac-breadcrumb-current{font-weight:700;color:var(--text);display:flex;align-items:center;gap:.35rem}.rbac-header-right{display:flex;align-items:center;gap:.75rem}.rbac-view-switcher{display:flex;align-items:center;gap:.25rem;padding:.25rem;background:var(--panel-2);border-radius:10px;border:1px solid var(--border)}:root[data-theme=light] .rbac-view-switcher{background:#f1f5f9;border-color:#e2e8f0}.rbac-view-btn{padding:.35rem .5rem;border-radius:8px;border:none;background:transparent;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.rbac-view-btn:hover{color:var(--text);background:var(--panel)}.rbac-view-btn.active{background:var(--panel);color:var(--accent);box-shadow:0 1px 3px #0000001a;font-weight:800}:root[data-theme=light] .rbac-view-btn.active{background:#fff;color:#4f46e5;box-shadow:0 1px 3px #0f172a14}.rbac-super-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .85rem;font-size:.75rem;font-weight:800;border-radius:10px;background:#f59e0b1f;border:1px solid rgba(245,158,11,.3);color:#d97706;-webkit-user-select:none;user-select:none}:root[data-theme=dark] .rbac-super-badge{background:#f59e0b26;border-color:#f59e0b66;color:#fbbf24}.rbac-sys-tag{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .75rem;font-size:.75rem;font-weight:700;border-radius:10px;background:var(--panel-2);border:1px solid var(--border);color:var(--muted);-webkit-user-select:none;user-select:none}.rbac-sys-dot{width:6px;height:6px;border-radius:50%;background:#4f46e5;flex-shrink:0}:root[data-theme=dark] .rbac-sys-dot{background:#818cf8}.rbac-workspace{display:flex;flex:1;overflow:hidden;min-height:0;width:100%}.rbac-roles-sidebar{width:280px;flex-shrink:0;border-right:1px solid var(--border);background:var(--panel);display:flex;flex-direction:column;height:100%;min-height:0}:root[data-theme=light] .rbac-roles-sidebar{background:#f8fafc;border-right-color:#e2e8f0}.rbac-roles-header{padding:.75rem 1rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:var(--panel);flex-shrink:0}:root[data-theme=light] .rbac-roles-header{background:#fff;border-bottom-color:#e2e8f0}.rbac-roles-search{padding:.5rem .75rem;border-bottom:1px solid var(--border);background:var(--panel-2);position:relative;display:flex;align-items:center;flex-shrink:0}:root[data-theme=light] .rbac-roles-search{background:#f8fafc;border-bottom-color:#e2e8f0}.rbac-roles-search input{width:100%;padding:.4rem 1.75rem .4rem 1.85rem;font-size:.75rem;border-radius:8px;border:1px solid var(--border);background:var(--panel);color:var(--text);outline:none;transition:all .15s ease}.rbac-roles-search input:focus{border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e526}.rbac-roles-list{flex:1;overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.25rem;min-height:0}.rbac-role-card-wrapper{position:relative;width:100%}.rbac-role-card{position:relative;width:100%;text-align:left;padding:.6rem .75rem;border-radius:10px;border:1px solid transparent;background:transparent;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none;display:flex;flex-direction:column;gap:.35rem}.rbac-role-card:hover{background:var(--panel-2);border-color:var(--border)}.rbac-role-card.selected{background:#4f46e51a;border-color:#4f46e559}:root[data-theme=light] .rbac-role-card.selected{background:#eef2ff;border-color:#c7d2fe}.rbac-role-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.rbac-role-title-wrap{display:flex;align-items:flex-start;gap:.45rem;min-width:0;flex:1}.rbac-role-name{font-size:.8rem;font-weight:700;color:var(--text);line-height:1.35;word-break:break-word;white-space:normal}.rbac-role-card.selected .rbac-role-name{color:#4f46e5}:root[data-theme=dark] .rbac-role-card.selected .rbac-role-name{color:#818cf8}.rbac-role-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;background:var(--muted)}.rbac-role-dot.active{background:#22c55e}.rbac-role-dot.selected{background:#4f46e5}.rbac-user-pill{font-size:.65rem;font-weight:700;color:var(--muted);background:var(--panel-2);padding:.15rem .45rem;border-radius:6px;border:1px solid var(--border);display:flex;align-items:center;gap:.25rem;cursor:pointer;transition:all .15s ease;flex-shrink:0}.rbac-user-pill:hover{color:#4f46e5;border-color:#4f46e5;background:var(--panel)}.rbac-role-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.7rem;color:var(--muted);padding-left:.85rem}.rbac-role-hover-actions{position:absolute;right:.5rem;top:.4rem;display:none;align-items:center;gap:.25rem;background:var(--panel);padding:.2rem .35rem;border-radius:8px;border:1px solid var(--border);box-shadow:0 4px 12px #00000026;z-index:10}.rbac-role-card-wrapper:hover .rbac-role-hover-actions{display:flex}.rbac-hover-btn{padding:.3rem;border:none;background:transparent;color:var(--muted);border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.rbac-hover-btn:hover{color:var(--text);background:var(--panel-2)}.rbac-hover-btn.danger:hover{color:#ef4444;background:#ef44441a}.rbac-content{flex:1;overflow-y:auto;padding:1.25rem 1.5rem 6rem;background:var(--bg);min-height:0}.rbac-summary-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 1px 3px #0000000d;margin-bottom:1.25rem}:root[data-theme=light] .rbac-summary-card{background:#fff;border-color:#e2e8f0}@media (min-width: 768px){.rbac-summary-card{flex-direction:row;align-items:center;justify-content:space-between}}.rbac-summary-left{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;min-width:0}.rbac-summary-title{font-size:.95rem;font-weight:800;color:var(--text)}.rbac-summary-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0;flex-wrap:wrap}.rbac-columns-layout{display:flex;flex-direction:column;gap:1.25rem;align-items:flex-start;width:100%}@media (min-width: 1024px){.rbac-columns-layout{flex-direction:row}}.rbac-groups-sidebar{width:100%;max-width:100%;flex-shrink:0;background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:.85rem;display:flex;flex-direction:column;gap:.75rem}@media (min-width: 1024px){.rbac-groups-sidebar{width:290px;max-width:290px}}:root[data-theme=light] .rbac-groups-sidebar{background:#fff;border-color:#e2e8f0}.rbac-group-btn{width:100%;text-align:left;padding:.7rem .85rem;border-radius:12px;border:1px solid transparent;background:transparent;display:flex;align-items:center;justify-content:space-between;gap:.65rem;cursor:pointer;transition:all .15s ease;color:var(--text)}.rbac-group-btn:hover{background:var(--panel-2)}.rbac-group-btn.selected{background:#4f46e5;color:#fff;border-color:#4f46e5;box-shadow:0 4px 12px #4f46e540}.rbac-group-btn.selected .rbac-group-sub{color:#fffc}.rbac-group-btn.selected .rbac-group-badge{background:#fff3;color:#fff;border-color:transparent}.rbac-columns-main{flex:1;min-width:0;width:100%}.rbac-table-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:0 1px 3px #0000000d;margin-bottom:1.25rem}:root[data-theme=light] .rbac-table-card{background:#fff;border-color:#e2e8f0}.rbac-table-header{background:var(--panel-2);border-bottom:1px solid var(--border);padding:.85rem 1.25rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}:root[data-theme=light] .rbac-table-header{background:#f8fafc;border-bottom-color:#e2e8f0}.rbac-table-header-left{display:flex;align-items:center;gap:.75rem}.rbac-table-header-icon{padding:.6rem;background:#4f46e5;color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center}.rbac-table-header-right{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.rbac-table-wrap{overflow-x:auto}.rbac-table{width:100%;border-collapse:collapse;min-width:650px}.rbac-table th{padding:.75rem 1.25rem;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--border);text-align:left}.rbac-table td{padding:.85rem 1.25rem;border-bottom:1px solid var(--border);vertical-align:top}.rbac-subgroup-row td{background:var(--panel-2);padding:.5rem 1.25rem .5rem 1.75rem;border-left:3px solid #4f46e5;border-bottom:1px solid var(--border)}:root[data-theme=light] .rbac-subgroup-row td{background:#f1f5f9}.rbac-action-grid{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.rbac-action-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .85rem;border-radius:9999px;font-size:.75rem;font-weight:700;border:1px solid var(--border);background:var(--panel-2);color:var(--muted);cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none;width:auto;flex-shrink:0}.rbac-action-pill:hover{border-color:#4f46e5;color:var(--text)}.rbac-action-pill.granted{background:#22c55e1f;border-color:#22c55e66;color:#166534;font-weight:700}:root[data-theme=dark] .rbac-action-pill.granted{background:#22c55e2e;border-color:#22c55e80;color:#4ade80}.rbac-pill-check{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0;border:1px solid var(--border);color:transparent;transition:all .15s ease}.rbac-action-pill.granted .rbac-pill-check{background:#16a34a;border-color:#16a34a;color:#fff}.rbac-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0009;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:1rem}.rbac-modal-card{background:var(--panel);border:1px solid var(--border);border-radius:20px;box-shadow:0 16px 36px #00000040;width:100%;max-width:500px;overflow:hidden;animation:fadeInDown .2s ease-out}:root[data-theme=light] .rbac-modal-card{background:#fff;border-color:#cbd5e1}.rbac-modal-header{padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:var(--panel);display:flex;align-items:center;justify-content:space-between}:root[data-theme=light] .rbac-modal-header{background:#fff;border-bottom-color:#e2e8f0}.rbac-modal-body{padding:1.25rem;display:flex;flex-direction:column;gap:1rem;max-height:70vh;overflow-y:auto}.rbac-modal-footer{padding:.85rem 1.25rem;border-top:1px solid var(--border);background:var(--panel-2);display:flex;align-items:center;justify-content:flex-end;gap:.5rem}:root[data-theme=light] .rbac-modal-footer{background:#f8fafc;border-top-color:#e2e8f0}.rbac-form-group{display:flex;flex-direction:column;gap:.35rem}.rbac-form-label{display:flex!important;flex-direction:row!important;align-items:center!important;gap:.25rem!important;font-size:.75rem;font-weight:700;color:var(--text);margin-bottom:.35rem}.rbac-form-input,.rbac-form-textarea{width:100%;padding:.5rem .75rem;font-size:.8rem;border-radius:10px;border:1px solid var(--border);background:var(--panel);color:var(--text);outline:none;transition:all .15s ease}:root[data-theme=light] .rbac-form-input,:root[data-theme=light] .rbac-form-textarea{background:#fff;border-color:#cbd5e1}.rbac-form-input:focus,.rbac-form-textarea:focus{border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e533}.rbac-toast{position:fixed;top:1.5rem;right:1.5rem;z-index:1000;background:#0f172a;color:#fff;padding:.65rem 1rem;border-radius:12px;border:1px solid #334155;box-shadow:0 8px 24px #00000040;font-size:.8rem;font-weight:600;display:flex;align-items:center;gap:.5rem;animation:fadeIn .2s ease-out}.users-page{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg);width:100%}.users-container{flex:1;overflow-y:auto;padding:1.25rem 1.5rem 6rem;display:flex;flex-direction:column;gap:1.25rem;min-height:0}.users-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem}.users-stat-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 3px #0000000d}:root[data-theme=light] .users-stat-card{background:#fff;border-color:#e2e8f0}.users-stat-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.users-stat-value{font-size:1.5rem;font-weight:900;line-height:1.1;color:var(--text)}.users-stat-label{font-size:.75rem;font-weight:600;color:var(--muted);margin-top:2px}.users-filter-bar{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:.75rem 1.25rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;box-shadow:0 1px 3px #0000000d}:root[data-theme=light] .users-filter-bar{background:#fff;border-color:#e2e8f0}.users-search-wrap{position:relative;display:flex;align-items:center;min-width:280px;flex:1}.users-search-icon{position:absolute;left:12px;color:var(--muted);pointer-events:none}.users-search-input{width:100%;padding:.45rem 2rem .45rem 2.2rem;font-size:.8rem;border-radius:10px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);outline:none;transition:all .15s ease}.users-search-input:focus{border-color:#4f46e5;background:var(--panel);box-shadow:0 0 0 2px #4f46e526}.users-search-clear{position:absolute;right:10px;border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:12px}.users-status-tabs{display:flex;align-items:center;gap:.25rem;background:var(--panel-2);padding:.25rem;border-radius:10px;border:1px solid var(--border)}.users-tab-btn{padding:.35rem .75rem;font-size:.75rem;font-weight:700;border-radius:8px;border:none;background:transparent;color:var(--muted);cursor:pointer;transition:all .15s ease}.users-tab-btn:hover{color:var(--text)}.users-tab-btn.active{background:var(--panel);color:#4f46e5;box-shadow:0 1px 3px #00000014;font-weight:800}:root[data-theme=light] .users-tab-btn.active{background:#fff;color:#4f46e5}.users-role-select{padding:.45rem .85rem;font-size:.75rem;font-weight:600;border-radius:8px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);outline:none;cursor:pointer}.users-avatar{width:38px;height:38px;border-radius:50%;color:#fff;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 6px #00000026;-webkit-user-select:none;user-select:none}.users-name-link{transition:color .15s ease}.users-name-link:hover{color:#4f46e5!important;text-decoration:underline}.users-role-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:8px;font-size:.7rem;font-weight:700;background:var(--panel-2);border:1px solid var(--border);color:var(--text);cursor:pointer;transition:all .15s ease}.users-role-badge:hover{border-color:#4f46e5;color:#4f46e5;background:#4f46e514}.users-role-dot{width:6px;height:6px;border-radius:50%;background:#4f46e5;flex-shrink:0}.users-status-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:9999px;font-size:.7rem;font-weight:700}.users-status-pill.active{background:#22c55e1f;color:#16a34a;border:1px solid rgba(34,197,94,.3)}.users-status-pill.suspended{background:#f59e0b1f;color:#d97706;border:1px solid rgba(245,158,11,.3)}.users-status-pill.pending{background:var(--panel-2);color:var(--muted);border:1px solid var(--border)}.users-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.users-status-dot.active{background:#22c55e}.users-status-dot.suspended{background:#f59e0b}.users-status-dot.pending{background:var(--muted)}.users-modal-roles-grid{display:grid;grid-template-columns:1fr;gap:.5rem;max-height:220px;overflow-y:auto;padding-right:4px}.users-role-select-card{padding:.65rem .75rem;border-radius:10px;border:1px solid var(--border);background:var(--panel-2);cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.users-role-select-card:hover{border-color:#4f46e5}.users-role-select-card.selected{border-color:#4f46e5;background:#4f46e514}.users-role-checkbox{width:18px;height:18px;border-radius:6px;border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;color:transparent;flex-shrink:0;background:var(--panel);transition:all .15s ease}.users-role-checkbox.checked{background:#4f46e5;border-color:#4f46e5;color:#fff}.users-table-row:hover td{background:var(--panel-2)}.rbac-form-label{display:flex!important;flex-direction:row!important;align-items:center!important;gap:.35rem!important;font-size:.8rem!important;font-weight:700!important;color:var(--text)!important;margin-bottom:.4rem!important}.rbac-form-input{width:100%;padding:.55rem .75rem;border-radius:8px;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:.82rem;outline:none;transition:all .15s ease}:root[data-theme=light] .rbac-form-input{background:#fff;border-color:#cbd5e1}.rbac-form-input:focus{border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e533}.users-status-toggle-box{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.users-status-choice{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:12px;border:1.5px solid var(--border);background:var(--panel-2);cursor:pointer;text-align:left;transition:all .15s ease}.users-status-choice:hover{border-color:var(--text)}.users-status-choice.active-chosen{background:#22c55e14;border-color:#16a34a;box-shadow:0 0 0 1px #16a34a}.users-status-choice.deactive-chosen{background:#f59e0b14;border-color:#d97706;box-shadow:0 0 0 1px #d97706}.users-modal-tabs{display:flex;align-items:center;border-bottom:1px solid var(--border);background:var(--panel-2);padding:0 1rem;gap:.5rem;overflow-x:auto}.users-modal-tab-btn{display:flex;align-items:center;gap:.45rem;padding:.75rem .85rem;font-size:.8rem;font-weight:700;border:none;background:transparent;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:all .15s ease;white-space:nowrap}.users-modal-tab-btn:hover{color:var(--text)}.users-modal-tab-btn.active{color:#4f46e5;border-bottom-color:#4f46e5}.users-modal-tab-num{width:18px;height:18px;border-radius:50%;background:var(--border);color:var(--muted);font-size:10px;display:flex;align-items:center;justify-content:center;font-weight:800}.users-modal-tab-btn.active .users-modal-tab-num{background:#4f46e5;color:#fff}.quota-progress-track{width:100%;height:5px;border-radius:9999px;background:#94a3b833;overflow:hidden;margin-top:4px}.quota-progress-fill{height:100%;border-radius:9999px;transition:width .3s ease}.quota-calc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin-top:.5rem}@media (max-width: 580px){.quota-calc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.quota-calc-card{padding:.65rem .75rem;border-radius:10px;background:var(--panel-2);border:1px solid var(--border);display:flex;flex-direction:column;gap:.2rem}.quota-calc-label{font-size:.7rem;color:var(--muted);font-weight:600}.quota-calc-value{font-size:1.05rem;font-weight:800;color:var(--text)}.users-status-choice strong{display:block;font-size:.8rem;color:var(--text)}.users-status-choice p{margin:2px 0 0;font-size:.7rem;color:var(--muted)}.users-password-box{position:relative;display:flex;align-items:center;width:100%}.users-password-input{width:100%;padding:.5rem 6.5rem .5rem .75rem;font-size:.8rem;border-radius:10px;border:1px solid var(--border);background:var(--panel);color:var(--text);outline:none;font-family:monospace;transition:all .15s ease}:root[data-theme=light] .users-password-input{background:#fff;border-color:#cbd5e1}.users-password-input:focus{border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e533}.users-password-actions{position:absolute;right:6px;display:flex;align-items:center;gap:4px}.users-pwd-btn{padding:4px 8px;border-radius:6px;border:1px solid var(--border);background:var(--panel-2);color:var(--muted);cursor:pointer;font-size:11px;font-weight:600;display:inline-flex;align-items:center;gap:4px;transition:all .15s ease}.users-pwd-btn:hover{color:var(--text);border-color:#4f46e5;background:var(--panel)}.users-status-clickable{cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.users-status-clickable:hover{transform:translateY(-1px);box-shadow:0 2px 6px #0000001a}.serp-config-summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none}.serp-config-summary::-webkit-details-marker{display:none}.serp-config-content{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.85rem}.serp-progress-track{width:100%;height:8px;background:var(--panel-2);border-radius:9999px;overflow:hidden;margin-top:.75rem;border:1px solid var(--border)}.serp-progress-value{height:100%;background:linear-gradient(90deg,#3b82f6,#2563eb);border-radius:9999px;transition:width .4s cubic-bezier(.4,0,.2,1)}:root[data-theme=light] .serp-progress-track{background:#e2e8f0;border-color:#cbd5e1}:root[data-theme=light] .serp-progress-value{background:linear-gradient(90deg,#2563eb,#1d4ed8)}.quota-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;padding:2px 8px;border-radius:9999px;background:#4f46e51a;color:#4f46e5;border:1px solid rgba(79,70,229,.2)}:root[data-theme=light] .quota-badge{background:#eef2ff;color:#4338ca;border-color:#c7d2fe}.quota-badge.active{background:#22c55e1f;color:#16a34a;border-color:#22c55e40}.quota-badge.warning{background:#f59e0b1f;color:#d97706;border-color:#f59e0b40}.quota-card-select{padding:10px 14px;border-radius:10px;background:var(--panel-2);border:1.5px solid var(--border);cursor:pointer;transition:all .15s ease;display:flex;flex-direction:column;gap:6px;-webkit-user-select:none;user-select:none}.quota-card-select:hover{border-color:#4f46e5;background:var(--panel)}.quota-card-select.selected{border-color:#4f46e5;background:#4f46e50f;box-shadow:0 0 0 1px #4f46e5}:root[data-theme=light] .quota-card-select.selected{background:#f5f3ff;border-color:#4f46e5}.quota-card-select input[type=radio],.quota-card-select input[type=checkbox]{min-width:16px!important;max-width:16px!important;width:16px!important;height:16px!important;padding:0!important;margin:0!important;cursor:pointer;flex-shrink:0}.rbac-modal-card input:not([type=checkbox]):not([type=radio]),.rbac-form-input{min-width:0!important}label:has(input[type=checkbox]),label:has(input[type=radio]){flex-direction:row!important;align-items:center!important}.liquid-monitor-container{position:relative;width:100%}.liquid-ambient-glow{position:absolute;top:-30px;left:15%;width:700px;height:280px;background:radial-gradient(circle,rgba(99,102,241,.18) 0%,rgba(6,182,212,.09) 45%,transparent 75%);filter:blur(70px);pointer-events:none;z-index:0;border-radius:50%}:root[data-theme=light] .liquid-ambient-glow{background:radial-gradient(circle,rgba(99,102,241,.08) 0%,rgba(6,182,212,.04) 45%,transparent 75%)}.liquid-glass-card{position:relative;background:#1a2332b8;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.09);border-radius:14px;box-shadow:0 8px 32px #00000040,inset 0 1px 1px #ffffff1a;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;overflow:hidden;z-index:1}:root[data-theme=light] .liquid-glass-card{background:#ffffffd1;border:1px solid rgba(203,213,225,.7);box-shadow:0 8px 32px #94a3b81f,inset 0 1px 1px #fffc}.liquid-glass-card:hover{border-color:#6366f159;box-shadow:0 12px 36px #00000052,inset 0 1px 1px #ffffff26}:root[data-theme=light] .liquid-glass-card:hover{border-color:#6366f166;box-shadow:0 12px 36px #94a3b833}.liquid-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px;margin-bottom:20px}.liquid-kpi-grid.compact{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-bottom:12px}.liquid-kpi-card{padding:16px 18px;display:flex;flex-direction:column;justify-content:space-between;min-height:102px}.liquid-kpi-card.compact{padding:8px 12px;min-height:60px}.liquid-kpi-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.liquid-kpi-card.compact .liquid-kpi-header{margin-bottom:3px}.liquid-kpi-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.liquid-kpi-card.compact .liquid-kpi-label{font-size:9.5px;letter-spacing:.04em}.liquid-kpi-icon-wrap{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.liquid-kpi-card.compact .liquid-kpi-icon-wrap{width:22px;height:22px;border-radius:6px}:root[data-theme=light] .liquid-kpi-icon-wrap{background:#00000008;border-color:#0000000f}.liquid-kpi-value{font-size:1.65rem;font-weight:800;letter-spacing:-.02em;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.liquid-kpi-card.compact .liquid-kpi-value{font-size:1.25rem;font-weight:800;line-height:1.1}.liquid-kpi-subtitle{font-size:11px;color:var(--muted);margin-top:4px}.liquid-kpi-card.compact .liquid-kpi-subtitle{font-size:9.5px;margin-top:1px}.liquid-pools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;margin-bottom:22px}.liquid-pool-node{padding:16px;border-left:3.5px solid #3b82f6;transition:all .2s ease}.liquid-pool-node.active-node{border-left-color:#10b981}.liquid-pool-node.paused-node{border-left-color:#f59e0b}.liquid-pool-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.liquid-pool-title{font-size:13.5px;font-weight:700;color:var(--text);margin-bottom:2px}.liquid-pool-name{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;color:var(--muted)}.liquid-load-meter{width:100%;height:6px;border-radius:9999px;background:#ffffff0f;overflow:hidden;display:flex;margin:12px 0}:root[data-theme=light] .liquid-load-meter{background:#0000000f}.liquid-load-seg{height:100%;transition:width .3s ease}.liquid-load-seg.active{background:linear-gradient(90deg,#3b82f6,#06b6d4)}.liquid-load-seg.waiting{background:#64748b}.liquid-load-seg.failed{background:#ef4444}.liquid-pool-metrics{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11.5px;color:var(--muted)}.liquid-metric-item{display:flex;align-items:center;gap:6px}.liquid-metric-dot{width:6px;height:6px;border-radius:50%}.liquid-pool-actions{display:flex;align-items:center;gap:8px;margin-top:14px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06)}:root[data-theme=light] .liquid-pool-actions{border-top-color:#0000000f}.liquid-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:5px 11px;border-radius:8px;font-size:11.5px;font-weight:600;cursor:pointer;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .15s ease}:root[data-theme=light] .liquid-btn{background:#0000000a;border-color:#0000001a}.liquid-btn:hover:not(:disabled){background:#ffffff1a;border-color:#fff3;transform:translateY(-1px)}:root[data-theme=light] .liquid-btn:hover:not(:disabled){background:#00000014}.liquid-btn.warn{color:#f59e0b;border-color:#f59e0b4d;background:#f59e0b14}.liquid-btn.warn:hover:not(:disabled){background:#f59e0b26;border-color:#f59e0b80}.liquid-btn.danger{color:#ef4444;border-color:#ef44444d;background:#ef444414}.liquid-btn.danger:hover:not(:disabled){background:#ef444426;border-color:#ef444480}.liquid-filter-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:14px}.liquid-filter-pills{display:inline-flex;align-items:center;background:#0003;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:3px;gap:2px}:root[data-theme=light] .liquid-filter-pills{background:#0000000a;border-color:#00000014}.liquid-pill-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;font-size:11.5px;font-weight:600;border-radius:7px;border:none;background:transparent;color:var(--muted);cursor:pointer;transition:all .15s ease}.liquid-pill-btn:hover{color:var(--text)}.liquid-pill-btn.active{background:#ffffff1f;color:var(--text);box-shadow:0 2px 8px #0003}:root[data-theme=light] .liquid-pill-btn.active{background:#fff;color:#0f172a;box-shadow:0 2px 8px #0000000f}.liquid-table-wrap{width:100%;overflow-x:auto}.liquid-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12.5px}.liquid-table th{padding:11px 14px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid rgba(255,255,255,.08);background:#ffffff05;white-space:nowrap}:root[data-theme=light] .liquid-table th{border-bottom-color:#00000012;background:#00000004}.liquid-table td{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.04);vertical-align:middle}:root[data-theme=light] .liquid-table td{border-bottom-color:#0000000a}.liquid-table tr:last-child td{border-bottom:none}.liquid-table tr:hover td{background:#ffffff08}:root[data-theme=light] .liquid-table tr:hover td{background:#00000005}.liquid-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:9999px;font-size:11px;font-weight:600;border:1px solid transparent;white-space:nowrap}.liquid-badge.ok{background:#10b9811f;color:#10b981;border-color:#10b98140}.liquid-badge.warn{background:#f59e0b1f;color:#f59e0b;border-color:#f59e0b40}.liquid-badge.err{background:#ef44441f;color:#ef4444;border-color:#ef444440}.liquid-badge.active{background:#3b82f61f;color:#3b82f6;border-color:#3b82f64d}.liquid-live-indicator{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:600;color:#10b981;background:#10b9811a;padding:4px 10px;border-radius:9999px;border:1px solid rgba(16,185,129,.25)}.liquid-live-dot{position:relative;width:7px;height:7px;border-radius:50%;background:#10b981}.liquid-live-dot:after{content:"";position:absolute;top:-2px;left:-2px;width:11px;height:11px;border-radius:50%;border:1.5px solid #10b981;opacity:.8;animation:liquid-ping 2s cubic-bezier(0,0,.2,1) infinite}@keyframes liquid-ping{75%,to{transform:scale(2.2);opacity:0}}.liquid-shimmer-bar{position:relative;width:100%;height:6px;border-radius:9999px;background:#ffffff14;overflow:hidden}:root[data-theme=light] .liquid-shimmer-bar{background:#00000014}.liquid-shimmer-fill{position:absolute;top:0;left:0;height:100%;width:100%;background:linear-gradient(90deg,#3b82f6,#06b6d4,#10b981,#3b82f6);background-size:200% 100%;border-radius:9999px;animation:liquid-shimmer 2s linear infinite}@keyframes liquid-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.liquid-code-block{background:#090d16;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11.5px;color:#e2e8f0;overflow-x:auto;max-height:180px}:root[data-theme=light] .liquid-code-block{background:#0f172a;color:#f8fafc}.rbac-switcher-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 24px;background:var(--panel);border-bottom:1px solid var(--border);font-size:12.5px;position:sticky;top:0;z-index:55;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000a}:root[data-theme=light] .rbac-switcher-bar{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #00000008}:root[data-theme=dark] .rbac-switcher-bar,:root.dark .rbac-switcher-bar{background:#151d2a;border-bottom:1px solid #263346;box-shadow:0 2px 8px #00000040}.rbac-switcher-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rbac-switcher-brand{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:11.5px;letter-spacing:.03em;color:var(--accent);text-transform:uppercase}.rbac-select{padding:5px 12px;border-radius:8px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);font-size:12px;font-weight:500;cursor:pointer;outline:none;transition:all .15s ease;box-shadow:0 1px 2px #0000000a}:root[data-theme=light] .rbac-select{background:#f8fafc;border-color:#cbd5e1;color:#0f172a}:root[data-theme=light] .rbac-select:hover{background:#fff;border-color:#94a3b8}:root[data-theme=dark] .rbac-select{background:#1e293b;border-color:#334155;color:#f8fafc}:root[data-theme=dark] .rbac-select:hover{background:#273549;border-color:#475569}.rbac-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #3b82f633}.rbac-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:9999px;font-size:11px;font-weight:600;letter-spacing:-.01em;line-height:1.2}.rbac-badge-super{background:#10b9811f;color:#059669;border:1px solid rgba(16,185,129,.3)}:root[data-theme=dark] .rbac-badge-super{background:#10b98133;color:#34d399;border-color:#10b98166}.rbac-badge-system{background:#3b82f61f;color:#2563eb;border:1px solid rgba(59,130,246,.3)}:root[data-theme=dark] .rbac-badge-system{background:#3b82f633;color:#60a5fa;border-color:#3b82f666}.rbac-badge-lead{background:#6366f11f;color:#4f46e5;border:1px solid rgba(99,102,241,.3)}:root[data-theme=dark] .rbac-badge-lead{background:#6366f133;color:#818cf8;border-color:#6366f166}.rbac-badge-seo{background:#8b5cf61f;color:#7c3aed;border:1px solid rgba(139,92,246,.3)}:root[data-theme=dark] .rbac-badge-seo{background:#8b5cf633;color:#a78bfa;border-color:#8b5cf666}.rbac-badge-writer{background:#f59e0b1f;color:#d97706;border:1px solid rgba(245,158,11,.3)}:root[data-theme=dark] .rbac-badge-writer{background:#f59e0b33;color:#fbbf24;border-color:#f59e0b66}.rbac-badge-auditor{background:#64748b1f;color:#475569;border:1px solid rgba(100,116,139,.3)}:root[data-theme=dark] .rbac-badge-auditor{background:#64748b33;color:#cbd5e1;border-color:#64748b66}.rbac-switcher-actions{display:flex;align-items:center;gap:8px}.rbac-btn-sm{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:6px;font-size:11.5px;font-weight:500;border:1px solid var(--border);background:var(--panel-2);color:var(--text);cursor:pointer;transition:all .15s ease}.rbac-btn-sm:hover{background:var(--panel);border-color:var(--accent);color:var(--accent)}:root[data-theme=light] .rbac-btn-sm{background:#f8fafc;border-color:#e2e8f0;color:#334155}:root[data-theme=light] .rbac-btn-sm:hover{background:#fff;border-color:#cbd5e1;color:#0f172a}.rbac-details-modal{position:absolute;top:100%;left:0;right:0;max-height:280px;overflow-y:auto;background:var(--panel);border-bottom:2px solid var(--accent);box-shadow:0 10px 30px #00000026;padding:14px 24px;z-index:60;animation:fadeInDown .15s ease}:root[data-theme=light] .rbac-details-modal{background:#fff;border-bottom-color:#2563eb;box-shadow:0 10px 25px #00000014}:root[data-theme=dark] .rbac-details-modal{background:#151d2a;border-bottom-color:#3b82f6;box-shadow:0 12px 32px #0006}.rbac-perm-pill{background:var(--panel-2);color:var(--text);border:1px solid var(--border);padding:2px 7px;border-radius:5px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px}:root[data-theme=light] .rbac-perm-pill{background:#f1f5f9;border-color:#e2e8f0;color:#1e293b}:root[data-theme=dark] .rbac-perm-pill{background:#1e293b;border-color:#334155;color:#e5e7eb}.rbac-floating-chip{position:fixed;bottom:22px;right:24px;z-index:99;display:flex;align-items:center;gap:8px;padding:7px 14px;border-radius:9999px;background:var(--panel);border:1px solid var(--border);box-shadow:0 6px 20px #00000026;cursor:pointer;font-size:12px;font-weight:600;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .2s cubic-bezier(.4,0,.2,1)}:root[data-theme=light] .rbac-floating-chip{background:#fffffff5;border-color:#cbd5e1;box-shadow:0 6px 20px #00000014;color:#0f172a}:root[data-theme=dark] .rbac-floating-chip{background:#151d2af5;border-color:#334155;box-shadow:0 8px 24px #0006;color:#f8fafc}.rbac-floating-chip:hover{transform:translateY(-2px);border-color:var(--accent)}.wa-topbar{display:flex;align-items:center;justify-content:space-between;height:52px;min-height:52px;padding:0 24px;background:var(--panel);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}:root[data-theme=light] .wa-topbar{background:#fff;border-bottom:1px solid #e2e8f0}.wa-topbar-left{display:flex;align-items:center;gap:16px}.wa-project-context-box{display:flex;align-items:center;gap:10px;padding:4px 10px;border-radius:8px;background:var(--panel-2);border:1px solid var(--border)}:root[data-theme=light] .wa-project-context-box{background:#f8fafc;border-color:#e2e8f0}.wa-project-icon-box{width:26px;height:26px;border-radius:6px;background:#3b82f626;color:#3b82f6;display:flex;align-items:center;justify-content:center;flex-shrink:0}.wa-project-selector-wrapper{display:flex;flex-direction:column}.wa-project-label{font-size:9.5px;font-weight:700;letter-spacing:.6px;color:var(--muted);line-height:1;margin-bottom:2px}.wa-project-select{background:transparent!important;border:none!important;padding:0 16px 0 0!important;font-size:13px!important;font-weight:600!important;color:var(--text)!important;cursor:pointer;outline:none!important;box-shadow:none!important;height:auto!important}.wa-project-domain-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500;color:var(--muted);background:#94a3b814;border:1px solid rgba(148,163,184,.15)}.wa-topbar-right{display:flex;align-items:center;gap:10px}.wa-persona-box{display:flex;align-items:center;gap:8px;padding:4px 10px;border-radius:8px;background:var(--panel-2);border:1px solid var(--border)}:root[data-theme=light] .wa-persona-box{background:#f8fafc;border-color:#e2e8f0}.wa-persona-select{background:transparent!important;border:none!important;padding:0 14px 0 0!important;font-size:12px!important;font-weight:500!important;color:var(--text)!important;cursor:pointer;outline:none!important;box-shadow:none!important;height:auto!important;max-width:170px}.wa-role-badge{font-size:11px;font-weight:600;padding:2px 7px;border-radius:4px;border-width:1px;border-style:solid;white-space:nowrap}.wa-topbar-divider{width:1px;height:20px;background:var(--border);margin:0 2px}.wa-topbar-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;background:transparent;border:1px solid var(--border);color:var(--muted);cursor:pointer;transition:all .15s ease;font-size:14px}.wa-topbar-icon-btn:hover{background:var(--panel-2);color:var(--text);border-color:var(--accent)}:root[data-theme=light] .wa-topbar-icon-btn:hover{background:#f1f5f9}.wa-topbar-version-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;background:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.2);transition:all .15s ease}.wa-topbar-version-pill:hover{background:#3b82f62e;border-color:#3b82f6}.wa-login-wrapper{position:relative;min-height:100vh;width:100vw;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at 50% 20%,#172554,#0b0f17 70%);overflow:hidden}.wa-login-backdrop-glow{position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,#3b82f62e,#0ea5e900 70%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;filter:blur(40px)}.wa-login-card{position:relative;z-index:10;width:100%;max-width:440px;background:#151d2ad1;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:36px 32px;box-shadow:0 24px 48px -12px #0009,0 0 0 1px #3b82f61f;display:flex;flex-direction:column;gap:20px}:root[data-theme=light] .wa-login-wrapper{background:radial-gradient(circle at 50% 20%,#e0f2fe,#f8fafc 70%)}:root[data-theme=light] .wa-login-card{background:#ffffffe6;border:1px solid rgba(203,213,225,.8);box-shadow:0 20px 40px -10px #0f172a14}.wa-login-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}.wa-login-logo-container{position:relative;display:flex;align-items:center;justify-content:center;margin-bottom:6px}.wa-login-logo-glow{position:absolute;width:56px;height:56px;border-radius:50%;background:#3b82f6;filter:blur(14px);opacity:.45}.wa-login-logo-box{position:relative;width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#1e3a8a,#2563eb);color:#fff;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 16px #2563eb59}.wa-login-platform-badge{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#38bdf8;background:#38bdf81a;border:1px solid rgba(56,189,248,.2);padding:3px 10px;border-radius:999px}.wa-login-title{margin:0;font-size:20px;font-weight:700;color:var(--text);letter-spacing:-.02em}.wa-login-subtitle{margin:0;font-size:13px;color:var(--muted);line-height:1.4}.wa-login-error-alert{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:10px;background:#ef44441a;border:1px solid rgba(239,68,68,.28)}.wa-login-error-indicator{width:4px;height:100%;min-height:24px;border-radius:2px;background:#ef4444;flex-shrink:0}.wa-login-error-content{display:flex;flex-direction:column;gap:2px;font-size:12px}.wa-login-error-title{font-weight:600;color:#ef4444}.wa-login-error-desc{color:var(--text);opacity:.9;line-height:1.4}.wa-login-form{display:flex;flex-direction:column;gap:16px}.wa-login-form-group{display:flex;flex-direction:column;gap:6px}.wa-login-label{font-size:12px;font-weight:600;color:var(--text);letter-spacing:.01em}.wa-login-password-header{display:flex;align-items:center;justify-content:space-between}.wa-login-toggle-password-btn{background:none;border:none;color:var(--muted);font-size:11px;font-weight:500;cursor:pointer;padding:2px 4px;transition:color .15s ease}.wa-login-toggle-password-btn:hover{color:var(--accent)}.wa-login-input-wrapper{position:relative;display:flex;align-items:center}.wa-login-input{width:100%;padding:11px 14px;font-size:14px;background:#0f172aa6;border:1px solid var(--border);border-radius:9px;color:var(--text);outline:none;transition:all .2s ease}:root[data-theme=light] .wa-login-input{background:#fff}.wa-login-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #3b82f638}.wa-login-submit-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 18px;margin-top:4px;border-radius:9px;border:none;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 4px 14px #2563eb59;transition:all .2s ease}.wa-login-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 6px 20px #2563eb73;transform:translateY(-1px)}.wa-login-submit-btn:disabled{opacity:.65;cursor:not-allowed}.wa-login-btn-content,.wa-login-loading-inline{display:inline-flex;align-items:center;gap:8px}.wa-login-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.wa-login-footer{display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;color:var(--muted);text-align:center;padding-top:4px}
