.admin-sider.ant-layout-sider{height:100vh;position:sticky;top:0;overflow:hidden;background:#0f172a!important}.admin-sider .ant-layout-sider-children{flex-direction:column;height:100%;display:flex}.admin-sider .ant-layout-sider-trigger{color:#94a3b8;background:#020617;border-top:1px solid #1e293b}.admin-sider-brand{background:#02061766;border-bottom:1px solid #1e293b;flex-shrink:0;align-items:center;gap:12px;min-height:72px;padding:14px 16px 12px;display:flex}.admin-sider-brand.is-collapsed{justify-content:center;padding:16px 8px}.admin-sider-brand-container{text-align:center;width:100%}.admin-sider-brand-copy{object-position:center center;background:#fff;border-radius:10px;width:100%;min-width:0;padding:5px}.admin-sider-logo{object-position:center center}.admin-sider-brand.is-collapsed img{object-position:center}.admin-sider-branch{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:6px;font-size:11px;font-weight:500;overflow:hidden}.admin-sidebar-menu.ant-menu{flex:1;padding:12px;overflow:hidden auto;background:#0f172a!important;border-inline-end:0!important}.admin-sidebar-menu.ant-menu-inline>.ant-menu-item,.admin-sidebar-menu.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{color:#cbd5e1;border-radius:12px;width:100%;height:42px;margin-block:4px;margin-inline:0;font-size:14px;font-weight:500;line-height:42px}.admin-sidebar-menu.ant-menu-inline .ant-menu-sub{background:0 0!important}.admin-sidebar-menu.ant-menu-inline .ant-menu-sub .ant-menu-item{color:#94a3b8;border-radius:12px;width:100%;height:38px;margin-inline:0;line-height:38px;padding-inline-start:36px!important}.admin-sidebar-menu .ant-menu-item:hover,.admin-sidebar-menu .ant-menu-submenu-title:hover{color:#fff!important;background:#1e293bcc!important}.admin-sidebar-menu .ant-menu-submenu-arrow{color:#64748b;transition:transform .16s}.admin-sidebar-menu .ant-menu-submenu-selected>.ant-menu-submenu-title,.admin-sidebar-menu .ant-menu-submenu-selected>.ant-menu-submenu-title .anticon{color:#c7d2fe}.admin-sidebar-menu.ant-menu-dark .ant-menu-item-selected{border-radius:12px;font-weight:600;box-shadow:0 8px 16px -6px #4f46e573;color:#fff!important;background:#4f46e5!important}.admin-sidebar-menu.ant-menu-dark .ant-menu-item-selected a{color:#fff!important}.ant-menu-submenu-popup .ant-menu-item-selected{border-radius:12px;color:#fff!important;background:#4f46e5!important}.admin-sider-user{background:#0206174d;border-top:1px solid #1e293b;flex-shrink:0;padding:12px}.admin-sider-user-row{border-radius:12px;align-items:center;gap:12px;padding:8px;display:flex}.admin-sider-user-row:hover{background:#1e293b80}.admin-sider-user-avatar{flex-shrink:0;position:relative}.admin-sider-user-avatar .ant-avatar{background:linear-gradient(to top right,#6366f1,#a855f7);font-size:12px;font-weight:700}.admin-online-dot{background:#10b981;border:2px solid #0f172a;border-radius:999px;width:10px;height:10px;position:absolute;bottom:0;right:0}.admin-sider-user-meta{flex:1;min-width:0}.admin-sider-user-meta p{color:#fff;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-weight:600;overflow:hidden}.admin-sider-user-meta span{color:#34d399;font-size:11px;font-weight:500}.admin-sidebar-mask{z-index:999;background:#070a128c;position:fixed;inset:0}@media (width<=991px){.admin-sider.ant-layout-sider{z-index:1000;height:100vh;position:fixed;top:0;left:0}}:root{--nh-blue:#1966fe;--nh-purple:#7928ca;--nh-pink:#eb368f;--nh-font:"Plus Jakarta Sans", Inter, Segoe UI, sans-serif}.nh-page{min-height:100vh;font-family:var(--nh-font);-webkit-tap-highlight-color:transparent;flex-direction:column;transition:background-color .25s,color .25s;display:flex}.nh-page *{box-sizing:border-box}.nh-page.nh-dark{color:#f8fafc;background:#060911}.nh-page.nh-light{color:#090d16;background:#f8fafc}.nh-header{z-index:50;transition:background-color .25s,border-color .25s;position:sticky;top:0}.nh-dark .nh-header{background:#0b0f19;border-bottom:1px solid #ffffff1a;box-shadow:0 10px 30px -5px #0009}.nh-light .nh-header{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 4px 20px -2px #0000000d}.nh-header-inner{justify-content:space-between;align-items:center;gap:16px;max-width:80rem;height:80px;margin:0 auto;padding:0 1rem;display:flex}.nh-nav{align-items:center;gap:4px;display:none}.nh-nav-link{appearance:none;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 14px;font-family:inherit;font-size:14px;font-weight:600;text-decoration:none;transition:background-color .2s}.nh-nav-link:hover{background:#64748b1f}.nh-header-actions{align-items:center;gap:8px;display:flex}.nh-icon-btn{cursor:pointer;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;transition:background-color .2s,border-color .2s;display:inline-flex}.nh-dark .nh-icon-btn{color:#fbbf24;background:#ffffff0d;border:1px solid #ffffff1a}.nh-dark .nh-icon-btn:hover{background:#ffffff1a}.nh-light .nh-icon-btn{color:#1966fe;background:#f1f5f9;border:1px solid #cbd5e1;box-shadow:0 1px 2px #0000000a}.nh-light .nh-icon-btn:hover{background:#e2e8f0}.nh-divider{width:1px;height:24px;display:none}.nh-dark .nh-divider{background:#ffffff26}.nh-light .nh-divider{background:#cbd5e1}.nh-btn-ghost{appearance:none;cursor:pointer;color:inherit;background:0 0;border:0;border-radius:12px;padding:10px 16px;font-family:inherit;font-size:14px;font-weight:700;text-decoration:none;transition:background-color .2s}.nh-dark .nh-btn-ghost:hover{background:#ffffff1a}.nh-light .nh-btn-ghost:hover{background:#f1f5f9}.nh-btn-gradient{appearance:none;color:#fff;cursor:pointer;background:linear-gradient(90deg,#2563eb,#4f46e5,#db2777);border:0;border-radius:12px;justify-content:center;align-items:center;gap:10px;font-family:inherit;font-weight:800;text-decoration:none;transition:opacity .2s,transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 8px 20px -8px #1966fe8c}.nh-btn-gradient:hover{opacity:.95;transform:translateY(-2px);box-shadow:0 0 35px -5px #1966fe59}.nh-btn-gradient.lg{border-radius:16px;padding:16px 32px;font-size:16px}.nh-btn-gradient.sm{white-space:nowrap;padding:10px 20px;font-size:14px}.nh-cta-short{display:none}.nh-btn-outline{appearance:none;cursor:pointer;border-radius:16px;justify-content:center;align-items:center;gap:10px;padding:16px 32px;font-family:inherit;font-weight:700;text-decoration:none;transition:background-color .2s,border-color .2s;display:inline-flex}.nh-dark .nh-btn-outline{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a}.nh-dark .nh-btn-outline:hover{background:#ffffff1a}.nh-light .nh-btn-outline{color:#0f172a;background:#fff;border:1px solid #cbd5e1;box-shadow:0 1px 2px #0000000a}.nh-light .nh-btn-outline:hover{background:#f8fafc}.nh-hero{padding:64px 16px 96px;position:relative;overflow:hidden}.nh-blur{pointer-events:none;filter:blur(150px);border-radius:999px;position:absolute}.nh-blur-blue{background:#2563eb26;width:650px;height:380px;top:25%;left:50%;transform:translate(-50%,-50%)}.nh-blur-pink{background:#db277726;width:450px;height:300px;top:33%;right:25%}.nh-hero-inner{z-index:1;text-align:center;max-width:72rem;margin:0 auto;position:relative}.nh-badge{letter-spacing:.02em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;align-items:center;gap:10px;margin-bottom:32px;padding:8px 16px;font-size:12px;font-weight:700;display:inline-flex}.nh-dark .nh-badge{color:#e2e8f0;background:#ffffff0d;border:1px solid #ffffff1a}.nh-light .nh-badge{color:#1e293b;background:#fff;border:1px solid #cbd5e1;box-shadow:0 1px 2px #0000000a}.nh-ping{flex-shrink:0;width:10px;height:10px;position:relative}.nh-ping:before,.nh-ping:after{content:"";background:#ec4899;border-radius:999px;position:absolute;inset:0}.nh-ping:before{opacity:.75;animation:1.4s cubic-bezier(0,0,.2,1) infinite nh-ping}@keyframes nh-ping{75%,to{opacity:0;transform:scale(2)}}.nh-hero h1{letter-spacing:-.03em;word-spacing:.04em;margin:0 0 24px;font-size:clamp(2rem,6vw,4.5rem);font-weight:800;line-height:1.15}.nh-text-gradient{background:linear-gradient(135deg,#1966fe 0%,#7928ca 45%,#eb368f 100%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.nh-hero-sub{max-width:48rem;margin:0 auto 40px;font-size:clamp(1rem,2vw,1.25rem);font-weight:400;line-height:1.7}.nh-dark .nh-hero-sub{color:#cbd5e1}.nh-light .nh-hero-sub{color:#334155}.nh-hero-sub strong{color:var(--nh-blue);font-weight:700}.nh-hero-sub .nh-underline{color:inherit;text-underline-offset:3px;font-weight:700;-webkit-text-decoration:underline #ec4899;text-decoration:underline #ec4899}.nh-cta-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-bottom:64px;display:flex}.nh-preview{text-align:left;border-radius:24px;max-width:64rem;margin:0 auto;padding:8px;box-shadow:0 25px 50px -12px #00000059}.nh-dark .nh-preview{background:#0d121f;border:1px solid #ffffff1a}.nh-light .nh-preview{background:#fff;border:1px solid #e2e8f0;box-shadow:0 20px 40px -16px #0f172a1f}.nh-preview-bar{border-bottom:1px solid #64748b26;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:12px 16px;display:flex}.nh-dots{align-items:center;gap:8px;display:flex}.nh-dot{border-radius:999px;width:12px;height:12px}.nh-preview-url{opacity:.5;margin-left:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.nh-live-pill{text-transform:uppercase;color:#34d399;background:#10b98133;border:1px solid #10b9814d;border-radius:999px;padding:2px 10px;font-size:10px;font-weight:800}.nh-preview-grid{grid-template-columns:1fr;gap:12px;padding:8px;display:grid}.nh-mini-card{border-radius:16px;padding:16px}.nh-dark .nh-mini-card{background:#0e1424;border:1px solid #ffffff14}.nh-light .nh-mini-card{background:#f8fafc;border:1px solid #e2e8f0}.nh-mini-card-head{opacity:.7;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.nh-mini-card-value{letter-spacing:-.03em;font-size:24px;font-weight:900}.nh-mini-card-meta{margin-top:4px;font-size:11px;font-weight:700}.nh-section{border-top:1px solid #64748b26;padding:80px 16px}.nh-section-inner{max-width:80rem;margin:0 auto}.nh-section-head{text-align:center;max-width:48rem;margin:0 auto 64px}.nh-section-head h2{letter-spacing:-.03em;margin:0 0 16px;font-size:clamp(1.75rem,4vw,2.25rem);font-weight:800}.nh-section-head p{opacity:.7;margin:0;font-size:16px}.nh-feature-grid{grid-template-columns:1fr;gap:24px;display:grid}.nh-feature-card{border-radius:24px;padding:32px;transition:transform .25s,border-color .25s,box-shadow .25s}.nh-dark .nh-feature-card{background:#0e1424;border:1px solid #ffffff1a}.nh-light .nh-feature-card{background:#fff;border:1px solid #e2e8f0}.nh-feature-card:hover{transform:translateY(-4px)}.nh-dark .nh-feature-card:hover{border-color:#1966fe66}.nh-light .nh-feature-card:hover{border-color:#1966fe;box-shadow:0 12px 30px -16px #0f172a33}.nh-feature-icon{border-radius:16px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:24px;font-size:22px;display:flex}.nh-feature-card h3{margin:0 0 8px;font-size:20px;font-weight:700}.nh-feature-card p{opacity:.7;margin:0;font-size:14px;line-height:1.7}.nh-eco-grid{grid-template-columns:1fr;gap:16px;display:grid}.nh-eco-card{text-align:left;border-radius:20px;padding:24px}.nh-dark .nh-eco-card{background:#0e1424;border:1px solid #ffffff1a}.nh-light .nh-eco-card{background:#fff;border:1px solid #e2e8f0}.nh-eco-card span{letter-spacing:.08em;text-transform:uppercase;color:var(--nh-blue);margin-bottom:8px;font-size:11px;font-weight:800;display:block}.nh-eco-card h3{margin:0 0 8px;font-size:18px;font-weight:800}.nh-eco-card p{opacity:.7;margin:0;font-size:14px;line-height:1.6}.nh-footer{text-align:center;opacity:.6;border-top:1px solid #64748b26;padding:32px 16px;font-size:12px}.nh-mobile-nav{flex-direction:column;gap:4px;padding:8px 16px 16px;display:none}.nh-mobile-nav.open{display:flex}.nh-menu-toggle{display:inline-flex}@media (width<=639px){.nh-btn-ghost{display:none}.nh-header-inner{height:68px}.nh-cta-full{display:none}.nh-cta-short{display:inline}.nh-btn-gradient.sm{padding:8px 12px;font-size:13px}.nh-live-pill{display:none}.nh-preview-url{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}}@media (width>=640px){.nh-header-inner,.nh-hero,.nh-section{padding-left:24px;padding-right:24px}.nh-divider{display:block}.nh-preview{padding:12px}.nh-preview-grid{padding:16px}}@media (width>=768px){.nh-nav{display:flex}.nh-menu-toggle,.nh-mobile-nav{display:none!important}.nh-preview-grid{grid-template-columns:repeat(3,1fr)}.nh-feature-grid,.nh-eco-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.nh-hero{padding-top:96px;padding-bottom:144px}.nh-header-inner,.nh-hero,.nh-section{padding-left:32px;padding-right:32px}.nh-feature-grid{grid-template-columns:repeat(3,1fr)}.nh-eco-grid{grid-template-columns:repeat(4,1fr)}}.nh-dashboard{font-family:var(--nh-font)}.nh-dashboard-title{letter-spacing:-.03em;color:#0f172a;margin:0;font-size:28px;font-weight:900}.nh-dashboard-sub{color:#64748b;margin:6px 0 24px;font-size:13px}.nh-metric-grid{grid-template-columns:1fr;gap:16px;display:grid}.nh-metric-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:20px;transition:border-color .2s,box-shadow .2s;box-shadow:0 10px 30px -10px #0000000a}.nh-metric-card:hover{border-color:#1966fe80;box-shadow:0 8px 20px -12px #1966fe40}.nh-metric-head{color:#64748b;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.nh-metric-head .anticon{font-size:16px}.nh-metric-value{letter-spacing:-.03em;color:#0f172a;font-size:24px;font-weight:900;line-height:1.2}@media (width>=640px){.nh-metric-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1100px){.nh-metric-grid{grid-template-columns:repeat(4,1fr)}}.ant-layout-sider .ant-menu-item,.ant-layout-sider .ant-menu-submenu-title{border-radius:12px!important;width:auto!important;margin-inline:0!important}.ant-layout-sider .ant-menu-item-selected{font-weight:700;background:#4f46e5!important}.ant-layout-sider .ant-menu-item:hover,.ant-layout-sider .ant-menu-submenu-title:hover{background:#94a3b81f!important}.ant-layout-sider .ant-menu-item-selected:hover{background:#4f46e5!important}.auth-page{min-height:100vh;font-family:var(--nh-font);flex-direction:column;justify-content:space-between;padding:16px;transition:background .3s,color .3s;display:flex}.auth-page.auth-light{color:#0f172a;background-color:#f1f5f9;background-image:radial-gradient(at 0 0,#1966fe14 0,#0000 50%),radial-gradient(at 100% 100%,#eb368f0f 0,#0000 50%),radial-gradient(#7928ca0d 0,#0000 50%)}.auth-page.auth-dark{color:#f8fafc;background-color:#060911;background-image:radial-gradient(at 0 0,#1966fe26 0,#0000 50%),radial-gradient(at 100% 100%,#eb368f1f 0,#0000 50%),radial-gradient(#0f172acc 0,#0000 50%)}.auth-topbar,.auth-bottom{width:100%;max-width:72rem;margin:0 auto}.auth-topbar{z-index:20;justify-content:space-between;align-items:center;padding:8px 0;display:flex}.auth-back{align-items:center;gap:8px;font-size:12px;font-weight:700;text-decoration:none;transition:color .2s;display:inline-flex}.auth-light .auth-back{color:#64748b}.auth-light .auth-back:hover{color:#1966fe}.auth-dark .auth-back{color:#94a3b8}.auth-dark .auth-back:hover{color:#60a5fa}.auth-theme-btn{cursor:pointer;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;transition:transform .2s,background .2s;display:inline-flex;box-shadow:0 1px 2px #0f172a0f}.auth-theme-btn:hover{transform:scale(1.05)}.auth-light .auth-theme-btn{color:#1966fe;background:#fff;border:1px solid #cbd5e1e6}.auth-dark .auth-theme-btn{color:#fbbf24;background:#1e293b;border:1px solid #ffffff1a}.auth-main{width:100%;max-width:64rem;margin:16px auto}.auth-card{border-radius:28px;grid-template-columns:1fr;min-height:560px;transition:background .3s,border-color .3s;display:grid;overflow:hidden}.auth-light .auth-card{background:#fff;border:1px solid #e2e8f0f2;box-shadow:0 25px 70px -15px #0f172a2e}.auth-dark .auth-card{background:#0c101d;border:1px solid #ffffff1a;box-shadow:0 30px 80px -10px #000000b3}.auth-brand{color:#fff;background:linear-gradient(135deg,#0e1628 0%,#101b33 50%,#0a101f 100%);flex-direction:column;justify-content:space-between;gap:24px;padding:32px 28px;display:flex;position:relative;overflow:hidden}.auth-brand-ring,.auth-brand-blur{pointer-events:none;border-radius:999px;position:absolute}.auth-brand-ring-lg{border:1px solid #ffffff0d;width:288px;height:288px;bottom:-80px;right:-80px}.auth-brand-ring-sm{border:1px solid #1966fe1a;width:208px;height:208px;bottom:-40px;right:-40px}.auth-brand-blur-blue{filter:blur(100px);background:#2563eb1a;width:320px;height:320px;top:0;right:0}.auth-brand-blur-pink{filter:blur(100px);background:#db27771a;width:240px;height:240px;bottom:0;left:0}.auth-brand-inner{z-index:1;position:relative}.auth-pill{color:#e2e8f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff26;border-radius:999px;align-items:center;gap:8px;margin-bottom:20px;padding:6px 14px;font-size:11px;font-weight:700;display:inline-flex}.auth-pill-dot{background:#34d399;border-radius:999px;width:8px;height:8px;animation:1.4s cubic-bezier(0,0,.2,1) infinite auth-ping}@keyframes auth-ping{75%,to{opacity:.35;transform:scale(1.8)}}.auth-tagline{letter-spacing:.2em;text-transform:uppercase;color:#94a3b8;margin-top:6px;font-size:10px;font-weight:700}.auth-brand h1{letter-spacing:-.03em;margin:20px 0 0;font-size:clamp(1.35rem,3vw,1.85rem);font-weight:800;line-height:1.3}.auth-brand-lead{color:#cbd5e1;margin:12px 0 0;font-size:13px;line-height:1.65}.auth-feature-list{flex-direction:column;gap:12px;margin-top:20px;display:flex}.auth-feature{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:16px;align-items:flex-start;gap:14px;padding:14px;display:flex}.auth-feature-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.auth-feature-icon.blue{color:#60a5fa;background:#3b82f633;border:1px solid #60a5fa4d}.auth-feature-icon.pink{color:#f472b6;background:#ec489933;border:1px solid #f472b64d}.auth-feature strong{color:#fff;font-size:12px;font-weight:700;display:block}.auth-feature p{color:#94a3b8;margin:2px 0 0;font-size:11px;line-height:1.45}.auth-brand-foot{z-index:1;color:#94a3b8;border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding-top:24px;font-size:11px;display:flex;position:relative}.auth-brand-foot span:last-child{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.auth-panel{flex-direction:column;justify-content:space-between;min-width:0;padding:32px 28px;display:flex}.auth-light .auth-panel{color:#0f172a;background:#fff}.auth-dark .auth-panel{color:#fff;background:#0e1424}.auth-panel-head{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:12px;padding-bottom:24px;display:flex}.auth-dark .auth-panel-head{border-bottom-color:#ffffff0d}.auth-tabs{border-radius:12px;align-items:center;gap:4px;padding:4px;font-size:12px;font-weight:700;display:inline-flex}.auth-light .auth-tabs{background:#f1f5f9;border:1px solid #e2e8f0}.auth-dark .auth-tabs{background:#1e293bb3;border:1px solid #ffffff1a}.auth-tab{color:inherit;border-radius:8px;padding:8px 16px;text-decoration:none;transition:background .2s,color .2s,box-shadow .2s}.auth-light .auth-tab{color:#475569}.auth-dark .auth-tab{color:#94a3b8}.auth-light .auth-tab.active{color:#1966fe;background:#fff;box-shadow:0 1px 2px #0f172a14}.auth-dark .auth-tab.active{color:#fff;background:#334155}.auth-ssl{align-items:center;gap:4px;font-size:12px;display:none}.auth-light .auth-ssl{color:#475569}.auth-dark .auth-ssl{color:#cbd5e1}.auth-ssl .anticon{color:#10b981}.auth-panel-body{flex:1;padding:28px 0}.auth-panel-body h2{letter-spacing:-.03em;margin:0;font-size:clamp(1.5rem,3vw,1.85rem);font-weight:800}.auth-panel-body .auth-sub{margin:8px 0 0;font-size:13px;line-height:1.55}.auth-light .auth-sub{color:#64748b}.auth-dark .auth-sub{color:#94a3b8}.auth-form{margin-top:28px}.auth-form .ant-form-item{margin-bottom:18px}.auth-form .ant-form-item-label>label{letter-spacing:.06em;text-transform:uppercase;height:auto!important;font-size:11px!important;font-weight:700!important}.auth-light .auth-form .ant-form-item-label>label{color:#475569!important}.auth-dark .auth-form .ant-form-item-label>label{color:#cbd5e1!important}.auth-form .ant-input-affix-wrapper,.auth-form .ant-input,.auth-form .ant-select-selector{box-shadow:0 1px 2px #0f172a0a;border-radius:12px!important;min-height:48px!important}.auth-form .ant-input-affix-wrapper .ant-input{box-shadow:none;min-height:auto!important}.auth-light .auth-form .ant-input-affix-wrapper,.auth-light .auth-form .ant-input,.auth-light .auth-form .ant-select-selector{background:#f8fafcb3!important;border-color:#e2e8f0!important}.auth-dark .auth-form .ant-input-affix-wrapper,.auth-dark .auth-form .ant-input,.auth-dark .auth-form .ant-select-selector{color:#fff!important;background:#0f172a99!important;border-color:#ffffff1a!important}.auth-dark .auth-form .ant-input,.auth-dark .auth-form .ant-select-selection-item,.auth-dark .auth-form .ant-select-selection-placeholder{color:#fff!important}.auth-form .ant-btn-primary.auth-submit{border-radius:12px;height:52px;font-size:14px;font-weight:800;box-shadow:0 10px 25px -5px #1966fe66}.auth-grid-2{grid-template-columns:1fr;gap:0 14px;display:grid}.auth-links{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;font-size:12px;font-weight:600;display:flex}.auth-links a{color:#1966fe;text-decoration:none}.auth-dark .auth-links a{color:#60a5fa}.auth-links a:hover{text-decoration:underline}.auth-center-link{text-align:center;margin-top:8px;font-size:12px}.auth-light .auth-center-link{color:#64748b}.auth-dark .auth-center-link{color:#94a3b8}.auth-center-link a{color:#1966fe;font-weight:700;text-decoration:none}.auth-dark .auth-center-link a{color:#60a5fa}.auth-center-link a:hover{text-decoration:underline}.auth-panel-foot{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding-top:24px;font-size:12px;display:flex}.auth-dark .auth-panel-foot{color:#94a3b8;border-top-color:#ffffff0d}.auth-light .auth-panel-foot{color:#64748b}.auth-support{align-items:center;gap:8px;display:inline-flex}.auth-support-dot{background:#10b981;border-radius:999px;width:8px;height:8px}.auth-bottom{text-align:center;padding:12px 0;font-size:12px}.auth-light .auth-bottom{color:#94a3b8}.auth-dark .auth-bottom{color:#64748b}@media (width>=640px){.auth-page{padding:24px}.auth-ssl{display:inline-flex}.auth-grid-2{grid-template-columns:1fr 1fr}.auth-card{border-radius:32px}}@media (width<=1023px){.auth-feature-list{display:none}.auth-brand{gap:16px;padding:24px 28px}.auth-brand h1{margin-top:12px}}@media (width>=1024px){.auth-page{padding:40px}.auth-card{grid-template-columns:5fr 7fr;min-height:640px}.auth-brand{padding:40px}.auth-panel{padding:48px 56px}}:root{--vb-indigo:#4f46e5;--vb-indigo-600:#4f46e5;--vb-indigo-700:#4338ca;--vb-slate-900:#0f172a;--vb-slate-950:#020617;--vb-surface:#f8fafc}html,body,#root{height:100%}body{background:var(--vb-surface);color:#1e293b}.admin-shell.ant-layout{background:var(--vb-surface);min-height:100vh}.admin-main.ant-layout{background:var(--vb-surface);min-width:0}.admin-header.ant-layout-header{z-index:20;background:#fff;border-bottom:1px solid #e2e8f0cc;justify-content:space-between;align-items:center;gap:16px;height:64px;padding-inline:24px;line-height:64px;display:flex}.admin-header-left,.admin-header-right{align-items:center;gap:12px;min-width:0;display:flex}.admin-header-search.ant-input-affix-wrapper{background:#f1f5f9cc;border-color:#0000;border-radius:12px;width:288px;padding-block:4px}.admin-header-search.ant-input-affix-wrapper:hover,.admin-header-search.ant-input-affix-wrapper-focused{background:#fff;border-color:#818cf8}.admin-quick-pos.ant-btn{background:linear-gradient(90deg,#4f46e5,#6366f1);border-radius:12px;height:34px;font-size:12px;font-weight:600;box-shadow:0 4px 12px #4f46e52e}.admin-icon-btn.ant-btn{color:#475569;border:1px solid #e2e8f0cc;border-radius:12px;width:36px;height:36px}.admin-header-divider{background:#e2e8f0;width:1px;height:32px;margin-inline:4px}.admin-user-chip{cursor:pointer;align-items:center;gap:10px;padding-left:4px;line-height:1.2;display:flex}.admin-user-chip-name{color:#1e293b;font-size:12px;font-weight:700}.admin-user-chip-role{letter-spacing:.04em;text-transform:uppercase;color:#4f46e5;background:#eef2ff;border-radius:6px;margin-top:4px;padding:2px 6px;font-size:10px;font-weight:700;display:inline-block}.admin-user-avatar.ant-avatar{background:#4f46e5;border-radius:12px;font-size:12px;font-weight:700;box-shadow:0 4px 12px #4f46e52e}.admin-content.ant-layout-content{margin:0;padding:20px 28px 28px;overflow:auto}.admin-content--pos.ant-layout-content{flex-direction:column;min-height:0;padding:16px 20px 20px;display:flex;overflow:hidden}.admin-branch-select.ant-select .ant-select-selector{min-height:36px;font-size:13px;font-weight:600;background:#f1f5f9!important;border-color:#e2e8f0cc!important;border-radius:12px!important}.vb-page{flex-direction:column;gap:16px;display:flex}.vb-page-hero{background:#fff;border:1px solid #e2e8f0cc;border-radius:24px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex;box-shadow:0 1px 2px #0f172a08}.vb-page-title{letter-spacing:-.025em;color:#0f172a;margin:0;font-size:20px;font-weight:800;line-height:1.25}.vb-page-desc{color:#64748b;margin:4px 0 0;font-size:12px}.vb-page-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.vb-page-filters{background:#fff;border:1px solid #e2e8f0cc;border-radius:16px;flex-wrap:wrap;align-items:center;gap:12px;padding:16px;display:flex}.vb-table-card{background:#fff;border:1px solid #e2e8f0cc;border-radius:24px;overflow:hidden;box-shadow:0 1px 2px #0f172a08}.vb-card{background:#fff;border:1px solid #e2e8f0cc;border-radius:24px;padding:24px;box-shadow:0 1px 2px #0f172a08}.vb-view-switch{background:#f1f5f9;border-radius:12px;align-items:center;gap:2px;padding:4px;display:inline-flex}.vb-view-switch a,.vb-view-switch button,.vb-view-switch span{appearance:none;color:#475569;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.vb-view-switch .is-active{color:#4f46e5;background:#fff;box-shadow:0 1px 2px #0f172a0f}.admin-content>div>.ant-space:first-child:not(.ant-space-vertical){background:#fff;border:1px solid #e2e8f0cc;border-radius:24px;width:100%;padding:20px;box-shadow:0 1px 2px #0f172a08;margin-bottom:16px!important}.admin-content h3.ant-typography{letter-spacing:-.025em;color:#0f172a;font-size:20px!important;font-weight:800!important}.admin-content .ant-table-wrapper{background:#fff;border:1px solid #e2e8f0cc;border-radius:24px;overflow:hidden;box-shadow:0 1px 2px #0f172a08}.vb-table-card .ant-table-wrapper{box-shadow:none;border:0;border-radius:0}.admin-content .ant-table-thead>tr>th{text-transform:uppercase;letter-spacing:.06em;color:#64748b!important;background:#f8fafcd9!important;padding:16px 24px!important;font-size:11px!important;font-weight:700!important}.admin-content .ant-table-tbody>tr>td{color:#334155;padding:14px 24px!important}.admin-content .ant-table-tbody>tr:hover>td{background:#f8fafc!important}.admin-content .ant-card{border:1px solid #e2e8f0d9;border-radius:24px;box-shadow:0 1px 2px #0f172a08}.admin-content .ant-btn{border-radius:12px;font-weight:600}.admin-content .ant-btn-primary{box-shadow:0 4px 12px #4f46e533}.admin-content .ant-input,.admin-content .ant-input-affix-wrapper,.admin-content .ant-select .ant-select-selector,.admin-content .ant-picker,.admin-content .ant-input-number{border-radius:12px!important}.admin-content .ant-modal-content{border-radius:24px;overflow:hidden}.admin-content .ant-tag{border-radius:8px;font-weight:600}.vb-dash{flex-direction:column;gap:24px;display:flex}.vb-hero{color:#fff;background:linear-gradient(90deg,#0f172a 0%,#1e1b4b 45%,#0f172a 100%);border-radius:24px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:24px;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 40px -20px #0f172a73}.vb-hero:after{content:"";filter:blur(48px);pointer-events:none;background:#6366f133;border-radius:999px;width:256px;height:256px;position:absolute;bottom:-40px;right:-40px}.vb-hero-copy,.vb-hero-actions{z-index:1;position:relative}.vb-hero-badge{color:#a5b4fc;background:#6366f133;border:1px solid #6366f14d;border-radius:999px;align-items:center;gap:8px;margin-bottom:8px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.vb-hero h1{letter-spacing:-.03em;margin:0;font-size:28px;font-weight:800}.vb-hero p{color:#cbd5e1;max-width:36rem;margin:8px 0 0;font-size:14px}.vb-hero-actions{flex-wrap:wrap;gap:12px;display:flex}.vb-hero-actions .ant-btn-primary{border-radius:16px;height:42px;font-weight:600}.vb-hero-ghost{height:42px;font-weight:600;color:#fff!important;background:#ffffff1a!important;border:0!important;border-radius:16px!important}.vb-hero-ghost:hover{color:#fff!important;background:#fff3!important}.vb-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.vb-metric{background:#fff;border:1px solid #e2e8f0cc;border-radius:16px;padding:20px;transition:box-shadow .2s,border-color .2s}.vb-metric:hover{border-color:#c7d2fe;box-shadow:0 8px 20px -12px #4f46e540}.vb-metric-head{color:#64748b;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;font-weight:600;display:flex}.vb-metric-icon{border-radius:12px;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;display:inline-flex}.vb-metric-value{letter-spacing:-.03em;color:#0f172a;font-size:24px;font-weight:700;line-height:1.2}.vb-metric-value span{color:#64748b;margin-left:4px;font-size:12px;font-weight:500}.vb-metric-foot{color:#059669;align-items:center;gap:6px;margin-top:10px;font-size:11px;font-weight:600;display:flex}.vb-metric-foot.is-muted{color:#64748b;font-weight:500}.vb-dash-grid{grid-template-columns:1fr;gap:24px;display:grid}.vb-chart-card,.vb-upcoming-card{background:#fff;border:1px solid #e2e8f0cc;border-radius:24px;padding:24px}.vb-chart-head,.vb-upcoming-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.vb-chart-head h3,.vb-upcoming-head h3{color:#0f172a;margin:0;font-size:16px;font-weight:700}.vb-chart-head p,.vb-upcoming-head p{color:#64748b;margin:4px 0 0;font-size:12px}.vb-legend{flex-wrap:wrap;gap:8px;display:flex}.vb-legend span{border-radius:8px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.vb-legend-dot{border-radius:999px;width:8px;height:8px}.vb-bars{align-items:flex-end;gap:12px;height:220px;margin-top:20px;padding-top:8px;display:flex}.vb-bar-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:0;height:100%;display:flex}.vb-bar{background:linear-gradient(#6366f1 0%,#4f46e5 100%);border-radius:10px 10px 4px 4px;width:100%;max-width:36px;min-height:8px}.vb-bar-label{color:#64748b;margin-top:8px;font-size:11px;font-weight:600}.vb-upcoming-list{border-top:1px solid #f1f5f9;margin-top:8px}.vb-upcoming-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.vb-upcoming-who{align-items:center;gap:12px;min-width:0;display:flex}.vb-avatar{border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:12px;font-weight:700;display:flex}.vb-upcoming-who h4{color:#1e293b;margin:0;font-size:12px;font-weight:700}.vb-upcoming-who p,.vb-upcoming-when p{color:#64748b;margin:2px 0 0;font-size:11px}.vb-time-chip{border-radius:6px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.vb-booking-link{background:#f8fafc;border:1px solid #e2e8f0cc;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:16px;display:flex}.vb-booking-link-copy{align-items:center;gap:12px;display:flex}.vb-booking-link h4{color:#1e293b;margin:0;font-size:12px;font-weight:700}.vb-booking-link p{color:#64748b;margin:2px 0 0;font-size:11px}.vb-pos{grid-template-columns:1fr;gap:20px;height:calc(100vh - 112px);min-height:520px;display:grid}.vb-pos-catalog,.vb-pos-cart,.vb-pos-pay{background:#fff;border:1px solid #e2e8f0cc;border-radius:24px;padding:20px}.vb-pos-catalog{flex-direction:column;min-height:0;display:flex;overflow:hidden}.vb-pos-catalog-head{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:12px;padding-bottom:16px;display:flex}.vb-pos-catalog-head h2{color:#0f172a;margin:0;font-size:18px;font-weight:700}.vb-pos-cats{gap:8px;padding:12px 0 4px;display:flex;overflow-x:auto}.vb-pos-cat{appearance:none;color:#475569;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:12px;padding:6px 14px;font-size:12px;font-weight:600}.vb-pos-cat:hover{background:#f1f5f9}.vb-pos-cat.is-active{color:#fff;background:#4f46e5;font-weight:700}.vb-pos-grid{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-top:16px;display:grid;overflow:auto}.vb-pos-item{appearance:none;text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0cc;border-radius:16px;flex-direction:column;justify-content:space-between;min-height:132px;padding:14px;transition:border-color .15s,box-shadow .15s,transform .1s;display:flex}.vb-pos-item:hover{border-color:#6366f1;box-shadow:0 8px 18px -12px #4f46e559}.vb-pos-item:active{transform:scale(.97)}.vb-pos-item-top{justify-content:space-between;gap:8px;display:flex}.vb-pos-item-icon{border-radius:12px;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:700;display:flex}.vb-pos-item h4{color:#1e293b;margin:12px 0 0;font-size:12px;font-weight:700}.vb-pos-item p{color:#94a3b8;margin:2px 0 0;font-size:11px}.vb-pos-item-foot{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-top:12px;padding-top:8px;display:flex}.vb-pos-item-foot strong{color:#4f46e5;font-size:12px}.vb-pos-plus{color:#4f46e5;background:#eef2ff;border-radius:8px;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;display:flex}.vb-pos-right{flex-direction:column;gap:16px;min-height:0;display:flex}.vb-pos-cart{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.vb-pos-cart-head{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.vb-pos-cart-head h3{color:#0f172a;align-items:center;gap:8px;margin:0;font-size:14px;font-weight:800;display:flex}.vb-live-dot{background:#10b981;border-radius:999px;width:10px;height:10px}.vb-cart-badge{color:#4f46e5;background:#eef2ff;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700}.vb-pos-cart-list{flex:1;overflow:auto}.vb-cart-empty{text-align:center;color:#94a3b8;flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:140px;padding:24px;font-size:12px;display:flex}.vb-cart-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:8px;padding:10px 0;display:flex}.vb-pos-pay{flex-shrink:0}.vb-pay-row{color:#64748b;justify-content:space-between;margin-bottom:8px;font-size:12px;display:flex}.vb-pay-total{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:baseline;margin:12px 0 16px;padding-top:8px;display:flex}.vb-pay-total span:last-child{color:#4f46e5;font-size:20px;font-weight:800}.vb-pay-methods{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px;display:grid}.vb-pay-method{appearance:none;color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:8px 6px;font-size:12px;font-weight:700}.vb-pay-method.is-active{color:#4f46e5;background:#eef2ff;border-color:#4f46e5}.vb-quick-cash{gap:6px;margin-bottom:12px;display:flex}.vb-quick-cash button{appearance:none;color:#334155;cursor:pointer;background:#f1f5f9;border:0;border-radius:8px;flex:1;padding:6px 4px;font-size:11px;font-weight:700}.vb-complete-btn.ant-btn{border-radius:16px;height:48px;font-weight:800;box-shadow:0 10px 24px -8px #05966966;background:linear-gradient(90deg,#059669,#0d9488)!important;border:0!important}.vb-shift-grid{grid-template-columns:1fr;gap:24px;display:grid}.vb-shift-stats{grid-template-columns:1fr;gap:16px;display:grid}.vb-shift-stat{background:#f8fafc;border:1px solid #f1f5f9;border-radius:16px;padding:16px}.vb-shift-stat p{color:#64748b;margin:0;font-size:12px;font-weight:600}.vb-shift-stat strong{color:#1e293b;margin-top:4px;font-size:18px;font-weight:800;display:block}.vb-shift-stat span{color:#94a3b8;margin-top:4px;font-size:10px;display:block}.vb-shift-expected{color:#fff;background:linear-gradient(90deg,#0f172a,#1e1b4b);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding:16px;display:flex}.vb-shift-expected p{color:#a5b4fc;margin:0;font-size:12px}.vb-shift-expected strong{margin-top:2px;font-size:24px;font-weight:800;display:block}.vb-open-pill{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.vb-open-pill:before{content:"";background:#10b981;border-radius:999px;width:8px;height:8px}@media (width>=640px){.vb-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vb-pos-grid,.vb-shift-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1024px){.vb-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.vb-dash-grid{grid-template-columns:2fr 1fr}.vb-pos{grid-template-columns:7fr 5fr}.vb-shift-grid{grid-template-columns:2fr 1fr}.vb-hero h1{font-size:30px}}@media (width<=767px){.admin-header-search,.admin-user-chip-text{display:none}.admin-content.ant-layout-content{padding:16px}.vb-pos{height:auto}}.vb-bk{flex-direction:column;gap:24px;display:flex}.vb-bk-hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.vb-bk-crumb{color:#64748b;align-items:center;gap:8px;margin-bottom:4px;font-size:12px;font-weight:500;display:flex}.vb-bk-crumb strong{color:#7c3aed;font-weight:600}.vb-bk-hero h1{letter-spacing:-.03em;color:#0f172a;margin:0;font-size:22px;font-weight:800;line-height:1.25}.vb-bk-hero p{color:#64748b;margin:4px 0 0;font-size:12px}.vb-bk-hero-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.vb-bk-hero-actions a,.vb-cat a{text-decoration:none}.vb-bk-cta.ant-btn{border-radius:12px;height:36px;padding-inline:16px;font-size:12px;font-weight:800;box-shadow:0 4px 14px #7c3aed47;background:linear-gradient(90deg,#7c3aed,#4f46e5)!important;border:0!important}.vb-bk-toolbar{background:#fff;border:1px solid #e2e8f0cc;border-radius:16px;padding:16px;box-shadow:0 1px 2px #0f172a08}.vb-bk-toolbar-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.vb-bk-tabs{align-items:center;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.vb-bk-tab{appearance:none;white-space:nowrap;cursor:pointer;color:#475569;background:#f1f5f9;border:0;border-radius:12px;align-items:center;gap:8px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-flex}.vb-bk-tab:hover{background:#e2e8f0}.vb-bk-tab.is-active{color:#fff;background:#0f172a;box-shadow:0 1px 2px #0f172a1f}.vb-bk-tab-count{color:#334155;background:#e2e8f0;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:800}.vb-bk-tab.is-active .vb-bk-tab-count{color:#fff;background:#fff3}.vb-bk-dates{background:#f1f5f9;border:1px solid #e2e8f0b3;border-radius:12px;align-items:center;padding:4px;display:inline-flex}.vb-bk-dates button{appearance:none;color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:4px 10px;font-size:12px;font-weight:500}.vb-bk-dates button.is-active{color:#0f172a;background:#fff;font-weight:700;box-shadow:0 1px 2px #0f172a0f}.vb-bk-search{margin-top:12px}.vb-bk-table-wrap{background:#fff;border:1px solid #e2e8f0cc;border-radius:16px;overflow:hidden;box-shadow:0 1px 2px #0f172a08}.vb-bk-table-scroll{overflow-x:auto}.vb-bk-table{border-collapse:collapse;text-align:left;width:100%}.vb-bk-table thead th{text-transform:uppercase;letter-spacing:.06em;color:#64748b;white-space:nowrap;background:#f8fafcd9;border-bottom:1px solid #e2e8f0;padding:14px 16px;font-size:11px;font-weight:800}.vb-bk-table tbody td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:16px;font-size:12px}.vb-bk-table tbody tr{cursor:pointer;transition:background-color .15s}.vb-bk-table tbody tr:hover td{background:#ede9fe59}.vb-bk-code{color:#6d28d9;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:700}.vb-bk-time{color:#475569;align-items:center;gap:6px;margin-top:4px;font-weight:500;display:flex}.vb-bk-time strong{color:#0f172a}.vb-bk-mins{color:#64748b;background:#f1f5f9;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:600}.vb-bk-person{align-items:center;gap:12px;min-width:0;display:flex}.vb-bk-person-copy{min-width:0}.vb-bk-person-name{color:#0f172a;flex-wrap:wrap;align-items:center;gap:6px;font-weight:700;display:flex}.vb-bk-person-meta{color:#64748b;flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:11px;display:flex}.vb-bk-chip{color:#475569;background:#f1f5f9;border-radius:4px;align-items:center;padding:1px 6px;font-size:10px;font-weight:700;display:inline-flex}.vb-bk-chip.is-vip{color:#b45309;background:#fef3c7;border:1px solid #fde68a}.vb-bk-service{max-width:260px}.vb-bk-service p{color:#1e293b;margin:0;font-weight:600}.vb-bk-room{color:#475569;align-items:center;gap:6px;margin-top:4px;font-size:11px;font-weight:500;display:flex}.vb-bk-pay{white-space:nowrap}.vb-bk-pay strong{color:#0f172a}.vb-bk-pay-tag{border-radius:4px;margin-top:4px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.vb-bk-pay-tag.is-paid{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0}.vb-bk-pay-tag.is-deposit{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe}.vb-bk-pay-tag.is-unpaid{color:#64748b;background:#f1f5f9}.vb-bk-status{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.vb-bk-dot{border-radius:999px;flex-shrink:0;width:6px;height:6px}.vb-bk-dot.is-pulse{animation:1.4s ease-in-out infinite vb-bk-pulse}@keyframes vb-bk-pulse{0%,to{opacity:1}50%{opacity:.35}}.vb-bk-status.is-pending,.vb-bk-status.is-arrived{color:#b45309;background:#fffbeb;border-color:#fde68acc}.vb-bk-status.is-pending .vb-bk-dot,.vb-bk-status.is-arrived .vb-bk-dot{background:#f59e0b}.vb-bk-status.is-confirmed{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfecc}.vb-bk-status.is-confirmed .vb-bk-dot{background:#3b82f6}.vb-bk-status.is-in_service{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fecc}.vb-bk-status.is-in_service .vb-bk-dot{background:#7c3aed}.vb-bk-status.is-completed{color:#047857;background:#ecfdf5;border-color:#a7f3d0cc}.vb-bk-status.is-completed .vb-bk-dot{background:#10b981}.vb-bk-status.is-cancelled,.vb-bk-status.is-no_show{color:#be123c;background:#fff1f2;border-color:#fecdd3cc}.vb-bk-status.is-cancelled .vb-bk-dot,.vb-bk-status.is-no_show .vb-bk-dot{background:#f43f5e}.vb-bk-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.vb-bk-actions .ant-btn{height:30px;padding-inline:12px;font-size:12px;font-weight:700}.vb-bk-foot{color:#64748b;background:#f8fafc99;border-top:1px solid #e2e8f0cc;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px;font-size:12px;display:flex}.vb-bk-empty{text-align:center;color:#94a3b8;padding:48px 16px}.vb-bk-empty h4{color:#64748b;margin:8px 0 0;font-size:14px;font-weight:700}.vb-bk-empty p{margin:4px 0 0;font-size:12px}.vb-bk-timeline{background:#fff;border:1px solid #e2e8f0cc;border-radius:16px;padding:20px}.vb-bk-timeline-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.vb-bk-timeline-head h3{color:#0f172a;margin:0;font-size:14px;font-weight:800}.vb-bk-timeline-head p{color:#94a3b8;margin:2px 0 0;font-size:12px}.vb-bk-legend{color:#475569;flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.vb-bk-legend span{align-items:center;gap:6px;display:inline-flex}.vb-bk-legend i{border-radius:3px;width:10px;height:10px;display:inline-block}.vb-bk-tl-scroll{overflow-x:auto}.vb-bk-tl-grid{min-width:860px}.vb-bk-tl-hours{color:#94a3b8;text-align:center;border-bottom:1px solid #e2e8f0;grid-template-columns:148px repeat(12,1fr);padding-bottom:8px;font-size:11px;font-weight:800;display:grid}.vb-bk-tl-hours span:first-child{text-align:left;padding-left:8px}.vb-bk-tl-row{border-bottom:1px solid #f1f5f9;grid-template-columns:148px 1fr;align-items:center;gap:12px;padding:14px 0;display:grid}.vb-bk-tl-tech p{color:#1e293b;margin:0;font-size:12px;font-weight:800}.vb-bk-tl-tech span{color:#94a3b8;font-size:10px;font-weight:500;display:block}.vb-bk-tl-track{background:#f8fafc;border:1px solid #f1f5f9;border-radius:12px;height:56px;position:relative}.vb-bk-tl-guides{pointer-events:none;grid-template-columns:repeat(12,1fr);display:grid;position:absolute;inset:0}.vb-bk-tl-guides span{border-right:1px solid #e2e8f099}.vb-bk-tl-block{z-index:1;cursor:pointer;border:1px solid #0000;border-radius:8px;min-width:72px;padding:6px 8px;position:absolute;top:6px;bottom:6px;overflow:hidden}.vb-bk-tl-block p{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:11px;font-weight:800;overflow:hidden}.vb-bk-tl-block span{opacity:.9;font-size:10px;display:block}.vb-bk-tl-block.is-in_service{color:#fff;background:#7c3aed;border-color:#6d28d9}.vb-bk-tl-block.is-pending,.vb-bk-tl-block.is-arrived{color:#78350f;background:#fef3c7;border-color:#fcd34d}.vb-bk-tl-block.is-confirmed{color:#1e3a8a;background:#dbeafe;border-color:#bfdbfe}.vb-bk-tl-block.is-completed{color:#065f46;background:#d1fae5;border-color:#a7f3d0}.vb-bk-tl-block.is-cancelled,.vb-bk-tl-block.is-no_show{color:#9f1239;background:#ffe4e6;border-color:#fecdd3}.vb-bk-tl-idle{z-index:0;color:#94a3b8;padding:18px 12px;font-size:11px;font-style:italic;position:relative}.vb-bk-drawer .ant-drawer-body{flex-direction:column;height:100%;padding:0;display:flex}.vb-bk-drawer-head{background:#f8fafc;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px;display:flex}.vb-bk-drawer-head-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.vb-bk-drawer-body{flex-direction:column;flex:1;gap:20px;padding:24px;font-size:12px;display:flex;overflow:auto}.vb-bk-profile{background:linear-gradient(160deg,#f8fafc,#ede9fe66);border:1px solid #ede9fe;border-radius:16px;padding:16px}.vb-bk-note{color:#475569;background:#ffffffb3;border-top:1px solid #ede9fe;border-radius:12px;margin-top:12px;padding:10px}.vb-bk-section-label{letter-spacing:.06em;text-transform:uppercase;color:#0f172a;margin:0 0 8px;font-size:11px;font-weight:800}.vb-bk-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px}.vb-bk-panel-row{justify-content:space-between;gap:12px;display:flex}.vb-bk-panel-grid{color:#475569;border-top:1px solid #f1f5f9;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;padding-top:10px;font-size:11px;display:grid}.vb-bk-panel-grid span{color:#94a3b8;display:block}.vb-bk-panel-grid strong{color:#1e293b}.vb-bk-pay-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:14px}.vb-bk-pay-box .vb-bk-panel-row{color:#475569;margin-bottom:6px}.vb-bk-pay-box .vb-bk-due{color:#0f172a;border-top:1px solid #e2e8f0;margin-top:8px;padding-top:8px;font-size:13px;font-weight:800}.vb-bk-pay-box .vb-bk-due strong{color:#e11d48}.vb-bk-drawer-foot{background:#fff;border-top:1px solid #e2e8f0;grid-template-columns:1fr 1fr;gap:8px;padding:16px;display:grid}.vb-bk-drawer-foot .ant-btn{height:38px;font-weight:700}.vb-bk-drawer-foot .span-2{grid-column:1/-1;display:block}.vb-bk-modal .ant-modal-content{border-radius:24px;padding:0;overflow:hidden}.vb-bk-modal .ant-modal-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;margin:0;padding:16px 24px}.vb-bk-modal .ant-modal-title{font-weight:800}.vb-bk-modal .ant-modal-body{padding:24px}@media (width>=768px){.vb-bk-hero h1{font-size:24px}}.vb-cat{flex-direction:column;gap:24px;display:flex}.vb-bk-secondary.ant-btn{color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:12px;height:36px;padding-inline:14px;font-size:12px;font-weight:600;box-shadow:0 1px 2px #0f172a08}.vb-bk-secondary.ant-btn:hover{color:#0f172a!important;background:#f8fafc!important;border-color:#c7d2fe!important}.vb-cat-back.ant-btn{color:#7c3aed;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:12px;height:32px;padding-inline:12px;font-size:12px;font-weight:700}.vb-cat-back.ant-btn:hover{color:#6d28d9!important;background:#ede9fe!important;border-color:#c4b5fd!important}.vb-cat-code{color:#6d28d9;white-space:nowrap;background:#f5f3ff;border:1px solid #ede9fe;border-radius:8px;padding:4px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:700;display:inline-flex}.vb-cat-name{color:#0f172a;font-size:13px;font-weight:800}.vb-bk-table tbody tr:hover .vb-cat-name{color:#7c3aed}.vb-cat-desc{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;max-width:360px;margin:2px 0 0;font-size:11px;overflow:hidden}.vb-cat-pill{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.vb-cat-pill.is-emerald{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.vb-cat-pill.is-purple{color:#7e22ce;background:#faf5ff;border-color:#e9d5ff}.vb-cat-pill.is-rose{color:#be123c;background:#fff1f2;border-color:#fecdd3}.vb-cat-pill.is-indigo{color:#4338ca;background:#eef2ff;border-color:#c7d2fe}.vb-cat-pill.is-amber{color:#b45309;background:#fffbeb;border-color:#fde68a}.vb-cat-pill.is-sky{color:#0369a1;background:#f0f9ff;border-color:#bae6fd}.vb-cat-dot{border-radius:999px;flex-shrink:0;width:8px;height:8px}.vb-cat-toggle{appearance:none;cursor:pointer;color:#94a3b8;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.vb-cat-toggle.is-on{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.vb-cat-toggle .vb-bk-dot{background:#94a3b8}.vb-cat-toggle.is-on .vb-bk-dot{background:#10b981;animation:1.4s ease-in-out infinite vb-bk-pulse}button.vb-bk-status{appearance:none;font:inherit}.vb-cat-type{letter-spacing:.02em;white-space:nowrap;border:1px solid;border-radius:6px;padding:3px 8px;font-size:10px;font-weight:800;display:inline-flex}.vb-cat-type.is-retail{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.vb-cat-type.is-consumable{color:#b45309;background:#fffbeb;border-color:#fde68a}.vb-cat-stock{color:#1e293b;align-items:center;gap:8px;font-weight:800;display:flex}.vb-cat-stock.is-low{color:#e11d48}.vb-cat-stock span{color:#94a3b8;font-size:11px;font-weight:500}.vb-cat-warn{color:#be123c;background:#ffe4e6;border:1px solid #fecdd3;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:800}.vb-cat-internal{color:#94a3b8;background:#f1f5f9;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:600}.vb-cat-order{color:#1e293b;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:inline-flex}.vb-cat-grip{color:#94a3b8;cursor:grab;font-size:16px}.vb-cat-toolbar-note{color:#94a3b8;font-size:11px;font-style:italic}.vb-cat-table-banner{color:#334155;background:#f8fafccc;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-size:12px;font-weight:700;display:flex}.vb-cat-select{appearance:none;color:#334155;cursor:pointer;background:#f1f5f9 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") right 10px center no-repeat;border:1px solid #e2e8f0;border-radius:12px;outline:none;padding:6px 32px 6px 12px;font-size:12px;font-weight:600}.vb-cat-select:hover{background-color:#e2e8f0}.vb-cat-filter-label{color:#94a3b8;align-items:center;gap:8px;display:inline-flex}.vb-metric.is-alert{background:#fff1f273;border-color:#fecdd3}.vb-metric.is-alert .vb-metric-head{color:#be123c}.vb-bk-table.is-static tbody tr{cursor:default}.vb-bk-table.is-static tbody tr:hover td{background:#f8fafc}.vb-cat-form-grid{grid-template-columns:1fr;gap:0 12px;display:grid}.vb-cat-check{color:#334155;align-items:flex-start;gap:8px;margin-bottom:8px;font-size:12px;font-weight:500;display:flex}@media (width>=640px){.vb-cat-form-grid{grid-template-columns:1fr 1fr}.vb-cat-form-grid.is-3{grid-template-columns:1fr 1fr 1fr}}.vb-metric.is-warn{background:#fffbeb73;border-color:#fde68a}.vb-metric.is-warn .vb-metric-head{color:#b45309}.vb-bk-tab.is-amber{color:#b45309;background:#fffbeb;border:1px solid #fde68ab3}.vb-bk-tab.is-amber:hover{background:#fef3c7}.vb-bk-tab.is-amber.is-active{color:#fff;background:#d97706;border-color:#d97706}.vb-bk-tab.is-emerald.is-active{color:#fff;background:#059669}.vb-ord-ping{background:#fbbf24;border-radius:999px;width:8px;height:8px;animation:1.4s ease-in-out infinite vb-bk-pulse;box-shadow:0 0 #fbbf24b3}.vb-ord-today{color:#334155;white-space:nowrap;font-size:12px;font-weight:700}.vb-ord-items{flex-direction:column;gap:4px;max-width:220px;display:flex}.vb-ord-items div{color:#334155;align-items:center;gap:6px;min-width:0;font-size:11px;font-weight:600;display:flex}.vb-ord-items i{background:#a78bfa;border-radius:999px;flex-shrink:0;width:6px;height:6px}.vb-ord-items span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vb-ord-items em{color:#94a3b8;flex-shrink:0;font-size:10px;font-style:normal}.vb-ord-more{color:#7c3aed;font-size:10px;font-weight:700}.vb-ord-paid{color:#059669;font-weight:800}.vb-ord-paid.is-open{color:#94a3b8;font-weight:700}.vb-ord-method{color:#334155;white-space:nowrap;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:6px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.vb-ord-none{color:#94a3b8;font-size:11px;font-style:italic}.vb-ord-collect.ant-btn{border-radius:12px;height:30px;font-size:12px;font-weight:800;box-shadow:0 6px 14px -8px #0596698c;color:#fff!important;background:linear-gradient(90deg,#059669,#0d9488)!important;border:0!important}.vb-ord-pay-tag{letter-spacing:.06em;text-transform:uppercase;color:#7c3aed;background:#f5f3ff;border-radius:6px;padding:2px 8px;font-size:10px;font-weight:800;display:inline-flex}.vb-ord-pay{flex-direction:column;gap:16px;display:flex}.vb-ord-pay-summary{background:#f5f3ffb3;border:1px solid #ede9fe;border-radius:16px;justify-content:space-between;gap:16px;padding:16px;display:flex}.vb-ord-pay-summary span{color:#64748b;font-size:11px;display:block}.vb-ord-pay-summary strong{color:#0f172a;margin-top:2px;font-size:13px;display:block}.vb-ord-pay-summary b{color:#6d28d9;margin-top:2px;font-size:20px;font-weight:800;display:block}.vb-ord-pay-methods{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.vb-ord-pay-method{appearance:none;cursor:pointer;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;display:flex}.vb-ord-pay-method span{font-size:12px;font-weight:700}.vb-ord-pay-method em{color:#94a3b8;font-size:10px;font-style:normal}.vb-ord-pay-method.is-cash{color:#047857;background:#ecfdf5;border-color:#10b981;box-shadow:0 0 0 3px #10b9811f}.vb-ord-pay-method.is-bank_transfer{color:#1d4ed8;background:#eff6ff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.vb-ord-pay-method.is-card{color:#6d28d9;background:#f5f3ff;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61f}.vb-ord-cash-box,.vb-ord-qr-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:14px}.vb-ord-cash-head{color:#334155;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;font-size:12px;font-weight:700;display:flex}.vb-ord-change{color:#64748b;border-top:1px solid #e2e8f0;justify-content:space-between;margin-top:12px;padding-top:12px;font-size:12px;display:flex}.vb-ord-change strong{color:#059669;font-size:14px}.vb-ord-qr-box{text-align:center;color:#475569}.vb-ord-qr-box .anticon{color:#334155;margin-bottom:6px;font-size:28px}.vb-ord-qr-box p{color:#0f172a;margin:0;font-weight:800}.vb-ord-qr-box span{color:#94a3b8;margin-top:4px;font-size:11px;display:block}.vb-ord-pay-foot{border-top:1px solid #e2e8f0;justify-content:flex-end;gap:8px;padding-top:8px;display:flex}.vb-ord-pay-foot .vb-ord-collect.ant-btn{height:38px;padding-inline:16px}.vb-shift-hero{color:#fff;background:linear-gradient(90deg,#0f172a 0%,#0b0f19 48%,#1e1b4b 100%);border:1px solid #1e293b;border-radius:24px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px;display:flex;box-shadow:0 18px 40px -24px #0f172ab3}.vb-shift-hero-meta{color:#a78bfa;align-items:center;gap:8px;margin-bottom:8px;font-size:12px;font-weight:600;display:flex}.vb-shift-hero h1{letter-spacing:-.03em;color:#fff;flex-wrap:wrap;align-items:center;gap:12px;margin:0;font-size:24px;font-weight:800;display:flex}.vb-shift-hero p{color:#cbd5e1;max-width:560px;margin:8px 0 0;font-size:12px}.vb-shift-pill{letter-spacing:.06em;text-transform:uppercase;border:1px solid;border-radius:999px;align-items:center;padding:4px 12px;font-size:11px;font-weight:800;display:inline-flex}.vb-shift-pill.is-open{color:#6ee7b7;background:#10b98133;border-color:#10b98166;animation:1.8s ease-in-out infinite vb-bk-pulse}.vb-shift-pill.is-closed{color:#fda4af;background:#f43f5e2e;border-color:#f43f5e66}.vb-shift-hero-actions{align-items:center;gap:10px;display:flex}.vb-shift-close-btn.ant-btn{border-radius:16px;height:40px;padding-inline:18px;font-size:12px;font-weight:800;box-shadow:0 10px 22px -10px #e11d48b3;color:#fff!important;background:linear-gradient(90deg,#f43f5e,#dc2626)!important;border:0!important}.vb-shift-close-btn.is-block.ant-btn{width:100%;height:44px}.vb-shift-open-btn.ant-btn{border-radius:16px;height:40px;padding-inline:18px;font-size:12px;font-weight:800;box-shadow:0 10px 22px -10px #7c3aeda6;color:#fff!important;background:#7c3aed!important;border:0!important}.vb-shift-kpis{grid-template-columns:1fr;gap:16px;display:grid}.vb-shift-kpi{background:#fff;border:1px solid #e2e8f0d9;border-radius:24px;padding:20px}.vb-shift-kpi.is-system{background:#ecfdf559;border-color:#a7f3d0}.vb-shift-kpi.is-ok{border-color:#e2e8f0d9}.vb-shift-kpi.is-short{background:#fff1f28c;border-color:#fecdd3}.vb-shift-kpi.is-over{background:#eff6ffb3;border-color:#bfdbfe}.vb-shift-kpi-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.vb-shift-kpi-head span{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;font-size:11px;font-weight:800}.vb-shift-kpi.is-system .vb-shift-kpi-head span{color:#065f46}.vb-shift-kpi-head em{color:#475569;background:#f1f5f9;border-radius:10px;padding:4px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:10px;font-style:normal;font-weight:800}.vb-shift-kpi.is-system .vb-shift-kpi-head em{color:#047857;background:#d1fae5}.vb-shift-kpi-head b{color:#047857;background:#d1fae5;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:800}.vb-shift-kpi.is-short .vb-shift-kpi-head b{color:#be123c;background:#ffe4e6}.vb-shift-kpi.is-over .vb-shift-kpi-head b{color:#1d4ed8;background:#dbeafe}.vb-shift-kpi>strong{letter-spacing:-.03em;color:#0f172a;font-size:24px;font-weight:800;display:block}.vb-shift-kpi.is-system>strong{color:#059669}.vb-shift-kpi.is-short>strong{color:#e11d48}.vb-shift-kpi.is-over>strong{color:#2563eb}.vb-shift-kpi p{color:#94a3b8;margin:6px 0 0;font-size:12px}.vb-shift-kpi.is-system p{color:#047857;font-weight:600}.vb-shift-layout{grid-template-columns:1fr;gap:24px;display:grid}.vb-shift-main{flex-direction:column;gap:16px;min-width:0;display:flex}.vb-shift-ledger,.vb-shift-counter{background:#fff;border:1px solid #e2e8f0d9;border-radius:24px;overflow:hidden}.vb-shift-counter{padding:20px}.vb-shift-ledger-head,.vb-shift-counter-head{background:#f8fafcb3;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.vb-shift-counter-head{background:0 0;margin-bottom:16px;padding:0 0 12px}.vb-shift-ledger-head>div,.vb-shift-counter-head>div{color:#7c3aed;align-items:center;gap:8px;display:flex}.vb-shift-ledger-head h3,.vb-shift-counter-head h3{color:#0f172a;margin:0;font-size:14px;font-weight:800}.vb-shift-ledger-head span{color:#94a3b8;font-size:11px;font-weight:500}.vb-shift-counter-head>span{color:#7c3aed;background:#f5f3ff;border-radius:8px;padding:2px 8px;font-size:11px;font-weight:800}.vb-shift-ledger-empty{text-align:center;color:#94a3b8;padding:40px 20px}.vb-shift-ledger-empty .anticon{margin-bottom:8px;font-size:22px}.vb-shift-ledger-empty p{color:#64748b;margin:0;font-weight:700}.vb-shift-ledger-empty span{margin-top:4px;font-size:12px;display:block}.vb-shift-ledger-list{flex-direction:column;display:flex}.vb-shift-tx{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.vb-shift-tx:hover{background:#f8fafc}.vb-shift-tx-left{align-items:flex-start;gap:12px;min-width:0;display:flex}.vb-shift-tx-left>span{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.vb-shift-tx-left>span.is-in,.vb-shift-tx>span.is-in{color:#059669;background:#ecfdf5}.vb-shift-tx-left>span.is-out,.vb-shift-tx>span.is-out{color:#e11d48;background:#fff1f2}.vb-shift-tx>span.is-in,.vb-shift-tx>span.is-out{white-space:nowrap;background:0 0;font-size:13px;font-weight:800}.vb-shift-tx-title{align-items:center;gap:8px;min-width:0;display:flex}.vb-shift-tx-title p{color:#0f172a;margin:0;font-size:12px;font-weight:800}.vb-shift-tx-title em{color:#94a3b8;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:10px;font-style:normal}.vb-shift-tx-meta{color:#94a3b8;margin:2px 0 0;font-size:11px}.vb-shift-tx-meta strong{color:#475569;font-weight:600}.vb-shift-report{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:24px;padding:20px}.vb-shift-report-head{color:#065f46;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;font-weight:800;display:flex}.vb-shift-report-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.vb-shift-report-grid>div{background:#fff;border:1px solid #d1fae5;border-radius:16px;padding:12px}.vb-shift-report-grid span{color:#94a3b8;font-size:11px;display:block}.vb-shift-report-grid strong{color:#0f172a;margin-top:4px;font-size:13px;display:block}.vb-shift-denoms{flex-direction:column;gap:8px;display:flex}.vb-shift-denom{background:#f8fafc;border:1px solid #f1f5f9;border-radius:12px;grid-template-columns:88px 1fr 96px;align-items:center;gap:8px;padding:10px;display:grid}.vb-shift-denom>span{color:#334155;font-size:12px;font-weight:800}.vb-shift-denom>div{justify-content:center;align-items:center;gap:6px;display:flex}.vb-shift-denom button{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:24px;height:24px;font-weight:800}.vb-shift-denom input{text-align:center;color:#0f172a;border:1px solid #e2e8f0;border-radius:8px;outline:none;width:48px;padding:4px 0;font-size:12px;font-weight:800}.vb-shift-denom em{color:#64748b;text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-style:normal}.vb-shift-counted{color:#4c1d95;background:#f5f3ffbf;border:1px solid #ede9fe;border-radius:16px;justify-content:space-between;align-items:center;margin-top:14px;padding:14px;font-size:12px;font-weight:800;display:flex}.vb-shift-counted strong{color:#6d28d9;font-size:16px}.vb-shift-note-label{color:#334155;margin:14px 0 6px;font-size:12px;font-weight:800;display:block}.vb-shift-counter textarea{resize:none;color:#0f172a;border:1px solid #e2e8f0;border-radius:12px;outline:none;width:100%;padding:10px;font-size:12px}.vb-shift-counter textarea:focus{border-color:#8b5cf6}.vb-shift-warn{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;margin:14px 0;padding:12px;font-size:11px}.vb-shift-warn p{margin:4px 0 0}.vb-shift-empty{text-align:center;color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:24px;padding:48px 24px}.vb-shift-empty .anticon{color:#a78bfa;font-size:28px}.vb-shift-empty h3{color:#0f172a;margin:12px 0 0;font-size:16px}.vb-shift-empty p{margin:6px 0 0;font-size:12px}@media (width>=768px){.vb-shift-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.vb-shift-report-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=1024px){.vb-shift-layout{grid-template-columns:2fr 1fr}}
