.sidebar{width:var(--sidebar);background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border, var(--border));display:flex;flex-direction:column;align-items:center;flex-shrink:0;user-select:none;position:relative;z-index:1;transition:background .2s,border-color .2s}.sidebar-brand{display:flex;align-items:center;justify-content:center;width:100%;padding:18px 0 14px;border-bottom:1px solid var(--sidebar-border, var(--border))}.sidebar-logo{width:34px;height:34px;background:linear-gradient(135deg,var(--accent) 0%,#c084fc 100%);color:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:800;flex-shrink:0;box-shadow:0 4px 14px #7c3aed66}.sidebar-nav{flex:1;display:flex;flex-direction:column;align-items:center;padding:14px 0;gap:4px;overflow-y:auto;overflow-x:visible;width:100%}.sl{position:relative;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;color:var(--sidebar-icon-color, var(--text-muted));background:transparent;border:none;transition:background .15s,color .15s;cursor:pointer;text-decoration:none;flex-shrink:0}.sl:hover{background:var(--sidebar-hover-bg, var(--bg-3));color:var(--text)}.sl-active{background:var(--sidebar-active-bg, var(--accent-dim))!important;color:var(--sidebar-active-color, var(--accent))!important;box-shadow:inset 0 0 0 1px #7c3aed33}.sl svg{display:block;flex-shrink:0}.sl-sm{height:36px}.sl[data-tip]:after,.sidebar-avatar-btn[data-tip]:after{content:attr(data-tip);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:var(--bg-1);border:1px solid var(--border-b);color:var(--text);font-size:11.5px;font-weight:500;white-space:nowrap;padding:5px 10px;border-radius:8px;pointer-events:none;opacity:0;transition:opacity .15s;z-index:200;box-shadow:var(--shadow-card)}.sl[data-tip]:hover:after,.sidebar-avatar-btn[data-tip]:hover:after{opacity:1}.sidebar-footer{display:flex;flex-direction:column;align-items:center;padding:10px 0 14px;border-top:1px solid var(--border);gap:4px;width:100%}.sidebar-avatar-btn{position:relative;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;transition:box-shadow .15s;text-decoration:none}.sidebar-avatar-btn:hover,.sidebar-avatar-btn.sl-active{box-shadow:0 0 0 2px var(--accent)}.sidebar-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#a855f7);color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.sa-overlay{position:fixed;inset:0;background:#000000b8;display:flex;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(4px)}.sa-modal{background:var(--card-bg);border:1px solid var(--border);border-radius:16px;padding:32px 36px;min-width:260px;display:flex;flex-direction:column;align-items:center;gap:16px;box-shadow:0 20px 60px #00000080}.sa-icon{width:44px;height:44px;background:linear-gradient(135deg,var(--accent) 0%,#c084fc 100%);color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;box-shadow:0 4px 14px #7c3aed66}.sa-title{font-size:13px;font-weight:600;color:var(--text-muted);text-align:center;letter-spacing:.04em;text-transform:uppercase}.sa-input{width:100%;padding:11px 16px;background:var(--sidebar-bg);border:1px solid var(--border);border-radius:9px;color:var(--text);font-size:18px;text-align:center;letter-spacing:6px;outline:none;transition:border-color .2s}.sa-input:focus{border-color:var(--accent)}.sa-error{color:#f87171;font-size:12px;text-align:center;margin:-6px 0}.sa-btn{width:100%;padding:10px;background:var(--accent);color:#fff;border:none;border-radius:9px;font-weight:600;font-size:14px;cursor:pointer;transition:opacity .2s}.sa-btn:hover{opacity:.85}.header{display:flex;align-items:center;gap:16px;padding:0 24px;background:var(--header-bg, rgba(15, 15, 30, .95));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);flex-shrink:0;height:58px;position:sticky;top:0;z-index:50;transition:background .2s}.header-left{flex-shrink:0;min-width:0}.header-breadcrumb{display:flex;align-items:center;gap:7px;font-size:13px;white-space:nowrap}.breadcrumb-root{color:var(--text-muted);font-weight:600;transition:color .14s}.breadcrumb-sep{color:var(--text-dim);font-size:13px}.breadcrumb-app{color:var(--text-muted);transition:color .14s;max-width:140px;overflow:hidden;text-overflow:ellipsis}.breadcrumb-page{color:var(--text);font-weight:600}.header-search-wrap{flex:1;display:flex;justify-content:center;min-width:0}.header-search{display:flex;align-items:center;gap:8px;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:0 12px;height:36px;width:100%;max-width:360px;transition:border-color .15s,box-shadow .15s;cursor:text}.header-search:focus-within,.header-search--active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.header-search-clear{background:transparent;border:none;color:var(--text-muted);display:flex;align-items:center;padding:2px;border-radius:4px;cursor:pointer;flex-shrink:0;transition:color .12s}.header-search-clear:hover{color:var(--text)}.header-search-icon{color:var(--text-muted);display:flex;align-items:center;flex-shrink:0}.header-search-input{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-size:13px;min-width:0}.header-search-input::placeholder{color:var(--text-muted)}.header-search-kbd{font-size:10.5px;background:var(--bg-3);border:1px solid var(--border-b);border-radius:5px;padding:2px 6px;color:var(--text-dim);font-family:inherit;flex-shrink:0}.header-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.header-badge{padding:3px 10px;border-radius:20px;font-size:10.5px;font-weight:700;letter-spacing:.05em;white-space:nowrap}.header-badge--yellow{background:var(--yellow-dim);color:var(--yellow);border:1px solid rgba(234,179,8,.25)}.header-badge--red{background:var(--red-dim);color:var(--red);border:1px solid rgba(239,68,68,.25)}.header-user{display:flex;align-items:center;gap:10px;padding:5px 10px 5px 12px;background:var(--bg-2);border:1px solid var(--border);border-radius:28px;transition:border-color .15s;cursor:default}.header-user:hover{border-color:var(--border-b)}.header-user-info{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.header-user-name{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;line-height:1}.header-user-role{font-size:10.5px;color:var(--text-muted);line-height:1;white-space:nowrap}.header-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#a855f7);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.header-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}@media (max-width: 700px){.header-search-wrap,.header-user-info{display:none}.header{padding:0 14px}}.header-breadcrumb{display:flex;align-items:center;gap:6px;font-size:13.5px;overflow:hidden;flex:1;min-width:0}.breadcrumb-root{color:var(--text-muted);font-weight:600;transition:color .14s;white-space:nowrap}.breadcrumb-root:hover{color:var(--text)}.breadcrumb-sep{color:var(--text-dim);font-size:15px;flex-shrink:0}.breadcrumb-app{color:var(--text-muted);transition:color .14s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}.breadcrumb-app:hover{color:var(--text)}.breadcrumb-page{color:var(--text);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.header-dev-badge{background:var(--yellow-dim);color:var(--yellow);border:1px solid rgba(245,166,35,.3);padding:3px 9px;border-radius:20px;font-size:10.5px;font-weight:700;letter-spacing:.06em}.header-date{font-size:12.5px;color:var(--text-dim);white-space:nowrap}@media (max-width: 600px){.header{padding:10px 14px}.header-date{display:none}}.layout{display:flex;height:100vh;overflow:hidden;background:var(--bg);position:relative}.layout-particles{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.35}.layout-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;position:relative;z-index:1}.layout-content{flex:1;overflow-y:auto;padding:28px 32px;scrollbar-width:thin;scrollbar-color:var(--border-b) transparent}.layout-content::-webkit-scrollbar{width:5px}.layout-content::-webkit-scrollbar-thumb{background:var(--border-b);border-radius:3px}@media (max-width: 900px){.layout-content{padding:20px 18px}}@media (max-width: 600px){.layout-content{padding:16px 12px}}.login-page{min-height:100vh;background:#000;display:flex;align-items:center;justify-content:center;padding:20px;position:relative;overflow:hidden;--bg: #000;--bg-1: rgba(6,9,18,.82);--bg-2: rgba(10,14,28,.85);--bg-3: rgba(14,20,38,.9);--border: rgba(140,180,255,.1);--border-b: rgba(140,180,255,.2);--text: #dde8ff;--text-muted: #556080;--text-dim: #2a3050}.cc{position:absolute;display:flex;align-items:center;pointer-events:none;z-index:0}.cc-tl{top:24px;left:24px}.cc-tr{top:24px;right:24px;flex-direction:row-reverse}.cc-bl{bottom:24px;left:24px}.cc-br{bottom:24px;right:24px;flex-direction:row-reverse}.cc-chip{display:flex;align-items:center;gap:3px;padding:6px 10px;background:var(--bg-1);border:1px solid var(--border);border-radius:4px;height:30px}.cc-chip span{display:block;width:4px;height:4px;background:var(--text-dim);border-radius:1px}.cc-short{width:14px;height:1px;background:var(--border)}.cc-nub{width:8px;height:8px;border-radius:50%;border:1.5px solid var(--border);background:transparent;flex-shrink:0}.cc-trace{width:120px;height:1px;background:linear-gradient(90deg,var(--border) 0%,transparent 100%)}.cc-tr .cc-trace,.cc-br .cc-trace{background:linear-gradient(270deg,var(--border) 0%,transparent 100%)}.login-card{background:#04060cad;backdrop-filter:blur(28px) saturate(1.4);-webkit-backdrop-filter:blur(28px) saturate(1.4);border:1px solid rgba(160,200,255,.13);border-top-color:#a0d2ff38;border-radius:18px;padding:36px 32px;width:100%;max-width:390px;display:flex;flex-direction:column;gap:20px;position:relative;z-index:1;box-shadow:0 0 0 1px #ffffff0a,0 32px 80px #000000d9,0 0 60px #508cff14,inset 0 1px #b4dcff12;animation:fadeUp .35s ease both}.login-logo{display:flex;justify-content:center}.login-logo-icon{width:54px;height:54px;background:#0a0e1ce6;border:1px solid rgba(140,190,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#a0c8f8;box-shadow:0 0 0 5px #04060c80,0 0 28px #5096ff33}.login-heading{text-align:center}.login-title{font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.login-sub{font-size:13px;color:var(--text-muted);margin-top:6px}.input-wrap{position:relative;display:flex;align-items:center}.input-ico{position:absolute;left:13px;color:var(--text-dim);display:flex;align-items:center;pointer-events:none;z-index:1}.input-wrap .form-input{padding-left:38px}.input-wrap .form-input.has-eye{padding-right:40px}.eye-btn{position:absolute;right:11px;background:none;border:none;cursor:pointer;color:var(--text-dim);display:flex;align-items:center;padding:4px;border-radius:4px;transition:color .15s}.eye-btn:hover{color:var(--text-muted)}.login-form{display:flex;flex-direction:column;gap:12px}.login-btn{width:100%;justify-content:center;padding:12px;font-size:14px;font-weight:600;letter-spacing:.01em;margin-top:2px;box-shadow:0 4px 20px #4f6ef74d}.login-divider{display:flex;align-items:center;gap:12px;color:var(--text-dim);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border)}.oauth-icons{display:flex;gap:10px}.oauth-pill{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;font-size:13px;font-weight:500;font-family:inherit;color:var(--text-muted);cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .1s}.oauth-pill:hover{background:var(--bg-3);border-color:var(--border-b);color:var(--text);transform:translateY(-1px)}.oauth-pill:active{transform:translateY(0)}.oauth-pill:disabled{opacity:.5;cursor:not-allowed;transform:none}.oauth-discord{color:#7d80ef}.oauth-discord:hover{background:#5865f21f;border-color:#5865f24d;color:#9b9ef5}.link-btn{background:none;border:none;color:var(--accent);font-size:inherit;font-family:inherit;cursor:pointer;padding:0;font-weight:500}.link-btn:hover{opacity:.8}.login-switch{text-align:center;font-size:12.5px;color:var(--text-muted)}.input-error{border-color:var(--red)!important}.login-footer{text-align:center;font-size:11.5px;color:var(--text-dim);padding-top:4px;border-top:1px solid var(--border)}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.apps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}@media (max-width: 680px){.apps-grid{grid-template-columns:1fr}}.app-card{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color .2s}.app-card:hover{border-color:var(--border-b)}.app-card--paused{opacity:.7}.app-card-header{display:flex;align-items:center;gap:12px;padding:18px 20px 14px}.app-card-icon{position:relative;width:38px;height:38px;background:var(--accent-dim);color:var(--accent);border:1px solid rgba(79,110,247,.3);border-radius:10px;font-size:17px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.app-card-icon-img{width:100%;height:100%;object-fit:cover;display:block}.app-card-meta{flex:1;display:flex;flex-direction:column;min-width:0}.app-card-name{font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-card-id{font-size:12px;color:var(--text-muted)}.app-card-stats{display:flex;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.acs{flex:1;display:flex;flex-direction:column;align-items:center;padding:12px 8px;border-right:1px solid var(--border)}.acs:last-child{border-right:none}.acs-val{font-size:20px;font-weight:700}.acs-label{font-size:11px;color:var(--text-muted);margin-top:2px}.app-card-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;gap:10px;flex-wrap:wrap}.app-card-date{font-size:12px;color:var(--text-dim)}.app-card-actions{display:flex;gap:6px;flex-wrap:wrap}.dash-top{display:flex;flex-direction:column;gap:16px}.dash-greeting{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);border-left:4px solid var(--accent);box-shadow:var(--shadow-card)}.dash-greeting-hi{font-size:22px;font-weight:800;color:var(--text);letter-spacing:-.01em}.dash-greeting-sub{font-size:13px;color:var(--text-muted);margin-top:3px}.dash-greeting-sub strong{color:var(--text)}.dash-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}@media (max-width: 900px){.dash-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 520px){.dash-stats{grid-template-columns:1fr}}.stat-card{border-radius:var(--radius-lg);padding:20px 20px 18px;display:flex;flex-direction:column;gap:4px;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s;cursor:default}.stat-card:hover{transform:translateY(-4px)}.stat-card-0{background:linear-gradient(135deg,#c084fc26,#a78bfa14);border:1px solid rgba(192,132,252,.3)}.stat-card-0:hover{box-shadow:0 12px 32px #c084fc40}.stat-card-1{background:linear-gradient(135deg,#34d3991f,#06e8f414);border:1px solid rgba(52,211,153,.3)}.stat-card-1:hover{box-shadow:0 12px 32px #34d39933}.stat-card-2{background:linear-gradient(135deg,#06e8f41f,#60a5fa14);border:1px solid rgba(6,232,244,.3)}.stat-card-2:hover{box-shadow:0 12px 32px #06e8f433}.stat-card-3{background:linear-gradient(135deg,#fbbf241f,#f472b614);border:1px solid rgba(251,191,36,.3)}.stat-card-3:hover{box-shadow:0 12px 32px #fbbf2433}[data-theme=light] .stat-card-0{background:linear-gradient(135deg,#f3e8ff,#ede9fe);border:1px solid #ddd6fe}[data-theme=light] .stat-card-0:hover{box-shadow:0 8px 24px #7c3aed26}[data-theme=light] .stat-card-1{background:linear-gradient(135deg,#dcfce7,#d1fae5);border:1px solid #a7f3d0}[data-theme=light] .stat-card-1:hover{box-shadow:0 8px 24px #05966926}[data-theme=light] .stat-card-2{background:linear-gradient(135deg,#cffafe,#e0f2fe);border:1px solid #a5f3fc}[data-theme=light] .stat-card-2:hover{box-shadow:0 8px 24px #0891b226}[data-theme=light] .stat-card-3{background:linear-gradient(135deg,#fefce8,#fef9c3);border:1px solid #fde68a}[data-theme=light] .stat-card-3:hover{box-shadow:0 8px 24px #d9770626}.stat-icon-row{margin-bottom:6px}.stat-icon{font-size:20px;display:inline-block;line-height:1}.stat-value{font-size:32px;font-weight:800;letter-spacing:-.02em;line-height:1;margin-bottom:2px}[data-theme=light] .stat-card-0 .stat-value{color:#7c3aed!important}[data-theme=light] .stat-card-1 .stat-value{color:#059669!important}[data-theme=light] .stat-card-2 .stat-value{color:#0891b2!important}[data-theme=light] .stat-card-3 .stat-value{color:#d97706!important}.stat-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.stat-sub{font-size:12px;color:var(--text-dim);margin-top:1px}.dash-actions-section{display:flex;flex-direction:column;gap:12px}.dash-section-title{font-size:14px;font-weight:700;color:var(--text);letter-spacing:-.01em}.dash-actions{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}@media (max-width: 900px){.dash-actions{grid-template-columns:repeat(3,1fr)}}@media (max-width: 600px){.dash-actions{grid-template-columns:repeat(2,1fr)}}.quick-action{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:18px 16px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);transition:all .25s cubic-bezier(.4,0,.2,1);text-decoration:none;position:relative;overflow:hidden}.quick-action:hover{transform:translateY(-3px);border-color:var(--border-b)}.qa-icon-wrap{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;transition:transform .2s}.quick-action:hover .qa-icon-wrap{transform:scale(1.1)}.qa-text{display:flex;flex-direction:column;gap:2px;flex:1}.qa-label{font-size:13px;font-weight:700;color:var(--text)}.qa-desc{font-size:11px;color:var(--text-muted);line-height:1.3}.qa-arrow{position:absolute;top:12px;right:14px;font-size:14px;color:var(--text-dim);transition:transform .2s,color .2s}.quick-action:hover .qa-arrow{transform:translate(3px);color:var(--text-muted)}.qa-purple .qa-icon-wrap{background:#a78bfa26}.qa-purple:hover{box-shadow:0 8px 24px #a78bfa33;border-color:#a78bfa66}.qa-blue .qa-icon-wrap{background:#60a5fa26}.qa-blue:hover{box-shadow:0 8px 24px #60a5fa33;border-color:#60a5fa66}.qa-cyan .qa-icon-wrap{background:#06e8f41f}.qa-cyan:hover{box-shadow:0 8px 24px #06e8f42e;border-color:#06e8f44d}.qa-pink .qa-icon-wrap{background:#f472b626}.qa-pink:hover{box-shadow:0 8px 24px #f472b633;border-color:#f472b666}.qa-yellow .qa-icon-wrap{background:#fbbf2426}.qa-yellow:hover{box-shadow:0 8px 24px #fbbf2433;border-color:#fbbf2466}[data-theme=light] .qa-purple .qa-icon-wrap{background:#f3e8ff}[data-theme=light] .qa-blue .qa-icon-wrap{background:#dbeafe}[data-theme=light] .qa-cyan .qa-icon-wrap{background:#cffafe}[data-theme=light] .qa-pink .qa-icon-wrap{background:#fce7f3}[data-theme=light] .qa-yellow .qa-icon-wrap{background:#fefce8}.recent-logs{list-style:none}.log-row{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--border);font-size:13px;transition:background .12s}.log-row:last-child{border-bottom:none}.log-row:hover{background:var(--bg-2)}.log-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 6px currentColor}.log-user{font-weight:700;min-width:110px;color:var(--text)}.log-msg{flex:1;color:var(--text-muted)}.log-time{font-size:11.5px;color:var(--text-dim);white-space:nowrap}.dash-info{display:flex;flex-direction:column;gap:0}.info-row{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--border);gap:16px;transition:background .1s}.info-row:last-child{border-bottom:none}.info-label{font-size:12.5px;color:var(--text-muted);font-weight:600;min-width:120px}.info-value{font-size:13px;color:var(--text)}.creds-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.creds-code{border-radius:0 0 var(--radius-lg) var(--radius-lg);border:none;border-top:1px solid var(--border);line-height:1.6;max-height:420px;overflow-y:auto}.endpoint-list{display:flex;flex-direction:column;gap:8px}.endpoint-row{display:flex;align-items:center;gap:14px;padding:12px 16px;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;transition:all .2s}.endpoint-row:hover{background:linear-gradient(135deg,#a78bfa0d,#60a5fa0d);border-color:var(--border-b);box-shadow:0 4px 12px #a78bfa1a}.endpoint-method{background:linear-gradient(135deg,#c084fc26,#60a5fa26);color:var(--accent);border:1px solid rgba(167,139,250,.3);border-radius:6px;padding:4px 10px;font-size:11.5px;font-weight:700;letter-spacing:.05em;min-width:50px;text-align:center;flex-shrink:0;box-shadow:0 2px 8px #a78bfa26}.endpoint-path{font-family:monospace;font-size:13px;color:var(--text);min-width:140px}.endpoint-desc{font-size:13px;color:var(--text-muted)}.integration-notes{list-style:none;display:flex;flex-direction:column;gap:10px}.integration-notes li{font-size:13.5px;color:var(--text-muted);padding-left:18px;position:relative;line-height:1.6}.integration-notes li:before{content:"→";position:absolute;left:0;color:var(--accent);font-weight:700}.integration-notes code{background:var(--bg-3);border:1px solid var(--border);border-radius:4px;padding:1px 6px;font-family:monospace;font-size:12.5px;color:var(--text)}.integration-notes strong{color:var(--text)}.copy-code-btn{position:absolute;top:10px;right:12px;z-index:2;font-size:12px;padding:5px 13px;background:var(--bg-3);border:1px solid var(--border-b);border-radius:6px;color:var(--text-muted);cursor:pointer;transition:all .15s;font-family:inherit}.copy-code-btn:hover{background:var(--bg-2);border-color:var(--accent);color:var(--text)}.key-str{font-size:12px;letter-spacing:.04em}.text-red{color:var(--red)}.copied-btn{color:var(--green)!important;border-color:var(--green)!important}@keyframes batchIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.batch-banner{border:1px solid rgba(167,139,250,.3);border-radius:12px;background:linear-gradient(135deg,#c084fc14,#60a5fa14);overflow:hidden;animation:batchIn .25s ease both;box-shadow:0 8px 24px #a78bfa26,0 0 0 1px #a78bfa1a;border-top:2px solid rgba(192,132,252,.5)}.batch-banner-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(167,139,250,.15);gap:12px;flex-wrap:wrap}.batch-banner-title{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:var(--text)}.batch-banner-icon{color:var(--purple);font-size:16px;animation:spin 3s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.batch-banner-exp{font-size:12px;font-weight:600;color:var(--accent);background:#a78bfa1f;padding:4px 12px;border-radius:20px;border:1px solid rgba(167,139,250,.2)}.batch-banner-close{background:transparent;border:none;color:var(--text-muted);font-size:16px;padding:6px 8px;border-radius:6px;cursor:pointer;line-height:1;transition:all .2s}.batch-banner-close:hover{background:#ff6b6b26;color:var(--red)}.batch-keys-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1px;background:#7c3aed14;max-height:260px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-b) transparent}.batch-key-row{display:flex;align-items:center;justify-content:space-between;padding:9px 16px;background:var(--bg-1);gap:10px;transition:background .1s}.batch-key-row:hover{background:var(--bg-2)}.batch-key-str{font-family:Courier New,monospace;font-size:13px;letter-spacing:.07em;color:var(--accent);flex:1}.batch-key-copy{background:transparent;border:1px solid var(--border);color:var(--text-muted);border-radius:5px;padding:2px 7px;font-size:13px;cursor:pointer;flex-shrink:0;transition:all .12s}.batch-key-copy:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.key-preview{display:flex;align-items:center;gap:14px;padding:12px 16px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap}.key-preview-label{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);min-width:80px}.key-preview-val{font-family:monospace;font-size:14px;color:var(--accent);letter-spacing:.08em;flex:1}.key-preview-exp{font-size:12px;color:var(--text-muted)}.gen-modal-body{gap:20px}.gen-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.gen-duration-row{display:flex;flex-direction:column;gap:8px}.gen-duration-pills{display:flex;flex-wrap:wrap;gap:6px}.gen-pill{padding:5px 14px;border-radius:20px;font-size:12.5px;font-weight:500;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s}.gen-pill:hover{color:var(--text);border-color:var(--border-b)}.gen-pill.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 0 12px #7c3aed73}.gen-pattern-input{font-family:monospace;letter-spacing:.07em;font-size:14px}@keyframes keyGlow{0%,to{box-shadow:0 0 18px #7c3aed33,0 2px 20px #0006}50%{box-shadow:0 0 30px #7c3aed73,0 2px 20px #0006}}.key-preview-card{position:relative;border-radius:12px;overflow:hidden;border:1px solid rgba(124,58,237,.35);animation:keyGlow 3s ease-in-out infinite}.key-preview-card-bg{position:absolute;inset:0;background:linear-gradient(135deg,#7c3aed1a,#1e1e3200 60%);pointer-events:none}.key-preview-card-inner{position:relative;display:flex;align-items:center;justify-content:space-between;padding:18px 22px;gap:16px;flex-wrap:wrap}.key-preview-card-left{display:flex;flex-direction:column;gap:4px}.key-preview-card-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim)}.key-preview-card-key{font-family:Courier New,monospace;font-size:18px;font-weight:700;letter-spacing:.12em;color:var(--accent);text-shadow:0 0 20px rgba(124,58,237,.6)}.key-preview-card-hint{font-size:11px;color:var(--text-dim);margin-top:2px}.key-preview-card-hint code{color:var(--accent);background:var(--accent-dim);padding:0 4px;border-radius:3px}.key-preview-card-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.key-preview-card-product{font-size:12px;font-weight:600;color:var(--text);letter-spacing:.04em}.key-preview-card-exp{font-size:11.5px;color:var(--text-muted)}@media (max-width: 560px){.gen-row{grid-template-columns:1fr}}.user-cell{display:flex;align-items:center;gap:10px}.user-avatar{width:30px;height:30px;border-radius:50%;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.text-muted{color:var(--text-muted)}.users-table{min-width:860px}.users-table th:nth-child(4),.users-table td:nth-child(4){max-width:130px}.users-table td:nth-child(4) .mono{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.users-table .row-actions{display:flex;gap:6px;flex-wrap:nowrap}.cu-body{gap:18px}.cu-top{display:flex;align-items:flex-start;gap:16px}.cu-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#c084fc33,#60a5fa33);border:2px solid rgba(167,139,250,.4);color:var(--accent);font-size:24px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s;box-shadow:0 4px 12px #a78bfa26}.cu-avatar:hover{border-color:var(--accent);box-shadow:0 6px 20px #a78bfa40}.cu-fields{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:12px}.cu-expiry-preview{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:linear-gradient(135deg,#c084fc14,#60a5fa14);border:1px solid rgba(167,139,250,.2);border-radius:8px;gap:12px;flex-wrap:wrap;border-left:3px solid var(--purple)}.cu-expiry-left{display:flex;align-items:center;gap:12px}.cu-expiry-ic{font-size:20px}.cu-expiry-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-bottom:3px;font-weight:600}.cu-expiry-val{font-size:15px;font-weight:700;color:var(--text)}.cu-expiry-badge{background:linear-gradient(135deg,#c084fc33,#60a5fa33);color:var(--accent);border:1px solid rgba(167,139,250,.3);padding:4px 14px;border-radius:20px;font-size:12px;font-weight:700;white-space:nowrap;box-shadow:0 2px 8px #a78bfa1a}.eu-body{gap:18px}.eu-mode-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.eu-mode-btn{padding:10px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-size:13.5px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s}.eu-mode-btn:hover{color:var(--text);border-color:var(--border-b);background:#a78bfa0d}.eu-mode-btn.active.add{background:linear-gradient(135deg,#c084fc26,#60a5fa26);border-color:#a78bfa80;color:var(--accent);box-shadow:0 4px 12px #a78bfa33}.eu-mode-btn.active.reduce{background:linear-gradient(135deg,#ff6b6b26,#ff646426);border-color:#ff6b6b66;color:var(--red);box-shadow:0 4px 12px #ff6b6b26}.eu-mode-btn span{font-size:16px;font-weight:700}.eu-preview{background:linear-gradient(135deg,#c084fc14,#60a5fa14);border:1px solid rgba(167,139,250,.2);border-radius:8px;padding:16px 18px;display:flex;flex-direction:column;gap:10px;border-left:3px solid var(--blue)}.eu-preview-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.eu-preview-row.new .eu-preview-date{color:var(--accent);font-weight:600}.eu-preview-label{font-size:11.5px;color:var(--text-muted);min-width:100px}.eu-preview-date{font-size:13px;font-family:monospace}.eu-preview-arrow{font-size:11.5px;color:var(--text-dim);text-align:center;padding:4px 0;border-top:1px dashed var(--border);border-bottom:1px dashed var(--border)}@media (max-width: 520px){.cu-fields,.eu-mode-row{grid-template-columns:1fr}}.log-type-badge{display:inline-block;padding:2px 9px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.04em;border:1px solid;white-space:nowrap}.settings-page{max-width:960px}.settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width: 860px){.settings-grid{grid-template-columns:1fr 1fr}}@media (max-width: 580px){.settings-grid{grid-template-columns:1fr}}.danger-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.danger-label{font-size:14px;font-weight:600}.danger-desc{font-size:12.5px;color:var(--text-muted);margin-top:3px}.prof-avatar-clickable{position:relative;cursor:pointer}.prof-avatar-overlay{position:absolute;inset:0;border-radius:50%;background:#0000007a;display:flex;align-items:center;justify-content:center;color:#fff;opacity:0;transition:opacity .2s}.prof-avatar-clickable:hover .prof-avatar-overlay{opacity:1}.prof-icon-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:#00000073;border:1px solid rgba(255,255,255,.18);color:#fff;cursor:pointer;transition:background .15s;backdrop-filter:blur(4px)}.prof-icon-btn:hover{background:#000000ad}.positioner-overlay{position:fixed;inset:0;z-index:9999;background:#000000b8;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(6px);padding:24px}.positioner-box{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-modal);width:100%;max-width:480px}.positioner-hint{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-muted)}.positioner-frame{overflow:hidden;cursor:grab;user-select:none;flex-shrink:0;touch-action:none;border:2px solid var(--border-b)}.positioner-frame:active{cursor:grabbing}.positioner-circle{width:160px;height:160px;border-radius:50%;margin:0 auto}.positioner-cover{width:100%;height:150px;border-radius:var(--radius)}.positioner-actions{display:flex;gap:8px;justify-content:flex-end;align-items:center}.positioner-actions .btn{display:flex;align-items:center;gap:6px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root,[data-theme=dark]{--bg: #080808;--bg-1: #111111;--bg-2: #1a1a1a;--bg-3: #222222;--border: #2a2a2a;--border-b: #3a3a3a;--accent: #a78bfa;--accent-dim: rgba(167,139,250,.12);--accent-hover: #c4b5fd;--text: #f0f0f0;--text-muted: #888888;--text-dim: #555555;--green: #34d399;--green-dim: rgba(52,211,153,.12);--red: #ff6b6b;--red-dim: rgba(255,107,107,.12);--yellow: #fbbf24;--yellow-dim: rgba(251,191,36,.12);--purple: #c084fc;--purple-dim: rgba(192,132,252,.12);--cyan: #06e8f4;--cyan-dim: rgba(6,232,244,.12);--blue: #60a5fa;--blue-dim: rgba(96,165,250,.12);--pink: #f472b6;--pink-dim: rgba(244,114,182,.12);--radius: 10px;--radius-lg: 14px;--sidebar: 68px;--sidebar-bg: #0d0d0d;--sidebar-border: #1e1e1e;--sidebar-icon-color: #666666;--sidebar-active-bg: rgba(167,139,250,.14);--sidebar-active-color:#a78bfa;--sidebar-hover-bg: rgba(255,255,255,.05);--header-bg: rgba(8, 8, 8, .97);--bg-surface: var(--bg-1);--bg-surface-2: var(--bg-2);--accent-soft: var(--accent-dim);--shadow-card: 0 8px 24px rgba(0,0,0,.4);--shadow-modal: 0 20px 60px rgba(0,0,0,.6);--shadow-login: 0 24px 72px rgba(0,0,0,.65), 0 0 0 1px rgba(167,139,250,.15);--glow-accent: 0 0 30px rgba(167,139,250,.35)}[data-theme=light]{--bg: #f2f2f7;--bg-1: #ffffff;--bg-2: #f8f8fd;--bg-3: #ededf8;--border: #e2e2ef;--border-b: #c8c8e2;--accent: #7c3aed;--accent-dim: rgba(124,58,237,.1);--accent-hover: #6d28d9;--text: #1a1a2e;--text-muted: #6b6b8a;--text-dim: #a0a0b8;--green: #059669;--green-dim: rgba(5,150,105,.1);--red: #dc2626;--red-dim: rgba(220,38,38,.1);--yellow: #d97706;--yellow-dim: rgba(217,119,6,.1);--purple: #7c3aed;--purple-dim: rgba(124,58,237,.1);--cyan: #0891b2;--cyan-dim: rgba(8,145,178,.1);--blue: #2563eb;--blue-dim: rgba(37,99,235,.1);--pink: #db2777;--pink-dim: rgba(219,39,119,.1);--radius: 10px;--radius-lg: 14px;--sidebar: 68px;--sidebar-bg: #ffffff;--sidebar-border: #e2e2ef;--sidebar-icon-color: #6b6b8a;--sidebar-active-bg: rgba(124,58,237,.1);--sidebar-active-color:#7c3aed;--sidebar-hover-bg: rgba(124,58,237,.06);--header-bg: rgba(255, 255, 255, .95);--bg-surface: var(--bg-1);--bg-surface-2: var(--bg-2);--accent-soft: var(--accent-dim);--shadow-card: 0 2px 12px rgba(0,0,0,.06);--shadow-modal: 0 8px 40px rgba(0,0,0,.15);--shadow-login: 0 8px 40px rgba(0,0,0,.1), 0 0 0 1px var(--border);--glow-accent: 0 0 14px rgba(124,58,237,.18)}body{background:var(--bg);color:var(--text);font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.loading-screen{display:flex;align-items:center;justify-content:center;height:100vh;color:var(--text-muted)}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:8px;font-size:13px;font-weight:600;border:1px solid transparent;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,var(--purple) 100%);color:#fff;border-color:var(--accent);box-shadow:0 4px 16px #a78bfa4d}.btn-primary:hover{background:linear-gradient(135deg,var(--accent-hover) 0%,#d8a5ff 100%);box-shadow:0 8px 24px #a78bfa66;transform:translateY(-2px)}.btn-secondary{background:#a78bfa14;color:var(--text);border-color:var(--border);transition:all .2s}.btn-secondary:hover{background:#a78bfa26;border-color:#a78bfa66}.btn-danger{background:#ff6b6b1a;color:var(--red);border-color:#ff6b6b4d;transition:all .2s}.btn-danger:hover{background:#ff6b6b33;box-shadow:0 4px 12px #ff6b6b33}.btn-green{background:#34d3991a;color:var(--green);border-color:#34d3994d;transition:all .2s}.btn-green:hover{background:#34d39933;box-shadow:0 4px 12px #34d39933}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border);font-size:12px;padding:6px 12px;transition:all .2s}.btn-ghost:hover{color:var(--text);background:var(--bg-2);border-color:var(--border-b)}.btn-icon{background:transparent;border:none;color:var(--text-muted);padding:6px 8px;border-radius:6px;font-size:14px;transition:all .2s}.btn-icon:hover{color:var(--accent);background:#a78bfa1a}.btn-sm{padding:5px 10px;font-size:12px}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:20px;font-size:11.5px;font-weight:700;white-space:nowrap;backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.1)}.badge:before{content:"●";font-size:6px;line-height:1;opacity:.8}.badge-green{background:#34d39926;color:var(--green);border-color:#34d3994d}.badge-red{background:#ff6b6b26;color:var(--red);border-color:#ff6b6b4d}.badge-yellow{background:#fbbf2426;color:var(--yellow);border-color:#fbbf244d}.badge-gray{background:var(--bg-3);color:var(--text-muted);border-color:var(--border)}.badge-blue{background:#60a5fa26;color:var(--blue);border-color:#60a5fa4d}.badge-purple{background:#c084fc26;color:var(--purple);border-color:#c084fc4d}.card{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-card)}.card:hover{border-color:var(--border-b);box-shadow:0 12px 40px #a78bfa26}.card-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.card-title{font-size:14px;font-weight:700;color:var(--text)}.card-subtitle{font-size:12px;color:var(--text-muted);margin-top:3px}.card-body{padding:20px}.stat-card{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 22px}.stat-label{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:10px}.stat-value{display:block;font-size:30px;font-weight:700}.stat-sub{display:block;font-size:12px;color:var(--text-muted);margin-top:6px}.stat-up{color:var(--green)}.stat-down{color:var(--red)}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:10px 16px;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);border-bottom:1px solid var(--border);font-weight:600}.data-table td{padding:12px 16px;font-size:13px;border-bottom:1px solid var(--border);vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--bg-2)}.row-actions{display:flex;gap:6px}.mono{font-family:Consolas,monospace;font-size:12.5px;color:var(--text-muted)}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:11.5px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.form-input,.form-select,.form-textarea{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:9px 12px;color:var(--text);font-size:13.5px;font-family:inherit;outline:none;transition:border-color .15s;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent)}.form-input::placeholder{color:var(--text-dim)}.form-textarea{resize:vertical;min-height:72px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.form-hint{font-size:11.5px;color:var(--text-dim)}.form-select option{background:var(--bg-2)}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:12px;flex-wrap:wrap}.toolbar-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toolbar-right{display:flex;align-items:center;gap:10px}.search-input{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);padding:8px 14px;color:var(--text);font-size:13px;width:230px;outline:none}.search-input:focus{border-color:var(--accent)}.search-input::placeholder{color:var(--text-dim)}.page{display:flex;flex-direction:column;gap:20px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.page-title{font-size:20px;font-weight:800;line-height:1.2;letter-spacing:-.01em}.page-subtitle{font-size:13px;color:var(--text-muted);margin-top:4px}.page-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.page-tabs-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.page-tabs-right{display:flex;align-items:center;gap:10px;margin-left:auto}.local-search-input{background:var(--bg-2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;padding:6px 12px;width:220px;outline:none;transition:border-color .15s}.local-search-input::placeholder{color:var(--text-muted)}.local-search-input:focus{border-color:var(--accent)}.page-tabs-bar--scroll .page-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.page-tabs-bar--scroll .page-tabs::-webkit-scrollbar{display:none}.page-tabs{display:flex;gap:2px;background:var(--bg-2);border:1px solid var(--border);border-radius:12px;padding:3px;flex-shrink:0}.page-tab{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border-radius:9px;font-size:12.5px;font-weight:500;color:var(--text-muted);background:transparent;border:none;cursor:pointer;white-space:nowrap;transition:background .13s,color .13s;line-height:1}.page-tab:hover{color:var(--text);background:var(--bg-3)}.page-tab.active{background:var(--bg-1);color:var(--text);font-weight:600;box-shadow:0 1px 4px #00000059}.page-tabs-count{font-size:12px;color:var(--text-dim);white-space:nowrap;flex-shrink:0}@media (max-width: 600px){.page-header{flex-direction:column;align-items:flex-start}.page-title{font-size:17px}.page-actions{width:100%}.page-actions .btn{width:100%;justify-content:center}.page-tabs-bar{flex-direction:column;align-items:flex-start;gap:8px}.page-tabs{overflow-x:auto;width:100%;-webkit-overflow-scrolling:touch;scrollbar-width:none}.page-tabs::-webkit-scrollbar{display:none}.page-tabs-right{width:100%;justify-content:space-between}.local-search-input{flex:1;width:auto}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table{min-width:600px}.users-table{min-width:620px}.row-actions{flex-wrap:wrap;gap:4px}.row-actions .btn-sm{font-size:11px;padding:4px 8px}.form-row,.form-row-3,.gen-row,.cu-fields{grid-template-columns:1fr}.cu-top{flex-direction:column;align-items:center}.toolbar{flex-direction:column;align-items:flex-start}.toolbar-right{width:100%;justify-content:flex-end}.search-input{width:100%}.card{border-radius:10px;padding:14px}.stat-card{padding:14px 16px}.batch-keys-list{grid-template-columns:1fr}.batch-banner-header{flex-direction:column;align-items:flex-start}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 20px;color:var(--text-muted);gap:10px}.empty-icon{font-size:38px;opacity:.35}.empty-msg{font-size:14px}.code-block{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;font-family:Consolas,Courier New,monospace;font-size:12.5px;color:var(--text);overflow-x:auto;white-space:pre;tab-size:2}.copy-field{display:flex;gap:6px;align-items:center}.copy-field input{flex:1;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:8px 12px;color:var(--text-muted);font-family:monospace;font-size:12.5px;outline:none}.copy-btn{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);padding:7px 12px;font-size:12px;white-space:nowrap;transition:background .12s,color .12s,border-color .12s}.copy-btn:hover,.copy-btn.copied{background:var(--accent-dim);color:var(--accent);border-color:#4f6ef74d}.tabs{display:flex;gap:2px;background:var(--bg-2);border-radius:var(--radius);padding:3px;width:fit-content}.tab{padding:6px 16px;border-radius:6px;font-size:12.5px;font-weight:500;color:var(--text-muted);border:none;background:transparent;transition:background .12s,color .12s}.tab:hover{color:var(--text)}.tab.active{background:var(--bg-1);color:var(--text)}.modal-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(3px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:var(--bg-1);border:1px solid var(--border-b);border-radius:var(--radius-lg);width:100%;max-height:90vh;display:flex;flex-direction:column}.modal-sm{max-width:400px}.modal-md{max-width:560px}.modal-lg{max-width:720px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border);flex-shrink:0}.modal-title{font-size:15px;font-weight:600}.modal-close{background:transparent;border:none;color:var(--text-muted);font-size:16px;padding:4px 8px;border-radius:4px}.modal-close:hover{color:var(--text);background:var(--bg-2)}.modal-body{padding:22px;display:flex;flex-direction:column;gap:16px;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 22px;border-top:1px solid var(--border);flex-shrink:0}.alert{padding:12px 16px;border-radius:var(--radius);font-size:13px;border:1px solid}.alert-info{background:var(--accent-dim);border-color:#4f6ef74d;color:var(--accent)}.alert-success{background:var(--green-dim);border-color:#2ed4a44d;color:var(--green)}.alert-danger{background:var(--red-dim);border-color:#f75a5a4d;color:var(--red)}.alert-warning{background:var(--yellow-dim);border-color:#f5a6234d;color:var(--yellow)}.filter-tabs{display:flex;gap:4px}.filter-tab{background:transparent;border:1px solid var(--border);border-radius:20px;color:var(--text-muted);padding:4px 14px;font-size:12.5px;transition:background .12s,color .12s,border-color .12s}.filter-tab:hover{background:var(--bg-2);color:var(--text)}.filter-tab.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent);font-weight:600}.divider{height:1px;background:var(--border)}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--border)}.toggle-row:last-child{border-bottom:none}.toggle-info h4{font-size:13.5px;font-weight:600}.toggle-info p{font-size:12px;color:var(--text-muted);margin-top:2px}.toggle{position:relative;width:40px;height:22px;background:var(--bg-3);border-radius:11px;border:1px solid var(--border);transition:background .2s;flex-shrink:0}.toggle:after{content:"";position:absolute;width:16px;height:16px;background:var(--text-muted);border-radius:50%;top:2px;left:2px;transition:transform .2s,background .2s}.toggle.on{background:var(--accent);border-color:var(--accent)}.toggle.on:after{transform:translate(18px);background:#fff}.danger-zone{border:1px solid rgba(247,90,90,.3);border-radius:var(--radius-lg);overflow:hidden}.danger-zone .card-header{background:#f75a5a0f}.danger-zone .card-title{color:var(--red)}.card{box-shadow:var(--shadow-card);transition:border-color .18s}.card:hover{border-color:var(--border-b)}.btn-primary{box-shadow:0 2px 10px #4f6ef740}.btn-primary:hover{box-shadow:var(--glow-accent);transform:translateY(-1px)}.btn{transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .1s}.sl-active{box-shadow:inset 0 0 0 1px var(--accent-dim),0 0 12px var(--accent-dim)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--bg-3);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-b)}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page{animation:fadeUp .25s ease both}.profile-cover{height:160px;border-radius:var(--radius-lg) var(--radius-lg) 0 0;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--accent) 0%,var(--purple) 100%)}.profile-cover-img{width:100%;height:100%;object-fit:cover}.profile-cover-overlay{position:absolute;inset:0;background:#00000040;display:flex;align-items:flex-end;justify-content:flex-end;padding:12px}.profile-avatar-wrap{position:relative;margin-top:-46px;margin-left:24px}.profile-avatar{width:88px;height:88px;border-radius:50%;border:4px solid var(--bg-1);object-fit:cover;background:var(--bg-3);display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:700;color:var(--text-muted);overflow:hidden;box-shadow:0 4px 16px #0006;transition:box-shadow .2s}.profile-avatar:hover{box-shadow:var(--glow-accent)}.profile-header-row{display:flex;align-items:flex-end;gap:20px;padding:0 24px 20px}.profile-info{flex:1}.profile-name{font-size:20px;font-weight:700}.profile-role{font-size:12.5px;color:var(--text-muted);margin-top:3px}.profile-card{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card)}.accent-swatches{display:flex;gap:10px;flex-wrap:wrap}.accent-swatch{width:30px;height:30px;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:transform .15s,border-color .15s}.accent-swatch:hover{transform:scale(1.12)}.accent-swatch.active{border-color:var(--text)}.upload-zone{border:2px dashed var(--border);border-radius:var(--radius);padding:28px 16px;text-align:center;cursor:pointer;color:var(--text-muted);font-size:13px;transition:border-color .15s,background .15s}.upload-zone:hover{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}.upload-zone input{display:none}
