:root{--color-primary: #FFAA00;--color-primary-hover: #E69900;--color-primary-light: #FFBB33;--color-accent: #FFAA00;--color-accent-soft: rgba(255, 170, 0, .1);--color-bg-main: #090C16;--color-bg-sidebar: #090C16;--color-bg-card: #101628;--color-bg-popup: #151b2e;--color-bg-secondary: #101628;--color-bg-primary: #090C16;--color-bg-tertiary: #141b2f;--color-bg-component: #141b2f;--color-bg-page: #0C101D;--color-text-primary: #FFFFFF;--color-text-secondary: #8895AB;--color-text-muted: #8895AB;--color-text-disabled: #424B5B;--color-error: #FF4D4D;--color-success: #06F3D1;--color-warning: #FFAA00;--color-border: #8895AB;--color-border-soft: rgba(136, 149, 171, .2);--color-border-strong: #5a6578;--color-border-focus: var(--color-primary);--font-family: "Alexandria", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2.5rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--sidebar-width: 280px}:root{--page-section-max-width: 1120px;--page-top-spacing: 0;--page-bottom-spacing: 40px;--page-header-gap: 40px;--page-header-margin-bottom: 24px;--page-heading-gap: 8px;--page-title-size: 38px;--page-title-weight: 500;--page-subtitle-size: 18px;--page-subtitle-weight: 400}.vendor-admin-main,.admin-main{background:var(--color-bg-page)}.vendor-activities-shell,.vendor-addons-shell,.vendor-tickets-shell,.vendor-wallets-shell,.vendor-reviews-shell,.vendor-bookings-shell,.admin-reports-shell,.branches-shell,.admin-container{width:var(--page-section-max-width);max-width:100%;box-sizing:border-box}.vendor-activities-header,.vendor-addons-header,.vendor-tickets-header,.vendor-wallets-header,.vendor-reviews-header,.vendor-bookings-header,.branches-page__header,.admin-reports-header,.admin-page-header{width:var(--page-section-max-width);max-width:100%;display:flex;justify-content:space-between;align-items:flex-start;gap:var(--page-header-gap);margin-bottom:var(--page-header-margin-bottom)}.vendor-activities-heading,.vendor-addons-heading,.vendor-tickets-heading,.vendor-wallets-heading,.vendor-reviews-heading,.vendor-bookings-heading,.admin-geo-heading,.admin-reports-heading,.admin-page-heading,.branches-page__header>div{display:flex;flex-direction:column;gap:var(--page-heading-gap)}.vendor-activities-page .vendor-activities-title,.vendor-addons-page .vendor-addons-title,.vendor-tickets-page .vendor-tickets-title,.vendor-wallets-page .vendor-wallets-title,.vendor-reviews-page .vendor-reviews-title,.vendor-bookings-page .vendor-bookings-title,.branches-page .branches-page__title,.admin-page-header .admin-page-title,.admin-geo-title,.admin-reports-title{margin:0;font-family:var(--font-family);font-size:var(--page-title-size);font-weight:var(--page-title-weight);line-height:1;color:var(--color-primary)}.vendor-activities-page .vendor-activities-subtitle,.vendor-addons-page .vendor-addons-subtitle,.vendor-tickets-page .vendor-tickets-subtitle,.vendor-wallets-page .vendor-wallets-subtitle,.vendor-reviews-page .vendor-reviews-subtitle,.vendor-bookings-page .vendor-bookings-subtitle,.branches-page .branches-page__subtitle,.admin-page-subtitle,.admin-geo-subtitle,.admin-reports-subtitle{margin:0;font-family:var(--font-family);font-size:var(--page-subtitle-size);font-weight:var(--page-subtitle-weight);line-height:1.35;color:var(--color-text-secondary)}@media(max-width:900px){.vendor-activities-header,.vendor-addons-header,.vendor-tickets-header,.vendor-wallets-header,.vendor-reviews-header,.vendor-bookings-header,.branches-page__header,.admin-page-header{gap:var(--spacing-6)}.vendor-activities-page .vendor-activities-title,.vendor-addons-page .vendor-addons-title,.vendor-tickets-page .vendor-tickets-title,.vendor-wallets-page .vendor-wallets-title,.vendor-reviews-page .vendor-reviews-title,.vendor-bookings-page .vendor-bookings-title,.branches-page .branches-page__title,.admin-page-header .admin-page-title{font-size:32px}.vendor-activities-page .vendor-activities-subtitle,.vendor-addons-page .vendor-addons-subtitle,.vendor-tickets-page .vendor-tickets-subtitle,.vendor-wallets-page .vendor-wallets-subtitle,.vendor-reviews-page .vendor-reviews-subtitle,.vendor-bookings-page .vendor-bookings-subtitle,.branches-page .branches-page__subtitle{font-size:18px}}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100%;display:flex;flex-direction:column}button{font-family:inherit}input,textarea{font-family:inherit;unicode-bidi:plaintext;text-align:start}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}*:focus:not(:focus-visible){outline:none}.modal-content,.popup-content,.dropdown-menu{background-color:var(--color-bg-popup)!important;border:1px solid var(--color-border)!important;border-radius:12px;box-shadow:0 8px 32px #00000080}.modal-header{border-bottom:1px solid var(--color-border)}.modal-footer{border-top:1px solid var(--color-border)}.realtime-toast-stack{position:fixed;top:4.5rem;inset-inline-end:1rem;z-index:9000;display:flex;flex-direction:column;gap:.625rem;max-width:min(22rem,calc(100vw - 2rem));pointer-events:none}.realtime-toast{pointer-events:auto;padding:.875rem 1rem;border-radius:var(--radius-md, 8px);background:var(--color-bg-elevated, #1e2433);border:1px solid var(--color-border-subtle, rgba(255, 255, 255, .12));box-shadow:0 8px 24px #00000059;animation:realtime-toast-in .25s ease-out}.realtime-toast__title{font-size:.875rem;font-weight:600;color:var(--color-text-primary);margin:0 0 .25rem;line-height:1.35}.realtime-toast__detail{font-size:.8125rem;color:var(--color-text-secondary, #a8b0c0);margin:0 0 .5rem;line-height:1.4;word-break:break-word}.realtime-toast__refresh{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--color-primary, #6ea8fe);margin:0}.realtime-toast__spinner{width:.875rem;height:.875rem;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:realtime-toast-spin .7s linear infinite;flex-shrink:0}@keyframes realtime-toast-in{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes realtime-toast-spin{to{transform:rotate(360deg)}}.logo{display:flex;justify-content:center;align-items:center}.logo img{display:block}.logo-small img{width:100px;height:auto}.logo-medium img{width:120px;height:auto}.logo-large img{width:150px;height:auto}@media(min-width:768px){.logo-medium img{width:150px}}.auth-layout{min-height:100vh;display:flex;justify-content:center;align-items:center;background-color:var(--color-bg-primary);padding:var(--spacing-4);position:relative}.auth-layout-content{width:100%;max-width:480px;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-6)}.auth-layout-logo{margin-bottom:var(--spacing-2)}.auth-layout-logo .logo img{width:160px;height:auto;display:block}@media(max-width:768px){.auth-layout{padding:var(--spacing-3)}.auth-layout-content{gap:var(--spacing-4)}}.card{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;padding:var(--spacing-8);box-shadow:0 8px 32px #0006;width:100%;box-sizing:border-box}@media(max-width:768px){.card{padding:var(--spacing-6)}}.input-wrapper{display:flex;flex-direction:column;gap:var(--spacing-2);width:100%}.input{font-family:var(--font-family);font-size:var(--font-size-lg);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);transition:border-color .2s ease;min-height:44px;width:100%}.input:focus{outline:none;border-color:var(--color-border-focus)}.input:disabled{opacity:.6;cursor:not-allowed}.input-error{border-color:var(--color-error)}.input-error-text{color:var(--color-error);font-size:var(--font-size-sm);margin-top:var(--spacing-1)}.input::placeholder{color:var(--color-text-disabled)}.otp-input-container{display:flex;gap:var(--spacing-3);justify-content:center;margin:var(--spacing-4) 0}.otp-input-box{width:48px;height:56px;font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);text-align:center;background-color:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);transition:border-color .2s ease}.otp-input-box:focus{outline:none;border-color:var(--color-border-focus)}.otp-input-box:disabled{opacity:.6;cursor:not-allowed}@media(max-width:480px){.otp-input-box{width:40px;height:48px;font-size:var(--font-size-xl)}.otp-input-container{gap:var(--spacing-2)}}.button{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);padding:0 var(--spacing-6);height:48px;border-radius:10px;border:none;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);width:auto}.button-primary{background-color:var(--color-primary);color:#fff}.button-primary:hover:not(:disabled){background-color:var(--color-primary-hover);transform:translateY(-1px)}.button-primary:disabled{background-color:var(--color-text-disabled);cursor:not-allowed;opacity:.6}.button-secondary{background-color:var(--color-bg-card);color:#fff;border:1px solid var(--color-border)}.button-secondary:hover:not(:disabled){background-color:#ffffff0d;border-color:var(--color-border-strong)}.button-text{background-color:transparent;color:var(--color-primary);height:auto;min-height:auto;padding:var(--spacing-1) var(--spacing-2)}.button-text:hover:not(:disabled){background:#ffaa001a}.button-large{height:56px;font-size:var(--font-size-lg);padding:0 var(--spacing-8)}.button-small{height:36px;font-size:var(--font-size-sm);padding:0 var(--spacing-4)}.error-message{background-color:#ef44441a;border:1px solid var(--color-error);border-radius:8px;padding:var(--spacing-3) var(--spacing-4);color:var(--color-error);font-size:var(--font-size-sm);animation:fadeIn .2s ease-in;margin-top:var(--spacing-2)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.phone-input-form{display:flex;flex-direction:column;gap:var(--spacing-6);width:100%}.phone-input-subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);text-align:center;margin:0 0 var(--spacing-2)}.phone-input-field{display:flex;flex-direction:column;gap:var(--spacing-2)}.phone-input-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.phone-input-check-status{margin-top:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px solid var(--color-border, #e5e7eb)}.phone-input-check-status-toggle{background:none;border:none;font-size:var(--font-size-sm);color:var(--color-primary, #2563eb);cursor:pointer;padding:0;text-decoration:underline}.phone-input-check-status-toggle:hover{text-decoration:none}.phone-input-check-status-form{display:flex;flex-direction:column;gap:var(--spacing-4);margin-top:var(--spacing-3)}.phone-input-check-status-result{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;padding:var(--spacing-2);background:var(--color-bg-secondary, #f3f4f6);border-radius:var(--radius-md, .375rem)}.phone-input-check-status-otp{display:flex;flex-direction:column;gap:var(--spacing-4);margin-top:var(--spacing-3)}.phone-input-check-status-otp-hint{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:center;margin:0}.phone-input-check-status-result-wrap{display:flex;flex-direction:column;gap:var(--spacing-3);margin-top:var(--spacing-3)}.phone-input-check-status-phone{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;display:flex;flex-direction:column;gap:var(--spacing-1)}.phone-input-check-status-phone-label{font-size:var(--font-size-xs, .75rem)}.phone-input-field input{background:#090c16!important;color:#fff;border:1px solid #424b5b}.phone-input-field input{background:#090c16!important;color:#fff;border:.5px solid #8895AB!important}.phone-input-field input::placeholder{color:#8895ab}.auth-card,.card{background:#101628!important;border:.5px solid #8895AB!important;border-radius:24px!important}.otp-verification-form{display:flex;flex-direction:column;gap:var(--spacing-6);width:100%}.otp-verification-subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);text-align:center;margin:0 0 var(--spacing-2);line-height:var(--line-height-relaxed)}.otp-verification-subtitle strong{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.otp-display-box{display:flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-4);background:var(--color-bg-tertiary);border:.5px solid #8895AB!important;border-radius:8px}.otp-display-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.otp-display-code{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;color:var(--color-primary);letter-spacing:.1em}.otp-resend-container{text-align:center;margin-top:calc(var(--spacing-4) * -1)}.otp-resend-button{background:none;border:none;color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;padding:var(--spacing-2);transition:opacity .2s ease}.otp-resend-button:hover:not(:disabled){opacity:.8}.otp-resend-button:disabled{opacity:.5;cursor:not-allowed}.otp-resend-timer{font-size:var(--font-size-sm);color:var(--color-text-disabled);margin:0}.auth-card,.card{border:.5px solid #8895AB!important;border-radius:24px!important;background:#101628!important}.otp-input,.otp-input-field,.otp-input-box,.otp-input-container input{background:#0c101d!important;border:.5px solid #8895AB!important;color:#fff!important}.otp-input-container{gap:12px}.otp-input-container input{width:56px;height:56px;border-radius:12px;text-align:center;font-size:20px;font-weight:600}.loading-spinner-container{display:flex;justify-content:center;align-items:center;padding:var(--spacing-4)}.loading-spinner{border:3px solid var(--color-bg-tertiary);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.loading-spinner-small{width:20px;height:20px;border-width:2px}.loading-spinner-medium{width:40px;height:40px;border-width:3px}.loading-spinner-large{width:60px;height:60px;border-width:4px}@keyframes spin{to{transform:rotate(360deg)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.admin-layout{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background:var(--color-bg-main);color:var(--color-text-primary)}@media(min-width:1024px){.admin-layout{flex-direction:row;align-items:stretch}}.admin-mobile-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4) var(--spacing-6);background:var(--color-bg-sidebar);border-bottom:1px solid var(--color-border);z-index:100}@media(min-width:1024px){.admin-mobile-header{display:none}}.admin-logo{font-family:Alexandria,sans-serif;font-size:1.5rem;font-weight:700;color:var(--color-primary)}.admin-menu-toggle{background:none;border:none;padding:var(--spacing-2);cursor:pointer;display:flex;align-items:center;justify-content:center}.hamburger{width:24px;height:2px;background:var(--color-text-primary);position:relative;transition:all .3s ease}.hamburger:before,.hamburger:after{content:"";position:absolute;width:24px;height:2px;background:var(--color-text-primary);transition:all .3s ease}.hamburger:before{top:-8px}.hamburger:after{bottom:-8px}.hamburger.open{background:transparent}.hamburger.open:before{transform:rotate(45deg);top:0}.hamburger.open:after{transform:rotate(-45deg);bottom:0}.admin-sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-width);background:var(--color-bg-sidebar);display:flex;flex-direction:column;transform:translate(-100%);transition:transform .3s ease;z-index:200;border-right:1px solid var(--color-border);max-height:100dvh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}@media(min-width:1024px){.admin-sidebar{position:sticky;transform:translate(0)}}.admin-sidebar.open{transform:translate(0)}.admin-sidebar-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:150}@media(min-width:1024px){.admin-sidebar-overlay{display:none}}.admin-sidebar-header{padding:var(--spacing-8);display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-sidebar-nav{flex:0 0 auto;padding:var(--spacing-4);display:flex;flex-direction:column;gap:var(--spacing-1)}.admin-sidebar-link{display:block;padding:var(--spacing-3) var(--spacing-4);color:var(--color-text-secondary);text-decoration:none;border-radius:10px;font-weight:var(--font-weight-medium);transition:all .2s ease}.admin-sidebar-link:hover{background:#fa03;color:#fa0}.admin-sidebar-link.active{background:var(--color-primary);color:#fff}.admin-sidebar-footer{padding:var(--spacing-6) var(--spacing-4);border-top:1px solid var(--color-border-soft);display:flex;flex-direction:column;gap:var(--spacing-4);flex-shrink:0;background:var(--color-bg-sidebar);margin-top:auto}.logout-btn{width:100%;padding:var(--spacing-3);background:none;border:1px solid var(--color-border);border-radius:10px;color:var(--color-text-secondary);cursor:pointer}.logout-btn:hover{background:#ff4d4d1a;color:var(--color-error);border-color:var(--color-error)}.admin-main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;padding:var(--spacing-4);width:100%}@media(min-width:768px){.admin-main{padding:var(--spacing-6) var(--spacing-8)}}@media(min-width:1280px){.admin-main{padding:var(--spacing-8) var(--spacing-10)}}.vendor-admin-logo img{width:125px;height:auto;object-fit:contain}.vendor-admin-logo{display:flex;justify-content:flex-start;align-items:center;width:100%;padding-left:16px}.admin-sidebar-group{display:flex;flex-direction:column;gap:var(--spacing-1)}.admin-sidebar-group-title{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-3) var(--spacing-4);border:none;border-radius:10px;background:transparent;color:var(--color-text-secondary);font-family:Alexandria,sans-serif;font-size:inherit;font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;transition:all .2s ease}.admin-sidebar-group-title:hover{background:#fa03;color:#fa0}.admin-sidebar-group-title .chevron{font-size:12px;transition:transform .2s ease}.admin-sidebar-group-title .chevron.open{transform:rotate(180deg)}.admin-sidebar-group-links{display:none;flex-direction:column;gap:var(--spacing-1)}.admin-sidebar-group-links.expanded{display:flex}.admin-sidebar-group-links .admin-sidebar-link{padding-left:48px}.lang-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid var(--color-border, rgba(255, 255, 255, .15));border-radius:20px;background:var(--color-bg-card, rgba(255, 255, 255, .06));color:var(--color-text-primary, #fff);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .25s ease,border-color .25s ease,transform .15s ease;-webkit-user-select:none;user-select:none;white-space:nowrap;line-height:1}.lang-toggle:hover{background:var(--color-bg-hover, rgba(255, 255, 255, .12));border-color:var(--color-primary, #6c5ce7)}.lang-toggle:active{transform:scale(.96)}.lang-toggle__icon{font-size:1rem;line-height:1}.lang-toggle__label{letter-spacing:.02em}
