*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;font-family:Inter,system-ui,sans-serif;background:var(--background);color:var(--text)}body{overflow-x:hidden}.page{width:100%;max-width:1600px;margin:auto;padding:var(--page-padding)}.row{display:flex;align-items:center;gap:16px}.column{display:flex;flex-direction:column;gap:16px}.page-title{margin:0;font-size:2rem;font-weight:700}.page-subtitle{margin-top:6px;color:var(--text-secondary)}.clickable{cursor:pointer}.clickable:hover{color:var(--primary)}a{color:inherit;text-decoration:none}.error{color:var(--danger);font-size:12px;margin-top:4px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:var(--radius-small);border:1px solid transparent;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;transition:background var(--transition),border-color var(--transition),color var(--transition),transform var(--transition)}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.6;cursor:not-allowed;transform:none}.button-primary{background:var(--primary);color:#fff}.button-primary:hover{background:var(--primary-hover)}.button-secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.button-secondary:hover{background:var(--surface-hover)}.button-danger{background:var(--danger);color:#fff}.button-danger:hover{filter:brightness(.95)}input,textarea,select{font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}:root{--background: #f5f7fb;--surface: #ffffff;--surface-hover: #fafafa;--border: #e5e7eb;--text: #111827;--text-secondary: #6b7280;--primary: #2563eb;--primary-hover: #1d4ed8;--danger: #dc2626;--success: #16a34a;--warning: #d97706;--radius: 14px;--radius-small: 10px;--shadow-sm: 0 1px 2px rgba(0,0,0,.04);--shadow: 0 4px 12px rgba(0,0,0,.08);--shadow-lg: 0 12px 28px rgba(0,0,0,.12);--page-padding: 40px;--transition: .18s ease}.app{min-height:100vh;background:var(--background)}.app-body{display:flex;min-height:calc(100vh - 72px)}.app-content{flex:1;min-width:0}.product-card{display:flex;flex-direction:column;gap:16px;padding:24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:transform var(--transition),box-shadow var(--transition)}.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.product-card-header{display:flex;justify-content:space-between}.product-card-title{margin:0;font-size:18px;font-weight:700}.product-card-description{color:var(--text-secondary);line-height:1.5}.product-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}.product-status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.product-status.active{background:#dcfce7;color:#166534}.product-status.draft{background:#fef3c7;color:#92400e}.product-status.archived{background:#fee2e2;color:#991b1b}.product-card-menu{position:absolute;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow)}.product-card-badges{display:flex;gap:12px;flex-wrap:wrap}.product-card-price{font-size:16px;font-weight:700}.product-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;color:var(--text-secondary);font-size:14px}.product-card-link{color:var(--primary)}.product-card-image{width:100%;height:180px;overflow:hidden;border-radius:12px;margin-bottom:16px}.product-card-image img{width:100%;height:100%;object-fit:cover}.product-card-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--surface-hover);color:var(--text-secondary);font-size:14px}.modal-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#00000073;z-index:9999}.modal-container{width:100%;max-width:900px;max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);overflow:hidden}.modal-large{max-width:1100px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:24px;border-bottom:1px solid var(--border)}.modal-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:var(--radius-small);background:transparent;color:var(--text);font-size:22px;cursor:pointer;transition:background var(--transition)}.modal-close:hover{background:var(--surface-hover)}.modal-body{flex:1;display:flex;flex-direction:column;gap:24px;padding:24px;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--border)}.variant-editor{display:flex;flex-direction:column;gap:16px}.variant-list{display:flex;flex-direction:column;gap:12px}.variant-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;justify-content:space-between;align-items:center}.variant-card strong{font-size:15px}.variant-card p{margin:6px 0 0}.variant-modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.variant-modal{width:650px;max-height:90vh;overflow:auto;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border)}.variant-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border)}.variant-modal .modal-content{padding:20px;display:flex;flex-direction:column;gap:16px}.variant-modal .modal-footer{padding:20px;display:flex;justify-content:flex-end;gap:12px;border-top:1px solid var(--border)}.variant-options-list{display:flex;flex-direction:column;gap:8px}.variant-option-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-small)}.variant-option-row span{margin-left:6px;color:var(--text-secondary)}.variant-option-create{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;margin-top:12px}.media-upload{border:2px dashed var(--border);border-radius:12px;padding:30px;text-align:center;cursor:pointer;background:var(--surface);transition:.2s}.media-upload:hover{background:var(--surface-hover)}.media-upload input{display:none}.media-selected{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:10px;background:var(--surface);border:1px solid var(--border)}.media-selected code{font-size:12px;word-break:break-all}.product-modal-title{display:flex;flex-direction:column;gap:10px}.product-modal-title h2{margin:0;font-size:22px;font-weight:700}.product-tabs{display:flex;gap:6px;padding-bottom:12px;margin-bottom:20px;border-bottom:1px solid var(--border)}.product-tabs button{border:none;background:transparent;padding:10px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;color:var(--text-secondary)}.product-tabs button:hover{background:var(--surface-hover)}.product-tabs button.active{background:var(--surface-hover);color:var(--text)}.product-modal-content{display:flex;width:100%;gap:2rem;align-items:flex-start}.product-modal-main{display:flex;flex-direction:column;gap:1.5rem;width:100%;flex:1}.product-section{background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:12px}.product-section h3{margin:0 0 8px;font-size:16px;font-weight:700}.product-section label{font-size:13px;font-weight:600;color:var(--text-secondary)}.product-section .input{width:100%;padding:10px 12px;border-radius:var(--radius-small);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:14px}.product-status-select{font-weight:600}.product-status-select.draft{background:#fff7ed;color:#c2410c;border-color:#fdba74}.product-status-select.active{background:#ecfdf5;color:#047857;border-color:#6ee7b7}.product-status-select.archived{background:#f3f4f6;color:#6b7280;border-color:#d1d5db}.product-status-select option[value=DRAFT]{color:#c2410c}.product-status-select option[value=ACTIVE]{color:#047857}.product-status-select option[value=ARCHIVED]{color:#6b7280}.product-section textarea{min-height:120px;resize:vertical}.product-stripe-not-connected,.stripe-preview{background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:16px}.stripe-preview h3{margin:0;font-size:16px;font-weight:700}.stripe-product{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:14px}.stripe-image-placeholder{width:100%;height:160px;background:#f3f4f6;border-radius:10px}.stripe-product h4{margin:0;font-size:18px;font-weight:700;color:#111827}.stripe-product p{margin:0;font-size:14px;line-height:1.5;color:#6b7280}.stripe-price{font-size:22px;font-weight:700;color:#111827}.stripe-button{width:100%;border:none;border-radius:8px;padding:12px 16px;font-size:15px;font-weight:600;background:#635bff;color:#fff;cursor:not-allowed;opacity:.85}.stripe-checkout-header{display:flex;align-items:center;justify-content:space-between}.stripe-checkout-header span{font-size:13px;font-weight:600;color:var(--text-secondary)}.stripe-id-card{background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.stripe-id-card>label{display:block;margin-bottom:12px;font-size:13px;font-weight:700;color:var(--text-secondary)}.stripe-variants{display:flex;flex-direction:column;gap:12px}.stripe-variant-row{display:flex;gap:10px;align-items:center}.stripe-variant-info{flex:1}.stripe-variant-info .input{width:100%;font-size:12px;font-family:monospace}.stripe-variant-row .button{white-space:nowrap}.product-modal-content{max-height:70vh;overflow:auto}@media(max-width:1100px){.product-modal-content{grid-template-columns:1fr}}@media(max-width:700px){.product-tabs{overflow-x:auto}.product-tabs button{white-space:nowrap}}.dashboard-page{max-width:1400px;margin:auto;padding:var(--page-padding)}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.data-table-wrapper{width:100%;overflow-x:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.data-table{width:100%;min-width:900px;border-collapse:collapse}.data-table th{text-align:left;padding:14px;font-size:13px;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border);white-space:nowrap}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table th.sortable:hover{color:var(--text)}.data-table td{padding:14px;font-size:14px;border-bottom:1px solid var(--border)}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background var(--transition)}.data-table tbody tr:hover{background:var(--bg)}.data-table tbody tr.clickable{cursor:pointer}.data-table-actions{text-align:right;white-space:nowrap}.data-table-empty{padding:48px;text-align:center;color:var(--text-secondary)}.dashboard-toolbar{width:100%;margin-bottom:24px}.stat-card{display:flex;flex-direction:column;gap:10px;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition)}.stat-card.clickable{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.stat-card.clickable:hover{transform:translateY(-2px)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.stat-card-title{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.stat-card-value{font-size:32px;line-height:1;font-weight:700;color:var(--stat-color, var(--text))}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:24px}.app-header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.header-left{display:flex;align-items:center;gap:16px}.header-menu-button{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);font-size:20px;cursor:pointer;transition:background .15s ease,color .15s ease}.header-menu-button:hover{background:var(--surface-hover);color:var(--text)}.header-brand{display:flex;align-items:center;gap:10px;padding:0;border:0;background:transparent;cursor:pointer;text-align:left}.brand-logo{width:38px;height:38px;overflow:hidden;border-radius:9px}.brand-logo img{width:100%;height:100%;display:block;object-fit:cover}.brand-text{display:flex;flex-direction:column;gap:1px}.brand-text h1{margin:0;font-size:17px;line-height:1.1;color:var(--text)}.brand-text span{font-size:11px;color:var(--text-muted);letter-spacing:.02em}.header-actions{display:flex;align-items:center;gap:8px}.header-icon-button{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);font-size:21px;cursor:pointer;transition:background .15s ease,color .15s ease}.header-icon-button:hover{background:var(--surface-hover);color:var(--text)}.header-user{display:flex;align-items:center;gap:10px;margin-left:8px;padding:5px 8px 5px 5px;border:0;border-radius:10px;background:transparent;cursor:pointer;text-align:left;transition:background .15s ease}.header-user:hover{background:var(--surface-hover)}.user-avatar{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--primary);color:#fff;font-size:12px;font-weight:700}.user-info{display:flex;flex-direction:column;gap:1px}.user-info strong{font-size:13px;color:var(--text)}.user-info span{font-size:11px;color:var(--text-muted)}.user-chevron{margin-left:4px;color:var(--text-muted);font-size:16px}.user-role{font-size:11px;line-height:1.2;color:var(--text-muted)}.user-role.admin{color:var(--primary);font-weight:600}@media(max-width:700px){.app-header{padding:0 16px}.user-info,.user-chevron{display:none}}.app-sidebar{width:240px;flex:0 0 240px;display:flex;flex-direction:column;height:calc(100vh - 72px);background:var(--surface);border-right:1px solid var(--border);position:sticky;top:72px;transition:width .2s ease,flex-basis .2s ease}.sidebar-navigation{flex:1;padding:16px 12px;overflow-y:auto}.sidebar-section{margin-top:24px}.sidebar-section-title{display:block;padding:0 12px;margin-bottom:6px;font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.sidebar-link{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border-radius:8px;color:var(--text-secondary);text-decoration:none;font-size:13px;font-weight:500;transition:background .15s ease,color .15s ease}.sidebar-link:hover{background:var(--surface-hover);color:var(--text)}.sidebar-link.active{background:var(--surface-hover);color:var(--text);font-weight:600}.sidebar-link-icon{width:18px;flex:0 0 18px;display:flex;justify-content:center;color:var(--text-muted);font-size:13px}.sidebar-link.active .sidebar-link-icon{color:var(--primary)}.sidebar-link-label{white-space:nowrap}.sidebar-footer{padding:12px;border-top:1px solid var(--border)}.app-sidebar.collapsed{width:68px;flex-basis:68px}.app-sidebar.collapsed .sidebar-section-title,.app-sidebar.collapsed .sidebar-link-label{display:none}.app-sidebar.collapsed .sidebar-link{justify-content:center}.app-sidebar.collapsed .sidebar-link-icon{width:auto}.app-sidebar.collapsed .sidebar-section{margin-top:16px}@media(max-width:900px){.app-sidebar{position:fixed;left:0;bottom:0;z-index:90;box-shadow:var(--shadow-lg)}}.impersonation-banner{width:100%;border-bottom:1px solid var(--warning);background:color-mix(in srgb,var(--warning) 8%,var(--surface))}.impersonation-content{width:min(1600px,calc(100% - 40px));min-height:48px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px}.impersonation-info{display:flex;align-items:center;gap:10px;min-width:0}.impersonation-info>div{display:flex;align-items:baseline;gap:7px;min-width:0}.impersonation-info strong{color:var(--text-primary);font-size:13px}.impersonation-info span:not(.impersonation-badge){color:var(--text-muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.impersonation-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:var(--warning);color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.impersonation-content .button{flex-shrink:0;padding:7px 12px;font-size:12px}@media(max-width:700px){.impersonation-content{width:calc(100% - 24px);min-height:56px}.impersonation-info>div{flex-direction:column;gap:1px}}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.profile-settings{display:flex;flex-direction:column;gap:28px}.profile-section{display:flex;flex-direction:column;gap:20px}.profile-section-header h3{margin:0;font-size:17px}.profile-section-header p{margin:6px 0 0;color:var(--text-secondary);font-size:14px}.input{width:100%;padding:11px 14px;border-radius:var(--radius-small);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:14px;transition:border-color var(--transition),box-shadow var(--transition)}.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1f}.field-help{font-size:12px;color:var(--text-secondary)}.profile-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding-top:10px;border-top:1px solid var(--border)}.save-message{color:var(--success);font-size:14px}.stripe-connected{display:flex;flex-direction:column;gap:6px;padding:16px;background:#ecfdf5;border:1px solid #bbf7d0;border-radius:var(--radius)}.stripe-connected strong{color:var(--success)}.stripe-connected span{font-size:13px;color:var(--text-secondary);word-break:break-all}.financial-settings{display:flex;flex-direction:column;gap:12px}.financial-description{margin:0}.financial-description p{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.5}.financial-connection{display:flex;align-items:center}.financial-status{display:flex;align-items:center;gap:8px;font-size:.9rem}.financial-status-pending,.financial-status-connected{width:100%;justify-content:space-between}.financial-status-pending{flex-direction:column;align-items:flex-start;gap:2px}.financial-status-pending strong{color:var(--text-primary)}.financial-status-pending span,.financial-status-connected span{color:var(--text-secondary)}.financial-status-connected>div{display:flex;flex-direction:column;gap:2px}.financial-status-connected strong{color:var(--text-primary)}.security-settings{display:flex;flex-direction:column;gap:24px}.security-section{display:flex;flex-direction:column;gap:20px}.security-header h3{margin:0;font-size:17px}.security-header p{margin:6px 0 0;color:var(--text-secondary);font-size:14px}.settings-fields{display:flex;flex-direction:column;gap:16px}.settings-field{display:flex;flex-direction:column;gap:8px}.settings-field label{font-size:13px;font-weight:600;color:var(--text-secondary)}.input{width:100%;padding:11px 14px;border-radius:var(--radius-small);border:1px solid var(--border);background:var(--surface);color:var(--text)}.security-actions{display:flex;justify-content:flex-end;align-items:center;gap:16px;border-top:1px solid var(--border);padding-top:18px}.security-message{color:var(--success);font-size:14px}.account-settings{display:flex;flex-direction:column;gap:24px}.account-section{display:flex;flex-direction:column;gap:10px}.account-section h3,.account-danger h3{margin:0;font-size:17px}.account-section p,.account-danger p{margin:0;color:var(--text-secondary);font-size:14px}.account-danger{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px;background:#fff7f7;border:1px solid #fecaca;border-radius:var(--radius)}@media(max-width:700px){.account-danger{flex-direction:column;align-items:flex-start}}.settings-layout{width:100%;max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.settings-card{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow-sm)}.settings-card-header{margin-bottom:24px}.settings-card-header h2{margin:0;font-size:20px;font-weight:700}.settings-card-header p{margin:6px 0 0;color:var(--text-secondary);font-size:14px}.settings-card.danger{border-color:#fecaca}.settings-card.danger h2{color:var(--danger)}@media(max-width:768px){.settings-layout{max-width:none}.settings-card{padding:20px}}.customer-modal-title{margin:0;font-size:1.5rem}.customer-email{display:block;margin-top:4px;color:var(--text-secondary);font-size:14px}.customer-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.customer-summary-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-small);padding:16px}.customer-summary-card h4{margin:0 0 8px;font-size:13px;font-weight:600;color:var(--text-secondary)}.customer-summary-card p{margin:0;font-size:24px;font-weight:700}.customer-section{display:flex;flex-direction:column;gap:12px}.customer-section h3{margin:0;font-size:16px}.customer-info-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-small);padding:16px}.customer-info-card span{font-size:12px;color:var(--text-secondary)}.customer-info-card p{margin:4px 0 0;font-weight:600}.customer-orders-list{display:flex;flex-direction:column;gap:8px}.customer-order-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-small);cursor:pointer;transition:background var(--transition),border-color var(--transition)}.customer-order-row:hover{border-color:var(--primary);background:var(--surface)}.customer-order-row>div{display:flex;flex-direction:column;gap:4px}.customer-order-row span{font-size:13px;color:var(--text-secondary)}.order-status{display:inline-flex;align-items:center;width:fit-content;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}.order-status.paid{background:#22c55e26;color:var(--success)}.order-status.pending{background:#f59e0b26;color:var(--warning)}.order-status.cancelled{background:#ef444426;color:var(--danger)}.customer-empty-orders{padding:32px;text-align:center;color:var(--text-secondary);background:var(--bg);border:1px dashed var(--border);border-radius:var(--radius-small)}.customer-cell{display:flex;flex-direction:column;gap:4px}.customer-name{font-weight:600;color:var(--text)}.customer-cell-email{font-size:12px;color:var(--text-secondary)}.availability-day{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.availability-day>strong{font-size:15px;margin-bottom:4px}.availability-range{display:flex;align-items:center;gap:10px}.availability-range .input{flex:1;min-width:120px}.availability-range span{color:var(--text-muted);font-weight:500}.availability-range .button-danger{width:36px;height:36px;display:flex;align-items:center;justify-content:center;padding:0;border-radius:8px}.availability-day>.button-secondary{align-self:flex-start;margin-top:4px;padding:8px 14px;font-size:13px}section>h3{margin-bottom:16px}.calendar-viewer{display:flex;flex-direction:column;gap:16px}.calendar-viewer-header{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:12px}.calendar-viewer-header>div{text-align:center}.calendar-viewer-header h3{margin:0}.calendar-week-label{display:block;margin-top:4px;font-size:14px;color:var(--text-muted)}.calendar-viewer-header button{width:40px;height:40px;display:flex;align-items:center;justify-content:center;padding:0;font-size:20px}.calendar-grid{display:grid;grid-template-columns:70px repeat(7,minmax(0,1fr));border:1px solid var(--border);border-radius:12px;overflow:hidden}.calendar-time-axis{display:flex;flex-direction:column}.calendar-time-header-space{height:50px;flex-shrink:0;border-bottom:1px solid var(--border)}.calendar-hour{height:60px;min-height:60px;box-sizing:border-box;flex-shrink:0;display:flex;align-items:flex-start;justify-content:flex-end;padding-top:4px;padding-right:8px;font-size:12px;line-height:1;color:var(--text-muted);border-bottom:1px solid var(--border)}.calendar-day-column{min-width:0;border-left:1px solid var(--border)}.calendar-day-header{height:50px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;border-bottom:1px solid var(--border)}.calendar-day-name{font-size:12px}.calendar-day-number{font-size:14px;font-weight:600}.calendar-day-body{position:relative;height:calc(var(--calendar-hours) * 60px);display:flex;flex-direction:column}.time-slot{height:60px;min-height:60px;flex-shrink:0;box-sizing:border-box;border-bottom:1px solid var(--border)}.time-slot.available{background:#fff}.time-slot.unavailable{background:#e5e5e5}.booking-block{position:absolute;left:4px;right:4px;z-index:2;border:none;border-radius:8px;padding:6px;cursor:pointer;overflow:hidden}.calendar-modal-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.calendar-modal{width:min(1200px,95vw);max-height:92vh;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);display:flex;flex-direction:column}.calendar-modal-header{padding:24px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.calendar-modal-content{padding:24px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:24px}.calendar-modal-content section{display:flex;flex-direction:column;gap:12px}.calendar-booking-section{width:100%}.calendar-modal-footer{padding:20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;align-items:center;gap:12px}.modal-spacer{flex:1}.calendar-name{display:flex;flex-direction:column;gap:4px}.calendar-name strong{font-size:14px}.calendar-name span{font-size:12px;color:var(--text-secondary)}.calendar-booking-row{display:flex;justify-content:space-between;align-items:center;padding:14px;border-bottom:1px solid var(--border)}.calendar-booking-row div{display:flex;flex-direction:column;gap:4px}.calendar-booking-row span{color:var(--text-secondary);font-size:12px}.calendar-empty{padding:30px;text-align:center;color:var(--text-secondary)}.revenue-chart,.order-status-chart{width:100%;min-height:300px}.dashboard-mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin-top:20px}.dashboard-mini-grid>div,.system-status>div{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:8px}.dashboard-mini-grid span,.system-status span{color:var(--text-secondary);font-size:13px}.dashboard-mini-grid strong{font-size:26px}.system-status{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:20px}.status-online{color:var(--success)}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px;margin-bottom:24px}.dashboard-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm)}.dashboard-section h3{margin-top:0;margin-bottom:16px}.order-modal-title{display:flex;flex-direction:column;gap:8px}.order-modal-title h2{margin:0;font-size:22px}.order-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.order-section h3{margin-top:0;margin-bottom:16px;font-size:16px}.order-muted{color:var(--text-secondary);font-size:14px;margin:6px 0}.order-address{margin-bottom:16px}.order-address:last-child{margin-bottom:0}.order-address p{margin:6px 0 0;color:var(--text-secondary)}.order-item{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px;background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius-small)}.order-item p{margin-bottom:0}.order-total{margin-top:8px;font-size:16px}.order-status{width:max-content}.table-primary{font-weight:600;color:var(--text)}.table-primary-cell{display:flex;flex-direction:column;gap:4px}.table-secondary{font-size:13px;color:var(--text-secondary)}.order-status{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1}.order-status.pending{background:#fef3c7;color:#92400e}.order-status.paid{background:#dcfce7;color:#166534}.order-status.cancelled{background:#fee2e2;color:#991b1b}.table-actions{display:flex;justify-content:flex-end;gap:8px}.order-modal-content{display:flex;flex-direction:column;gap:20px}.order-section{background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.order-section h3{margin:0 0 14px;font-size:16px}.order-list{display:flex;flex-direction:column;gap:12px}.order-list-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--border)}.order-list-item:last-child{border-bottom:none}@media(max-width:900px){.table-secondary{display:none}.order-status{padding:4px 8px;font-size:11px}}.form-modal-title{display:flex;flex-direction:column;gap:8px}.form-modal-title h2{margin:0;font-size:22px;font-weight:700}.form-status{width:max-content;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}.form-status.active{background:#22c55e26;color:var(--success)}.form-status.inactive{background:#9ca3af26;color:var(--text-secondary)}.form-modal-footer{width:100%;display:flex;justify-content:space-between;align-items:center}.form-modal-footer-actions{display:flex;gap:10px}.forms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.form-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;cursor:pointer;display:flex;flex-direction:column;gap:16px}.form-card:hover{border-color:var(--primary)}.form-card-header{display:flex;justify-content:space-between;align-items:center;gap:10px}.form-card-header h3{margin:0}.form-status{padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600}.form-status.active{background:#dcfce7;color:#166534}.form-status.inactive{background:#f3f4f6;color:#6b7280}.form-card-meta{display:flex;gap:15px;font-size:13px;color:var(--text-secondary)}.form-card footer{margin-top:auto;font-size:12px;color:var(--text-secondary)}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;position:relative;overflow:hidden;background:radial-gradient(circle at 20% 20%,rgba(255,120,50,.18),transparent 35%),radial-gradient(circle at 80% 70%,rgba(255,60,30,.12),transparent 40%),#111827}.auth-page:before,.auth-page:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;filter:blur(90px);opacity:.35;animation:float-glow 12s ease-in-out infinite alternate}.auth-page:before{background:#ff7a30;top:-180px;left:-160px}.auth-page:after{background:#ff3d1f;bottom:-180px;right:-160px;animation-delay:-5s}.auth-card{position:relative;z-index:1;width:100%;max-width:430px;padding:42px;border-radius:24px;background:#ffffffeb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 30px 80px #00000059;border:1px solid rgba(255,255,255,.25);animation:auth-enter .35s ease-out}.auth-logo{display:flex;justify-content:center;margin-bottom:28px}.auth-logo img{width:80px;height:100%;object-fit:cover;border-radius:22px;box-shadow:0 12px 30px #00000026}.auth-header{text-align:center;margin-bottom:32px}.auth-header h1{margin:0 0 8px;font-size:32px;letter-spacing:-.04em;color:#111827}.auth-header p{margin:0;color:#6b7280;line-height:1.5}.auth-content{display:flex;flex-direction:column;gap:20px}@keyframes auth-enter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes float-glow{0%{transform:translate(0) scale(1)}to{transform:translate(40px,30px) scale(1.15)}}@media(max-width:480px){.auth-card{padding:30px 22px}.auth-header h1{font-size:26px}}.login-intro{display:flex;flex-direction:column;gap:10px;margin-bottom:28px;padding:16px;background:var(--surface-secondary);border-radius:12px}.login-feature{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-secondary)}.login-feature span{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--success);color:#fff;font-size:12px}.payout-modal{display:flex;flex-direction:column;gap:28px}.payout-modal-summary{display:grid;grid-template-columns:1fr 1fr;gap:16px}.payout-modal-summary>div{display:flex;flex-direction:column;gap:6px;padding:20px;border:1px solid var(--border);border-radius:10px;background:var(--surface-secondary)}.payout-modal-summary span,.payout-detail span{color:var(--text-muted);font-size:12px}.payout-modal-summary strong{font-size:24px}.payout-modal-status{font-size:16px!important}.payout-modal-details{display:grid;grid-template-columns:1fr 1fr;gap:20px}.payout-detail{display:flex;flex-direction:column;gap:5px;min-width:0}.payout-detail strong{overflow-wrap:anywhere;font-size:14px}.payout-modal-transactions{display:flex;flex-direction:column;gap:14px}.payout-modal-section-header{display:flex;align-items:center;justify-content:space-between}.payout-modal-section-header h3{margin:0}.payout-modal-section-header span{color:var(--text-muted);font-size:13px}.payout-modal-transaction-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px;overflow:hidden}.payout-modal-transaction{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 18px;border-bottom:1px solid var(--border)}.payout-modal-transaction:last-child{border-bottom:0}.payout-modal-transaction>div{display:flex;flex-direction:column;gap:4px;min-width:0}.payout-modal-transaction>div:last-child{align-items:flex-end}.payout-modal-transaction span{color:var(--text-muted);font-size:12px}.payout-modal-transaction strong{font-size:14px}.transaction-positive{color:var(--success)}.transaction-negative{color:var(--danger)}.payout-modal-empty{margin:0;color:var(--text-muted)}@media(max-width:600px){.payout-modal-summary,.payout-modal-details{grid-template-columns:1fr}.payout-modal-transaction{align-items:flex-start;flex-direction:column}.payout-modal-transaction>div:last-child{align-items:flex-start}}.payout-section{margin-top:24px}.payout-section .section-header{margin-bottom:12px}.payout-section .section-header h2{margin:0}.payout-section .section-header span{display:block;margin-top:3px;color:var(--text-muted);font-size:13px}.payout-filter-buttons{display:flex;gap:8px;margin-top:12px;margin-bottom:16px}.payout-status{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:600;line-height:1}.payout-status.paid{color:var(--success);background:color-mix(in srgb,var(--success) 10%,transparent)}.payout-status.pending{color:var(--warning);background:color-mix(in srgb,var(--warning) 10%,transparent)}.payout-status.failed{color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent)}.payout-transactions{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface)}.payout-transaction{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:13px 16px;border-bottom:1px solid var(--border)}.payout-transaction:last-child{border-bottom:none}.payout-transaction>div{display:flex;flex-direction:column;gap:3px;min-width:0}.payout-transaction>div:last-child{align-items:flex-end;text-align:right}.payout-transaction strong{font-size:14px;color:var(--text-primary)}.payout-transaction span{color:var(--text-muted);font-size:13px}.transaction-positive{color:var(--success)!important}.transaction-negative{color:var(--danger)!important}@media(max-width:800px){.payout-transaction{align-items:flex-start;flex-direction:column;gap:8px}.payout-transaction>div:last-child{align-items:flex-start;text-align:left}.payout-filter-buttons{flex-wrap:wrap}}.user-modal-content{display:grid;gap:10px;padding:16px 0}.user-detail{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:9px 0;border-bottom:1px solid var(--border)}.user-detail:last-child{border-bottom:0}.user-detail span{color:var(--text-muted);font-size:13px}.user-detail strong{color:var(--text-primary);font-size:13px;text-align:right}.user-modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:14px;border-top:1px solid var(--border)}.user-role,.user-stripe{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:600}.user-role.user{background:var(--surface-muted);color:var(--text-secondary)}.user-role.admin{background:color-mix(in srgb,var(--warning) 12%,transparent);color:var(--warning)}.user-stripe{color:var(--text-muted)}.user-stripe.connected{color:var(--success)}
