@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Noto+Sans+SC:wght@300;400;500;700&display=swap');

:root {
  --bg-dark: #0a0f1e;
  --bg-card: rgba(255,255,255,0.05);
  --border: rgba(255,255,255,0.1);
  --primary: #3b82f6;
  --primary-glow: rgba(59,130,246,0.3);
  --accent: #f59e0b;
  --success: #10b981;
  --danger: #ef4444;
  --warning: #f59e0b;
  --text: #f1f5f9;
  --text-muted: #94a3b8;
  --sidebar-w: 220px;
  --radius: 14px;
  --shadow: 0 8px 32px rgba(0,0,0,0.4);
}

*{margin:0;padding:0;box-sizing:border-box;}
html,body{height:100%;font-family:'Inter','Noto Sans SC',sans-serif;background:var(--bg-dark);color:var(--text);}
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: rgba(0,0,0,0.2); }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.15); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.25); }
@keyframes fadeUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

/* ===== 粒子背景 ===== */
#canvas-bg{position:fixed;inset:0;z-index:0;pointer-events:none;}

/* ===== 登录页 ===== */
.auth-page{position:relative;z-index:1;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:radial-gradient(ellipse at 20% 50%,rgba(59,130,246,0.12) 0%,transparent 60%),radial-gradient(ellipse at 80% 20%,rgba(245,158,11,0.08) 0%,transparent 50%);}
.auth-card{background:rgba(15,23,42,0.85);border:1px solid var(--border);border-top:1px solid rgba(255,255,255,0.15);border-radius:24px;backdrop-filter:blur(20px);padding:48px 44px;width:100%;max-width:440px;box-shadow:var(--shadow),0 0 0 1px rgba(59,130,246,0.1);animation:fadeUp 0.6s cubic-bezier(0.16,1,0.3,1) forwards;}
.auth-logo{text-align:center;margin-bottom:32px;}
.auth-logo .icon{width:64px;height:64px;background:linear-gradient(135deg,var(--primary),#6366f1);border-radius:16px;display:inline-flex;align-items:center;justify-content:center;font-size:28px;margin-bottom:16px;box-shadow:0 0 24px var(--primary-glow);}
.auth-logo h1{font-size:24px;font-weight:700;background:linear-gradient(135deg,#fff,#94a3b8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.auth-logo p{color:var(--text-muted);font-size:14px;margin-top:4px;}

.form-group{margin-bottom:20px;}
.form-group label{display:block;font-size:13px;font-weight:500;color:var(--text-muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px;}
.form-group input,.form-group select{width:100%;padding:13px 16px;background:rgba(255,255,255,0.06);border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:15px;font-family:inherit;transition:all .2s;outline:none;}
.form-group input::placeholder{color:rgba(148,163,184,0.5);}
.form-group input:focus,.form-group select:focus{border-color:var(--primary);background:rgba(59,130,246,0.08);box-shadow:0 0 0 3px var(--primary-glow);}
.form-group select option{background:#1e293b;color:var(--text);}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px 20px;border:none;border-radius:10px;font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s;text-decoration:none;}
.btn-primary{background:linear-gradient(135deg,var(--primary),#6366f1);color:#fff;box-shadow:0 4px 16px var(--primary-glow);position:relative;overflow:hidden;}
.btn-primary::after{content:'';position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.2),transparent);transform:skewX(-20deg);transition:0.5s;}
.btn-primary:hover::after{left:150%;}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--primary-glow);}
.btn-outline{background:transparent;color:var(--text);border:1px solid var(--border);}
.btn-outline:hover{background:var(--bg-card);border-color:var(--primary);color:var(--primary);}
.btn-success{background:linear-gradient(135deg,var(--success),#059669);color:#fff;}
.btn-success:hover{transform:translateY(-1px);filter:brightness(1.1);}
.btn-danger{background:linear-gradient(135deg,var(--danger),#dc2626);color:#fff;}
.btn-danger:hover{transform:translateY(-1px);filter:brightness(1.1);}
.btn-warning{background:linear-gradient(135deg,var(--warning),#d97706);color:#fff;}
.btn-warning:hover{transform:translateY(-1px);filter:brightness(1.1);}
.btn-sm{width:auto;padding:7px 14px;font-size:13px;border-radius:8px;}
.btn-ghost{background:rgba(255,255,255,0.05);color:var(--text-muted);border:1px solid var(--border);}
.btn-ghost:hover{background:rgba(255,255,255,0.1);color:var(--text);}
.btn + .btn{margin-top:10px;}

.divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--text-muted);font-size:13px;}
.divider::before,.divider::after{content:'';flex:1;height:1px;background:var(--border);}

.info-card{background:rgba(59,130,246,0.08);border:1px solid rgba(59,130,246,0.2);border-radius:10px;padding:14px 16px;margin-bottom:20px;}
.info-card p{color:#93c5fd;font-size:13px;line-height:1.6;}

.user-card{background:linear-gradient(135deg,rgba(59,130,246,0.1),rgba(99,102,241,0.1));border:1px solid rgba(59,130,246,0.2);border-radius:12px;padding:20px;text-align:center;margin-bottom:20px;}
.user-card .name{font-size:28px;font-weight:700;color:var(--primary);margin:4px 0;}
.url-box{background:rgba(0,0,0,0.3);border:1px solid var(--border);border-radius:8px;padding:12px;margin-bottom:16px;word-break:break-all;font-size:13px;color:var(--text-muted);font-family:monospace;}

/* ===== 管理后台布局 ===== */
.admin-layout{display:flex;min-height:100vh;position:relative;z-index:1;}
.sidebar{width:var(--sidebar-w);background:rgba(10,15,30,0.95);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;z-index:100;backdrop-filter:blur(20px);}
.sidebar-logo{padding:24px 20px 16px;border-bottom:1px solid var(--border);}
.sidebar-logo h2{font-size:16px;font-weight:700;background:linear-gradient(135deg,var(--primary),var(--accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.sidebar-logo p{font-size:11px;color:var(--text-muted);margin-top:2px;}
.sidebar-nav{flex:0 0 auto;padding:12px 0;overflow-y:visible;}
.sidebar-scroll-area{flex:1;overflow-y:auto;min-height:0;}
.sidebar-section-label{padding:8px 16px 4px;font-size:11px;color:var(--text-muted);letter-spacing:0.5px;text-transform:uppercase;}
.projects-sidebar-nav{padding:4px 0 12px;}
.nav-item{display:flex;align-items:center;gap:10px;padding:11px 20px;color:var(--text-muted);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border-left:3px solid transparent;}
.nav-item:hover{color:var(--text);background:rgba(255,255,255,0.04);}
.nav-item.active{color:var(--primary);background:rgba(59,130,246,0.08);border-left-color:var(--primary);}
.nav-item .icon{font-size:16px;width:20px;text-align:center;}
.sidebar-footer{padding:16px 20px;border-top:1px solid var(--border);}

.main-content{margin-left:var(--sidebar-w);flex:1;padding:32px;min-height:100vh;animation:fadeUp 0.6s cubic-bezier(0.16,1,0.3,1) forwards;}
.page-header{margin-bottom:28px;}
.page-header h1{font-size:22px;font-weight:700;}
.page-header p{color:var(--text-muted);font-size:14px;margin-top:4px;}

/* ===== 卡片 ===== */
.card{background:var(--bg-card);border:1px solid var(--border);border-top:1px solid rgba(255,255,255,0.12);border-radius:var(--radius);padding:24px;backdrop-filter:blur(10px);animation:fadeUp 0.5s cubic-bezier(0.16,1,0.3,1) forwards;box-shadow:0 4px 20px rgba(0,0,0,0.15);}
.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;}
.card-header h3{font-size:15px;font-weight:600;}

/* ===== 统计卡片 ===== */
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px;}
.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;cursor:pointer;transition:all .2s;}
.stat-card:hover{transform:translateY(-2px);border-color:var(--primary);box-shadow:0 8px 24px rgba(59,130,246,0.15);}
.stat-card .label{font-size:12px;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px;}
.stat-card .value{font-size:36px;font-weight:700;margin:8px 0 4px;line-height:1;}
.stat-card .sub{font-size:12px;color:var(--text-muted);}
.stat-card.blue .value{color:var(--primary);}
.stat-card.amber .value{color:var(--accent);}
.stat-card.green .value{color:var(--success);}
.stat-card.red .value{color:var(--danger);}
.stat-card.gray .value{color:var(--text-muted);}

/* ===== 表格 ===== */
.table-wrap{overflow-x:auto;margin-bottom:16px;}
table{width:100%;border-collapse:collapse;}
thead tr{border-bottom:1px solid var(--border);}
th{padding:10px 14px;font-size:12px;font-weight:600;color:var(--text-muted);text-align:left;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;}
td{padding:12px 14px;font-size:14px;border-bottom:1px solid rgba(255,255,255,0.04);}
tr:hover td{background:rgba(255,255,255,0.03);}
.td-actions{white-space:nowrap;display:flex;gap:6px;align-items:center;}

/* ===== 搜索框 ===== */
.search-bar{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.search-bar input,.search-bar select{flex:1;padding:10px 14px;background:rgba(255,255,255,0.06);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:14px;outline:none;}
.search-bar input:focus,.search-bar select:focus{border-color:var(--primary);background:rgba(59,130,246,0.06);}

/* ===== 徽章 ===== */
.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600;}
.badge-pending{background:rgba(245,158,11,0.15);color:#fbbf24;}
.badge-approved{background:rgba(16,185,129,0.15);color:#34d399;}
.badge-rejected{background:rgba(239,68,68,0.15);color:#f87171;}
.badge-cancelled{background:rgba(148,163,184,0.15);color:var(--text-muted);}

/* ===== 开关 ===== */
.setting-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--border);}
.setting-row:last-child{border-bottom:none;}
.setting-info label{font-size:14px;font-weight:500;}
.setting-info p{font-size:12px;color:var(--text-muted);margin-top:3px;}
.toggle{position:relative;width:44px;height:24px;flex-shrink:0;}
.toggle input{opacity:0;width:0;height:0;}
.toggle-track{position:absolute;inset:0;background:rgba(255,255,255,0.15);border-radius:24px;cursor:pointer;transition:.3s;}
.toggle-track::before{content:'';position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.3s;box-shadow:0 2px 4px rgba(0,0,0,0.3);}
.toggle input:checked+.toggle-track{background:var(--primary);}
.toggle input:checked+.toggle-track::before{transform:translateX(20px);}

/* ===== Toast ===== */
#toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:10px;}
.toast{display:flex;align-items:center;gap:12px;padding:14px 18px;background:rgba(15,23,42,0.95);border:1px solid var(--border);border-radius:12px;min-width:280px;max-width:360px;box-shadow:var(--shadow);backdrop-filter:blur(20px);animation:slideIn .3s ease;}
.toast.success{border-left:3px solid var(--success);}
.toast.error{border-left:3px solid var(--danger);}
.toast.warning{border-left:3px solid var(--warning);}
.toast.info{border-left:3px solid var(--primary);}
.toast-icon{font-size:18px;flex-shrink:0;}
.toast-body{flex:1;}
.toast-title{font-size:14px;font-weight:600;}
.toast-msg{font-size:13px;color:var(--text-muted);margin-top:2px;}
.toast-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:16px;padding:0;line-height:1;}
.toast-close:hover{color:var(--text);}
@keyframes slideIn{from{opacity:0;transform:translateX(20px);}to{opacity:1;transform:translateX(0);}}

/* ===== 表单 ===== */
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.form-actions{display:flex;gap:10px;margin-top:8px;}
.form-actions .btn{flex:1;}

/* ===== 快捷操作区 ===== */
.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:24px;}
.quick-btn{background:rgba(255,255,255,0.04);border:1px solid var(--border);border-radius:12px;padding:16px;text-align:center;cursor:pointer;transition:all .2s;}
.quick-btn:hover{background:rgba(59,130,246,0.08);border-color:var(--primary);}
.quick-btn .q-icon{font-size:24px;margin-bottom:8px;}
.quick-btn .q-label{font-size:13px;font-weight:500;color:var(--text-muted);}

/* ===== 空状态 ===== */
.empty{text-align:center;padding:48px 20px;color:var(--text-muted);}
.empty .empty-icon{font-size:40px;margin-bottom:12px;}
.empty p{font-size:14px;}

/* ===== 错误/成功卡片 ===== */
.result-card{border-radius:12px;padding:20px;margin-bottom:16px;text-align:center;}
.result-card.error{background:rgba(239,68,68,0.1);border:1px solid rgba(239,68,68,0.3);}
.result-card.error h3{color:#f87171;}
.result-card.success{background:rgba(16,185,129,0.1);border:1px solid rgba(16,185,129,0.3);}
.result-card.success h3{color:#34d399;}
.result-card p{color:var(--text-muted);font-size:14px;margin-top:8px;}

/* ===== 管理员登录入口 ===== */
.admin-link{text-align:center;margin-top:24px;}
.admin-link a{font-size:12px;color:var(--text-muted);cursor:pointer;text-decoration:none;}
.admin-link a:hover{color:var(--primary);}

/* ===== 状态结果 ===== */
.status-entry{background:rgba(255,255,255,0.03);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:12px;}
.status-entry .meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
.status-row{display:flex;gap:8px;margin-bottom:6px;font-size:13px;}
.status-row .key{color:var(--text-muted);min-width:80px;}

/* ===== 批量操作栏 ===== */
.bulk-bar{background:rgba(59,130,246,0.08);border:1px solid rgba(59,130,246,0.2);border-radius:10px;padding:12px 16px;margin-bottom:12px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.bulk-bar span{font-size:13px;color:var(--primary);font-weight:500;}

/* ===== 数据大屏模块 ===== */
.sync-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.sync-header-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.sync-project-select{min-width:220px;padding:10px 14px;background:rgba(255,255,255,0.06);border:1px solid var(--border);border-radius:10px;color:var(--text);outline:none;}
.sync-tabs{display:flex;gap:8px;margin:-8px 0 18px;padding:6px;background:rgba(255,255,255,0.04);border:1px solid var(--border);border-radius:12px;width:max-content;max-width:100%;overflow-x:auto;}
.sync-tab{background:transparent;border:0;color:var(--text-muted);padding:9px 16px;border-radius:8px;cursor:pointer;font-weight:700;font-family:inherit;}
.sync-tab:hover{color:var(--text);background:rgba(255,255,255,0.06);}
.sync-tab.active{background:var(--primary);color:#fff;}
.sync-content{display:flex;flex-direction:column;gap:16px;}
.sync-loading{min-height:180px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--text-muted);}
.sync-screen-grid{display:grid;grid-template-columns:1fr 1.7fr 1.1fr;gap:14px;}
.sync-hero-card,.sync-panel,.sync-kpi-row>div{background:var(--bg-card);border:1px solid var(--border);border-top:1px solid rgba(255,255,255,0.12);border-radius:var(--radius);padding:18px;box-shadow:0 4px 20px rgba(0,0,0,0.15);}
.sync-hero-card{display:flex;flex-direction:column;justify-content:center;min-height:180px;border-left:3px solid var(--accent);}
.sync-hero-card span,.sync-kpi-row span{font-size:12px;color:var(--text-muted);font-weight:700;}
.sync-hero-card strong{font-size:58px;line-height:1;margin:12px 0;color:#fff;}
.sync-hero-card small{font-size:13px;color:#fbbf24;}
.sync-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;}
.sync-panel-head h3{font-size:15px;}
.sync-panel-head span,.sync-footnote{font-size:12px;color:var(--text-muted);}
.sync-bar-row{display:grid;grid-template-columns:150px 1fr;gap:12px;align-items:center;margin:10px 0;}
.sync-bar-row div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:13px;}
.sync-bar-row span{color:#fbbf24;font-weight:700;}
.sync-bar,.sync-room-meter{height:8px;background:rgba(148,163,184,0.16);border-radius:0;overflow:hidden;}
.sync-bar i,.sync-room-meter i{display:block;height:100%;background:#38bdf8;}
.sync-ring{--pct:0%;width:126px;height:126px;border-radius:50%;background:conic-gradient(#38bdf8 var(--pct),rgba(148,163,184,0.18) 0);display:flex;align-items:center;justify-content:center;margin:4px auto 16px;}
.sync-ring div{width:92px;height:92px;border-radius:50%;background:var(--bg-dark);display:flex;flex-direction:column;align-items:center;justify-content:center;}
.sync-ring strong{font-size:22px;}
.sync-ring span{font-size:11px;color:var(--text-muted);}
.sync-upload-panel{text-align:center;}
.sync-upload-panel p{font-size:14px;color:var(--text-muted);}
.sync-upload-panel b{font-size:20px;color:#fff;}
.sync-kpi-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;}
.sync-kpi-row strong{display:block;font-size:30px;line-height:1.1;margin-top:8px;}
.sync-two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:14px;}
.sync-tag-row{position:relative;width:100%;display:flex;align-items:center;justify-content:space-between;margin:9px 0;padding:8px 0;background:transparent;border:0;color:var(--text);font-family:inherit;text-align:left;cursor:pointer;}
.sync-tag-row i{position:absolute;left:0;bottom:0;height:3px;background:#38bdf8;opacity:.9;}
.sync-tag-row b{color:#fff;}
.sync-feed-list{height:236px;overflow:hidden;display:flex;flex-direction:column;gap:8px;}
.sync-feed-item{display:grid;grid-template-columns:10px minmax(140px,1fr) minmax(220px,2fr) 64px;align-items:center;gap:10px;min-height:40px;padding:9px 10px;background:rgba(0,0,0,0.15);border:1px solid rgba(255,255,255,0.06);}
.sync-feed-dot{width:8px;height:8px;background:var(--warning);display:inline-block;}
.sync-feed-dot.ok{background:var(--success);}
.sync-feed-dot.danger{background:var(--danger);}
.sync-feed-item span{font-size:12px;color:var(--text-muted);}
.sync-feed-item em{font-style:normal;font-size:12px;color:#bbf7d0;text-align:right;}
.sync-room-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end;}
.sync-room-tools button{background:rgba(255,255,255,0.04);border:1px solid var(--border);color:var(--text-muted);padding:5px 8px;border-radius:6px;cursor:pointer;}
.sync-room-tools button.active{background:var(--accent);color:#111827;border-color:var(--accent);font-weight:700;}
.sync-room-tools button:disabled{opacity:.4;cursor:not-allowed;}
.sync-room-grid{display:grid;gap:8px;}
.sync-room-grid.mode-50{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));}
.sync-room-grid.mode-100{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));}
.sync-room-card{border:1px solid var(--border);border-left:3px solid var(--success);padding:9px;background:rgba(0,0,0,0.12);min-height:82px;}
.sync-room-card.warn{border-left-color:var(--danger);}
.sync-room-card.pending{border-left-color:var(--warning);}
.sync-room-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:8px;}
.sync-room-head strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sync-room-head span{font-size:11px;color:var(--text-muted);}
.sync-room-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:8px;font-size:11px;color:var(--text-muted);}
.sync-room-stats b{display:block;color:#fff;font-size:13px;}
.sync-records-card .search-bar{align-items:stretch;flex-wrap:wrap;}
.sync-records-card .search-bar input,.sync-records-card .search-bar select{min-width:160px;}
.sync-facets{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;}
.sync-facets button{background:rgba(56,189,248,0.12);border:1px solid rgba(56,189,248,0.28);color:#bae6fd;border-radius:999px;padding:5px 10px;cursor:pointer;}
.sync-record-summary,.sync-pager{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:12px;color:var(--text-muted);font-size:13px;}
.sync-record-summary b{color:#fff;}
.sync-pager{justify-content:flex-end;margin-top:12px;}

/* ===== 加载动画 ===== */
.spinner{width:20px;height:20px;border:2px solid rgba(59,130,246,0.2);border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite;display:inline-block;}
@keyframes spin{to{transform:rotate(360deg);}}

/* ===== 响应式 ===== */
@media(max-width:768px){
  .sidebar{transform:translateX(-100%);transition:.3s;background:rgb(10,15,30);backdrop-filter:none;}
  .sidebar.open{transform:translateX(0);}
  .main-content{margin-left:0;padding:16px;}
  .form-row{grid-template-columns:1fr;}
  .stats-grid{grid-template-columns:1fr 1fr;}
  .sync-page-header{flex-direction:column;}
  .sync-screen-grid,.sync-two-col,.sync-kpi-row{grid-template-columns:1fr;}
  .sync-tabs{width:100%;}
  .sync-feed-item{grid-template-columns:10px 1fr;align-items:start;}
  .sync-feed-item em{text-align:left;}
  .sync-bar-row{grid-template-columns:1fr;}
  .auth-card{padding:32px 24px;backdrop-filter:none;background:rgb(15,23,42);}
  .mobile-menu-btn{display:flex!important;}
  .card{backdrop-filter:none;}
}
.mobile-menu-btn{display:none;position:fixed;top:16px;left:16px;z-index:200;background:rgb(15,23,42);border:1px solid var(--border);border-radius:10px;width:40px;height:40px;align-items:center;justify-content:center;cursor:pointer;}
.overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:90;}
.overlay.show{display:block;}
