@charset "UTF-8";.workspace{display:flex;height:100vh;overflow:hidden}.sidebar.collapsed~.workspace{margin-left:70px}.workspace-content{flex:1;width:calc(100vw - 208px);overflow:auto}.site-header{border-bottom:1px solid hsl(var(--border));background-color:hsl(var(--background));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:40}@supports (backdrop-filter: blur()){.site-header{background-color:hsla(var(--background)/.6)}}.header-container{display:flex;height:4rem;align-items:center;justify-content:space-between;padding:0 1rem}@media(min-width:640px){.header-container{padding:0 1.5rem}}.header-left{display:flex;align-items:center;gap:1rem}@media(min-width:1024px){.header-left{gap:1.5rem}}.search-container{position:relative;width:100%;max-width:24rem;display:none}@media(min-width:768px){.search-container{display:block}}.search-icon{position:absolute;left:.625rem;top:.625rem;height:1rem;width:1rem;color:hsl(var(--muted-foreground))}.search-input{width:100%;padding-left:2rem;background-color:hsl(var(--background));border:1px solid hsl(var(--input));color:hsl(var(--foreground));border-radius:var(--radius);height:2.5rem;padding:0 1rem 0 2rem;font-size:.875rem}.search-input:focus{outline:none;border-color:hsl(var(--primary))}.header-right{display:flex;align-items:center;gap:1rem}.user-info{display:none;text-align:right}@media(min-width:768px){.user-info{display:block}}.username{font-size:.875rem;font-weight:500}.user-role{font-size:.75rem;color:hsl(var(--muted-foreground))}.icon-button{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;border-radius:.25rem;color:hsl(var(--foreground));position:relative;transition:background-color .2s}.icon-button.rounded-full{border-radius:50%}.icon{height:1.45rem;width:1.45em}.notification-badge{position:absolute;top:.25rem;right:.25rem;height:.5rem;width:.5rem;border-radius:50%;background-color:var(--primary-foreground)}.user-menu-container{position:relative}.user-dropdown{position:absolute;top:100%;right:0;margin-top:.5rem;width:16rem;background-color:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:0 4px 12px #0000001a;overflow:hidden;z-index:50;animation:dropdownFadeIn .2s ease-out}.user-dropdown .dropdown-header{padding:1rem;background-color:hsla(var(--accent)/.05)}.user-dropdown .dropdown-user-info .dropdown-username{font-weight:500;font-size:.875rem}.user-dropdown .dropdown-user-info .dropdown-user-role{font-size:.75rem;color:hsl(var(--muted-foreground))}.user-dropdown .dropdown-divider{height:1px;background-color:hsl(var(--border));margin:.25rem 0}.user-dropdown .dropdown-item{display:flex;align-items:center;width:100%;padding:.75rem 1rem;background:none;border:none;text-align:left;cursor:pointer;font-size:.875rem;color:hsl(var(--foreground));transition:background-color .2s}.user-dropdown .dropdown-item:hover{background-color:hsla(var(--accent)/.1)}.user-dropdown .dropdown-item.sign-out,.user-dropdown .dropdown-item.sign-out .dropdown-icon{color:hsl(var(--destructive))}.user-dropdown .dropdown-item .dropdown-icon{height:1rem;width:1rem;margin-right:.75rem;color:hsl(var(--muted-foreground))}.user-dropdown .dropdown-item.profile,.user-dropdown .dropdown-item.settings{opacity:50%;cursor:not-allowed}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.user-dropdown{right:-1rem;width:14rem}}.user-role{font-size:.75rem;color:hsl(var(--muted-foreground));display:flex;align-items:center;gap:.5rem}.account-id-badge{background-color:hsla(var(--primary)/.1);color:hsl(var(--primary));padding:.125rem .375rem;border-radius:.25rem;font-size:.625rem;font-weight:500}.dropdown-user-email{font-size:.75rem;color:hsl(var(--muted-foreground));margin-top:.125rem}.current-account-section,.connected-accounts-section{margin-top:1rem;padding:.75rem;background-color:hsla(var(--accent)/.05);border-radius:.375rem;border:1px solid hsla(var(--border)/.5)}.account-label,.section-title{display:flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;color:hsl(var(--muted-foreground));margin-bottom:.5rem}.account-label .account-icon,.section-title .account-icon{height:.875rem;width:.875rem}.account-details{padding-left:1.5rem}.accounts-list{display:flex;flex-direction:column;gap:.5rem;max-height:12rem;overflow-y:auto}.account-item{padding:.5rem;background-color:hsla(var(--background)/.5);border:1px solid hsla(var(--border)/.3);border-radius:.25rem;transition:background-color .2s}.account-item:hover{background-color:hsla(var(--accent)/.1)}.account-role{font-size:.75rem;font-weight:500;color:hsl(var(--foreground))}.account-id{font-size:.625rem;color:hsl(var(--muted-foreground));font-family:monospace;margin-top:.125rem}.account-email{font-size:.625rem;color:hsl(var(--muted-foreground));margin-top:.125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accounts-list::-webkit-scrollbar{width:4px}.accounts-list::-webkit-scrollbar-track{background:hsla(var(--border)/.1);border-radius:2px}.accounts-list::-webkit-scrollbar-thumb{background:hsla(var(--muted-foreground)/.3);border-radius:2px}.accounts-list::-webkit-scrollbar-thumb:hover{background:hsla(var(--muted-foreground)/.5)}.sidebar{--sidebar-width: 250px;--sidebar-collapsed-width: 70px;--transition-speed: .3s;left:0;top:0;height:100vh;width:var(--sidebar-width);background-color:hsl(var(--sidebar-bg));border-right:1px solid hsl(var(--border));transition:width var(--transition-speed) ease;z-index:40;display:flex;flex-direction:column;overflow:hidden}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar.collapsed .menu-text,.sidebar.collapsed .menu-divider,.sidebar.collapsed .submenu-arrow{opacity:0;pointer-events:none}.sidebar.collapsed .logo{justify-content:center}.sidebar.collapsed .logo-title{display:none}.sidebar-header{height:4rem;display:flex;align-items:center;padding:0 1rem;border-bottom:1px solid hsl(var(--border))}.logo{font-size:1.25rem;font-weight:700;color:hsl(var(--primary));display:flex;align-items:center;gap:.5rem;width:100%;transition:all var(--transition-speed) ease}.logo .logo-title,.logo-title{display:none}.sidebar-menu{flex:1;overflow-y:auto;padding-top:1.5rem;padding-left:.5rem;padding-right:.5rem}.menu-item{display:flex;align-items:center;padding:.5rem .5rem .5rem 1rem;border-radius:var(--radius);color:hsl(var(--foreground));text-decoration:none;transition:all .2s ease;gap:.75rem;position:relative;margin-bottom:.25rem}.menu-item:hover{background-color:hsla(var(--primary)/.05);color:hsl(var(--primary));text-decoration:none}.dark .menu-item:hover{background-color:hsla(var(--primary)/.05);color:hsl(var(--primary-foreground));text-decoration:none}.menu-item.active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease}.menu-item.active:hover{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));text-decoration:none;transform:scale(1.03);box-shadow:0 2px 8px hsla(var(--primary)/.08)}.menu-icon{flex-shrink:0;width:1.25rem;height:1.25rem}.menu-text{flex:1;white-space:nowrap;transition:opacity var(--transition-speed) ease}.submenu-arrow{transition:transform var(--transition-speed) ease}.submenu-arrow.expanded{transform:rotate(90deg)}.menu-divider{padding:.5rem 1rem;margin:.5rem 0;color:hsl(var(--muted-foreground));font-size:.75rem;font-weight:500;text-transform:uppercase;display:flex;align-items:center;gap:.5rem}.menu-divider:before,.menu-divider:after{content:"";flex:1;height:1px;background-color:hsl(var(--border))}.collapse-button{position:absolute;left:240px;background-color:hsl(var(--background));transform:translate(-50%);height:2rem;width:3rem;border-radius:40%;border:1px solid hsl(var(--border));border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 3px hsla(var(--foreground)/.1);transition:all .2s ease;color:hsl(var(--foreground));top:5rem}.sidebar.collapsed .collapse-button{left:68px;transform:translate(-50%)}.collapse-button:hover{background-color:hsla(var(--primary)/.2);color:hsl(var(--foreground));border-color:hsl(var(--primary))}.collapse-button svg{width:2rem;height:2rem}@media(max-width:768px){.sidebar{width:200px}.sidebar.collapsed{width:60px}.sidebar.collapsed .menu-text,.sidebar.collapsed .menu-divider,.sidebar.collapsed .submenu-arrow{opacity:0;pointer-events:none;display:none}.logo{justify-content:center}.sidebar.collapsed .logo{opacity:0;pointer-events:none;display:none}.logo-title{display:none}.sidebar.collapsed .logo-title{display:block;justify-content:center;font-size:1.5rem;font-weight:600}.collapse-button{left:200px}.sidebar.collapsed .collapse-button{left:68px;transform:translate(-50%)}}.metric-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:1rem 1.5rem;overflow:hidden;transition:box-shadow .2s}.metric-card:hover{box-shadow:0 4px 12px hsla(var(--foreground)/.1)}.metric-card .card-header{display:flex;justify-content:between;align-items:center;margin-bottom:1rem}.metric-card .card-header .card-title{font-size:.875rem;font-weight:500;color:hsl(var(--muted-foreground));margin:0;flex:1}.metric-card .card-header .card-icon{color:hsl(var(--muted-foreground));display:flex;align-items:center;justify-content:center}.metric-card .card-content .metric-value{font-size:2rem;font-weight:700;color:hsl(var(--foreground));line-height:1;margin-bottom:.5rem}.metric-card .card-content .metric-footer{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.metric-card .card-content .metric-footer .trend-indicator{display:flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:500;padding:.25rem .5rem;border-radius:9999px}.metric-card .card-content .metric-footer .trend-indicator.positive{background-color:#16a24933;color:#16a249}.metric-card .card-content .metric-footer .trend-indicator.negative{background-color:#ef434333;color:#ef4343}.metric-card .card-content .metric-footer .trend-indicator .trend-icon{width:.75rem;height:.75rem}.metric-description{font-size:.75rem;color:hsl(var(--muted-foreground));margin:0}.dark .metric-card{background-color:hsl(var(--card))}.chart-container{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:1.5rem;overflow:hidden}.chart-header{margin-bottom:1.5rem}.chart-header .chart-title{font-size:1.25rem;font-weight:600;color:hsl(var(--foreground));margin:0 0 .5rem}.chart-header .chart-description{color:hsl(var(--muted-foreground));margin:0;font-size:.875rem}.chart-content .chart-wrapper{height:300px;width:100%}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:hsl(var(--border))}.recharts-tooltip-wrapper .recharts-default-tooltip{border-radius:var(--radius);box-shadow:0 4px 12px hsla(var(--foreground)/.1)}.recharts-area{transition:opacity .2s}.recharts-area:hover{opacity:.8}.dark .chart-container{background-color:hsl(var(--card))}.dark .recharts-cartesian-grid-horizontal line,.dark .recharts-cartesian-grid-vertical line{stroke:hsl(var(--border))}.dashboard-container{padding:1rem 2rem 2rem;max-width:100%;animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dashboard-header{margin-bottom:2rem}.dashboard-header .dashboard-title{font-size:2rem;font-weight:700;color:hsl(var(--foreground));margin:0 0 .5rem}.dashboard-header .dashboard-subtitle{color:hsl(var(--muted-foreground));margin:0;font-size:1rem}.refresh-icon{width:1.45rem;height:1.25rem;cursor:pointer;margin-left:.5rem;color:hsl(var(--muted-foreground))}.refresh-icon.refreshing{animation:spin .5s linear infinite}.dash-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:hsl(var(--muted-foreground))}.dash-loading-container .spinner-icon{width:3rem;height:3rem;animation:spin 2.5s linear infinite}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:hsl(var(--destructive))}.error-container .error-icon{width:3rem;height:3rem;margin-bottom:1rem}.error-container h3{margin:0 0 .5rem;font-size:1.5rem}.error-container p{margin:0 0 1.5rem;color:hsl(var(--muted-foreground))}.error-container .retry-button{padding:.75rem 1.5rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);cursor:pointer;font-weight:500;transition:background-color .2s}.error-container .retry-button:hover{background-color:hsl(var(--primary)/.9)}.dashboard-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:1px solid hsl(var(--border))}.tab-button{padding:.75rem 1.5rem;background:none;border:none;border-bottom:2px solid transparent;color:hsl(var(--muted-foreground));cursor:pointer;font-weight:500;transition:all .2s}.tab-button:hover{color:hsl(var(--foreground))}.tab-button.active{color:hsl(var(--primary));border-bottom-color:hsl(var(--primary))}.metrics-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:2rem}@media(min-width:640px){.metrics-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.metrics-grid{grid-template-columns:repeat(4,1fr)}}.dashboard-content{margin-bottom:2rem}@media(min-width:1280px){.dashboard-content{grid-template-columns:6fr 5fr}}.chart-section,.activity-section{height:100%}.activity-section .activity-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);overflow:hidden}.activity-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 0}.activity-header .activity-title{font-size:1.25rem;font-weight:600;color:hsl(var(--foreground));margin:0}.activity-header .activity-icon{color:hsl(var(--primary));width:1.25rem;height:1.25rem}.activity-list{padding:1.5rem}.activity-item{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid hsl(var(--border))}.activity-item:last-child{border-bottom:none}.activity-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background-color:hsl(var(--muted));display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.activity-content{flex:1;min-width:0}.activity-main{margin-bottom:.5rem}.activity-main .activity-user{font-weight:600;color:hsl(var(--foreground));margin-right:.5rem}.activity-main .activity-action{color:hsl(var(--muted-foreground))}.activity-meta{display:flex;gap:1rem;font-size:.875rem;color:hsl(var(--muted-foreground))}.meta-icon{width:.875rem;height:.875rem;margin-right:.25rem}.activity-footer{padding:1rem 1.5rem;border-top:1px solid hsl(var(--border));text-align:center}.view-all-button{background:none;border:none;color:hsl(var(--primary));cursor:pointer;font-weight:500;transition:opacity .2s}.view-all-button:hover{opacity:.8}.quick-stats{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:768px){.quick-stats{grid-template-columns:repeat(3,1fr)}}.stat-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:1.5rem}.stat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.stat-header .stat-title{font-weight:600;color:hsl(var(--foreground));margin:0}.stat-header .stat-value{font-size:1.5rem;font-weight:700;color:hsl(var(--primary))}.stat-progress .progress-bar{width:100%;height:.5rem;background-color:hsl(var(--muted));border-radius:9999px;overflow:hidden}.stat-progress .progress-fill{height:100%;background-color:hsl(var(--primary));border-radius:9999px;transition:width .3s ease}.stat-rating .stars{color:#e7b008;font-size:1.25rem;letter-spacing:.1em}.icon-sm{width:1.125rem;height:1.125rem}.dark .activity-card,.dark .stat-card{background-color:hsl(var(--card))}.dark .progress-bar{background-color:hsl(var(--muted))}.devices-page{display:flex;padding:1.5rem;flex-direction:column;background-color:hsl(var(--background));color:hsl(var(--foreground))}.devices-page .devices-title{font-size:2rem;font-weight:700;margin-bottom:2rem;color:hsl(var(--foreground))}.devices-page .devices-title .subtitle{font-size:1rem;font-weight:400;color:hsl(var(--muted-foreground));margin-top:0}.devices-page .refresh-icon{width:1.45rem;height:1.25rem;cursor:pointer;margin-left:.5rem;color:hsl(var(--muted-foreground))}.devices-page .refresh-icon.refreshing{animation:spin .5s linear infinite}.devices-page .devices-tabs{margin-top:1.2rem;background-color:hsl(var(--muted));display:flex;justify-content:start;gap:.5rem;padding:.2rem;border-radius:10px;width:max-content}.devices-page .devices-tabs .tab{background-color:transparent;border-width:0;padding:.5rem;font-weight:600;cursor:pointer;border-radius:5px;color:hsl(var(--muted-foreground))}.devices-page .devices-tabs .tab.active{background-color:hsl(var(--background));box-shadow:0 2px 4px #0000001a;color:hsl(var(--foreground))}.devices-page .devices-list{margin-top:2rem}.devices-page .devices-list .error-message{background-color:hsl(var(--background));color:hsl(var(--destructive));padding:10px;border-radius:4px;margin-bottom:15px;border:1px solid #fcc}.devices-page .devices-list .success-message{background-color:hsl(var(--success)/.1);color:hsl(var(--success));padding:10px;border-radius:4px;margin-bottom:15px;border:1px solid hsl(var(--success)/.2)}.devices-page .devices-list .loading-container{display:flex;justify-content:start;padding:2rem;color:hsl(var(--muted-foreground))}.devices-page .devices-list .no-data{text-align:center;padding:2rem;color:hsl(var(--muted-foreground));font-style:italic}.devices-page .devices-filters{display:flex;justify-content:space-between;padding-bottom:1rem}.devices-page .devices-filters .devices-search-container{position:relative;width:100%;display:flex;align-items:center}@media(min-width:768px){.devices-page .devices-filters .devices-search-container{width:320px}}.devices-page .devices-filters .devices-search-container .search-icon{position:absolute;left:10px;color:hsl(var(--muted-foreground));z-index:1}.devices-page .devices-filters .devices-search-container .search-input{border:1px solid hsl(var(--muted-foreground));border-radius:.25rem;background-color:hsl(var(--background));color:hsl(var(--foreground));padding:.75rem 1rem .75rem 2.5rem;width:100%}.devices-page .devices-filters .devices-search-container .search-input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.devices-page .devices-table-container{border:1px solid hsl(var(--border));border-radius:var(--radius);overflow-x:auto;margin-bottom:2rem}.devices-page .devices-table-container .devices-table{width:100%;border-collapse:collapse;background-color:hsl(var(--card));min-width:800px}@media(min-width:1024px){.devices-page .devices-table-container .devices-table{min-width:auto}}.devices-page .devices-table-container .devices-table tr{border-bottom:1px solid hsl(var(--border))}.devices-page .devices-table-container .devices-table th,.devices-page .devices-table-container .devices-table td{padding:1rem;text-align:left}.devices-page .devices-table-container .devices-table th{background-color:hsl(var(--muted));font-weight:600;color:hsl(var(--foreground));font-size:.875rem}.devices-page .devices-table-container .devices-table .device-row:hover{background-color:hsl(var(--muted)/.5)}.devices-page .devices-table-container .devices-table .device-row:last-child td{border-bottom:none}.devices-page .devices-table-container .devices-table .device-row .ssid-cell{display:flex;align-items:center;gap:.5rem}.devices-page .devices-table-container .devices-table .device-row .edit-input,.devices-page .devices-table-container .devices-table .device-row .edit-select{padding:.5rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));width:100%}.devices-page .devices-table-container .devices-table .device-row .edit-input:focus,.devices-page .devices-table-container .devices-table .device-row .edit-select:focus{outline:none;border-color:hsl(var(--primary))}.devices-page .devices-table-container .devices-table .device-row .status{padding:.25rem .5rem;border-radius:1rem;font-size:.75rem;font-weight:600}.devices-page .devices-table-container .devices-table .device-row .status.status-connected,.devices-page .devices-table-container .devices-table .device-row .status.status-online{background-color:hsl(var(--success)/.2);color:hsl(var(--success))}.devices-page .devices-table-container .devices-table .device-row .status.status-disconnected,.devices-page .devices-table-container .devices-table .device-row .status.status-offline{background-color:hsl(var(--destructive)/.2);color:hsl(var(--destructive))}.devices-page .devices-table-container .devices-table .device-row .status.status-pending{background-color:hsl(var(--warning)/.2);color:hsl(var(--warning))}.devices-page .devices-table-container .devices-table .no-results{text-align:center;padding:2rem;color:hsl(var(--muted-foreground));font-style:italic}.devices-page .pagination-container{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding:0 .5rem}.devices-page .pagination-info{color:hsl(var(--muted-foreground));font-size:.875rem}.devices-page .pagination{display:flex;gap:.5rem}.devices-page .pagination-button{padding:.5rem 1rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;transition:background-color .2s}.devices-page .pagination-button:hover{background-color:hsl(var(--muted))}.devices-page .pagination-button.active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.devices-page .pagination-ellipsis{display:flex;align-items:center;justify-content:center;padding:.5rem .25rem;color:hsl(var(--muted-foreground));min-width:2.5rem;font-size:.875rem}@media(min-width:640px){.devices-page .pagination-ellipsis{min-width:3rem;padding:.5rem}}.devices-page .action-buttons{display:flex;gap:.5rem}.devices-page .action-buttons button{display:flex;align-items:center;justify-content:center;padding:.5rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:transparent;cursor:pointer;transition:all .2s}.devices-page .action-buttons button:hover{background-color:hsl(var(--muted)/.5)}.devices-page .action-buttons .edit-button{color:hsl(var(--foreground))}.devices-page .action-buttons .edit-button:hover{border-color:hsl(var(--primary))}.devices-page .action-buttons .setup-button{color:hsl(var(--primary))}.devices-page .action-buttons .setup-button:hover{border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.1)}.devices-page .action-buttons .save-button{color:hsl(var(--primary))}.devices-page .action-buttons .save-button:hover{border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.1)}.devices-page .action-buttons .cancel-button{color:hsl(var(--muted-foreground))}.devices-page .action-buttons .cancel-button:hover{border-color:hsl(var(--muted-foreground))}.devices-page .action-buttons .delete-button{color:hsl(var(--destructive))}.devices-page .action-buttons .delete-button:hover{border-color:hsl(var(--destructive));background-color:hsl(var(--destructive)/.1)}.devices-page .modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.devices-page .modal-overlay .modal-content{background-color:hsl(var(--background));border-radius:var(--radius);width:65%;max-height:80vh;overflow-y:auto;box-shadow:0 10px 25px #0003}.devices-page .modal-overlay .modal-content .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid hsl(var(--border))}.devices-page .modal-overlay .modal-content .modal-header h2{margin:0;font-size:1.5rem}.devices-page .modal-overlay .modal-content .modal-header .modal-close{background:none;border:none;cursor:pointer;color:hsl(var(--muted-foreground))}.devices-page .modal-overlay .modal-content .modal-header .modal-close:hover{color:hsl(var(--foreground))}.devices-page .modal-overlay .modal-content .modal-body{padding:1.5rem}.devices-page .modal-overlay .modal-content .modal-body p{margin-top:0}.devices-page .modal-overlay .modal-content .modal-body .section-divider{display:flex;align-items:center;margin:1.5rem 0;color:hsl(var(--muted-foreground))}.devices-page .modal-overlay .modal-content .modal-body .section-divider:before,.devices-page .modal-overlay .modal-content .modal-body .section-divider:after{content:"";flex:1;height:1px;background-color:hsl(var(--border))}.devices-page .modal-overlay .modal-content .modal-body .section-divider span{padding:0 1rem}.devices-page .modal-overlay .modal-content .modal-body ol{padding-left:1.5rem;margin:1rem 0}.devices-page .modal-overlay .modal-content .modal-body ol li{margin-bottom:.5rem}.devices-page .modal-overlay .modal-content .modal-body .command-block{background-color:hsl(var(--muted));border-radius:var(--radius);padding:1rem;margin:1rem 0;overflow-x:auto}.devices-page .modal-overlay .modal-content .modal-body .command-block code{font-family:monospace;color:hsl(var(--foreground));white-space:nowrap}.devices-page .modal-overlay .modal-content .modal-footer{padding:1rem 1.5rem;border-top:1px solid hsl(var(--border));display:flex;justify-content:flex-end}.devices-page .modal-overlay .modal-content .modal-footer .btn-primary{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);padding:.5rem 1.5rem;cursor:pointer;font-weight:500}.devices-page .modal-overlay .modal-content .modal-footer .btn-primary:hover{background-color:hsl(var(--primary)/.9)}.copy-button{border-radius:4px;padding:4px 8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:hsl(var(--foreground))}.code-container .copy-button{background-color:transparent!important}.command-block{margin:10px 0;background:#f8f8f8;border-radius:4px;padding:12px;border:1px solid #e0e0e0}.add-device{margin-top:2rem}.add-device .add-device-header{margin-bottom:2rem}.add-device .add-device-header h2{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.add-device .add-device-header p{color:hsl(var(--muted-foreground));margin:0}.add-device .server-error-message{background-color:hsl(var(--destructive)/.1);color:hsl(var(--destructive));padding:.75rem;border-radius:var(--radius);border:1px solid hsl(var(--destructive)/.2);margin-bottom:1.5rem;font-size:.875rem;width:max-content}.add-device .server-success-message{background-color:hsl(var(--success)/.1);color:hsl(var(--success));padding:.75rem;border-radius:var(--radius);border:1px solid hsl(var(--success)/.2);margin-bottom:1.5rem;font-size:.875rem;width:max-content}.add-device .add-device-form{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:2rem}.add-device .add-device-form .step-header{margin-bottom:0rem}.add-device .add-device-form .step-header .back-button{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:hsl(var(--muted-foreground));cursor:pointer;padding:0;margin-bottom:1rem;font-size:.875rem}.add-device .add-device-form .step-header .back-button:hover{color:hsl(var(--foreground))}.add-device .add-device-form .step-header h3{font-size:1.25rem;font-weight:600;margin-bottom:0rem}.add-device .add-device-form .step-header p{color:hsl(var(--muted-foreground));margin:0;font-size:.75rem}.add-device .add-device-form .vendor-selection h3{margin-bottom:1.5rem;font-size:1.25rem;font-weight:600}.add-device .add-device-form .vendor-selection .vendor-options{display:flex;flex-direction:column;gap:1rem}.add-device .add-device-form .vendor-selection .vendor-option{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid hsl(var(--border));border-radius:var(--radius);cursor:pointer;transition:all .2s ease}.add-device .add-device-form .vendor-selection .vendor-option:hover{border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.05)}.add-device .add-device-form .vendor-selection .vendor-option.selected{border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.1)}.add-device .add-device-form .vendor-selection .vendor-option .vendor-icon{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;background-color:hsl(var(--primary)/.1);color:hsl(var(--primary));border-radius:var(--radius);font-weight:700;font-size:1.5rem}.add-device .add-device-form .vendor-selection .vendor-option .vendor-info{flex:1}.add-device .add-device-form .vendor-selection .vendor-option .vendor-info h4{margin:0 0 .25rem;font-size:1rem;font-weight:600}.add-device .add-device-form .vendor-selection .vendor-option .vendor-info p{margin:0;font-size:.875rem;color:hsl(var(--muted-foreground))}.add-device .add-device-form .vendor-selection .vendor-option svg{color:hsl(var(--muted-foreground))}.add-device .add-device-form .device-details .form-group,.add-device .add-device-form .unifi-credentials .form-group{margin-bottom:1.5rem}.add-device .add-device-form .unifi-device-selection .device-details-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid hsl(var(--border))}.add-device .add-device-form .unifi-device-selection .device-details-section h4{margin-bottom:1.5rem;font-size:1rem;font-weight:600}.add-device .add-device-form .unifi-device-selection .devices-list-section .devices-header{display:flex;justify-content:end;align-items:center}.add-device .add-device-form .unifi-device-selection .devices-list-section .devices-header h4{margin:0;font-size:1rem;font-weight:600}.add-device .add-device-form .unifi-device-selection .devices-list-section .devices-header .select-all-btn{background:none;border:none;color:hsl(var(--primary));cursor:pointer;font-size:.875rem;padding:0}.add-device .add-device-form .unifi-device-selection .devices-list-section .devices-header .select-all-btn:hover{text-decoration:underline}.add-device .add-device-form .unifi-device-selection .devices-list-section .devices-list{max-height:300px;overflow-y:auto;border:1px solid hsl(var(--border));border-radius:var(--radius)}.add-device .add-device-form .unifi-device-selection .devices-list-section .device-item{display:flex;align-items:center;gap:1rem;padding:1rem;border-bottom:1px solid hsl(var(--border));cursor:pointer;transition:background-color .2s ease}.add-device .add-device-form .unifi-device-selection .devices-list-section .device-item:last-child{border-bottom:none}.add-device .add-device-form .unifi-device-selection .devices-list-section .device-item:hover{background-color:hsl(var(--muted))}.add-device .add-device-form .unifi-device-selection .devices-list-section .device-item.selected{background-color:hsl(var(--primary)/.1)}.add-device .add-device-form .unifi-device-selection .devices-list-section .device-item .device-checkbox input[type=checkbox]{width:1rem;height:1rem;cursor:pointer}.add-device .add-device-form .unifi-device-selection .devices-list-section .device-item .device-info{flex:1}.add-device .add-device-form .unifi-device-selection .devices-list-section .device-item .device-info .device-name{font-weight:500;margin-bottom:.25rem}.add-device .add-device-form .unifi-device-selection .devices-list-section .device-item .device-info .device-details{display:flex;gap:1rem;font-size:.75rem;color:hsl(var(--muted-foreground))}.add-device .add-device-form .unifi-device-selection .devices-list-section .device-item .device-info .device-details span{background-color:hsl(var(--muted));padding:.25rem .5rem;border-radius:.25rem}.add-device .add-device-form .form-group{margin-bottom:1.5rem}.add-device .add-device-form .form-group label{display:block;margin-bottom:.5rem;font-weight:500;margin-top:1rem;display:flex;justify-content:space-between}.add-device .add-device-form .form-group label .char-count{font-weight:400;color:hsl(var(--muted-foreground));font-size:.875rem}.add-device .add-device-form .form-group input,.add-device .add-device-form .form-group select{width:100%;padding:.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground))}.add-device .add-device-form .form-group input:focus,.add-device .add-device-form .form-group select:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.add-device .add-device-form .form-group input.error,.add-device .add-device-form .form-group select.error{border-color:hsl(var(--destructive))}.add-device .add-device-form .form-group .input-help{font-size:.75rem;color:hsl(var(--muted-foreground));margin-top:.5rem}.add-device .add-device-form .form-group .error-message{color:hsl(var(--destructive));font-size:.875rem;margin-top:.25rem;display:block}.add-device .add-device-form .form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}.add-device .add-device-form .form-actions button{padding:.75rem 1.5rem;border-radius:var(--radius);cursor:pointer;font-weight:500;font-size:.875rem;transition:all .2s ease}.add-device .add-device-form .form-actions .btn-secondary{background-color:transparent;border:1px solid hsl(var(--border));color:hsl(var(--foreground))}.add-device .add-device-form .form-actions .btn-secondary:hover{background-color:hsl(var(--muted))}.add-device .add-device-form .form-actions .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.add-device .add-device-form .form-actions .btn-primary{background-color:hsl(var(--primary));border:none;color:hsl(var(--primary-foreground))}.add-device .add-device-form .form-actions .btn-primary:hover{background-color:hsl(var(--primary)/.9)}.add-device .add-device-form .form-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed}.password-input-wrapper{position:relative;display:flex;align-items:center;width:100%}.password-input-wrapper input{width:100%;padding:.75rem 1.5rem .75rem .75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));font-family:inherit;font-size:inherit}.password-input-wrapper input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.password-input-wrapper input.error{border-color:hsl(var(--destructive))}.password-input-wrapper input:disabled{opacity:.5;cursor:not-allowed}.password-input-wrapper .password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:hsl(var(--muted-foreground));cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease;border-radius:var(--radius)}.password-input-wrapper .password-toggle:hover{color:hsl(var(--foreground));background-color:hsl(var(--muted)/.5)}.password-input-wrapper .password-toggle:focus{outline:none;box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.password-input-wrapper .password-toggle:active{background-color:hsl(var(--muted))}.password-input-wrapper .password-toggle:disabled{opacity:.5;cursor:not-allowed}.password-input-wrapper .password-toggle svg{width:1.125rem;height:1.125rem}.form-group .error-message{color:hsl(var(--destructive));font-size:.875rem;margin-top:.25rem;display:block}.copy-button{border-radius:4px;padding:4px 8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.copy-button:hover{background:#e9e9e9}.copy-button:active{background:#ddd}.code-container{position:relative;display:flex;align-items:center}.code-container code{flex:1;padding-right:40px}.code-container .copy-button{background-color:transparent!important;color:hsl(var(--foreground))}.command-block{margin:10px 0;background:hsl(var(--muted));border-radius:4px;padding:12px;border:1px solid hsl(var(--border))}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-overlay .modal-content{background-color:hsl(var(--card));border-radius:var(--radius);width:90%;max-width:600px;max-height:90vh;overflow-y:auto}.modal-overlay .modal-content .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid hsl(var(--border))}.modal-overlay .modal-content .modal-header h2{margin:0;font-size:1.25rem;font-weight:600}.modal-overlay .modal-content .modal-header .modal-close{background:none;border:none;cursor:pointer;color:hsl(var(--muted-foreground));padding:.25rem}.modal-overlay .modal-content .modal-header .modal-close:hover{color:hsl(var(--foreground))}.modal-overlay .modal-content .modal-body{padding:1.5rem}.modal-overlay .modal-content .modal-body p{margin-bottom:1rem;color:hsl(var(--foreground))}.modal-overlay .modal-content .modal-body ol{margin-left:1.5rem;margin-bottom:1.5rem}.modal-overlay .modal-content .modal-body ol li{margin-bottom:.5rem}.modal-overlay .modal-content .modal-body .section-divider{display:flex;align-items:center;margin:2rem 0}.modal-overlay .modal-content .modal-body .section-divider span{padding:0 1rem;background-color:hsl(var(--card));color:hsl(var(--muted-foreground));font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.modal-overlay .modal-content .modal-body .section-divider:before,.modal-overlay .modal-content .modal-body .section-divider:after{content:"";flex:1;height:1px;background-color:hsl(var(--border))}.modal-overlay .modal-content .modal-footer{padding:1.5rem;border-top:1px solid hsl(var(--border));display:flex;justify-content:flex-end}.unifi-credentials-selection .loading-credentials{text-align:center;padding:3rem;color:hsl(var(--muted-foreground))}.unifi-credentials-selection .existing-credentials-section{margin-bottom:2rem}.unifi-credentials-selection .existing-credentials-section h4{margin-bottom:1rem;font-size:1rem;font-weight:600;color:hsl(var(--foreground))}.unifi-credentials-selection .existing-credentials-section .credentials-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.unifi-credentials-selection .existing-credentials-section .credential-item{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid hsl(var(--border));border-radius:var(--radius);cursor:pointer;transition:all .2s ease;background-color:hsl(var(--background))}.unifi-credentials-selection .existing-credentials-section .credential-item:hover{border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.05)}.unifi-credentials-selection .existing-credentials-section .credential-item.selected{border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.1)}.unifi-credentials-selection .existing-credentials-section .credential-item .credential-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background-color:hsl(var(--primary)/.1);color:hsl(var(--primary));border-radius:var(--radius)}.unifi-credentials-selection .existing-credentials-section .credential-item .credential-info{flex:1}.unifi-credentials-selection .existing-credentials-section .credential-item .credential-info .credential-url{font-weight:500;margin-bottom:.25rem;color:hsl(var(--foreground))}.unifi-credentials-selection .existing-credentials-section .credential-item .credential-info .credential-details{display:flex;gap:1rem;font-size:.75rem;color:hsl(var(--muted-foreground))}.unifi-credentials-selection .existing-credentials-section .credential-item .credential-info .credential-details span{background-color:hsl(var(--muted));padding:.25rem .5rem;border-radius:.25rem}.unifi-credentials-selection .existing-credentials-section .credential-item .credential-select .selected-indicator{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-radius:50%}.unifi-credentials-selection .existing-credentials-section .credentials-actions{display:flex;gap:1rem;align-items:center}.unifi-credentials-selection .existing-credentials-section .credentials-actions .btn-secondary{display:flex;align-items:center;gap:.5rem}.unifi-credentials-selection .new-credentials-section{border-top:1px solid hsl(var(--border));padding-top:1.5rem}.unifi-credentials-selection .new-credentials-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.unifi-credentials-selection .new-credentials-section .section-header h4{margin:0;font-size:1rem;font-weight:600}.unifi-credentials-selection .new-credentials-section .section-header .btn-text{background:none;border:none;color:hsl(var(--primary));cursor:pointer;font-size:.875rem;padding:0}.unifi-credentials-selection .new-credentials-section .section-header .btn-text:hover{text-decoration:underline}.unifi-credentials-selection .new-credentials-section .new-credentials-form .form-actions{margin-top:1.5rem}.unifi-credentials-selection .no-credentials-section .no-credentials-message{text-align:center;padding:1rem;margin-bottom:2rem;background-color:hsl(var(--muted));border-radius:var(--radius)}.unifi-credentials-selection .no-credentials-section .no-credentials-message svg{color:hsl(var(--muted-foreground));width:22px;height:22px}.unifi-credentials-selection .no-credentials-section .no-credentials-message h4{margin-bottom:.5rem;font-size:1.125rem;font-weight:600;margin-top:0}.unifi-credentials-selection .no-credentials-section .no-credentials-message p{color:hsl(var(--muted-foreground));max-width:500px;margin:0 auto}.unifi-credentials-selection .no-credentials-section .new-credentials-form .form-actions{margin-top:1.5rem}.credential-item{position:relative}.credential-item.editing{border:1px solid hsl(var(--primary))!important;background-color:hsl(var(--primary)/.05)!important;padding:1.5rem!important}.credential-item.editing .credential-edit-form{flex:1}.credential-item.editing .credential-edit-form .form-group{margin-bottom:1rem}.credential-item.editing .credential-edit-form .form-group:last-child{margin-bottom:0}.credential-item.editing .credential-edit-form .form-group label{font-size:.875rem;margin-bottom:.25rem;display:block}.credential-item.editing .credential-edit-form .form-group input{width:100%;padding:.5rem;font-size:.875rem}.credential-item.editing .credential-edit-form .form-group .input-help{font-size:.75rem;color:hsl(var(--muted-foreground));margin-top:.25rem}.credential-item.editing .credential-edit-form .credential-edit-actions{display:flex;gap:.75rem;margin-top:1rem}.credential-item.editing .credential-edit-form .credential-edit-actions button{padding:.5rem 1rem;font-size:.875rem}.credential-item .credential-actions{display:flex;align-items:center;gap:.5rem}.credential-item .credential-actions .credential-menu-container{position:relative}.credential-item .credential-actions .credential-menu-container .credential-menu-button{background:none;border:none;color:hsl(var(--muted-foreground));cursor:pointer;padding:.25rem;border-radius:.25rem;display:flex;align-items:center;justify-content:center}.credential-item .credential-actions .credential-menu-container .credential-menu-button:hover{background-color:hsl(var(--muted));color:hsl(var(--foreground))}.credential-item .credential-actions .credential-menu-container .credential-menu{position:absolute;top:100%;right:0;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:0 4px 12px #0000001a;min-width:160px;z-index:10;overflow:hidden}.credential-item .credential-actions .credential-menu-container .credential-menu .credential-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:none;border:none;text-align:left;cursor:pointer;font-size:.875rem;color:hsl(var(--foreground));transition:background-color .2s ease}.credential-item .credential-actions .credential-menu-container .credential-menu .credential-menu-item:hover{background-color:hsl(var(--muted))}.credential-item .credential-actions .credential-menu-container .credential-menu .credential-menu-item.delete{color:hsl(var(--destructive))}.credential-item .credential-actions .credential-menu-container .credential-menu .credential-menu-item.delete:hover{background-color:hsl(var(--destructive)/.1)}.credential-item .credential-actions .credential-menu-container .credential-menu .credential-menu-item:disabled{opacity:.5;cursor:not-allowed}.unifi-credentials-selection .server-error-message,.unifi-credentials-selection .server-success-message{margin-bottom:1.5rem}.add-device-form{position:relative;z-index:1}.unifi-site-selection .sites-list-section h4{margin-bottom:1rem;font-size:1rem;font-weight:600;color:hsl(var(--foreground))}.unifi-site-selection .sites-list-section .loading-sites{text-align:center;padding:3rem;color:hsl(var(--muted-foreground))}.unifi-site-selection .sites-list-section .loading-sites p{margin:0}.unifi-site-selection .sites-list-section .no-sites-message{text-align:center;padding:3rem 1rem;background-color:hsl(var(--muted)/.3);border-radius:var(--radius);color:hsl(var(--muted-foreground))}.unifi-site-selection .sites-list-section .no-sites-message svg{margin-bottom:1rem;color:hsl(var(--muted-foreground))}.unifi-site-selection .sites-list-section .no-sites-message p{margin:0}.unifi-site-selection .sites-list-section .sites-list{display:flex;flex-direction:column;gap:.75rem}.unifi-site-selection .sites-list-section .site-item{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid hsl(var(--border));border-radius:var(--radius);cursor:pointer;transition:all .2s ease;background-color:hsl(var(--background))}.unifi-site-selection .sites-list-section .site-item:hover{border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.05)}.unifi-site-selection .sites-list-section .site-item.selected{border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.1)}.unifi-site-selection .sites-list-section .site-item.selected .site-icon{background-color:hsl(var(--primary)/.2);color:hsl(var(--primary))}.unifi-site-selection .sites-list-section .site-item .site-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background-color:hsl(var(--primary)/.1);color:hsl(var(--primary));border-radius:var(--radius);flex-shrink:0}.unifi-site-selection .sites-list-section .site-item .site-info{flex:1;min-width:0}.unifi-site-selection .sites-list-section .site-item .site-info .site-name{font-weight:600;margin-bottom:.25rem;color:hsl(var(--foreground));font-size:.9375rem}.unifi-site-selection .sites-list-section .site-item .site-info .site-details{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.75rem;color:hsl(var(--muted-foreground))}.unifi-site-selection .sites-list-section .site-item .site-info .site-details span{background-color:hsl(var(--muted));padding:.25rem .5rem;border-radius:.25rem;display:inline-block}.unifi-site-selection .sites-list-section .site-item .site-info .site-details .site-description{background-color:transparent;padding:0;font-style:italic}.unifi-site-selection .sites-list-section .site-item .site-info .site-details .site-device-count{background-color:hsl(var(--primary)/.1);color:hsl(var(--primary))}.unifi-site-selection .sites-list-section .site-item svg:last-child{color:hsl(var(--muted-foreground));flex-shrink:0}.unifi-device-selection .loading-devices{text-align:center;padding:3rem;color:hsl(var(--muted-foreground))}.unifi-device-selection .loading-devices p{margin:0}.unifi-device-selection .no-devices-message{text-align:center;padding:3rem 1rem;background-color:hsl(var(--muted)/.3);border-radius:var(--radius);color:hsl(var(--muted-foreground))}.unifi-device-selection .no-devices-message svg{margin-bottom:1rem;color:hsl(var(--muted-foreground))}.unifi-device-selection .no-devices-message p{margin:0}.unifi-device-selection .device-info .device-details{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.75rem;color:hsl(var(--muted-foreground))}.unifi-device-selection .device-info .device-details span{background-color:hsl(var(--muted));padding:.25rem .5rem;border-radius:.25rem;display:inline-block}.unifi-device-selection .device-info .device-details .device-status.online{background-color:hsl(var(--success)/.1);color:hsl(var(--success))}.unifi-device-selection .device-info .device-details .device-status.offline{background-color:hsl(var(--destructive)/.1);color:hsl(var(--destructive))}.unifi-device-selection .device-info .device-details .device-model-name{background-color:hsl(var(--primary)/.1);color:hsl(var(--primary))}.unifi-site-selection .sites-list{margin-bottom:24px}.unifi-site-selection .sites-list .site-item{cursor:pointer;display:flex;align-items:center;padding:16px;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:12px;transition:all .2s;position:relative}.unifi-site-selection .sites-list .site-item:hover{background-color:#f8fafc;border-color:#cbd5e0}.unifi-site-selection .sites-list .site-item.selected{border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.1);border-width:2px}.unifi-site-selection .sites-list .site-item .site-icon{margin-right:16px;color:#718096}.unifi-site-selection .sites-list .site-item .site-info{flex:1}.unifi-site-selection .sites-list .site-item .site-info .site-name{font-weight:600;color:#2d3748;margin-bottom:4px}.unifi-site-selection .sites-list .site-item .site-info .site-details{font-size:14px;color:#718096}.unifi-site-selection .sites-list .site-item .site-info .site-details .site-description{font-style:italic}.unifi-site-selection .sites-list .site-item .site-selection-indicator{color:#4299e1;margin-left:8px}.unifi-site-selection .selection-error{margin-top:8px;margin-bottom:16px;padding:12px;background-color:#fed7d7;color:#c53030;border-radius:6px;font-size:14px}.unifi-site-selection .site-actions{display:flex;justify-content:end;margin-top:8px}.unifi-site-selection .site-actions .btn-primary{min-width:140px;display:flex;align-items:center;justify-content:center;gap:8px}.unifi-site-selection .site-actions .btn-primary:disabled{opacity:.7;cursor:not-allowed}.unifi-site-selection .spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}.unifi-credentials-selection .credentials-actions{display:flex;gap:1rem;align-items:center;margin-top:1.5rem}.unifi-credentials-selection .credentials-actions .btn-secondary{display:flex;align-items:center;gap:.5rem}.unifi-credentials-selection .credentials-actions .btn-primary{min-width:140px;display:flex;align-items:center;justify-content:center}.unifi-credentials-selection .new-credentials-form .form-actions{margin-top:1.5rem}.unifi-credentials-selection .new-credentials-form .form-actions .btn-primary{min-width:140px;display:flex;align-items:center;justify-content:center}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading-sites,.loading-devices,.loading-credentials{animation:pulse 1.5s ease-in-out infinite}.add-device-form .step-header p{margin-bottom:0rem}.add-device-form .form-actions{margin-top:2rem;padding-top:1.5rem}.add-device-form .form-actions button{min-width:120px;text-align:center}.credential-item{margin-bottom:.75rem}.credential-item:last-child{margin-bottom:0}.credential-item.editing{margin-bottom:1.5rem}@media(max-width:768px){.unifi-credentials-selection .credentials-actions{flex-direction:column;align-items:stretch}.unifi-credentials-selection .credentials-actions button{width:100%;justify-content:center}.add-device-form .form-actions{flex-direction:column;gap:.75rem}.add-device-form .form-actions button{width:100%}.site-item{flex-wrap:wrap}.site-item .site-details{flex-direction:column;align-items:flex-start}}.credential-url{word-break:break-all;font-family:monospace;font-size:.875rem;margin-bottom:.25rem}.credential-edit-form .form-group label{font-size:.875rem;margin-bottom:.25rem;display:block}.credential-edit-form .form-group input{font-size:.875rem;padding:.5rem .75rem}.step-header h3{font-size:1.25rem;font-weight:600;margin-bottom:0rem;color:hsl(var(--foreground))}.step-header p{color:hsl(var(--muted-foreground));font-size:.75rem;line-height:1.5}.unifi-credentials-selection .step-header,.unifi-site-selection .step-header,.unifi-device-selection .step-header{margin-bottom:0rem;padding-bottom:1.5rem}.device-item.already-added{opacity:.6;cursor:not-allowed;background-color:hsl(var(--muted)/.3)}.device-item.already-added:hover{background-color:hsl(var(--muted)/.3);border-color:hsl(var(--border))}.device-item.already-added .device-checkbox input{cursor:not-allowed}.device-item .device-name{display:flex;align-items:center;gap:.5rem}.device-item .device-name .already-added-badge{background-color:hsl(var(--muted-foreground)/.2);color:hsl(var(--muted-foreground));font-size:.7rem;padding:.125rem .375rem;border-radius:.25rem;font-weight:500}.devices-header h4{display:flex;flex-direction:column;gap:.25rem}.devices-header h4 .already-added-count{font-size:.75rem;font-weight:400;color:hsl(var(--muted-foreground))}.devices-header .select-all-btn:disabled{opacity:.5;cursor:not-allowed}.device-checkbox input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.device-checkbox input[type=checkbox]:disabled:checked{background-color:hsl(var(--muted))}.vouchers{display:flex;padding:1.5rem;flex-direction:column;background-color:hsl(var(--background));color:hsl(var(--foreground))}.vouchers .vouchers-title{font-size:2rem;font-weight:700;color:hsl(var(--foreground))}.vouchers .subtitle{font-size:1rem;font-weight:400;color:hsl(var(--muted-foreground));margin-top:0}.vouchers .refresh-icon{width:1.45rem;height:1.25rem;cursor:pointer;margin-left:.5rem;color:hsl(var(--muted-foreground))}.vouchers .refresh-icon.refreshing{animation:spin .5s linear infinite}.vouchers .tabs{margin-top:1.2rem;background-color:hsl(var(--muted));display:flex;justify-content:start;gap:.5rem;width:max-content;padding:.2rem;border-radius:10px}.vouchers .tabs .tab{background-color:transparent;border-width:0;padding:.5rem;font-weight:600;cursor:pointer;border-radius:5px;color:hsl(var(--muted-foreground))}.vouchers .tabs .tab.active{background-color:hsl(var(--background));box-shadow:0 2px 4px #0000001a;color:hsl(var(--foreground))}.vouchers-container{padding-top:2rem;padding-bottom:2rem;max-width:100%}.vouchers-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}@media(min-width:768px){.vouchers-header{flex-direction:row;justify-content:space-between;align-items:center}}.search-container{position:relative;width:100%;display:block}@media(min-width:768px){.search-container{width:320px}}.search-container .search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:hsl(var(--muted-foreground));width:1.25rem;height:1.25rem}.search-container .search-input{width:100%;padding:.75rem 1rem .75rem 2.5rem;background-color:hsl(var(--muted));border:1px solid hsl(var(--input));border-radius:var(--radius);color:hsl(var(--foreground));transition:border-color .2s}.search-container .search-input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.filters-container{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}@media(min-width:640px){.filters-container{flex-direction:row;align-items:center;flex-wrap:wrap;gap:.75rem}}@media(min-width:768px){.filters-container{flex-wrap:nowrap;gap:1rem;width:auto}}.filter-select{padding:.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;min-width:180px}@media(min-width:640px){.filter-select{width:calc(50% - .375rem);min-width:180px}}@media(min-width:768px){.filter-select{width:auto;min-width:180px}}.filter-select:focus{outline:none;border-color:hsl(var(--primary))}.refresh-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);cursor:pointer;font-weight:500;transition:all .2s}.refresh-button:hover:not(:disabled){background-color:hsl(var(--secondary)/.9);transform:translateY(-1px)}.refresh-button:disabled{opacity:.6;cursor:not-allowed}.refresh-button .icon-sm{width:1rem;height:1rem}.refresh-button .icon-sm.spinning{animation:spin 1s linear infinite}.download-pdf-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);cursor:pointer;font-weight:500;transition:background-color .2s}@media(min-width:640px){.download-pdf-button{width:calc(50% - .375rem)}}@media(min-width:768px){.download-pdf-button{width:auto;min-width:140px}}.download-pdf-button:hover{background-color:hsl(var(--primary)/.9)}.download-pdf-button .icon-sm{width:1rem;height:1rem}.quick-filters{display:none;gap:.5rem}@media(min-width:768px){.quick-filters{display:flex}}.quick-filter-button{display:flex;align-items:center;gap:.25rem;padding:.5rem .75rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;font-size:.75rem;transition:background-color .2s}.quick-filter-button:hover{background-color:hsl(var(--muted))}.featured-vouchers{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:2rem}@media(min-width:768px){.featured-vouchers{grid-template-columns:repeat(3,1fr)}}.voucher-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);overflow:hidden;transition:box-shadow .2s}.voucher-card:hover{box-shadow:0 4px 12px hsla(var(--foreground)/.1)}.header-content{display:flex;justify-content:space-between;align-items:center;width:100%}.header-content .card-title{font-weight:700;font-size:.875rem;margin:0}.type-badge{padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.type-badge.status-active{background-color:hsl(var(--primary-foreground));color:hsl(var(--primary))}.type-badge.status-expired{background-color:#65758b33;color:#65758b}.type-badge.status-depleted{background-color:#ef434333;color:#ef4343}.detail-item{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;color:hsl(var(--muted-foreground))}.detail-icon{width:1rem;height:1rem}.data-icon{width:1rem;height:1rem;display:flex;align-items:center;justify-content:center}.vouchers-table-container{border:1px solid hsl(var(--border));border-radius:var(--radius);overflow-x:auto;margin-bottom:2rem}@media(min-width:768px){.vouchers-table-container{overflow-x:visible}}.vouchers-table{width:100%;border-collapse:collapse;background-color:hsl(var(--card))}.vouchers-table tr{border-bottom:1px solid hsl(var(--border))}.vouchers-table th,.vouchers-table td{padding:.5rem;text-align:left}.vouchers-table th{background-color:hsl(var(--muted));font-weight:600;color:hsl(var(--foreground));font-size:.875rem}.vouchers-table .text-right{text-align:center}.voucher-row:hover{background-color:hsl(var(--muted)/.5)}.voucher-row:last-child td{border-bottom:none}.batch-name-cell{font-weight:500;color:hsl(var(--foreground))}.batch-type{text-transform:capitalize}.usage-cell{font-variant-numeric:tabular-nums}.status-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-badge.active{background-color:#16a24933;color:#16a249}.status-badge.redeemable{background-color:#65758b33;color:#65758b}.status-badge.expired{background-color:#ef434333;color:#ef4343}.actions-cell .action-buttons{display:flex;justify-content:center;gap:.25rem}.action-buttons{display:flex;gap:.25rem}.icon-button{padding:.5rem;background:none;border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer;transition:background-color .2s}.icon-button:hover{background-color:hsl(var(--muted))}.icon-button.destructive{color:hsl(var(--destructive))}.icon-button.destructive:hover{background-color:hsl(var(--destructive)/.1)}.icon-xs{width:.875rem;height:.875rem}.pagination-container{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding:0 .5rem}.pagination-info{color:hsl(var(--muted-foreground));font-size:.875rem}.pagination{display:flex;gap:.5rem}.pagination-button{padding:.5rem 1rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;transition:background-color .2s}.pagination-button:hover{background-color:hsl(var(--muted))}.pagination-button.active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.pagination-ellipsis{display:flex;align-items:center;justify-content:center;padding:.5rem .25rem;color:hsl(var(--muted-foreground));min-width:2.5rem;font-size:.875rem}@media(min-width:640px){.pagination-ellipsis{min-width:3rem;padding:.5rem}}.dark .vouchers-table th{background-color:hsl(var(--muted))}.dark .voucher-card{background-color:hsl(var(--card))}.dark .download-pdf-button{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.dark .download-pdf-button:hover{background-color:hsl(var(--primary)/.9)}.dark .refresh-button{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-color:hsl(var(--border))}.dark .refresh-button:hover:not(:disabled){background-color:hsl(var(--secondary)/.9)}.loading,.error{text-align:center;padding:2rem;color:hsl(var(--muted-foreground))}.error{color:hsl(var(--destructive))}.no-data{text-align:center;padding:2rem;color:hsl(var(--muted-foreground));font-style:italic}.sortable-header{position:relative;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease}.sortable-header:hover{background-color:var(--hover-color, rgba(0, 0, 0, .05))}.sortable-header .sort-icon{margin-left:.5rem;display:inline-flex;align-items:center;color:var(--primary-color, #3b82f6)}.vouchers-table th.sortable-header:hover{background-color:hsl(var(--muted)/.8)}.vouchers-table th.sortable-header .sort-icon{margin-left:.5rem;display:inline-flex;align-items:center;color:hsl(var(--muted-foreground))}.vouchers-table th.sortable-header .sort-icon .default-icon{color:hsl(var(--muted-foreground)/.5)}.vouchers-table th.sortable-header .expired-sort-icon{margin-left:.5rem;display:inline-flex;align-items:center;color:hsl(var(--muted-foreground))}.vouchers-table th.sortable-header .expired-sort-icon .default-icon{color:hsl(var(--muted-foreground)/.5)}.vouchers-table th{position:relative}.voucher-generator-container{padding-top:2rem;padding-bottom:2rem;max-width:100%}.voucher-generator-container .error-message{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;margin-bottom:1.5rem;border:1px solid hsl(var(--destructive));border-radius:var(--radius);background-color:hsl(var(--destructive)/.1);color:hsl(var(--destructive))}.voucher-generator-container .error-message .error-dismiss{background:none;border:none;color:inherit;cursor:pointer;padding:.25rem;border-radius:50%;font-size:1.25rem;line-height:1}.voucher-generator-container .error-message .error-dismiss:hover{background-color:hsl(var(--destructive)/.2)}.voucher-generator-container .success-message{background-color:hsl(var(--success)/.1);color:hsl(var(--success));padding:.75rem;border-radius:var(--radius);border:1px solid hsl(var(--success)/.2);margin-bottom:1.5rem;font-size:.875rem;width:max-content}.voucher-generator-container .voucher-generator-form .voucher-form-sections{display:flex;flex-direction:column;gap:1.5rem}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius)}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .section-header{padding:1.5rem 1.5rem 0}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .section-header .section-title{font-size:1.25rem;font-weight:600;color:hsl(var(--foreground));margin:0 0 .5rem}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .section-header .section-description{color:hsl(var(--muted-foreground));margin:0}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .voucher-section-content{padding:1.5rem}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .voucher-section-content .form-group{margin-bottom:1.5rem}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .voucher-section-content .form-group:last-child{margin-bottom:0}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .voucher-section-content .form-label{display:block;font-weight:500;color:hsl(var(--foreground));margin-bottom:.5rem}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .voucher-section-content .form-input{width:100%;padding-top:.75rem;padding-bottom:.75rem;padding-left:.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));transition:border-color .2s}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .voucher-section-content .form-input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .voucher-section-content .form-select{width:100%;padding:.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));transition:border-color .2s}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .voucher-section-content .form-select:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .voucher-section-content .form-textarea{width:100%;resize:vertical;min-height:80px;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground))}.voucher-generator-container .voucher-generator-form .voucher-form-sections .voucher-form-section .voucher-section-content .form-textarea:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.section-footer{padding:1.5rem;border-top:1px solid hsl(var(--border));display:flex;justify-content:flex-end;gap:.75rem}.form-textarea{resize:vertical;min-height:80px}.slider-container{margin-top:.5rem}.slider{width:100%;height:.375rem;border-radius:.375rem;background:hsl(var(--muted));outline:none;-webkit-appearance:none}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:1.25rem;height:1.25rem;border-radius:50%;background:hsl(var(--primary));cursor:pointer;border:2px solid hsl(var(--background))}.slider::-moz-range-thumb{width:1.25rem;height:1.25rem;border-radius:50%;background:hsl(var(--primary));cursor:pointer;border:2px solid hsl(var(--background))}.slider-labels{display:flex;justify-content:space-between;margin-top:.5rem;font-size:.75rem;color:hsl(var(--muted-foreground))}.date-input-container{display:flex;gap:.5rem}.calendar-button{padding:.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;transition:background-color .2s}.calendar-button:hover{background-color:hsl(var(--muted))}.checkbox-group{margin-bottom:1rem}.checkbox-group:last-child{margin-bottom:0}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:500;color:hsl(var(--foreground))}.checkbox-input{display:none}.checkbox-input:checked+.checkbox-custom{background-color:hsl(var(--primary));border-color:hsl(var(--primary))}.checkbox-input:checked+.checkbox-custom:after{content:"";position:absolute;left:50%;top:50%;width:.25rem;height:.5rem;border:solid hsl(var(--primary-foreground));border-width:0 2px 2px 0;transform:translate(-50%,-60%) rotate(45deg)}.checkbox-custom{width:1.25rem;height:1.25rem;border:2px solid hsl(var(--input));border-radius:4px;position:relative;transition:all .2s}.primary-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);cursor:pointer;font-weight:500;transition:opacity .2s}.primary-button:hover{opacity:.9}.secondary-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:hsl(var(--muted));color:hsl(var(--foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);cursor:pointer;font-weight:500;transition:background-color .2s}.secondary-button:hover{background-color:hsl(var(--muted)/.8)}.preview-section{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);overflow:hidden;height:fit-content}.preview-header{padding:1.5rem 1.5rem 0}.preview-header .preview-title{font-size:1.25rem;font-weight:600;color:hsl(var(--foreground));margin:0 0 .5rem}.preview-header .preview-description{color:hsl(var(--muted-foreground));margin:0}.preview-content{padding:1.5rem;display:flex;justify-content:center;align-items:center;min-height:300px}.preview-footer{padding:1.5rem;border-top:1px solid hsl(var(--border));display:flex;justify-content:center;gap:.75rem}.voucher-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);overflow:hidden;width:100%;max-width:300px}.voucher-card.preview{border-style:dashed}.voucher-card .card-header{background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--primary)/.8));padding:.75rem;color:hsl(var(--primary-foreground))}.voucher-card .header-content{display:flex;justify-content:space-between;align-items:center}.voucher-card .card-title{font-weight:700;font-size:.875rem;margin:0}.type-badge{padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500;background-color:hsl(var(--primary-foreground));color:hsl(var(--primary))}.card-content{padding:1rem}.voucher-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.batch-name{font-weight:600;color:hsl(var(--foreground));margin:0;font-size:1.125rem}.ticket-icon{color:hsl(var(--primary));width:1.25rem;height:1.25rem}.voucher-details{margin-bottom:1rem}.detail-item{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.875rem}.detail-item:last-child{margin-bottom:0}.detail-label{color:hsl(var(--muted-foreground))}.detail-value{color:hsl(var(--foreground));font-weight:500}.voucher-code{margin-bottom:.5rem}.code-display{background-color:hsl(var(--muted));border-radius:var(--radius);padding:.75rem;text-align:center}.code-preview{border:1px dashed hsl(var(--border));border-radius:var(--radius);padding:.75rem;text-align:center;color:hsl(var(--muted-foreground));font-size:.875rem}.code-text{font-family:monospace;font-weight:700;letter-spacing:.1em;color:hsl(var(--foreground))}.preview-note{font-size:.75rem;color:hsl(var(--muted-foreground));text-align:center;margin:0}.icon-sm{width:1rem;height:1rem}.dark .form-section,.dark .preview-section{background-color:hsl(var(--card))}.dark .code-display{background-color:hsl(var(--muted))}.sessions-page{display:flex;padding:1.5rem;flex-direction:column;background-color:hsl(var(--background));color:hsl(var(--foreground))}.sessions-page .sessions-title{font-size:2rem;font-weight:700;margin-bottom:2rem;color:hsl(var(--foreground))}.sessions-page .sessions-title .sessions-subtitle{font-size:1rem;font-weight:400;color:hsl(var(--muted-foreground));margin-top:0}.sessions-page .sessions-filters{display:flex;justify-content:space-between;padding-bottom:1rem}@media(max-width:600px){.sessions-page .sessions-filters{flex-direction:column;gap:1rem}}.sessions-page .sessions-filters .sessions-search-container{position:relative;width:100%}@media(min-width:768px){.sessions-page .sessions-filters .sessions-search-container{width:320px}}.sessions-page .sessions-filters .sessions-search-container .search-icon{margin-right:.5rem}.sessions-page .sessions-filters .sessions-search-container .search-input{border:1px solid hsl(var(--muted-foreground));border-radius:.25rem;background-color:hsl(var(--background));color:hsl(var(--foreground))}.sessions-page .sessions-filters .sessions-search-container .search-input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.sessions-page .sessions-filters .sessions-status-filter{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.sessions-page .sessions-filters .sessions-status-filter .status-select{padding:.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;min-width:180px}.sessions-page .sessions-filters .sessions-status-filter .status-select:focus{outline:none;border-color:hsl(var(--primary))}.sessions-page .sessions-table-container{border:1px solid hsl(var(--border));border-radius:var(--radius);overflow-x:auto;margin-bottom:2rem}@media(min-width:768px){.sessions-page .sessions-table-container{overflow-x:visible}}.sessions-page .sessions-table-container .sessions-table{width:100%;border-collapse:collapse;background-color:hsl(var(--card))}.sessions-page .sessions-table-container .sessions-table tr{border-bottom:1px solid hsl(var(--border))}.sessions-page .sessions-table-container .sessions-table th,.sessions-page .sessions-table-container .sessions-table td{padding:1rem;text-align:left}.sessions-page .sessions-table-container .sessions-table th{background-color:hsl(var(--muted));font-weight:600;color:hsl(var(--foreground));font-size:.875rem}.sessions-page .sessions-table-container .sessions-table .session-row:hover{background-color:hsl(var(--muted)/.5)}.sessions-page .sessions-table-container .sessions-table .session-row:last-child td{border-bottom:none}.sessions-page .sessions-table-container .sessions-table .status-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.sessions-page .sessions-table-container .sessions-table .status-badge.active{background-color:#16a24933;color:#16a249}.sessions-page .sessions-table-container .sessions-table .status-badge.inactive{background-color:#ef434333;color:#ef4343}.sessions-page .sessions-pagination{display:flex;justify-content:center;gap:.5rem}.sessions-page .sessions-pagination .pagination-button{padding:.5rem 1rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;transition:background-color .2s}.sessions-page .sessions-pagination .pagination-button:hover{background-color:hsl(var(--muted))}.sessions-page .sessions-pagination .pagination-button.active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.price-plans-page{display:flex;padding:1.5rem;flex-direction:column;background-color:hsl(var(--background));color:hsl(var(--foreground))}.price-plans-page .price-plans-title{font-size:2rem;font-weight:700;color:hsl(var(--foreground))}.price-plans-page .price-plans-title .subtitle{font-size:1rem;font-weight:400;color:hsl(var(--muted-foreground));margin-top:0}.price-plans-page .refresh-icon{width:1.45rem;height:1.25rem;cursor:pointer;margin-left:.5rem;color:hsl(var(--muted-foreground))}.price-plans-page .refresh-icon.refreshing{animation:spin .5s linear infinite}.price-plans-page .price-plans-tabs{margin-top:1.2rem;background-color:hsl(var(--muted));display:flex;justify-content:start;gap:.5rem;padding:.2rem;border-radius:10px;width:max-content}.price-plans-page .price-plans-tabs .tab{background-color:transparent;border-width:0;padding:.5rem;font-weight:600;cursor:pointer;border-radius:5px;color:hsl(var(--muted-foreground))}.price-plans-page .price-plans-tabs .tab.active{background-color:hsl(var(--background));box-shadow:0 2px 4px #0000001a;color:hsl(var(--foreground))}.plan-list{padding-top:2rem;padding-bottom:2rem;max-width:100%}.plan-list .plan-list-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;justify-self:end}@media(min-width:768px){.plan-list .plan-list-header{flex-direction:row;justify-content:space-between;align-items:center}}.plan-list .plan-list-header .filters-container{display:flex;align-items:center;gap:1rem;justify-content:flex-end}.plan-list .plan-list-header .filters-container .filter-select{padding:.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;min-width:180px}.plan-list .plan-list-header .filters-container .filter-select:focus{outline:none;border-color:hsl(var(--primary))}.plan-list .plan-list-table-container{border:1px solid hsl(var(--border));border-radius:var(--radius);overflow-x:auto;margin-bottom:2rem}@media(min-width:768px){.plan-list .plan-list-table-container{overflow-x:visible}}.plan-list .plan-list-table-container .plan-list-table{width:100%;border-collapse:collapse;background-color:hsl(var(--card))}.plan-list .plan-list-table-container .plan-list-table tr{border-bottom:1px solid hsl(var(--border))}.plan-list .plan-list-table-container .plan-list-table th,.plan-list .plan-list-table-container .plan-list-table td{padding:1rem;text-align:left}.plan-list .plan-list-table-container .plan-list-table th{background-color:hsl(var(--muted));font-weight:600;color:hsl(var(--foreground));font-size:.875rem}.plan-list .plan-list-table-container .plan-list-table .plan-row:hover{background-color:hsl(var(--muted)/.5)}.plan-list .plan-list-table-container .plan-list-table .plan-row:last-child td{border-bottom:none}.plan-list .plan-list-table-container .plan-list-table .plan-row .edit-input,.plan-list .plan-list-table-container .plan-list-table .plan-row .edit-select{padding:.5rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));width:100%}.plan-list .plan-list-table-container .plan-list-table .plan-row .edit-input:focus,.plan-list .plan-list-table-container .plan-list-table .plan-row .edit-select:focus{outline:none;border-color:hsl(var(--primary))}.plan-list .plan-list-table-container .plan-list-table .plan-row .edit-select{cursor:pointer}.plan-list .loading-container{display:flex;justify-content:start;padding:2rem;color:hsl(var(--muted-foreground))}.plan-list .no-data{text-align:center;padding:2rem;color:hsl(var(--muted-foreground));font-style:italic}.plan-list .pagination-container{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding:0 .5rem}.plan-list .pagination-info{color:hsl(var(--muted-foreground));font-size:.875rem}.plan-list .pagination{display:flex;gap:.5rem}.plan-list .pagination-button{padding:.5rem 1rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;transition:background-color .2s}.plan-list .pagination-button:hover{background-color:hsl(var(--muted))}.plan-list .pagination-button.active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.plan-list .action-buttons{display:flex;gap:.5rem}.plan-list .action-buttons button{display:flex;align-items:center;justify-content:center;padding:.5rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:transparent;cursor:pointer;transition:all .2s}.plan-list .action-buttons button:hover{background-color:hsl(var(--muted)/.5)}.plan-list .action-buttons .edit-button{color:hsl(var(--foreground))}.plan-list .action-buttons .edit-button:hover{border-color:hsl(var(--primary))}.plan-list .action-buttons .save-button{color:hsl(var(--primary))}.plan-list .action-buttons .save-button:hover{border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.1)}.plan-list .action-buttons .cancel-button{color:hsl(var(--muted-foreground))}.plan-list .action-buttons .cancel-button:hover{border-color:hsl(var(--muted-foreground))}.plan-list .action-buttons .delete-button{color:hsl(var(--destructive))}.plan-list .action-buttons .delete-button:hover{border-color:hsl(var(--destructive));background-color:hsl(var(--destructive)/.1)}.error-message{background-color:hsl(var(--background));color:hsl(var(--destructive));padding:10px;border-radius:4px;margin-bottom:15px;border:1px solid #fcc}.success-message{background-color:hsl(var(--success)/.1);color:hsl(var(--success));padding:10px;border-radius:4px;margin-bottom:15px;border:1px solid hsl(var(--success)/.2)}.loading-overlay{position:fixed;inset:0;background-color:hsl(var(--background)/.7);display:flex;justify-content:center;align-items:center;z-index:1000}button:disabled{opacity:.5;cursor:not-allowed}input:disabled,select:disabled{opacity:.7;cursor:not-allowed}.add-plan{padding-top:2rem;padding-bottom:2rem;padding-left:2rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--card));margin-bottom:2rem;margin-top:2rem;position:relative}.add-plan .server-error-message{background-color:hsl(var(--destructive)/.1);color:hsl(var(--destructive));padding:.75rem;border-radius:var(--radius);border:1px solid hsl(var(--destructive)/.2);margin-bottom:1.5rem;font-size:.875rem;width:max-content}.add-plan .server-success-message{background-color:hsl(var(--success)/.1);color:hsl(var(--success));padding:.75rem;border-radius:var(--radius);border:1px solid hsl(var(--success)/.2);margin-bottom:1.5rem;font-size:.875rem;width:max-content}.add-plan .add-plan-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;color:hsl(var(--foreground))}.add-plan .add-plan-form{display:flex;flex-direction:column;gap:1.5rem;padding-right:2rem}.add-plan .add-plan-form .add-plan-form-group{display:flex;flex-direction:column;gap:.5rem}.add-plan .add-plan-form .add-plan-form-group .form-label{font-weight:500;color:hsl(var(--foreground))}.add-plan .add-plan-form .add-plan-form-group .form-select,.add-plan .add-plan-form .add-plan-form-group .add-plan-form-input{padding-top:.75rem;padding-bottom:.75rem;padding-left:.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));font-size:1rem}.add-plan .add-plan-form .add-plan-form-group .form-select:focus,.add-plan .add-plan-form .add-plan-form-group .add-plan-form-input:focus{outline:none;border-color:hsl(var(--primary))}.add-plan .add-plan-form .add-plan-form-group .form-select.error,.add-plan .add-plan-form .add-plan-form-group .add-plan-form-input.error{border-color:hsl(var(--destructive))}.add-plan .add-plan-form .add-plan-form-group .form-select:disabled,.add-plan .add-plan-form .add-plan-form-group .add-plan-form-input:disabled{opacity:.7;cursor:not-allowed;background-color:hsl(var(--muted))}.add-plan .add-plan-form .add-plan-form-group .error-message{color:hsl(var(--destructive));font-size:.875rem}.add-plan .add-plan-form .submit-button{padding:.75rem 1.5rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);font-weight:500;cursor:pointer;transition:background-color .2s;align-self:flex-start}.add-plan .add-plan-form .submit-button:hover:not(:disabled){background-color:hsl(var(--primary)/.9)}.add-plan .add-plan-form .submit-button:disabled{opacity:.7;cursor:not-allowed;background-color:hsl(var(--muted))}.sites-page{display:flex;padding:1.5rem;flex-direction:column;background-color:hsl(var(--background));color:hsl(var(--foreground))}.sites-page .sites-title{font-size:2rem;font-weight:700;margin-bottom:2rem;color:hsl(var(--foreground))}.sites-page .sites-title .subtitle{font-size:1rem;font-weight:400;color:hsl(var(--muted-foreground));margin-top:0}.sites-page .refresh-icon{width:1.45rem;height:1.25rem;cursor:pointer;margin-left:.5rem;color:hsl(var(--muted-foreground))}.sites-page .refresh-icon.refreshing{animation:spin .5s linear infinite}.sites-page .refresh-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);cursor:pointer;font-weight:500;transition:all .2s ease}.sites-page .refresh-button:hover:not(:disabled){background-color:hsl(var(--primary)/.9);transform:translateY(-1px)}.sites-page .refresh-button:disabled{opacity:.7;cursor:not-allowed}.sites-page .refresh-button.refreshing .refresh-icon{animation:spin 1s linear infinite}.sites-page .refresh-button .refresh-icon{width:1.25rem;height:1.25rem}.sites-page .sites-tabs{margin-top:1.2rem;background-color:hsl(var(--muted));display:flex;justify-content:start;gap:.5rem;padding:.2rem;border-radius:10px;width:max-content}.sites-page .sites-tabs .tab{background-color:transparent;border-width:0;padding:.5rem;font-weight:600;cursor:pointer;border-radius:5px;color:hsl(var(--muted-foreground))}.sites-page .sites-tabs .tab.active{background-color:hsl(var(--background));box-shadow:0 2px 4px #0000001a;color:hsl(var(--foreground))}.sites-page .sites-list{margin-top:2rem}.sites-page .sites-list .loading-container{display:flex;justify-content:start;padding:2rem;color:hsl(var(--muted-foreground))}.sites-page .sites-list .no-data{text-align:center;padding:2rem;color:hsl(var(--muted-foreground));font-style:italic}.sites-page .sites-list .error-message{background-color:hsl(var(--background));color:hsl(var(--destructive));padding:10px;border-radius:4px;margin-bottom:15px;border:1px solid #fcc}.sites-page .sites-list .success-message{background-color:hsl(var(--success)/.1);color:hsl(var(--success));padding:10px;border-radius:4px;margin-bottom:15px;border:1px solid hsl(var(--success)/.2)}.sites-page .sites-filters{display:flex;justify-content:space-between;padding-bottom:1rem}.sites-page .sites-filters .sites-search-container{position:relative;width:100%;display:flex;align-items:center}@media(min-width:768px){.sites-page .sites-filters .sites-search-container{width:320px}}.sites-page .sites-filters .sites-search-container .search-icon{position:absolute;left:10px;color:hsl(var(--muted-foreground));z-index:1}.sites-page .sites-filters .sites-search-container .search-input{border:1px solid hsl(var(--muted-foreground));border-radius:.25rem;background-color:hsl(var(--background));color:hsl(var(--foreground));padding:.75rem 1rem .75rem 2.5rem;width:100%}.sites-page .sites-filters .sites-search-container .search-input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.sites-page .sites-table-container{border:1px solid hsl(var(--border));border-radius:var(--radius);overflow-x:auto;margin-bottom:2rem}.sites-page .sites-table-container .sites-table{width:100%;border-collapse:collapse;background-color:hsl(var(--card));min-width:600px}@media(min-width:768px){.sites-page .sites-table-container .sites-table{min-width:auto}}.sites-page .sites-table-container .sites-table tr{border-bottom:1px solid hsl(var(--border))}.sites-page .sites-table-container .sites-table th,.sites-page .sites-table-container .sites-table td{padding:1rem;text-align:left}.sites-page .sites-table-container .sites-table th{background-color:hsl(var(--muted));font-weight:600;color:hsl(var(--foreground));font-size:.875rem}.sites-page .sites-table-container .sites-table .site-row:hover{background-color:hsl(var(--muted)/.5)}.sites-page .sites-table-container .sites-table .site-row:last-child td{border-bottom:none}.sites-page .sites-table-container .sites-table .site-row .edit-input,.sites-page .sites-table-container .sites-table .site-row .edit-select{padding:.5rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));width:100%}.sites-page .sites-table-container .sites-table .site-row .edit-input:focus,.sites-page .sites-table-container .sites-table .site-row .edit-select:focus{outline:none;border-color:hsl(var(--primary))}.sites-page .sites-table-container .sites-table .no-results{text-align:center;padding:2rem;color:hsl(var(--muted-foreground));font-style:italic}.sites-page .pagination-container{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding:0 .5rem}.sites-page .pagination-info{color:hsl(var(--muted-foreground));font-size:.875rem}.sites-page .pagination{display:flex;gap:.5rem}.sites-page .pagination-button{padding:.5rem 1rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;transition:background-color .2s}.sites-page .pagination-button:hover{background-color:hsl(var(--muted))}.sites-page .pagination-button.active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.sites-page .action-buttons{display:flex;gap:.5rem}.sites-page .action-buttons button{display:flex;align-items:center;justify-content:center;padding:.5rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:transparent;cursor:pointer;transition:all .2s}.sites-page .action-buttons button:hover{background-color:hsl(var(--muted)/.5)}.sites-page .action-buttons .edit-button{color:hsl(var(--foreground))}.sites-page .action-buttons .edit-button:hover{border-color:hsl(var(--primary))}.sites-page .action-buttons .save-button{color:hsl(var(--primary))}.sites-page .action-buttons .save-button:hover{border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.1)}.sites-page .action-buttons .cancel-button{color:hsl(var(--muted-foreground))}.sites-page .action-buttons .cancel-button:hover{border-color:hsl(var(--muted-foreground))}.sites-page .action-buttons .delete-button{color:hsl(var(--destructive))}.sites-page .action-buttons .delete-button:hover{border-color:hsl(var(--destructive));background-color:hsl(var(--destructive)/.1)}.add-site{padding-top:2rem;padding-bottom:2rem;padding-left:2rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--card));margin-bottom:2rem;margin-top:2rem}.add-site .server-error-message{background-color:hsl(var(--destructive)/.1);color:hsl(var(--destructive));padding:.75rem;border-radius:var(--radius);border:1px solid hsl(var(--destructive)/.2);margin-bottom:1.5rem;font-size:.875rem;width:max-content}.add-site .server-success-message{background-color:hsl(var(--success)/.1);color:hsl(var(--success));padding:.75rem;border-radius:var(--radius);border:1px solid hsl(var(--success)/.2);margin-bottom:1.5rem;font-size:.875rem;width:max-content}.add-site .add-site-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;color:hsl(var(--foreground))}.add-site .add-site-form{display:flex;flex-direction:column;gap:1.5rem;padding-right:2rem}.add-site .add-site-form .add-site-form-group{display:flex;flex-direction:column;gap:.5rem}.add-site .add-site-form .add-site-form-group .form-label{font-weight:500;color:hsl(var(--foreground))}.add-site .add-site-form .add-site-form-group .form-select,.add-site .add-site-form .add-site-form-group .add-site-form-input{padding-top:.75rem;padding-bottom:.75rem;padding-left:.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));font-size:1rem}.add-site .add-site-form .add-site-form-group .form-select:focus,.add-site .add-site-form .add-site-form-group .add-site-form-input:focus{outline:none;border-color:hsl(var(--primary))}.add-site .add-site-form .add-site-form-group .form-select.error,.add-site .add-site-form .add-site-form-group .add-site-form-input.error{border-color:hsl(var(--destructive))}.add-site .add-site-form .add-site-form-group .error-message{color:hsl(var(--destructive));font-size:.875rem}.add-site .add-site-form .submit-button{padding:.75rem 1.5rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);font-weight:500;cursor:pointer;transition:background-color .2s;align-self:flex-start}.add-site .add-site-form .submit-button:hover:not(:disabled){background-color:hsl(var(--primary)/.9)}.add-site .add-site-form .submit-button:disabled{opacity:.7;cursor:not-allowed}.revenue-page{display:flex;padding:1.5rem;flex-direction:column;background-color:hsl(var(--background));color:hsl(var(--foreground));min-height:100vh}.revenue-page .revenue-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}@media(max-width:768px){.revenue-page .revenue-header{flex-direction:column;gap:1rem}}.revenue-page .revenue-title{font-size:2rem;font-weight:700;color:hsl(var(--foreground));margin-bottom:1rem}.revenue-page .revenue-title .subtitle{font-size:1rem;font-weight:400;color:hsl(var(--muted-foreground));margin-top:0rem}.revenue-page .refresh-icon{width:1.45rem;height:1.25rem;cursor:pointer;margin-left:.5rem;color:hsl(var(--muted-foreground))}.revenue-page .refresh-icon.refreshing{animation:spin .5s linear infinite}.revenue-page .refresh-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);cursor:pointer;font-weight:500;transition:all .2s ease}.revenue-page .refresh-button:hover:not(:disabled){background-color:hsl(var(--primary)/.9);transform:translateY(-1px)}.revenue-page .refresh-button:disabled{opacity:.7;cursor:not-allowed}.revenue-page .refresh-button.refreshing .refresh-icon{animation:spin 1s linear infinite}.revenue-page .refresh-button .refresh-icon{width:1.25rem;height:1.25rem}.revenue-page .revenue-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:hsl(var(--muted-foreground))}.revenue-page .revenue-loading-container .loading-spinner{margin-bottom:1rem}.revenue-page .revenue-loading-container .loading-spinner .spinner-icon{width:3rem;height:3rem;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.revenue-page .error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:hsl(var(--destructive))}.revenue-page .error-container .error-icon{width:3rem;height:3rem;margin-bottom:1rem}.revenue-page .error-container h3{margin:0 0 .5rem;font-size:1.5rem}.revenue-page .error-container p{margin:0 0 1.5rem;color:hsl(var(--muted-foreground))}.revenue-page .error-container .retry-button{padding:.75rem 1.5rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);cursor:pointer;font-weight:500;transition:background-color .2s}.revenue-page .error-container .retry-button:hover{background-color:hsl(var(--primary)/.9)}.revenue-page .revenue-filters{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:1rem;gap:1rem;flex-wrap:wrap}@media(max-width:768px){.revenue-page .revenue-filters{flex-direction:column}}.revenue-page .revenue-filters .revenue-search-container{position:relative;display:flex;align-items:center;width:100%}@media(min-width:768px){.revenue-page .revenue-filters .revenue-search-container{width:320px}}.revenue-page .revenue-filters .revenue-search-container .search-icon{position:absolute;left:.75rem;width:1.25rem;height:1.25rem;color:hsl(var(--muted-foreground));z-index:1}.revenue-page .revenue-filters .revenue-search-container .search-input{width:100%;padding:.75rem .75rem .75rem 2.5rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));font-size:.875rem}.revenue-page .revenue-filters .revenue-search-container .search-input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.revenue-page .revenue-filters .revenue-search-container .search-input::placeholder{color:hsl(var(--muted-foreground))}.revenue-page .revenue-filters .date-filters{display:flex;flex-direction:column;gap:.5rem}.revenue-page .revenue-filters .date-filters .date-filter-group{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.revenue-page .revenue-filters .date-filters .date-filter-group .date-select{padding:.75rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;min-width:180px;font-size:.875rem}.revenue-page .revenue-filters .date-filters .date-filter-group .date-select:focus{outline:none;border-color:hsl(var(--primary))}.revenue-page .revenue-filters .date-filters .date-filter-group .custom-date-range{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.revenue-page .revenue-filters .date-filters .date-filter-group .custom-date-range .date-input{padding:.75rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));font-size:.875rem;min-width:150px}.revenue-page .revenue-filters .date-filters .date-filter-group .custom-date-range .date-input:focus{outline:none;border-color:hsl(var(--primary))}.revenue-page .revenue-filters .date-filters .date-filter-group .custom-date-range .date-input::placeholder{color:hsl(var(--muted-foreground))}.revenue-page .revenue-filters .date-filters .date-filter-group .custom-date-range .date-range-separator{color:hsl(var(--muted-foreground));font-size:.875rem}.revenue-page .no-results{display:flex;justify-content:center;align-items:center;padding:3rem;color:hsl(var(--muted-foreground));font-style:italic}.revenue-page .revenue-table-container{border:1px solid hsl(var(--border));border-radius:var(--radius);overflow-x:auto;margin-bottom:2rem}.revenue-page .revenue-table-container .revenue-table{width:100%;border-collapse:collapse;background-color:hsl(var(--card));font-size:.875rem}.revenue-page .revenue-table-container .revenue-table th,.revenue-page .revenue-table-container .revenue-table td{padding:1rem;text-align:left;border-bottom:1px solid hsl(var(--border))}.revenue-page .revenue-table-container .revenue-table th{background-color:hsl(var(--muted));font-weight:600;color:hsl(var(--foreground));white-space:nowrap}.revenue-page .revenue-table-container .revenue-table th.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease}.revenue-page .revenue-table-container .revenue-table th.sortable-header:hover{background-color:hsl(var(--muted)/.8)}.revenue-page .revenue-table-container .revenue-table th.sortable-header .sort-icon{margin-left:.5rem;display:inline-flex;align-items:center;color:hsl(var(--muted-foreground))}.revenue-page .revenue-table-container .revenue-table th.sortable-header .sort-tooltip{position:absolute;top:100%;left:50%;transform:translate(-50%);background-color:hsl(var(--popover));color:hsl(var(--popover-foreground));padding:.75rem 1rem;border-radius:var(--radius);font-size:.75rem;white-space:nowrap;z-index:100;box-shadow:0 4px 12px #00000026;border:1px solid hsl(var(--border));margin-top:.5rem}.revenue-page .revenue-table-container .revenue-table th.sortable-header .sort-tooltip:before{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid hsl(var(--popover))}.revenue-page .revenue-table-container .revenue-table th.sortable-header .sort-tooltip:after{content:"";position:absolute;top:-5px;left:50%;transform:translate(-50%);border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid hsl(var(--popover))}.revenue-page .revenue-table-container .revenue-table .revenue-row:hover{background-color:hsl(var(--muted)/.5)}.revenue-page .revenue-table-container .revenue-table .revenue-row:last-child td{border-bottom:none}.revenue-page .revenue-table-container .revenue-table .status-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;display:inline-block;text-align:center;min-width:80px}.revenue-page .revenue-table-container .revenue-table .status-badge.active{background-color:#16a24933;color:#16a249}.revenue-page .revenue-table-container .revenue-table .status-badge.expired{background-color:#ef434333;color:#ef4343}.revenue-page .revenue-table-container .revenue-table .status-badge.redeemable{background-color:#65758b33;color:#65758b}.revenue-page .pagination-container{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding:0 .5rem}@media(max-width:768px){.revenue-page .pagination-container{flex-direction:column;gap:1rem}}.revenue-page .pagination-info{color:hsl(var(--muted-foreground));font-size:.875rem}.revenue-page .pagination{display:flex;gap:.5rem;flex-wrap:wrap}.revenue-page .pagination-button{padding:.5rem 1rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;transition:background-color .2s;font-size:.875rem}.revenue-page .pagination-button:hover{background-color:hsl(var(--muted))}.revenue-page .pagination-button.active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.revenue-page .pagination-ellipsis{display:flex;align-items:center;justify-content:center;padding:.5rem .25rem;color:hsl(var(--muted-foreground));min-width:2.5rem;font-size:.875rem}@media(min-width:640px){.revenue-page .pagination-ellipsis{min-width:3rem;padding:.5rem}}.dark .revenue-page .revenue-table-container .revenue-table{background-color:hsl(var(--card))}.dark .revenue-page .revenue-table-container .revenue-table th{background-color:hsl(var(--muted))}.managers-page{display:flex;padding:1.5rem;flex-direction:column;background-color:hsl(var(--background));color:hsl(var(--foreground))}.managers-page .managers-title{font-size:2rem;font-weight:700;margin-bottom:2rem;color:hsl(var(--foreground))}.managers-page .managers-title .subtitle{font-size:1rem;font-weight:400;color:hsl(var(--muted-foreground));margin-top:0}.managers-page .refresh-icon{width:1.45rem;height:1.25rem;cursor:pointer;margin-left:.5rem;color:hsl(var(--muted-foreground))}.managers-page .refresh-icon.refreshing{animation:spin .5s linear infinite}.managers-page .managers-tabs{margin-top:1.2rem;background-color:hsl(var(--muted));display:flex;justify-content:start;gap:.5rem;padding:.2rem;border-radius:10px;width:max-content}.managers-page .managers-tabs .tab{background-color:transparent;border-width:0;padding:.5rem;font-weight:600;cursor:pointer;border-radius:5px;color:hsl(var(--muted-foreground))}.managers-page .managers-tabs .tab.active{background-color:hsl(var(--background));box-shadow:0 2px 4px #0000001a;color:hsl(var(--foreground))}.managers-page .managers-list{margin-top:2rem}.managers-page .managers-list .error-message{background-color:hsl(var(--background));color:hsl(var(--destructive));padding:10px;border-radius:4px;margin-bottom:15px;border:1px solid #fcc}.managers-page .managers-list .success-message{background-color:hsl(var(--success)/.1);color:hsl(var(--success));padding:10px;border-radius:4px;margin-bottom:15px;border:1px solid hsl(var(--success)/.2)}.managers-page .managers-list .loading-container{display:flex;justify-content:start;padding:2rem;color:hsl(var(--muted-foreground))}.managers-page .managers-list .no-data{text-align:center;padding:2rem;color:hsl(var(--muted-foreground));font-style:italic}.managers-page .managers-filters{display:flex;justify-content:space-between;padding-bottom:1rem}.managers-page .managers-filters .managers-search-container{position:relative;width:100%}@media(min-width:768px){.managers-page .managers-filters .managers-search-container{width:320px}}.managers-page .managers-filters .managers-search-container .search-icon{margin-right:.5rem}.managers-page .managers-filters .managers-search-container .search-input{border:1px solid hsl(var(--muted-foreground));border-radius:.25rem;background-color:hsl(var(--background));color:hsl(var(--foreground))}.managers-page .managers-filters .managers-search-container .search-input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.managers-page .managers-filters .managers-status-filter{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.managers-page .managers-filters .managers-status-filter .status-select{padding:.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;min-width:180px}.managers-page .managers-filters .managers-status-filter .status-select:focus{outline:none;border-color:hsl(var(--primary))}.managers-page .managers-table-container{border:1px solid hsl(var(--border));border-radius:var(--radius);overflow-x:auto;margin-bottom:2rem}@media(min-width:768px){.managers-page .managers-table-container{overflow-x:visible}}.managers-page .managers-table-container .managers-table{width:100%;border-collapse:collapse;background-color:hsl(var(--card))}.managers-page .managers-table-container .managers-table tr{border-bottom:1px solid hsl(var(--border))}.managers-page .managers-table-container .managers-table th,.managers-page .managers-table-container .managers-table td{padding:1rem;text-align:left}.managers-page .managers-table-container .managers-table th{background-color:hsl(var(--muted));font-weight:600;color:hsl(var(--foreground));font-size:.875rem}.managers-page .managers-table-container .managers-table .manager-row:hover{background-color:hsl(var(--muted)/.5)}.managers-page .managers-table-container .managers-table .manager-row:last-child td{border-bottom:none}.managers-page .managers-table-container .managers-table .manager-row .edit-input,.managers-page .managers-table-container .managers-table .manager-row .edit-select{padding:.5rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));width:100%}.managers-page .managers-table-container .managers-table .manager-row .edit-input:focus,.managers-page .managers-table-container .managers-table .manager-row .edit-select:focus{outline:none;border-color:hsl(var(--primary))}.managers-page .managers-table-container .managers-table .manager-row .multi-select-container{position:relative}.managers-page .managers-table-container .managers-table .manager-row .multi-select-container .edit-select-multi{padding:.5rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));width:100%;height:5rem}.managers-page .managers-table-container .managers-table .manager-row .multi-select-container .edit-select-multi:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.managers-page .managers-table-container .managers-table .manager-row .multi-select-container .edit-select-multi option{padding:.5rem;border-bottom:1px solid hsl(var(--border)/.3)}.managers-page .managers-table-container .managers-table .manager-row .multi-select-container .edit-select-multi option:last-child{border-bottom:none}.managers-page .managers-table-container .managers-table .manager-row .multi-select-container .edit-select-multi option:checked{background-color:hsl(var(--primary)/.2);color:hsl(var(--foreground))}.managers-page .managers-table-container .managers-table .manager-row .multi-select-container .multi-select-help{font-size:.75rem;color:hsl(var(--muted-foreground));margin-top:.5rem;padding:.25rem .5rem;background-color:hsl(var(--muted)/.3);border-radius:var(--radius);line-height:1.3}.managers-page .managers-table-container .managers-table .manager-row .edit-select{cursor:pointer}.managers-page .pagination-container{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding:0 .5rem}.managers-page .pagination-info{color:hsl(var(--muted-foreground));font-size:.875rem}.managers-page .pagination{display:flex;gap:.5rem}.managers-page .pagination-button{padding:.5rem 1rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;transition:background-color .2s}.managers-page .pagination-button:hover{background-color:hsl(var(--muted))}.managers-page .pagination-button.active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.managers-page .action-buttons{display:flex;gap:.5rem}.managers-page .action-buttons button{display:flex;align-items:center;justify-content:center;padding:.5rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:transparent;cursor:pointer;transition:all .2s}.managers-page .action-buttons button:hover{background-color:hsl(var(--muted)/.5)}.managers-page .action-buttons .edit-button{color:hsl(var(--foreground))}.managers-page .action-buttons .edit-button:hover{border-color:hsl(var(--primary))}.managers-page .action-buttons .save-button{color:hsl(var(--primary))}.managers-page .action-buttons .save-button:hover{border-color:hsl(var(--primary));background-color:hsl(var(--primary)/.1)}.managers-page .action-buttons .cancel-button{color:hsl(var(--muted-foreground))}.managers-page .action-buttons .cancel-button:hover{border-color:hsl(var(--muted-foreground))}.managers-page .action-buttons .delete-button{color:hsl(var(--destructive))}.managers-page .action-buttons .delete-button:hover{border-color:hsl(var(--destructive));background-color:hsl(var(--destructive)/.1)}.add-manager{padding-top:2rem;padding-bottom:2rem;padding-left:2rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--card));margin-bottom:2rem;margin-top:2rem}.add-manager .server-error-message{background-color:hsl(var(--destructive)/.1);color:hsl(var(--destructive));padding:.75rem;border-radius:var(--radius);border:1px solid hsl(var(--destructive)/.2);margin-bottom:1.5rem;font-size:.875rem;width:max-content}.add-manager .server-success-message{background-color:hsl(var(--success)/.1);color:hsl(var(--success));padding:.75rem;border-radius:var(--radius);border:1px solid hsl(var(--success)/.2);margin-bottom:1.5rem;font-size:.875rem;width:max-content}.add-manager .add-manager-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;color:hsl(var(--foreground))}.add-manager .add-manager-form{display:flex;flex-direction:column;gap:1.5rem;padding-right:2rem}.add-manager .add-manager-form .add-manager-form-group{display:flex;flex-direction:column;gap:.5rem}.add-manager .add-manager-form .add-manager-form-group .form-label{font-weight:500;color:hsl(var(--foreground))}.add-manager .add-manager-form .add-manager-form-group .add-manager-form-select,.add-manager .add-manager-form .add-manager-form-group .add-manager-form-input{padding-top:.75rem;padding-bottom:.75rem;padding-left:.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));font-size:1rem}.add-manager .add-manager-form .add-manager-form-group .add-manager-form-select:focus,.add-manager .add-manager-form .add-manager-form-group .add-manager-form-input:focus{outline:none;border-color:hsl(var(--primary))}.add-manager .add-manager-form .add-manager-form-group .add-manager-form-select.error,.add-manager .add-manager-form .add-manager-form-group .add-manager-form-input.error{border-color:hsl(var(--destructive))}.add-manager .add-manager-form .add-manager-form-group .error-message{color:hsl(var(--destructive));font-size:.875rem}.add-manager .add-manager-form .submit-button{padding:.75rem 1.5rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);font-weight:500;cursor:pointer;transition:background-color .2s;align-self:flex-end}.add-manager .add-manager-form .submit-button:hover:not(:disabled){background-color:hsl(var(--primary)/.9)}.add-manager .add-manager-form .submit-button:disabled{opacity:.7;cursor:not-allowed}.accounts-page{display:flex;padding:1.5rem;flex-direction:column;background-color:hsl(var(--background));color:hsl(var(--foreground))}.accounts-page .accounts-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.accounts-page .accounts-header .header-left-accounts{display:flex;flex-direction:column;gap:.25rem}.accounts-page .accounts-header .header-left-accounts .accounts-title{font-size:2rem;font-weight:700;color:hsl(var(--foreground))}.accounts-page .accounts-header .header-left-accounts .accounts-subtitle{font-size:1rem;color:hsl(var(--muted-foreground));margin:0}.accounts-page .accounts-header .header-right .btn-primary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:all .2s}.accounts-page .accounts-header .header-right .btn-primary:hover{background-color:hsl(var(--primary)/.9)}.accounts-page .accounts-header .header-right .btn-primary:disabled{opacity:.6;cursor:not-allowed}.accounts-page .refresh-icon{width:1.25rem;height:1.25rem;cursor:pointer;color:hsl(var(--muted-foreground));transition:transform .3s}.accounts-page .refresh-icon:hover{color:hsl(var(--foreground))}.accounts-page .refresh-icon.refreshing{animation:spin .5s linear infinite}.accounts-page .accounts-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.accounts-page .accounts-stats .stats-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:1.5rem;text-align:center}.accounts-page .accounts-stats .stats-card h3{font-size:2.5rem;font-weight:700;margin:0;color:hsl(var(--primary))}.accounts-page .accounts-stats .stats-card p{margin:.5rem 0 0;color:hsl(var(--muted-foreground));font-size:.9rem}.accounts-page .accounts-search{margin-bottom:1.5rem}.accounts-page .accounts-search .search-container{position:relative;max-width:500px}.accounts-page .accounts-search .search-container .search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:hsl(var(--muted-foreground))}.accounts-page .accounts-search .search-container .search-input{width:100%;padding:.75rem 1rem .75rem 3rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--card));color:hsl(var(--foreground));font-size:1rem}.accounts-page .accounts-search .search-container .search-input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.accounts-page .accounts-search .search-container .search-input::placeholder{color:hsl(var(--muted-foreground))}.accounts-page .error-message,.accounts-page .success-message{padding:1rem;border-radius:var(--radius);margin-bottom:1rem;animation:slideDown .3s ease}.accounts-page .error-message{background-color:hsl(var(--destructive)/.1);color:hsl(var(--destructive));border:1px solid hsl(var(--destructive)/.2)}.accounts-page .success-message{background-color:hsl(var(--success)/.1);color:hsl(var(--success));border:1px solid hsl(var(--success)/.2)}.accounts-page .accounts-table-container{border:1px solid hsl(var(--border));border-radius:var(--radius);overflow:hidden;margin-bottom:2rem}.accounts-page .accounts-table-container .loading-container{padding:3rem;text-align:center;color:hsl(var(--muted-foreground))}.accounts-page .accounts-table-container .no-data{padding:3rem;text-align:center;color:hsl(var(--muted-foreground));font-style:italic}.accounts-page .accounts-table{width:100%;border-collapse:collapse;background-color:hsl(var(--card))}.accounts-page .accounts-table thead{background-color:hsl(var(--muted))}.accounts-page .accounts-table th{padding:1rem;text-align:left;font-weight:600;color:hsl(var(--foreground));font-size:.875rem;border-bottom:2px solid hsl(var(--border))}.accounts-page .accounts-table tr{border-bottom:1px solid hsl(var(--border)/.5)}.accounts-page .accounts-table td{padding:1rem}.accounts-page .accounts-table .account-row:hover{background-color:hsl(var(--muted)/.3)}.accounts-page .accounts-table .account-row:last-child{border-bottom:none}.accounts-page .accounts-table .account-name .name-content .name-text{font-weight:500;margin-bottom:.25rem}.accounts-page .accounts-table .account-name .name-content .account-id{font-size:.75rem;color:hsl(var(--muted-foreground));font-family:monospace}.accounts-page .accounts-table .edit-input,.accounts-page .accounts-table .edit-select{padding:.5rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));width:100%;font-size:.875rem}.accounts-page .accounts-table .edit-input:focus,.accounts-page .accounts-table .edit-select:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.accounts-page .accounts-table .edit-select{cursor:pointer}.accounts-page .accounts-table .status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:2rem;font-size:.75rem;font-weight:600;text-transform:uppercase}.accounts-page .accounts-table .status-badge.active{background-color:hsl(var(--success)/.1);color:hsl(var(--success));border:1px solid hsl(var(--success)/.2)}.accounts-page .accounts-table .status-badge.inactive{background-color:hsl(var(--warning)/.1);color:hsl(var(--warning));border:1px solid hsl(var(--warning)/.2)}.accounts-page .accounts-table .status-badge.suspended{background-color:hsl(var(--destructive)/.1);color:hsl(var(--destructive));border:1px solid hsl(var(--destructive)/.2)}.accounts-page .accounts-table .members-toggle{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:hsl(var(--accent)/.1);color:hsl(var(--accent-foreground));border:1px solid hsl(var(--accent));border-radius:var(--radius);cursor:pointer;font-size:.875rem;transition:all .2s}.accounts-page .accounts-table .members-toggle:hover{background-color:hsl(var(--accent)/.2)}.accounts-page .accounts-table .muted{color:hsl(var(--muted-foreground));font-style:italic}.accounts-page .members-row{background-color:hsl(var(--muted)/.1)}.accounts-page .members-row .members-section{padding:1.5rem}.accounts-page .members-row .members-section h4{margin:0 0 1rem;color:hsl(var(--foreground));font-size:1rem}.accounts-page .members-row .members-section .members-list{display:flex;flex-direction:column;gap:.75rem}.accounts-page .members-row .members-section .member-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:hsl(var(--background));border-radius:var(--radius);border:1px solid hsl(var(--border))}.accounts-page .members-row .members-section .member-item .member-info .member-name{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem;font-weight:500}.accounts-page .members-row .members-section .member-item .member-info .member-name .member-role{font-size:.75rem;padding:.125rem .5rem;background-color:hsl(var(--primary)/.1);color:hsl(var(--primary));border-radius:2rem;text-transform:capitalize}.accounts-page .members-row .members-section .member-item .member-info .member-email{font-size:.875rem;color:hsl(var(--muted-foreground))}.accounts-page .members-row .members-section .member-item .member-status{font-size:.75rem;font-weight:600}.accounts-page .members-row .members-section .member-item .member-status .status-active{color:hsl(var(--success))}.accounts-page .members-row .members-section .member-item .member-status .status-pending{color:hsl(var(--warning))}.accounts-page .members-row .members-section .member-item .member-status .status-inactive{color:hsl(var(--destructive))}.accounts-page .members-row .members-section .no-members{text-align:center;color:hsl(var(--muted-foreground));font-style:italic;padding:2rem}.accounts-page .account-actions{display:flex;gap:.5rem}.accounts-page .account-actions button{display:flex;align-items:center;justify-content:center;padding:.5rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:transparent;cursor:pointer;transition:all .2s}.accounts-page .account-actions button:hover{transform:translateY(-1px)}.accounts-page .account-actions .edit-btn{color:hsl(var(--primary))}.accounts-page .account-actions .edit-btn:hover{background-color:hsl(var(--primary)/.1);border-color:hsl(var(--primary))}.accounts-page .account-actions .invite-btn{color:hsl(var(--success));display:flex;flex-direction:column;gap:.2rem}.accounts-page .account-actions .invite-btn:hover{background-color:hsl(var(--success)/.1);border-color:hsl(var(--success))}.accounts-page .account-actions .copy-btn{color:hsl(var(--accent-foreground))}.accounts-page .account-actions .copy-btn:hover{background-color:hsl(var(--accent)/.1);border-color:hsl(var(--accent))}.accounts-page .account-actions .more-btn{color:hsl(var(--muted-foreground))}.accounts-page .account-actions .more-btn:hover{background-color:hsl(var(--muted))}.accounts-page .account-actions .save-btn{color:hsl(var(--success))}.accounts-page .account-actions .save-btn:hover{background-color:hsl(var(--success)/.1);border-color:hsl(var(--success))}.accounts-page .account-actions .cancel-btn{color:hsl(var(--destructive))}.accounts-page .account-actions .cancel-btn:hover{background-color:hsl(var(--destructive)/.1);border-color:hsl(var(--destructive))}.accounts-page .pagination-container{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.accounts-page .pagination-container .pagination-info{color:hsl(var(--muted-foreground));font-size:.875rem}.accounts-page .pagination-container .pagination{display:flex;gap:.5rem}.accounts-page .pagination-container .pagination .pagination-button{padding:.5rem 1rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;transition:all .2s}.accounts-page .pagination-container .pagination .pagination-button:hover:not(:disabled){background-color:hsl(var(--muted))}.accounts-page .pagination-container .pagination .pagination-button:disabled{opacity:.5;cursor:not-allowed}.accounts-page .pagination-container .pagination .pagination-button.active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.accounts-page .modal-overlay{position:fixed;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .3s ease}.accounts-page .modal-content{background-color:hsl(var(--card));border-radius:var(--radius);width:100%;max-width:500px;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.accounts-page .modal-content .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid hsl(var(--border))}.accounts-page .modal-content .modal-header h3{margin:0;color:hsl(var(--foreground))}.accounts-page .modal-content .modal-header .close-modal{background:none;border:none;color:hsl(var(--muted-foreground));cursor:pointer;padding:.25rem;border-radius:4px}.accounts-page .modal-content .modal-header .close-modal:hover{background-color:hsl(var(--muted));color:hsl(var(--foreground))}.accounts-page .modal-content .modal-body{padding:1.5rem}.accounts-page .modal-content .modal-body .form-group{margin-bottom:1.5rem}.accounts-page .modal-content .modal-body .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:hsl(var(--foreground))}.accounts-page .modal-content .modal-body .form-group .modal-input,.accounts-page .modal-content .modal-body .form-group .modal-select{width:100%;padding:.75rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background-color:hsl(var(--background));color:hsl(var(--foreground));font-size:1rem}.accounts-page .modal-content .modal-body .form-group .modal-input:focus,.accounts-page .modal-content .modal-body .form-group .modal-select:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.accounts-page .modal-content .modal-body .form-group .role-description{margin:.5rem 0 0;font-size:.875rem;color:hsl(var(--muted-foreground));font-style:italic}.accounts-page .modal-content .modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid hsl(var(--border))}.accounts-page .modal-content .modal-footer button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:all .2s;border:none}.accounts-page .modal-content .modal-footer .btn-secondary{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground))}.accounts-page .modal-content .modal-footer .btn-secondary:hover{background-color:hsl(var(--muted)/.8)}.accounts-page .modal-content .modal-footer .btn-primary{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.accounts-page .modal-content .modal-footer .btn-primary:hover{background-color:hsl(var(--primary)/.9)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.accounts-page{padding:1rem}.accounts-page .accounts-header{flex-direction:column;gap:1rem}.accounts-page .accounts-header .header-right{align-self:stretch}.accounts-page .accounts-header .header-right .btn-primary{width:100%;justify-content:center}.accounts-page .accounts-stats{grid-template-columns:1fr}.accounts-page .accounts-table-container{overflow-x:auto}.accounts-page .accounts-table-container .accounts-table{min-width:800px}.accounts-page .account-actions{flex-wrap:wrap}.accounts-page .pagination-container{flex-direction:column;gap:1rem;align-items:stretch}}.not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;text-align:center}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--card: 0 0% 100%;--card-foreground: 222.2 84% 4.9%;--success: 142 76% 36%;--popover: 0 0% 100%;--popover-foreground: 222.2 84% 4.9%;--primary: 277 100% 25%;--primary-foreground: 60 100% 50%;--secondary: 60 100% 50%;--secondary-foreground: 277 100% 25%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 277 60% 94%;--accent-foreground: 277 100% 25%;--destructive: 360 100% 47.1%;--destructive-foreground: 210 40% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 277 100% 25%;--radius: .5rem;--sidebar-background: 0 0% 100%;--sidebar-foreground: 277 25% 25%;--sidebar-primary: 277 100% 25%;--sidebar-primary-foreground: 60 100% 50%;--sidebar-accent: 277 25% 95%;--sidebar-accent-foreground: 277 100% 25%;--sidebar-border: 214.3 31.8% 91.4%;--sidebar-ring: 277 100% 25%}.dark{--background: 222.2 84% 4.9%;--foreground: 210 40% 98%;--card: 222.2 84% 4.9%;--card-foreground: 210 40% 98%;--popover: 222.2 84% 4.9%;--popover-foreground: 210 40% 98%;--primary: 277 100% 35%;--primary-foreground: 60 100% 50%;--secondary: 60 100% 50%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 217.2 32.6% 17.5%;--muted-foreground: 215 20.2% 65.1%;--accent: 277 60% 20%;--accent-foreground: 60 100% 50%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 210 40% 98%;--border: 217.2 32.6% 17.5%;--input: 217.2 32.6% 17.5%;--ring: 277 65% 50%;--sidebar-background: 240 5.9% 10%;--sidebar-foreground: 60 100% 50%;--sidebar-primary: 277 90% 40%;--sidebar-primary-foreground: 60 100% 50%;--sidebar-accent: 277 25% 20%;--sidebar-accent-foreground: 60 100% 50%;--sidebar-border: 240 3.7% 15.9%;--sidebar-ring: 277 65% 50%}body{color:hsl(var(--foreground));background-color:hsl(var(--background));margin:0;height:100%}button{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:.6em 1.2em;font-weight:500;transition:all .2s}button:hover{opacity:.9}a{color:hsl(var(--primary));text-decoration:none}a:hover{text-decoration:underline}html.dark{color-scheme:dark}html.light{color-scheme:light}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;gap:1rem}.loading-spinner{width:40px;height:40px;border:1px solid hsl(var(--border));border-top:4px solid hsl(var(--border));border-radius:50%;animation:spin 1s linear infinite}.error-boundary{padding:2rem;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;max-width:800px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:hsl(var(--foreground))}.error-boundary h2{color:hsl(var(--destructive));margin-bottom:1rem;font-size:1.8rem}.error-boundary details{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:1rem;margin:1rem 0;max-height:200px;overflow:auto;width:100%;text-align:left;font-family:monospace;font-size:.875rem}.error-boundary button{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;margin-top:1rem;transition:background-color .2s}.error-boundary button:hover{background-color:hsl(var(--primary)/.9)}.user-friendly-error{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:hsl(var(--background));padding:2rem}.user-friendly-error .error-content{text-align:center;max-width:500px;background:hsl(var(--card));color:hsl(var(--card-foreground));padding:2rem;border-radius:var(--radius);box-shadow:0 4px 6px #0000001a;border:1px solid hsl(var(--border))}.user-friendly-error h2{color:hsl(var(--destructive));margin-bottom:1rem;font-size:1.8rem}.user-friendly-error p{margin-bottom:1.5rem;color:hsl(var(--muted-foreground));line-height:1.6}.user-friendly-error .error-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:1.5rem;flex-wrap:wrap}.user-friendly-error .error-actions button{padding:.75rem 1.5rem;border:none;border-radius:var(--radius);cursor:pointer;font-size:1rem;transition:background-color .2s}.user-friendly-error .error-actions button:first-child{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.user-friendly-error .error-actions button:last-child{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border:1px solid hsl(var(--border))}.user-friendly-error .error-actions button:hover{opacity:.9}.user-friendly-error details{text-align:left;background-color:hsl(var(--muted));color:hsl(var(--muted-foreground));border-radius:var(--radius);padding:1rem;margin-top:1rem}.user-friendly-error summary{cursor:pointer;color:hsl(var(--foreground));margin-bottom:.5rem;font-weight:500}.dark .error-boundary,.dark .user-friendly-error{background-color:hsl(var(--background))}.dark .error-boundary details,.dark .user-friendly-error details{background-color:hsl(var(--muted));border-color:hsl(var(--border))}.dark .user-friendly-error .error-content{background:hsl(var(--card));border-color:hsl(var(--border))}.signup-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:hsl(var(--background));color:hsl(var(--foreground));padding:2rem;flex-direction:column}.signup-container .signup-form{width:100%;max-width:500px;padding:2rem;margin-bottom:5rem;border-radius:var(--radius);box-shadow:0 4px 6px hsla(var(--foreground)/.1);border:1px solid hsl(var(--border))}.signup-container .signup-form h2{color:hsl(var(--primary));margin-bottom:1.5rem;margin-top:0;text-align:center;font-size:1.8rem}.signup-container .signup-form .name-fields{display:flex;gap:1.5rem}.signup-container .signup-form .name-fields .form-group{flex:1;min-width:0}.signup-container .signup-form .form-group{margin-bottom:1.5rem}.signup-container .signup-form .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:hsl(var(--foreground))}.signup-container .signup-form .form-group input{width:100%;box-sizing:border-box;padding:.5rem;border:1px solid hsl(var(--input));border-radius:var(--radius);transition:border-color .2s}.signup-container .signup-form .form-group input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.signup-container .signup-form .form-group input:disabled{opacity:.6;cursor:not-allowed;background-color:hsl(var(--muted))}.signup-container .signup-form .form-group.password{position:relative}.signup-container .signup-form .form-group.password input{padding-right:3rem}.signup-container .signup-form .form-group.password .password-toggle{position:absolute;right:.75rem;top:30%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:.25rem;color:hsl(var(--muted-foreground));border-radius:4px;transition:color .2s ease;height:30px;width:30px;display:flex;align-items:center;justify-content:center}.signup-container .signup-form .form-group.password .password-toggle:hover{color:hsl(var(--foreground));background-color:hsl(var(--accent))}.signup-container .signup-form .form-group.password .password-toggle:focus{outline:none;box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.signup-container .signup-success{text-align:center;padding:3rem 2rem;background-color:hsl(var(--card));border-radius:var(--radius);box-shadow:0 4px 6px hsla(var(--foreground)/.1);border:1px solid hsl(var(--border));max-width:500px;width:100%}.signup-container .signup-success h2{color:hsl(var(--success));margin-bottom:1rem;font-size:2rem}.signup-container .signup-success p{margin-bottom:2rem;color:hsl(var(--muted-foreground));font-size:1.1rem}.signup-container .signup-success .login-link{display:inline-block;padding:.75rem 1.5rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));text-decoration:none;border-radius:var(--radius);font-weight:600;transition:opacity .2s}.signup-container .signup-success .login-link:hover{opacity:.9;text-decoration:none}.error{color:hsl(var(--destructive));background-color:hsla(var(--destructive)/.12);border:1px solid hsl(var(--destructive)/.3);font-size:.875rem;margin-top:.25rem;display:block;padding:.5rem;text-align:left}.general-error{background-color:hsl(var(--destructive)/.12);border:1px solid hsl(var(--destructive)/.3);color:hsl(var(--destructive));padding:.75rem;border-radius:var(--radius);margin-bottom:1.5rem;text-align:center;font-size:.875rem}.password-requirements{margin-top:.5rem;font-size:.875rem}.password-requirements p{margin-bottom:.5rem;color:hsl(var(--muted-foreground))}.password-requirements ul{list-style:none;padding-left:0;display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.password-requirements ul li{display:flex;align-items:center;gap:.5rem;color:hsl(var(--muted-foreground))}.password-requirements ul li:before{content:"✗";color:hsl(var(--destructive))}.password-requirements ul li.valid{color:hsl(var(--muted-foreground))}.password-requirements ul li.valid:before{content:"✓";color:green}.signup-button{width:100%;padding:.75rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:all .2s}.signup-button:hover:not(:disabled){opacity:.9}.signup-button:active:not(:disabled){transform:scale(.98)}.signup-button:disabled{opacity:.6;cursor:not-allowed}.dark .signup-form{box-shadow:0 4px 6px hsla(var(--foreground)/.2)}.dark .password-requirements li{color:hsl(var(--muted-foreground))}.dark .signup-success{background-color:hsl(var(--card));border-color:hsl(var(--border))}.dark .signup-success h2{color:green}.login-prompt{margin-top:1.5rem;text-align:center;font-size:1rem}.login-prompt .login-link{color:hsl(var(--primary));text-decoration:none;font-weight:500}.login-prompt .login-link:hover{text-decoration:underline}@media(max-width:640px){.signup-container{padding:1rem}.signup-container .signup-form{padding:1.5rem}.name-fields{flex-direction:column;gap:1rem!important}.password-requirements ul{grid-template-columns:1fr!important}.signup-success{padding:2rem 1.5rem}.signup-success h2{font-size:1.5rem!important}}.invitation-banner{display:flex;align-items:center;gap:1rem;background:linear-gradient(135deg,hsl(var(--accent)),hsl(var(--primary)/.1));padding:1rem 1.5rem;border-radius:var(--radius);border-left:4px solid hsl(var(--primary));margin-bottom:2rem;animation:slideIn .3s ease-out}.invitation-banner .invitation-details{flex:1;display:flex;flex-direction:column;gap:.25rem}.invitation-banner .invitation-details strong{color:hsl(var(--primary));font-size:.95rem}.invitation-banner .invitation-details span{color:hsl(var(--foreground));font-size:.875rem;opacity:.9}.invitation-banner .invitation-details span em{font-style:normal;font-weight:600;color:hsl(var(--primary))}.invitation-banner .cancel-invitation-btn{background:transparent;border:1px solid hsl(var(--destructive)/.3);color:hsl(var(--destructive));padding:.5rem 1rem;border-radius:var(--radius);font-size:.875rem;cursor:pointer;transition:all .2s ease}.invitation-banner .cancel-invitation-btn:hover{background:hsl(var(--destructive)/.1);border-color:hsl(var(--destructive))}.invitation-context{background:hsl(var(--accent)/.2);padding:1rem;border-radius:var(--radius);margin-bottom:1.5rem;text-align:center;border:1px solid hsl(var(--accent))}.invitation-context .invited-as{margin:0 0 .5rem;color:hsl(var(--foreground))}.invitation-context .invited-as strong{color:hsl(var(--primary));padding:.25rem .75rem;background:hsl(var(--primary)/.1);border-radius:4px;font-size:.9rem}.invitation-context .account-info{margin:0;color:hsl(var(--muted-foreground));font-size:.9rem}.invitation-context .account-info strong{color:hsl(var(--foreground))}.prefilled-email{background:hsl(var(--muted))!important;border-color:hsl(var(--primary)/.3)!important;color:hsl(var(--foreground))!important;cursor:not-allowed}.password-strength{margin-top:.5rem;display:flex;align-items:center;gap:.75rem}.password-strength .strength-bars{display:flex;gap:.25rem;flex:1}.password-strength .strength-bars .strength-bar{height:4px;flex:1;background-color:hsl(var(--muted));border-radius:2px;transition:all .3s ease}.password-strength .strength-bars .strength-bar.filled{background-color:hsl(var(--primary))}.password-strength .strength-bars .strength-bar.filled:nth-child(1){background-color:#ef4444}.password-strength .strength-bars .strength-bar.filled:nth-child(2){background-color:#f97316}.password-strength .strength-bars .strength-bar.filled:nth-child(3){background-color:#eab308}.password-strength .strength-bars .strength-bar.filled:nth-child(4){background-color:#84cc16}.password-strength .strength-label{font-size:.75rem;color:hsl(var(--muted-foreground));min-width:70px;text-align:right}.invitation-actions{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid hsl(var(--border))}.invitation-actions .invitation-help{color:hsl(var(--muted-foreground));font-size:.875rem;margin-bottom:.75rem;text-align:center}.invitation-actions .invitation-help .text-link{background:none;border:none;color:hsl(var(--primary));text-decoration:underline;cursor:pointer;font-size:.875rem;padding:0}.invitation-actions .invitation-help .text-link:hover{color:hsl(var(--primary)/.8)}.password-requirements ul li{display:flex!important;align-items:center!important;gap:.5rem!important}.password-requirements ul li svg{opacity:.5}.password-requirements ul li.valid svg{opacity:1;color:green}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.signup-form .form-group.password{margin-bottom:.5rem}.signup-form .password-requirements{margin-top:1rem}@media(max-width:640px){.invitation-banner{flex-direction:column;align-items:flex-start;gap:.75rem}.invitation-banner .cancel-invitation-btn{align-self:flex-end}.password-strength{flex-direction:column;align-items:flex-start;gap:.5rem}.password-strength .strength-label{text-align:left}}.signup-success{text-align:center;padding:3rem 2rem;background:hsl(var(--card));border-radius:var(--radius);box-shadow:0 10px 40px #00000014;border:2px solid hsl(var(--success)/.3);max-width:500px;width:100%}.signup-success .success-icon{width:80px;height:80px;background:hsl(var(--success)/.2);color:hsl(var(--success));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:700;margin:0 auto 1.5rem;border:3px solid hsl(var(--success)/.3)}.signup-success h2{color:hsl(var(--success));margin-bottom:1rem;font-size:1.8rem}.signup-success p{color:hsl(var(--foreground));margin-bottom:1rem;line-height:1.6}.signup-success .invitation-reminder{background:hsl(var(--accent)/.2);border-radius:var(--radius);padding:1rem;margin:1.5rem 0;border-left:4px solid hsl(var(--primary))}.signup-success .invitation-reminder p{margin:0;font-size:.95rem}.signup-success .invitation-reminder p strong{color:hsl(var(--primary))}.signup-success .success-actions{display:flex;gap:1rem;margin-top:2rem}.signup-success .success-actions button,.signup-success .success-actions a{flex:1;padding:.75rem 1.5rem;border-radius:var(--radius);font-weight:600;text-decoration:none;text-align:center;transition:all .2s;border:none;cursor:pointer}.signup-success .success-actions .btn-login{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.signup-success .success-actions .btn-login:hover{background:hsl(var(--primary)/.9)}.signup-success .success-actions .btn-home{background:hsl(var(--muted));color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border))}.signup-success .success-actions .btn-home:hover{background:hsl(var(--border))}.invitation-note{background:linear-gradient(135deg,hsl(var(--accent)),hsl(var(--primary)/.1));padding:1rem;border-radius:var(--radius);margin-bottom:1.5rem;border-left:4px solid hsl(var(--primary))}.topnav{border-bottom:1px solid hsl(var(--border));background-color:hsl(var(--background));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:40}@supports (backdrop-filter: blur()){.topnav{background-color:hsla(var(--background)/.6)}}.topnav-container{display:flex;height:4rem;align-items:center;justify-content:space-between;padding:0 1.5rem}@media(min-width:640px){.topnav-container{padding:0 2rem}}.topnav-left{display:flex;align-items:center}.logo{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:hsl(var(--foreground))}.logo .logo-image{height:2rem;width:auto}.logo .logo-text{font-size:1.25rem;font-weight:700;cursor:pointer;color:hsl(var(--foreground))}.topnav-right{display:flex;align-items:center;gap:1rem}.icon-button{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;border-radius:.25rem;color:hsl(var(--foreground));padding:.5rem;transition:background-color .2s}.icon-button:hover{background-color:hsla(var(--foreground)/.05);color:hsl(var(--primary))}.icon{height:1.25rem;width:1.25rem}.login-button{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s}@media(max-width:768px){.topnav-container{padding:0 1rem}}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:hsl(var(--background));padding:1rem}.login-form{box-sizing:border-box;width:100%;max-width:500px;padding:2rem;margin-bottom:5rem;border-radius:var(--radius);box-shadow:0 4px 6px hsla(var(--foreground)/.1);border:1px solid hsl(var(--border))}.login-form h2{color:hsl(var(--primary));margin-bottom:1.5rem;margin-top:0;text-align:center;font-size:1.8rem}.login-form .form-group{margin-bottom:1.5rem}.login-form .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:hsl(var(--foreground))}.login-form .form-group input{width:100%;padding:.5rem;border:1px solid hsl(var(--input));border-radius:var(--radius);box-sizing:border-box;transition:border-color .2s}.login-form .form-group input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.login-form .form-group .password-input-container{position:relative}.login-form .form-group .password-input-container input{width:100%;padding:.75rem 3rem .75rem .75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);box-sizing:border-box;transition:border-color .2s}.login-form .form-group .password-input-container input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.login-form .form-group .password-input-container input.error-input{border-color:hsl(var(--destructive))}.login-form .form-group .error{color:hsl(var(--destructive));background-color:hsla(var(--destructive)/.12);border:1px solid hsl(var(--destructive)/.3);font-size:.875rem;margin-top:.25rem;display:block;padding:.5rem;text-align:left}.login-form .form-group.password{position:relative}.login-form .form-group.password input{padding-right:3rem}.login-form .form-group.password .password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:.25rem;color:hsl(var(--muted-foreground));border-radius:4px;transition:color .2s ease;height:30px;width:30px;display:flex;align-items:center;justify-content:center}.login-form .form-group.password .password-toggle:hover{color:hsl(var(--foreground));background-color:hsl(var(--accent))}.login-form .form-group.password .password-toggle:focus{outline:none;box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.forgot-password{display:block;text-align:right;font-size:.875rem;margin-top:.5rem;color:hsl(var(--muted-foreground));text-decoration:none}.forgot-password:hover{color:hsl(var(--primary));text-decoration:underline}.login-button{width:100%;padding:.75rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:background-color .2s}.login-button:hover{background-color:hsl(var(--primary)/.9)}.signup-prompt{text-align:center;margin-top:1.5rem;color:hsl(var(--muted-foreground))}.signup-prompt .signup-link{color:hsl(var(--primary));text-decoration:none;font-weight:500}.signup-prompt .signup-link:hover{text-decoration:underline}.auth-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:hsl(var(--background));color:hsl(var(--foreground));font-family:inherit}.tegrafi-loading{text-align:center}.tegrafi-loading p{margin-top:1rem;color:hsl(var(--muted-foreground));font-size:.875rem}.tegrafi-spinner{width:48px;height:48px;border:3px solid hsl(var(--muted));border-top:3px solid hsl(var(--primary));border-right:3px solid hsl(var(--secondary));border-radius:50%;animation:tegrafi-spin 1.2s linear infinite;margin:0 auto}@keyframes tegrafi-spin{0%{transform:rotate(0);border-top-color:hsl(var(--primary));border-right-color:hsl(var(--secondary))}50%{border-top-color:hsl(var(--secondary));border-right-color:hsl(var(--primary))}to{transform:rotate(360deg);border-top-color:hsl(var(--primary));border-right-color:hsl(var(--secondary))}}.fade-in{animation:fadeIn .3s ease-in}.loading-icon{position:relative;width:64px;height:64px;margin:0 auto}.loading-icon .spinner{width:100%;height:100%;color:hsl(var(--primary));animation:spin 1.2s linear infinite}.loading-icon .shield{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:32px;height:32px;color:hsl(var(--secondary))}.forgot-password-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:hsl(var(--background));padding:1rem;flex-direction:column}.forgot-password-container .error-message{background-color:hsl(var(--destructive)/.1);color:hsl(var(--destructive));padding:.75rem;border-radius:var(--radius);border:1px solid hsl(var(--destructive)/.2);margin-bottom:1.5rem;font-size:.875rem;width:max-content}.forgot-password-container .success-message{background-color:hsl(var(--success)/.1);color:hsl(var(--success));padding:.75rem;border-radius:var(--radius);border:1px solid hsl(var(--success)/.2);margin-bottom:1.5rem;font-size:.875rem;width:max-content}.forgot-password-form{box-sizing:border-box;width:100%;max-width:500px;padding:2rem;border-radius:var(--radius);box-shadow:0 4px 6px hsla(var(--foreground)/.1);border:1px solid hsl(var(--border));margin-bottom:5rem}.forgot-password-form h2{color:hsl(var(--primary));margin-bottom:1rem;margin-top:0;text-align:center;font-size:1.8rem}.forgot-password-form .instruction-text{text-align:center;color:hsl(var(--muted-foreground));margin-bottom:1.5rem;line-height:1.5}.forgot-password-form .form-group{margin-bottom:1.5rem}.forgot-password-form .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:hsl(var(--foreground))}.forgot-password-form .form-group input{width:100%;padding:.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);box-sizing:border-box;transition:border-color .2s}.forgot-password-form .form-group input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.forgot-password-form .form-group .error{color:hsl(var(--destructive));background-color:hsla(var(--destructive)/.12);border:1px solid hsl(var(--destructive)/.3);font-size:.875rem;margin-top:.25rem;display:block;padding:.5rem;text-align:left}.back-to-login{text-align:center;color:hsl(var(--muted-foreground))}.success-message{text-align:center;padding:1rem;background-color:hsl(var(--accent));border-radius:var(--radius);margin-bottom:1.5rem}.success-message p{margin-bottom:1rem;color:hsl(var(--foreground))}.success-message .back-to-login{display:inline-block;padding:.5rem 1rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));text-decoration:none;border-radius:var(--radius);font-weight:500}.success-message .back-to-login:hover{background-color:hsl(var(--primary)/.9);text-decoration:none}.reset-password-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:hsl(var(--background));padding:1rem}.reset-password-form{box-sizing:border-box;width:100%;max-width:500px;padding:2rem;margin-bottom:5rem;border-radius:var(--radius);box-shadow:0 4px 6px hsla(var(--foreground)/.1);border:1px solid hsl(var(--border))}.reset-password-form h2{color:hsl(var(--primary));margin-bottom:1rem;margin-top:0;text-align:center;font-size:1.8rem}.reset-password-form .instruction-text{text-align:center;color:hsl(var(--muted-foreground));margin-bottom:1.5rem;line-height:1.5}.reset-password-form .form-group{margin-bottom:1.5rem}.reset-password-form .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:hsl(var(--foreground))}.reset-password-form .form-group .password-input-container{position:relative}.reset-password-form .form-group .password-input-container input{width:100%;padding:.75rem 3rem .75rem .75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);box-sizing:border-box;transition:border-color .2s}.reset-password-form .form-group .password-input-container input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.reset-password-form .form-group .password-input-container input.error-input{border-color:hsl(var(--destructive))}.reset-password-form .form-group .password-input-container .password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:.25rem;color:hsl(var(--muted-foreground));border-radius:4px;transition:color .2s ease}.reset-password-form .form-group .password-input-container .password-toggle:hover{color:hsl(var(--foreground));background-color:hsl(var(--accent))}.reset-password-form .form-group .password-input-container .password-toggle:focus{outline:none;box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.reset-password-form .form-group .error{color:hsl(var(--destructive));border:1px solid hsl(var(--destructive)/.3);background-color:hsla(var(--destructive)/.12);font-size:.875rem;margin-top:.25rem;display:block;padding:.5rem;text-align:left}.reset-button{width:100%;padding:.75rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:background-color .2s;margin-bottom:1.5rem}.reset-button:hover{background-color:hsl(var(--primary)/.9)}.set-password-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:hsl(var(--background));padding:1rem}.set-password-form{box-sizing:border-box;width:100%;max-width:500px;padding:2rem;margin-bottom:5rem;border-radius:var(--radius);box-shadow:0 4px 6px hsla(var(--foreground)/.1);border:1px solid hsl(var(--border))}.set-password-form h2{color:hsl(var(--primary));margin-bottom:1rem;margin-top:0;text-align:center;font-size:1.8rem}.set-password-form .instruction-text{text-align:center;color:hsl(var(--muted-foreground));margin-bottom:1.5rem;line-height:1.5}.set-password-form .form-group{margin-bottom:1.5rem;position:relative}.set-password-form .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:hsl(var(--foreground))}.set-password-form .form-group .password-input-container{position:relative}.set-password-form .form-group .password-input-container input{width:100%;padding:.75rem 3rem .75rem .75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);box-sizing:border-box;transition:border-color .2s}.set-password-form .form-group .password-input-container input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.set-password-form .form-group .password-input-container input.error-input{border-color:hsl(var(--destructive))}.set-password-form .form-group .password-input-container .password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:.25rem;color:hsl(var(--muted-foreground));border-radius:4px;transition:color .2s ease}.set-password-form .form-group .password-input-container .password-toggle:hover{color:hsl(var(--foreground));background-color:hsl(var(--accent))}.set-password-form .form-group .password-input-container .password-toggle:focus{outline:none;box-shadow:0 0 0 2px hsla(var(--primary)/.2)}.set-password-form .form-group .error{color:hsl(var(--destructive));border:1px solid hsl(var(--destructive)/.3);background-color:hsla(var(--destructive)/.12);font-size:.875rem;margin-top:.25rem;display:block;padding:.5rem;text-align:left}.set-button{width:100%;padding:.75rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:background-color .2s;margin-bottom:1.5rem}.set-button:hover{background-color:hsl(var(--primary)/.9)}.success-message{text-align:center;padding:1rem;background-color:hsl(var(--accent));border-radius:var(--radius)}.success-message p{margin-bottom:.5rem;color:hsl(var(--foreground))}.success-message p:last-child{margin-bottom:0;color:hsl(var(--muted-foreground));font-size:.9rem}@media(max-width:480px){.set-password-container{padding:.5rem}.set-password-form{padding:1.5rem;margin-bottom:2rem}}.confirm-email-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:hsl(var(--background));padding:1rem}.confirm-email-container .confirm-email-card{box-sizing:border-box;width:100%;max-width:500px;padding:2.5rem;border-radius:var(--radius);box-shadow:0 4px 6px hsla(var(--foreground)/.1);border:1px solid hsl(var(--border));text-align:center;margin-bottom:5rem}.confirm-email-container .confirm-email-card h2{color:hsl(var(--primary));margin-bottom:1.5rem;margin-top:0;font-size:1.8rem}.confirm-email-container .confirm-email-card .verifying-state{padding:2rem 0}.confirm-email-container .confirm-email-card .verifying-state .loading-spinner{width:50px;height:50px;border:4px solid hsl(var(--border));border-top:4px solid hsl(var(--primary));border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1.5rem}.confirm-email-container .confirm-email-card .verifying-state p{color:hsl(var(--muted-foreground));font-size:1.1rem}.success-state,.error-state{padding:1rem 0}.success-state .success-icon,.success-state .error-icon,.error-state .success-icon,.error-state .error-icon{margin-bottom:1.5rem}.success-state .success-icon svg,.success-state .error-icon svg,.error-state .success-icon svg,.error-state .error-icon svg{color:hsl(var(--primary))}.success-state .error-icon svg,.error-state .error-icon svg{color:hsl(var(--destructive))}.success-state h3,.error-state h3{color:hsl(var(--foreground));margin-bottom:1rem;font-size:1.4rem}.success-state p,.error-state p{color:hsl(var(--muted-foreground));line-height:1.6;margin-bottom:1.5rem}.success-state .login-button,.success-state .resend-button,.error-state .login-button,.error-state .resend-button{width:100%;padding:.75rem;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:none;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:background-color .2s;margin-bottom:1.5rem;font-size:1rem}.success-state .login-button:hover,.success-state .resend-button:hover,.error-state .login-button:hover,.error-state .resend-button:hover{background-color:hsl(var(--primary)/.9)}.success-state .resend-button,.error-state .resend-button{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}.success-state .resend-button:hover,.error-state .resend-button:hover{background-color:hsl(var(--secondary)/.9)}.back-to-login{text-align:center}.back-to-login .login-link{color:hsl(var(--primary));text-decoration:none;font-weight:500}.back-to-login .login-link:hover{text-decoration:underline}@media(max-width:480px){.confirm-email-card{padding:1.5rem}.success-state h3,.error-state h3{font-size:1.2rem}.success-state p,.error-state p{font-size:.9rem}}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:300px;margin-top:4rem;padding:1rem;background-color:hsl(var(--background));border-radius:var(--radius);border:1px solid hsl(var(--border))}.error-boundary .error-boundary-content{text-align:center;max-width:500px;width:100%}.error-boundary .error-icon{font-size:3rem;margin-bottom:1rem;color:hsl(var(--destructive))}.error-boundary .error-title{color:hsl(var(--destructive));margin-bottom:1rem;font-size:1.5rem;font-weight:600}.error-boundary .error-message{color:hsl(var(--muted-foreground));margin-bottom:1.5rem;font-size:1rem;line-height:1.5}.error-boundary .error-details{text-align:left;margin-bottom:2rem;background:hsl(var(--muted));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:1rem}.error-boundary .error-details summary{cursor:pointer;font-weight:600;margin-bottom:.5rem;color:hsl(var(--foreground))}.error-boundary .error-details summary:hover{color:hsl(var(--primary))}.error-boundary .error-details .error-text{color:hsl(var(--destructive));font-family:monospace;margin-bottom:1rem;padding:.5rem;background:hsl(var(--background));border-radius:calc(var(--radius) - .1rem);border:1px solid hsl(var(--border));font-size:.875rem}.error-boundary .error-details .router-error-info{margin-bottom:1rem;padding:.75rem;background:hsl(var(--muted));border-radius:calc(var(--radius) - .1rem);border-left:4px solid hsl(var(--primary))}.error-boundary .error-details .router-error-info p{margin:.25rem 0;font-size:.875rem}.error-boundary .error-details .error-stack{color:hsl(var(--muted-foreground));font-size:.75rem;white-space:pre-wrap;padding:.5rem;background:hsl(var(--background));border-radius:calc(var(--radius) - .1rem);border:1px solid hsl(var(--border));max-height:200px;overflow-y:auto;line-height:1.4}.error-boundary .error-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.error-boundary .error-actions .btn{padding:.5rem 1rem;border:none;border-radius:var(--radius);font-size:1rem;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block;font-weight:500;font-family:inherit}.error-boundary .error-actions .btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-subtle)}.error-boundary .error-actions .btn:focus{outline:2px solid hsl(var(--ring));outline-offset:2px}.error-boundary .error-actions .btn.btn-primary{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.error-boundary .error-actions .btn.btn-primary:hover{background-color:#3f0066;box-shadow:0 4px 12px #4f00804d}.error-boundary .error-actions .btn.btn-secondary{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}.error-boundary .error-actions .btn.btn-secondary:hover{background-color:#e6e600;box-shadow:0 4px 12px #ffff004d}.error-boundary .error-actions .btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.error-boundary.success-state{background-color:#16a2490d;border-color:#16a24933}.error-boundary.success-state .error-icon,.error-boundary.success-state .error-title{color:hsl(var(--success))}@media(max-width:768px){.error-boundary{padding:1rem}.error-boundary .error-actions{flex-direction:column;align-items:center}.error-boundary .error-actions .btn{width:100%;max-width:200px}}.accept-invitation-page{min-height:100vh;background-color:hsl(var(--background));display:flex;flex-direction:column}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:70vh;gap:1.5rem}.loading-container .spinner{width:60px;height:60px;border:4px solid hsl(var(--accent));border-top-color:hsl(var(--primary));border-radius:50%;animation:spin 1s ease-in-out infinite;position:relative}.loading-container .spinner:after{content:"";position:absolute;inset:-4px;border:4px solid transparent;border-top-color:hsl(var(--secondary));border-radius:50%;animation:spin .8s linear infinite reverse}.loading-container p{color:hsl(var(--muted-foreground));font-size:1.1rem;font-weight:500;letter-spacing:.5px}.error-container{max-width:500px;margin:4rem auto;padding:3rem;text-align:center;background:hsl(var(--card));border-radius:var(--radius);box-shadow:0 10px 40px #00000014;border:2px solid hsl(var(--destructive)/.2)}.error-container h2{color:hsl(var(--destructive));margin-bottom:1.5rem;font-size:2rem;display:flex;align-items:center;justify-content:center;gap:.75rem}.error-message{color:hsl(var(--destructive-foreground));background:hsl(var(--destructive)/.1);padding:1.25rem;border-radius:var(--radius);margin-bottom:2rem;border-left:4px solid hsl(var(--destructive));font-size:1rem;line-height:1.6}.error-container .home-button{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 2rem;background:hsl(var(--primary));color:hsl(var(--primary-foreground));text-decoration:none;border-radius:var(--radius);font-weight:600;font-size:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px hsl(var(--primary)/.3);border:2px solid transparent}.error-container .home-button:hover{background:hsl(var(--primary));transform:translateY(-2px);box-shadow:0 6px 20px hsl(var(--primary)/.4);border-color:hsl(var(--secondary))}.invitation-card{max-width:600px;margin:2rem auto 4rem;padding:3rem;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:calc(var(--radius) * 1.5);box-shadow:0 20px 60px #0000001a,0 0 0 1px hsl(var(--border)/.3),0 8px 24px hsl(var(--primary)/.05);position:relative;overflow:hidden}.card-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1.5rem}.card-header h1{color:hsl(var(--foreground));font-size:2.25rem;font-weight:700;margin:0}.status-badge{padding:.5rem 1rem;border-radius:50px;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;display:inline-flex;align-items:center;gap:.5rem;box-shadow:0 4px 15px #0000001a;transition:all .3s ease}.status-badge.pending{background:linear-gradient(135deg,#ffb347,#fc3);color:#7c4a00;border:1px solid #ffb347;animation:pulse 2s infinite}.status-badge.pending:before{content:"⏳";font-size:1rem}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.invitation-details{background:hsl(var(--accent)/.15);border-radius:var(--radius);padding:2rem;margin-bottom:2rem;border:2px solid hsl(var(--accent));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.detail-row{display:flex;align-items:center;padding:1rem 0;border-bottom:1px solid hsl(var(--border)/.5)}.detail-row:last-child{border-bottom:none}.label{color:hsl(var(--muted-foreground));font-weight:600;min-width:160px;font-size:.95rem;letter-spacing:.3px}.value{color:hsl(var(--foreground));font-weight:500;font-size:1.05rem}.value.email{color:hsl(var(--primary));font-weight:600;border-radius:var(--radius);font-family:Courier New,monospace}.role-badge{padding:.5rem .75rem;border-radius:8px;font-size:.75rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;box-shadow:0 4px 12px #0000001a;border:1px solid}.role-badge.admin{background:linear-gradient(135deg,#dc2626,#ef4444);color:#fff;border-color:#b91c1c}.role-badge.manager{background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#78350f;border-color:#d97706}.role-badge.viewer{font-weight:700}.permissions-note{background:hsl(var(--accent));border-radius:var(--radius);padding:1.75rem;margin-bottom:2rem;border-left:6px solid hsl(var(--primary));position:relative;overflow:hidden}.permissions-note:before{content:"🔐";position:absolute;right:1.5rem;top:50%;transform:translateY(-50%);font-size:2rem;opacity:.3}.permissions-note h3{color:hsl(var(--primary));margin-top:0;margin-bottom:.75rem;font-size:1.25rem;font-weight:700}.permissions-note p{color:hsl(var(--foreground));margin:0;line-height:1.7;font-size:.95rem}.auth-note{background:hsl(var(--muted)/.5);border-radius:var(--radius);padding:1.5rem;margin-bottom:2rem;border:2px dashed hsl(var(--warning))}.auth-note p{color:hsl(var(--warning-foreground));margin:0;font-size:.95rem;line-height:1.6;display:flex;align-items:center;gap:.5rem}.invitation-action-buttons{display:flex;gap:1.25rem;margin-bottom:2rem;justify-content:center}.invitation-buttons button{flex:1;border-radius:var(--radius);font-weight:700;font-size:1.1rem;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);border:none;display:flex;align-items:center;justify-content:center;gap:.75rem;letter-spacing:.5px;position:relative;overflow:hidden}.invitation-buttons button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .6s}.invitation-buttons button:hover:before{left:100%}.invitation-buttons button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-accept{background:hsl(var(--success));color:#fff;box-shadow:0 6px 20px hsl(var(--success)/.4)}.btn-accept:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 10px 30px hsl(var(--success)/.6)}.btn-accept:after{font-size:1.2rem}.btn-decline{background:hsl(var(--destructive));color:#fff;box-shadow:0 6px 20px hsl(var(--destructive)/.4)}.btn-decline:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 10px 30px hsl(var(--destructive)/.6)}.btn-decline:after{font-size:1.2rem}.terms-note{text-align:center;padding:1.5rem;background:hsl(var(--muted)/.5);border-radius:var(--radius);margin-top:2rem;border:1px solid hsl(var(--border))}.terms-note p{color:hsl(var(--muted-foreground));margin:0;font-size:.9rem;line-height:1.6}.terms-note a{color:hsl(var(--primary));text-decoration:none;font-weight:600;position:relative;padding:.2rem 0}.terms-note a:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:hsl(var(--primary));transform:scaleX(0);transition:transform .3s ease}.terms-note a:hover:after{transform:scaleX(1)}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .3s ease}.modal-content{background:hsl(var(--card));padding:2.5rem;border-radius:calc(var(--radius) * 1.5);max-width:500px;width:100%;box-shadow:0 25px 50px #00000040;border:2px solid hsl(var(--destructive)/.3);animation:slideUp .4s cubic-bezier(.4,0,.2,1)}.modal-content h3{color:hsl(var(--destructive));margin-top:0;margin-bottom:1.5rem;font-size:1.75rem;display:flex;align-items:center;gap:.75rem}.modal-content p{color:hsl(var(--foreground));margin-bottom:1rem;line-height:1.7}.modal-content .warning{color:hsl(var(--destructive-foreground));background:hsl(var(--destructive)/.1);padding:1rem;border-radius:var(--radius);border-left:4px solid hsl(var(--destructive));font-weight:500}.modal-actions{display:flex;gap:1rem;margin-top:2rem}.modal-actions button{flex:1;padding:1rem 2rem;border-radius:var(--radius);font-weight:700;cursor:pointer;transition:all .3s ease;border:2px solid transparent;font-size:1rem}.btn-cancel{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.btn-cancel:hover{background:hsl(var(--border));border-color:hsl(var(--muted-foreground)/.3)}.btn-confirm-decline{background:linear-gradient(135deg,hsl(var(--destructive)),#dc2626);color:#fff;box-shadow:0 4px 15px hsl(var(--destructive)/.3)}.btn-confirm-decline:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 25px hsl(var(--destructive)/.5)}.btn-confirm-decline:disabled{opacity:.6;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.invitation-card{margin:1rem;padding:2rem}.card-header{flex-direction:column;gap:1rem;text-align:center}.detail-row{flex-direction:column;align-items:flex-start;gap:.5rem}.detail-row .label{min-width:auto}.invitation-action-buttons,.modal-actions{flex-direction:column}}@media(max-width:480px){.invitation-card{padding:1.5rem}.card-header h1{font-size:1.75rem}.status-badge{padding:.375rem 1rem;font-size:.75rem}}.option{display:flex;flex-direction:row;align-items:center;gap:.5rem}.auth-choice{display:inline-flex;gap:.5rem}.decline-success-container{max-width:500px;margin:4rem auto;padding:3rem;text-align:center;background:hsl(var(--card));border-radius:var(--radius);box-shadow:0 10px 40px #00000014;border:2px solid hsl(var(--success)/.3)}.decline-success-container .success-icon{width:80px;height:80px;background:hsl(var(--success)/.2);color:hsl(var(--success));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:700;margin:0 auto 1.5rem;border:3px solid hsl(var(--success)/.3)}.decline-success-container h2{color:hsl(var(--success));margin-bottom:1rem}.decline-success-container p{color:hsl(var(--foreground));margin-bottom:1rem;line-height:1.6}.decline-success-container .redirect-note{color:hsl(var(--muted-foreground));font-size:.9rem;font-style:italic}.invitation-content{padding:1rem 0}.invitation-summary{margin-bottom:2rem}.invitation-summary .invitation-message{font-size:1.1rem;line-height:1.6;color:hsl(var(--foreground))}.invitation-summary .invitation-message .role-badge{margin-left:.5rem;padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;background:hsl(var(--primary)/.1);color:hsl(var(--primary));border:1px solid hsl(var(--primary)/.3)}.auth-required{margin:2rem 0}.auth-required h3{margin-bottom:1.5rem;color:hsl(var(--foreground));text-align:center}.auth-required .auth-options{display:flex;flex-direction:column;gap:1.5rem}.auth-required .auth-option{background:hsl(var(--accent)/.1);border-radius:var(--radius);padding:1.5rem;text-align:center;border:1px solid hsl(var(--border))}.auth-required .auth-option h4{margin:0 0 .5rem;color:hsl(var(--foreground))}.auth-required .auth-option p{margin:0 0 1rem;color:hsl(var(--muted-foreground));font-size:.95rem}.auth-required .auth-option button{width:100%;padding:.75rem;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:all .2s;border:none}.auth-required .auth-option .btn-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.auth-required .auth-option .btn-primary:hover:not(:disabled){background:hsl(var(--primary)/.9)}.auth-required .auth-option .btn-secondary{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border:1px solid hsl(var(--border))}.auth-required .auth-option .btn-secondary:hover:not(:disabled){background:hsl(var(--secondary)/.9)}.auth-required .divider{display:flex;align-items:center;text-align:center;margin:.5rem 0}.auth-required .divider:before,.auth-required .divider:after{content:"";flex:1;border-bottom:1px solid hsl(var(--border))}.auth-required .divider span{padding:0 1rem;color:hsl(var(--muted-foreground));font-size:.9rem}.accept-section{text-align:center;margin:2rem 0}.accept-section h3{margin-bottom:1.5rem;color:hsl(var(--foreground))}.accept-section .note{margin-top:1rem;color:hsl(var(--muted-foreground));font-size:.9rem}.invitation-note{background:hsl(var(--muted)/.6);padding:1rem;border-radius:var(--radius);margin-bottom:1.5rem;border-left:4px solid hsl(var(--primary))}.invitation-note p{margin:0;color:hsl(var(--foreground));font-size:.95rem}.invitation-note p strong{color:hsl(var(--primary))}.prefilled-email{background:hsl(var(--muted))!important;border-color:hsl(var(--primary)/.3)!important;color:hsl(var(--foreground))!important}.helper-text{margin:.25rem 0 0;font-size:.875rem;color:hsl(var(--muted-foreground));font-style:italic}
