@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600&display=swap";:root{--admin-bg:#f4f6f8;--admin-header:#0f172a;--admin-sider:#111827;--admin-accent:#0f766e;--admin-text-muted:#64748b;--admin-border:#d7dee7;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:IBM Plex Sans,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--admin-bg);color:#1e293b}a{color:var(--admin-accent)}.admin-shell{min-height:100vh}.admin-shell>.ant-layout-sider{max-height:100vh;top:0;height:100vh!important;position:sticky!important}.brand-block{color:#e2e8f0;letter-spacing:.02em;flex-shrink:0;align-items:center;gap:10px;height:48px;padding:0 16px;font-weight:600;display:flex}.brand-mark{border-radius:6px;flex-shrink:0;width:28px;height:28px;display:block}.brand-text{white-space:nowrap}.ant-layout-sider-children{flex-direction:column;height:100%;display:flex;overflow:hidden}.ant-layout-sider-children .ant-menu{flex:1;min-height:0;overflow:auto}.support-dock{z-index:2;background:linear-gradient(#0000 0%,#0b1220 28% 100%);flex-shrink:0;margin-top:auto;padding:12px 12px 16px;position:sticky;bottom:0}.support-dock--collapsed{padding-inline:8px}.support-button{letter-spacing:.01em;background:linear-gradient(135deg,#be123c 0%,#e11d48 48%,#f43f5e 100%);border:1px solid #fb718559;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:44px;padding:10px 14px;font-size:14px;font-weight:600;transition:transform .18s,box-shadow .18s,filter .18s;display:flex;box-shadow:inset 0 0 0 1px #ffffff0f,0 8px 20px #be123c59;color:#fff!important;text-decoration:none!important}.support-dock--collapsed .support-button{min-height:40px;padding:10px}.support-button__icon{justify-content:center;align-items:center;font-size:16px;line-height:1;animation:1.8s ease-in-out infinite support-heart-pulse;display:inline-flex}.support-button__label{white-space:nowrap}.support-button:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:inset 0 0 0 1px #ffffff1a,0 10px 24px #be123c73;color:#fff!important}.support-button:active{filter:brightness(.98);transform:translateY(0)}.support-button:focus-visible{outline-offset:2px;outline:2px solid #fda4af}@keyframes support-heart-pulse{0%,to{transform:scale(1)}45%{transform:scale(1.12)}60%{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.support-button,.support-button__icon{transition:none;animation:none}}.login-brand{align-items:center;gap:12px;margin-bottom:8px;display:flex}.admin-header{color:#e2e8f0;justify-content:space-between;align-items:center;display:flex;background:var(--admin-header)!important;padding-inline:16px!important}.header-title{color:#f8fafc!important}.admin-content{border:1px solid var(--admin-border);background:#fff;border-radius:6px;min-height:calc(100vh - 72px);margin:12px;padding:12px 16px 24px}.login-shell{background:linear-gradient(145deg, #0f766e14, transparent 40%), linear-gradient(320deg, #0f172a0f, transparent 45%), var(--admin-bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{width:min(420px,100%);box-shadow:0 8px 24px #0f172a14}.app-center{place-items:center;min-height:100vh;display:grid}.setup-layout .setup-header{justify-content:space-between}.setup-content{background:linear-gradient(145deg, #0f766e0f, transparent 42%), linear-gradient(320deg, #0f172a0a, transparent 48%), var(--admin-bg);min-height:calc(100vh - 64px);padding:24px 16px 40px}.setup-shell{width:min(880px,100%);margin:0 auto}.setup-card{border:1px solid var(--admin-border);background:#fff;border-radius:8px;padding:28px 28px 20px;box-shadow:0 8px 24px #0f172a0f}.setup-checklist-item{border-bottom:1px solid var(--admin-border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.setup-checklist-item:last-child{border-bottom:none;padding-bottom:0}.code-block{color:#e2e8f0;white-space:pre-wrap;word-break:break-word;background:#0f172a;border-radius:4px;max-height:420px;margin:0;padding:12px;font-size:12px;line-height:1.45;overflow:auto}@media (width<=768px){.admin-content{margin:8px;padding:10px}}
