:root{--sidebar-width:17.25rem}.app-shell{display:flex;min-height:100vh}.app-shell-main{flex:1;min-width:0;display:flex;flex-direction:column;background:radial-gradient(circle at 8% 3%,hsl(var(--primary)/.12),transparent 32%),radial-gradient(circle at 94% 2%,hsl(var(--info)/.12),transparent 34%),transparent}.app-topbar{justify-content:space-between;padding:.75rem clamp(.8rem,1.9vw,1.5rem);border-bottom:1px solid hsl(var(--border));background-color:hsl(var(--glass-bg));position:sticky;top:0;z-index:40;backdrop-filter:blur(var(--glass-blur));box-shadow:var(--elevation-1),var(--glass-shadow)}.app-topbar,.app-topbar-end,.app-topbar-start{display:flex;align-items:center;gap:.75rem}.app-topbar-balance{display:flex;align-items:center;gap:.35rem;padding:.2rem .35rem .2rem .75rem;border-radius:999px;border:1px solid hsl(var(--border));background:color-mix(in srgb,hsl(var(--surface-elevated)) 90%,transparent);font-size:.8rem}.app-topbar-balance-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;cursor:pointer;border:none;background:transparent;color:inherit}.app-topbar-balance-main{display:inline-flex;align-items:center;gap:.35rem;padding:.15rem .1rem;border-radius:999px}.app-topbar-balance-main:hover{background:hsl(var(--muted))}.app-topbar-balance-label{font-weight:600;color:hsl(var(--text-soft))}.app-topbar-balance-amount,.app-topbar-balance-plus{font-weight:700;color:hsl(var(--foreground))}.app-topbar-balance-plus{width:1.45rem;height:1.45rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid hsl(var(--border));background:hsl(var(--background));font-size:1rem;line-height:1;cursor:pointer}.app-topbar-balance-plus:hover{background:hsl(var(--muted))}.app-notification-center{position:relative}.app-notification-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:none;border-radius:.8rem;background:transparent;color:hsl(var(--foreground));font-size:1.25rem;cursor:pointer}.app-notification-trigger:hover{background:hsl(var(--muted))}.app-notification-icon{display:block;flex-shrink:0;width:1.25rem;height:1.25rem}.app-notification-badge{position:absolute;top:.2rem;right:.2rem;min-width:1.1rem;height:1.1rem;padding:0 .25rem;border-radius:999px;background:hsl(var(--destructive));color:white;font-size:.65rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.app-notification-dropdown{position:absolute;top:calc(100% + .5rem);inset-inline-end:0;width:min(360px,90vw);max-height:70vh;overflow:hidden;display:flex;flex-direction:column;border-radius:.75rem;border:1px solid hsl(var(--border));background:hsl(var(--card));box-shadow:var(--shadow-soft);z-index:100}.app-notification-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid hsl(var(--border))}.app-notification-dropdown-title{font-weight:600;font-size:.9rem;color:hsl(var(--foreground))}.app-notification-mark-all{font-size:.8rem;font-weight:500;color:hsl(var(--primary));background:none;border:none;cursor:pointer;padding:.25rem .5rem}.app-notification-mark-all:hover{text-decoration:underline}.app-notification-list{overflow-y:auto;max-height:50vh}.app-notification-item{display:block;width:100%;text-align:left;padding:.75rem 1rem;border:none;border-bottom:1px solid hsl(var(--border));background:transparent;cursor:pointer;font:inherit}.app-notification-item:hover{background:hsl(var(--muted)/.5)}.app-notification-item--unread{background:hsl(var(--primary)/.06)}.app-notification-item-title{display:block;font-weight:600;font-size:.85rem;color:hsl(var(--foreground));margin-bottom:.2rem}.app-notification-item-message{display:block;font-size:.8rem;color:hsl(var(--text-soft));margin-bottom:.25rem}.app-notification-item-time{display:block;font-size:.75rem;color:hsl(var(--text-soft))}.app-notification-empty{padding:1.5rem 1rem;margin:0;font-size:.9rem;color:hsl(var(--text-soft));text-align:center}.app-notification-dropdown-footer{padding:.75rem 1rem;border-top:1px solid hsl(var(--border));background:hsl(var(--muted)/.3)}.app-notification-send-demo{display:block;width:100%;padding:.5rem .75rem;font-size:.85rem;font-weight:500;color:hsl(var(--primary));background:transparent;border:1px solid hsl(var(--primary)/.5);border-radius:.5rem;cursor:pointer}.app-notification-send-demo:hover:not(:disabled){background:hsl(var(--primary)/.1)}.app-notification-send-demo:disabled{opacity:.7;cursor:not-allowed}.app-topbar-hamburger{display:none;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.8rem;border:1px solid hsl(var(--border));background-color:transparent;color:hsl(var(--foreground));font-size:1.25rem;cursor:pointer;line-height:1}.app-topbar-hamburger:hover{background-color:hsl(var(--muted))}.app-topbar-title{margin:0;font-family:var(--font-sora),sans-serif;font-size:1rem;font-weight:700;color:hsl(var(--foreground))}.app-sidebar{width:var(--sidebar-width);flex-shrink:0;display:flex;flex-direction:column;border-inline-end:1px solid hsl(var(--border));background:linear-gradient(180deg,hsl(var(--glass-bg-strong)),color-mix(in srgb,hsl(var(--card)) 94%,transparent));height:100vh;position:sticky;top:0;overflow-y:auto;z-index:50;backdrop-filter:blur(var(--glass-blur));box-shadow:var(--elevation-2),var(--glass-shadow)}.app-sidebar-header{padding:1rem 1.25rem;border-bottom:1px solid hsl(var(--border))}.app-sidebar-brand{display:inline-flex;align-items:center;text-decoration:none;color:hsl(var(--foreground))}.app-sidebar-nav{display:flex;flex-direction:column;gap:.3rem;padding:.75rem;flex:1}.app-sidebar-link{display:block;padding:.7rem .9rem;border-radius:1rem;font-size:.88rem;font-weight:600;color:hsl(var(--foreground));text-decoration:none;transition:background-color .18s ease,transform .18s ease,box-shadow .18s ease}.app-sidebar-link:hover{background-color:color-mix(in srgb,hsl(var(--muted)) 60%,transparent);transform:translateY(-1px)}.app-sidebar-link--active{background-color:hsl(var(--primary)/.12);color:hsl(var(--primary));font-weight:600;box-shadow:inset 0 0 0 1px hsl(var(--primary)/.22)}.app-sidebar-backdrop{display:none;position:fixed;inset:0;background-color:rgba(0,0,0,.4);z-index:49}.app-avatar-menu{position:relative}.app-avatar-trigger{min-width:2.5rem;min-height:2.5rem;border:1px solid transparent;border-radius:999px;background:transparent;cursor:pointer;padding:.1rem}.app-avatar-circle,.app-avatar-trigger{display:flex;align-items:center;justify-content:center}.app-avatar-circle{width:2.2rem;height:2.2rem;border-radius:50%;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:.78rem;font-weight:700;letter-spacing:.03em;-webkit-user-select:none;-moz-user-select:none;user-select:none}.app-avatar-dropdown{position:absolute;top:calc(100% + .5rem);inset-inline-end:0;min-width:14rem;border-radius:1rem;border:1px solid hsl(var(--border));background-color:color-mix(in srgb,hsl(var(--surface-elevated)) 94%,transparent);box-shadow:var(--shadow-soft-lg);z-index:60;overflow:hidden;backdrop-filter:blur(14px)}.app-avatar-dropdown-header{padding:.85rem 1rem;display:flex;flex-direction:column;gap:.15rem}.app-avatar-dropdown-name-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.app-avatar-dropdown-name{font-size:.88rem;font-weight:700;color:hsl(var(--foreground))}.app-plan-badge{font-size:.62rem;font-weight:800;padding:.12rem .4rem;border-radius:999px;letter-spacing:.04em;text-transform:uppercase}.app-plan-badge--pro{border:1px solid color-mix(in srgb,hsl(var(--primary)) 45%,hsl(var(--border)));background:color-mix(in srgb,hsl(var(--primary)) 12%,transparent);color:hsl(var(--primary))}.app-plan-badge--trusted{border:1px solid color-mix(in srgb,hsl(142 50% 40%) 50%,hsl(var(--border)));background:color-mix(in srgb,hsl(142 45% 42%) 10%,transparent);color:hsl(142 45% 32%)}.app-avatar-dropdown-email{font-size:.78rem;color:hsl(var(--text-soft));word-break:break-all}.app-avatar-dropdown-role{margin-top:.25rem;display:inline-block;align-self:flex-start;font-size:.7rem;font-weight:700;padding:.1rem .5rem;border-radius:999px;border:1px solid hsl(var(--border));background-color:hsl(var(--muted));color:hsl(var(--text-soft));text-transform:uppercase;letter-spacing:.03em}.app-avatar-dropdown-divider{height:1px;background-color:hsl(var(--border))}.app-avatar-dropdown-item{display:block;width:100%;padding:.75rem 1rem;font-size:.85rem;font-weight:600;color:hsl(var(--foreground));text-decoration:none;text-align:start;background:transparent;border:none;cursor:pointer}.app-avatar-dropdown-item:hover{background-color:hsl(var(--muted))}.app-avatar-dropdown-logout{color:hsl(var(--destructive,0 70% 50%))}@media (max-width:768px){.app-shell{display:block}.app-shell-main{width:100%}.app-sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:min(84vw,var(--sidebar-width));transform:translateX(-100%);transition:transform .25s ease;box-shadow:12px 0 34px -18px rgba(0,0,0,.28)}[dir=rtl] .app-sidebar{transform:translateX(100%)}.app-sidebar--open,[dir=rtl] .app-sidebar.app-sidebar--open{transform:translateX(0)}.app-sidebar-backdrop{display:block}.app-topbar-hamburger{display:flex}.app-topbar{padding:.6rem .75rem;gap:.45rem}.app-topbar-end,.app-topbar-start{min-width:0;gap:.45rem}.app-topbar-title{font-size:.92rem}.app-topbar-balance{max-width:10.5rem;padding:.15rem .2rem .15rem .5rem}.app-topbar-balance,.app-topbar-balance-main{min-width:0;gap:.2rem}.app-topbar-balance-label{font-size:.66rem;white-space:nowrap}.app-topbar-balance-amount{font-size:.72rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-avatar-trigger{flex-shrink:0}}@media (max-width:420px){.app-topbar-balance{max-width:8.2rem}.app-topbar-balance-label{display:none}.app-topbar-balance-plus{width:1.3rem;height:1.3rem;font-size:.9rem}}.support-fab-trigger{position:fixed;bottom:calc(1.25rem + env(safe-area-inset-bottom, 0px));inset-inline-end:calc(1.25rem + env(safe-area-inset-inline-end, 0px));z-index:900;width:3.35rem;height:3.35rem;border-radius:999px;border:1px solid hsl(var(--border));background:hsl(var(--primary));color:hsl(var(--primary-foreground));cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 28px -8px hsl(var(--primary)/.55);transition:transform .15s ease,box-shadow .15s ease}.support-fab-trigger:hover{transform:scale(1.04);box-shadow:0 12px 32px -6px hsl(var(--primary)/.5)}.support-fab-overlay{position:fixed;inset:0;background-color:hsl(0 0% 0%/.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.support-fab-dialog{position:relative;width:100%;max-width:440px;max-height:min(90vh,640px);overflow-y:auto;background-color:hsl(var(--card));border-radius:var(--radius-lg);border:1px solid hsl(var(--border));padding:1.5rem 1.35rem 1.35rem;box-shadow:var(--shadow-soft-lg)}.support-fab-close{position:absolute;top:.65rem;inset-inline-end:.65rem;width:2rem;height:2rem;border:none;background:none;font-size:1.35rem;line-height:1;cursor:pointer;color:hsl(var(--text-soft));display:flex;align-items:center;justify-content:center;border-radius:.35rem}.support-fab-title{margin:0 2rem .35rem 0;font-family:var(--font-sora),sans-serif;font-size:1.15rem;font-weight:700;color:hsl(var(--foreground))}.support-fab-subtitle{margin:0 2rem 1rem 0;font-size:.8rem;line-height:1.45;color:hsl(var(--muted-foreground));font-weight:400}.support-fab-form{display:flex;flex-direction:column;gap:.35rem}.support-fab-label{font-size:.78rem;font-weight:600;color:hsl(var(--text-soft));margin-top:.35rem}.support-fab-label:first-of-type{margin-top:0}.support-fab-input,.support-fab-textarea{width:100%;box-sizing:border-box;padding:.55rem .65rem;border-radius:var(--radius-md);border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground));font-size:.9rem}.support-fab-input:disabled{opacity:.85;cursor:not-allowed;background:hsl(var(--muted)/.35)}.support-fab-textarea{resize:vertical;min-height:6rem}.support-fab-file{font-size:.85rem}.support-fab-hint{margin:0;font-size:.78rem;color:hsl(var(--text-soft))}.support-fab-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem;flex-wrap:wrap}.support-fab-btn{padding:.55rem 1rem;border-radius:var(--radius-md);font-size:.9rem;font-weight:600;cursor:pointer;border:1px solid transparent}.support-fab-btn--secondary{background:transparent;border-color:hsl(var(--border));color:hsl(var(--foreground))}.support-fab-btn--primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.support-fab-btn:disabled{opacity:.55;cursor:not-allowed}