.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-width);background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:200;transition:width var(--transition-slow);overflow:hidden}.sidebar.collapsed{width:var(--sidebar-collapsed)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 14px;border-bottom:1px solid var(--border);min-height:var(--topbar-height);gap:8px}.sidebar-brand{display:flex;align-items:center;gap:10px;overflow:hidden;flex:1;min-width:0}.brand-icon{width:36px;height:36px;background:var(--color-brand);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;flex-shrink:0}.brand-text{display:flex;flex-direction:column;overflow:hidden}.brand-name{font-size:15px;font-weight:700;color:var(--text-primary);line-height:1.2}.brand-company{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-toggle{flex-shrink:0;color:var(--text-muted);font-size:18px}.sidebar-nav{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:2px}.nav-divider{padding:16px 8px 6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);white-space:nowrap}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--radius-md);color:var(--text-secondary);font-size:14px;font-weight:500;text-decoration:none;transition:all var(--transition);white-space:nowrap;position:relative}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary);text-decoration:none}.nav-item.active{background:var(--color-brand-light);color:var(--color-brand-dark)}[data-theme=dark] .nav-item.active{background:#6366f126;color:#a5b4fc}.nav-icon{font-size:18px;flex-shrink:0}.nav-label{flex:1;overflow:hidden;text-overflow:ellipsis}.nav-badge{background:var(--color-danger);color:#fff;font-size:10px;font-weight:600;padding:1px 6px;border-radius:10px;margin-left:auto}.nav-badge-dot{position:absolute;top:4px;left:26px;min-width:8px;height:8px;padding:0;border-radius:50%;border:2px solid var(--bg-card)}.sidebar-footer{border-top:1px solid var(--border);padding:12px 8px}.sidebar-user{display:flex;align-items:center;gap:10px;padding:6px;border-radius:var(--radius-md)}.user-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-brand);display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:600;flex-shrink:0;overflow:hidden}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-info{flex:1;min-width:0;display:flex;flex-direction:column}.user-name{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:11px;color:var(--text-muted);text-transform:capitalize}.sidebar-logout{width:100%;justify-content:center;color:var(--text-muted);font-size:18px}@media (max-width: 768px){.sidebar{width:var(--sidebar-width);transform:translate(-100%);transition:transform var(--transition-slow);z-index:300;box-shadow:var(--shadow-lg)}.sidebar.collapsed{width:var(--sidebar-width)}.sidebar.mobile-open{transform:translate(0)}.sidebar-toggle{display:none}}.topbar{position:fixed;top:0;left:var(--sidebar-width);right:0;height:var(--topbar-height);background:var(--bg-card);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-5);z-index:100;gap:var(--space-4);transition:left var(--transition-slow)}.topbar-left{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.topbar-menu{display:none;flex:0 0 auto;align-items:center;justify-content:center;width:40px;height:40px;padding:0;color:var(--text-primary)}.topbar-menu svg{width:24px;height:24px;color:var(--text-primary);fill:currentColor}.topbar-menu:hover{color:var(--text-primary)}.topbar-search{display:flex;align-items:center;gap:8px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:7px 12px;flex:1;max-width:440px;transition:border-color var(--transition),box-shadow var(--transition)}.topbar-search:focus-within{border-color:var(--color-brand);box-shadow:0 0 0 3px #6366f11a}.search-icon{color:var(--text-muted);font-size:16px;flex-shrink:0}.search-input{flex:1;border:none;background:transparent;font-size:14px;color:var(--text-primary);outline:none;min-width:0}.search-input::placeholder{color:var(--text-muted)}.search-kbd{font-size:11px;color:var(--text-muted);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;padding:2px 6px;font-family:var(--font-mono);white-space:nowrap}.topbar-right{display:flex;align-items:center;gap:var(--space-1);flex-shrink:0}.topbar-right .btn-icon{font-size:18px;color:var(--text-secondary);width:36px;height:36px}.notif-dot{position:absolute;top:6px;right:6px;width:8px;height:8px;background:var(--color-danger);border-radius:50%;border:2px solid var(--bg-card)}.topbar-avatar{display:flex;align-items:center;gap:8px;padding:4px 8px;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition);border:none;background:none}.topbar-avatar:hover{background:var(--bg-hover)}.avatar-circle{width:32px;height:32px;border-radius:50%;background:var(--color-brand);display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:600;overflow:hidden;flex-shrink:0}.avatar-circle img{width:100%;height:100%;object-fit:cover}.avatar-info{text-align:left;display:none}@media (min-width: 640px){.avatar-info{display:flex;flex-direction:column}}.avatar-name{font-size:13px;font-weight:600;color:var(--text-primary);line-height:1.2}.avatar-company{font-size:11px;color:var(--text-muted)}.user-menu-wrapper{position:relative}.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:220px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:500;animation:fadeIn .15s ease}.dropdown-header{padding:12px 16px;display:flex;flex-direction:column;gap:2px}.dropdown-header strong{font-size:14px;color:var(--text-primary)}.dropdown-header span{font-size:12px;color:var(--text-muted)}.dropdown-divider{height:1px;background:var(--border)}.dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 16px;font-size:14px;color:var(--text-secondary);background:none;border:none;cursor:pointer;transition:background var(--transition),color var(--transition);text-align:left}.dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.dropdown-item.danger{color:var(--color-danger)}.dropdown-item.danger:hover{background:#fee2e2}[data-theme=dark] .dropdown-item.danger:hover{background:#7f1d1d}.dropdown-item svg{font-size:16px}@media (max-width: 768px){.topbar{left:0;padding:0 var(--space-3);gap:var(--space-2)}.topbar-left{gap:var(--space-2)}.search-kbd{display:none}.topbar-menu{display:flex}.topbar-search{max-width:160px;min-width:0;flex-shrink:1}.avatar-info{display:none}.notif-dropdown{width:280px;right:-60px}}@media (max-width: 380px){.topbar-search{display:none}}.topbar-notif{position:relative}.notif-count{position:absolute;top:2px;right:2px;min-width:16px;height:16px;background:var(--color-danger);color:#fff;font-size:10px;font-weight:700;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 3px}.notif-wrapper{position:relative}.notif-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:340px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);z-index:200;overflow:hidden}.notif-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);font-size:14px;font-weight:600;color:var(--text-primary)}.notif-badge{background:var(--color-brand);color:#fff;font-size:11px;padding:1px 7px;border-radius:10px}.notif-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px;color:var(--text-muted);font-size:14px}.notif-item{display:flex;gap:12px;padding:12px 14px;width:100%;border:none;background:none;cursor:pointer;text-align:left;border-bottom:1px solid var(--border);transition:background var(--transition)}.notif-item:hover{background:var(--bg-hover)}.notif-icon{width:34px;height:34px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.notif-body{flex:1}.notif-title{font-size:13px;font-weight:600;color:var(--text-primary)}.notif-sub{font-size:12px;color:var(--text-muted);margin-top:2px;line-height:1.4}.notif-time{font-size:11px;color:var(--text-muted);margin-top:4px}.notif-footer{padding:10px 14px;border-top:1px solid var(--border)}.notif-footer button{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-muted);background:none;border:none;cursor:pointer}.grace-banner{width:100%;padding:12px 20px;position:sticky;top:0;z-index:100}.grace-banner.warning{background:linear-gradient(135deg,#fef3c7,#fde68a);border-bottom:1px solid #fcd34d}.grace-banner.urgent{background:linear-gradient(135deg,#fee2e2,#fecaca);border-bottom:1px solid #fca5a5}[data-theme=dark] .grace-banner.warning{background:linear-gradient(135deg,#451a03,#78350f);border-color:#92400e}[data-theme=dark] .grace-banner.urgent{background:linear-gradient(135deg,#450a0a,#7f1d1d);border-color:#991b1b}.grace-banner-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1400px;margin:0 auto;flex-wrap:wrap}.grace-banner-left{display:flex;align-items:center;gap:10px;flex:1}.grace-icon{font-size:18px;flex-shrink:0;color:#92400e}.grace-banner.urgent .grace-icon{color:#991b1b}[data-theme=dark] .grace-icon{color:#fbbf24}[data-theme=dark] .grace-banner.urgent .grace-icon{color:#fca5a5}.grace-text{font-size:14px;color:#78350f;line-height:1.4}.grace-banner.urgent .grace-text{color:#7f1d1d}[data-theme=dark] .grace-text{color:#fde68a}[data-theme=dark] .grace-banner.urgent .grace-text{color:#fecaca}.grace-banner-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.grace-renew-btn{display:flex;align-items:center;gap:6px;padding:7px 16px;background:#d97706;color:#fff;border:none;border-radius:var(--radius-md);font-size:13px;font-weight:600;cursor:pointer;transition:background var(--transition);white-space:nowrap}.grace-renew-btn:hover{background:#b45309}.grace-banner.urgent .grace-renew-btn{background:#dc2626}.grace-banner.urgent .grace-renew-btn:hover{background:#b91c1c}.grace-dismiss{width:28px;height:28px;border-radius:50%;background:#0000001a;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;color:#78350f;transition:background var(--transition)}.grace-dismiss:hover{background:#0003}.evb{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#fef9c3;border-bottom:1px solid #fde047;color:#854d0e;font-size:13.5px;flex-wrap:wrap}[data-theme=dark] .evb{background:#422006;border-bottom-color:#713f12;color:#fde68a}.evb-icon{font-size:18px;flex-shrink:0}.evb-text{flex:1;min-width:160px;font-weight:500}.evb-btn{background:#854d0e;color:#fff;border:none;border-radius:7px;padding:6px 14px;font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.evb-btn:hover:not(:disabled){background:#713f12}.evb-btn:disabled{opacity:.6;cursor:default}[data-theme=dark] .evb-btn{background:#fde68a;color:#422006}[data-theme=dark] .evb-btn:hover:not(:disabled){background:#fcd34d}.evb-sent{font-weight:700;color:#15803d;white-space:nowrap}[data-theme=dark] .evb-sent{color:#86efac}.evb-close{background:none;border:none;color:inherit;cursor:pointer;font-size:18px;display:flex;padding:2px;opacity:.7}.evb-close:hover{opacity:1}.evb-spin{animation:evb-spin .8s linear infinite}@keyframes evb-spin{to{transform:rotate(360deg)}}@media (max-width: 560px){.evb{padding:8px 12px;font-size:12.5px}.evb-text{min-width:100%;order:1}.evb-btn,.evb-sent{order:2}.evb-close{order:3;margin-left:auto}}.mobile-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:250;animation:fadeIn .2s ease}@media (max-width: 768px){.mobile-overlay{display:block}}body.mobile-nav-open{overflow:hidden}.app-layout{display:flex;height:100vh;overflow:hidden;background:var(--bg-primary)}.app-main{flex:1;display:flex;flex-direction:column;overflow:hidden;transition:margin-left var(--transition)}.app-content{flex:1;overflow-y:auto;padding:var(--space-6)}@media (max-width: 768px){.app-content{padding:var(--space-4)}}.install-prompt{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:9999;width:min(480px,calc(100vw - 32px));display:flex;align-items:center;gap:12px;padding:12px 12px 12px 14px;background:var(--bg-card, #fff);color:var(--text-primary, #0f172a);border:1px solid var(--border, #e2e8f0);border-radius:14px;box-shadow:0 12px 32px #0f172a2e;font-size:14px;animation:install-prompt-in .25s ease-out}@keyframes install-prompt-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.install-prompt__icon{width:44px;height:44px;border-radius:10px;object-fit:cover;flex-shrink:0}.install-prompt__text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;line-height:1.35}.install-prompt__text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.install-prompt__text span{color:var(--text-secondary, #64748b);font-size:13px}.install-prompt__inline-icon{vertical-align:-2px}.install-prompt__btn{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border:0;border-radius:10px;background:var(--install-accent, #6366f1);color:#fff;font-weight:600;font-size:14px;cursor:pointer;flex-shrink:0}.install-prompt__btn:hover{filter:brightness(1.08)}.install-prompt__close{display:inline-flex;padding:6px;border:0;background:transparent;color:var(--text-secondary, #64748b);cursor:pointer;border-radius:8px;flex-shrink:0}.install-prompt__close:hover{background:var(--border, #e2e8f0)}:root{--color-brand: #6366f1;--color-brand-dark: #4f46e5;--color-brand-light: #e0e7ff;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--color-info: #3b82f6;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f1f5f9;--bg-card: #ffffff;--bg-hover: #f1f5f9;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--text-inverse: #ffffff;--border: #e2e8f0;--border-strong: #cbd5e1;--shadow-sm: 0 1px 2px 0 rgba(0,0,0,.05);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.07), 0 2px 4px -2px rgba(0,0,0,.05);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.08), 0 4px 6px -4px rgba(0,0,0,.05);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--sidebar-width: 260px;--sidebar-collapsed: 72px;--topbar-height: 60px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Fira Code", "Cascadia Code", "JetBrains Mono", monospace;--transition: .15s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--bg-card: #1e293b;--bg-hover: #334155;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--border: #334155;--border-strong: #475569;--shadow-sm: 0 1px 2px 0 rgba(0,0,0,.3);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.4);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.5)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background:var(--bg-secondary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--color-brand);text-decoration:none}a:hover{text-decoration:underline}img,svg{display:block;max-width:100%}button{cursor:pointer;border:none;background:none;font-family:inherit}input,textarea,select{font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-full);font-size:12px;font-weight:500}.badge-success{background:#d1fae5;color:#065f46}.badge-warning{background:#fef3c7;color:#92400e}.badge-danger{background:#fee2e2;color:#991b1b}.badge-info{background:#dbeafe;color:#1e40af}.badge-neutral{background:var(--bg-tertiary);color:var(--text-secondary)}.badge-brand{background:var(--color-brand-light);color:var(--color-brand-dark)}[data-theme=dark] .badge-success{background:#064e3b;color:#6ee7b7}[data-theme=dark] .badge-warning{background:#78350f;color:#fcd34d}[data-theme=dark] .badge-danger{background:#7f1d1d;color:#fca5a5}[data-theme=dark] .badge-info{background:#1e3a5f;color:#93c5fd}[data-theme=dark] .badge-brand{background:#312e81;color:#a5b4fc}.app-layout{display:flex;min-height:100vh}.app-main{flex:1;display:flex;flex-direction:column;min-width:0;margin-left:var(--sidebar-width);transition:margin-left var(--transition-slow)}.app-main.sidebar-collapsed{margin-left:var(--sidebar-collapsed)}.app-content{flex:1;padding:var(--space-6);margin-top:var(--topbar-height);overflow-y:auto}@media (max-width: 768px){.app-main{margin-left:0}.app-content{padding:var(--space-4)}}.page-header{margin-bottom:var(--space-6)}.page-header h1{font-size:24px;font-weight:700;color:var(--text-primary)}.page-header p{color:var(--text-secondary);margin-top:4px;font-size:14px}.page-header-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-pad{padding:var(--space-6)}.card-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.card-body{padding:var(--space-5) var(--space-6)}.card-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--border)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:9px 16px;border-radius:var(--radius-md);font-size:14px;font-weight:500;line-height:1;transition:all var(--transition);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-brand);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-brand-dark);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-strong)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-ghost{color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-sm{padding:6px 12px;font-size:13px}.btn-lg{padding:12px 24px;font-size:16px}.btn-icon{padding:8px;border-radius:var(--radius-md)}.btn-loading{position:relative;color:transparent!important}.btn-loading:after{content:"";position:absolute;width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-label{font-size:13px;font-weight:500;color:var(--text-secondary)}.form-input{padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius-md);font-size:14px;background:var(--bg-primary);color:var(--text-primary);transition:border-color var(--transition),box-shadow var(--transition);width:100%}.form-input:focus{outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px #6366f11f}.form-input::placeholder{color:var(--text-muted)}.form-textarea{resize:vertical;min-height:80px}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}.form-error{font-size:12px;color:var(--color-danger)}.table-wrapper{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--bg-secondary)}.table td{padding:14px 16px;border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:middle}.table tr:last-child td{border-bottom:none}.table tbody tr{transition:background var(--transition)}.table tbody tr:hover{background:var(--bg-hover)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-5)}.stat-card{padding:var(--space-5);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg)}.stat-label{font-size:13px;color:var(--text-muted);font-weight:500}.stat-value{font-size:28px;font-weight:700;color:var(--text-primary);margin:6px 0 4px;line-height:1}.stat-change{font-size:12px;display:flex;align-items:center;gap:4px}.stat-change.up{color:var(--color-success)}.stat-change.down{color:var(--color-danger)}.stat-icon{width:40px;height:40px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:18px}.skeleton{background:linear-gradient(90deg,var(--border) 25%,var(--bg-hover) 50%,var(--border) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state{text-align:center;padding:var(--space-12);color:var(--text-muted)}.empty-state-icon{font-size:48px;margin-bottom:var(--space-4);opacity:.5}.empty-state h3{font-size:18px;font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-2)}.empty-state p{font-size:14px;max-width:360px;margin:0 auto var(--space-5)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.modal{background:var(--bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:560px;max-height:90vh;overflow-y:auto}.modal-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.modal-header h2{font-size:18px;font-weight:600}.modal-body{padding:var(--space-6)}.modal-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--border);display:flex;gap:var(--space-3);justify-content:flex-end}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.fade-in{animation:fadeIn .3s ease forwards}@keyframes pageFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-fade{animation:pageFade .2s ease}.page-enter{opacity:0;transform:translateY(8px)}.page-enter-active{opacity:1;transform:translateY(0);transition:all .2s ease}@media (prefers-reduced-motion: reduce){.page-fade{animation:none}}.confidence-bar{height:4px;border-radius:2px;background:var(--border);overflow:hidden}.confidence-fill{height:100%;border-radius:2px;transition:width .5s ease}.confidence-high{background:var(--color-success)}.confidence-mid{background:var(--color-warning)}.confidence-low{background:var(--color-danger)}.ai-thinking{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:14px}.ai-thinking-dots{display:flex;gap:4px}.ai-thinking-dots span{width:6px;height:6px;border-radius:50%;background:var(--color-brand);animation:pulse 1.2s ease-in-out infinite}.ai-thinking-dots span:nth-child(2){animation-delay:.2s}.ai-thinking-dots span:nth-child(3){animation-delay:.4s}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eef2ff,#f8fafc,#f0fdf4);padding:24px}[data-theme=dark] .auth-page{background:linear-gradient(135deg,#1e1b4b,#0f172a,#052e16)}.auth-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:40px;width:100%;max-width:440px;box-shadow:var(--shadow-lg)}.auth-card-wide{max-width:580px}.auth-brand{text-align:center;margin-bottom:24px}.auth-logo{width:56px;height:56px;background:var(--color-brand);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:#fff;font-size:28px;margin:0 auto 12px}.auth-brand h1{font-size:22px;font-weight:800;color:var(--text-primary)}.auth-brand p{color:var(--text-secondary);font-size:14px;margin-top:4px}.auth-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5;border-radius:var(--radius-md);padding:10px 14px;font-size:14px;margin-bottom:16px}[data-theme=dark] .auth-error{background:#7f1d1d;color:#fca5a5;border-color:#991b1b}.btn-google{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:11px 20px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition);font-family:var(--font-sans)}.btn-google:hover{background:var(--bg-hover);border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.btn-google svg{font-size:18px;color:#ea4335}.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--text-muted);font-size:13px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:0}@media (max-width: 560px){.auth-form-grid{grid-template-columns:1fr}}.input-icon-wrapper{position:relative}.input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:16px;pointer-events:none}.input-with-icon{padding-left:38px}.password-input{position:relative}.password-input .form-input{padding-right:42px}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:16px;background:none;border:none;cursor:pointer}.password-toggle:hover{color:var(--text-primary)}.strength-bar{display:flex;align-items:center;gap:8px;margin-top:8px}.strength-segments{display:flex;gap:4px;flex:1}.strength-segment{height:4px;flex:1;border-radius:2px;transition:background .3s ease;background:var(--border)}.auth-forgot{text-align:right;font-size:13px;margin-top:-6px}.auth-submit{width:100%;justify-content:center;padding:12px;font-size:15px}.auth-terms{font-size:12px;color:var(--text-muted);line-height:1.5;margin-top:-4px}.auth-terms a{color:var(--color-brand)}.auth-switch{text-align:center;font-size:13px;color:var(--text-secondary);margin-top:20px}.sent-info{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px;font-size:14px;color:var(--text-secondary);line-height:1.7;text-align:center}.tfa-code-input{width:100%;text-align:center;font-size:26px;font-weight:700;letter-spacing:.5em;padding-left:.5em;font-family:var(--font-mono, monospace)}.tfa-link-btn{background:none;border:none;color:var(--color-brand);font-size:13px;font-weight:600;cursor:pointer;padding:4px}.tfa-link-btn:hover{text-decoration:underline}.tfa-back{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--text-muted)}.tfa-back:hover{color:var(--color-brand);text-decoration:none}html{scroll-behavior:smooth}.landing{--lp-brand: #6366f1;--lp-brand-2: #8b5cf6;--lp-brand-3: #4338ca;--lp-ink: #0f172a;--lp-ink-soft: #475569;--lp-ink-mute: #64748b;--lp-bg: #ffffff;--lp-bg-alt: #f6f7fb;--lp-border: #e6e8ef;--lp-radius: 16px;--lp-shadow: 0 1px 3px rgba(15, 23, 42, .06), 0 12px 32px -12px rgba(15, 23, 42, .12);--lp-shadow-hover: 0 2px 6px rgba(15, 23, 42, .08), 0 24px 48px -16px rgba(79, 70, 229, .28);font-family:var(--font-sans, "Inter", system-ui, sans-serif);color:var(--lp-ink);background:var(--lp-bg);line-height:1.6;overflow-x:hidden}.landing *,.landing *:before,.landing *:after{box-sizing:border-box}.landing a,.landing a:hover{text-decoration:none}.landing h1,.landing h2,.landing h3{line-height:1.15;letter-spacing:-.02em;margin:0}.landing p{margin:0}.lp-container{max-width:1140px;margin:0 auto;padding:0 24px;width:100%}.landing.reveal-ready [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s cubic-bezier(.22,1,.36,1)}.landing.reveal-ready [data-reveal].revealed{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.landing.reveal-ready [data-reveal]{opacity:1!important;transform:none!important;transition:none}}.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid transparent;white-space:nowrap;transition:transform .15s ease,box-shadow .2s ease,background .2s ease,color .2s ease}.lp-btn svg{font-size:1.15em}.lp-btn-lg{padding:14px 26px;font-size:15px;border-radius:12px}.lp-btn-primary{background:linear-gradient(135deg,var(--lp-brand-2),var(--lp-brand));color:#fff;box-shadow:0 10px 24px -10px #6366f1b3}.lp-btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 30px -10px #6366f1bf}.lp-btn-ghost{color:var(--lp-ink-soft)}.lp-btn-ghost:hover{color:var(--lp-ink);background:var(--lp-bg-alt)}.lp-btn-outline{border-color:var(--lp-border);color:var(--lp-brand);background:#fff}.lp-btn-outline:hover{border-color:var(--lp-brand);transform:translateY(-2px)}.lp-btn-glass{background:#ffffff1f;color:#fff;border-color:#ffffff4d;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.lp-btn-glass:hover{background:#fff3;transform:translateY(-2px)}.lp-btn-onbrand{background:#fff;color:var(--lp-brand-3)}.lp-btn-onbrand:hover{transform:translateY(-2px);box-shadow:0 18px 40px -12px #00000059}.lp-nav{position:sticky;top:0;z-index:50;transition:background .25s ease,box-shadow .25s ease,border-color .25s ease;border-bottom:1px solid transparent}.lp-nav.scrolled{background:#ffffffd9;-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-bottom-color:var(--lp-border);box-shadow:0 4px 20px -12px #0f172a33}.lp-nav-inner{display:flex;align-items:center;justify-content:space-between;height:68px;gap:24px}.lp-nav-brand{background:none;border:none;padding:0;cursor:pointer}.lp-logo{display:inline-flex;align-items:center;gap:9px;font-size:19px;font-weight:800;letter-spacing:-.03em;color:var(--lp-ink)}.lp-logo b{font-weight:800;color:var(--lp-brand)}.lp-logo.light{color:#fff}.lp-logo.light b{color:#c7d2fe}.lp-nav-links{display:flex;align-items:center;gap:4px}.lp-nav-links button{background:none;border:none;cursor:pointer;padding:8px 14px;font-size:14px;font-weight:500;color:var(--lp-ink-soft);border-radius:8px;transition:color .15s ease,background .15s ease}.lp-nav-links button:hover{color:var(--lp-ink);background:var(--lp-bg-alt)}.lp-nav.scrolled .lp-nav-links button:hover{background:#6366f114}.lp-nav-cta{display:flex;align-items:center;gap:10px}.lp-nav-toggle{display:none;font-size:26px;color:var(--lp-ink);background:none;border:none;cursor:pointer}.lp-nav-mobile{display:none;flex-direction:column;gap:4px;padding:12px 24px 20px;background:#fff;border-bottom:1px solid var(--lp-border);box-shadow:0 20px 40px -20px #0f172a40}.lp-nav-mobile button,.lp-nav-mobile>a{text-align:left;background:none;border:none;cursor:pointer;padding:12px 8px;font-size:15px;font-weight:500;color:var(--lp-ink-soft);border-radius:8px}.lp-nav-mobile button:hover,.lp-nav-mobile>a:hover{background:var(--lp-bg-alt);color:var(--lp-ink)}.lp-nav-mobile .lp-btn-primary{margin-top:6px;color:#fff}.lp-hero{position:relative;background:linear-gradient(165deg,#3b0764,#4338ca 52%,#6366f1);color:#fff;padding:140px 0 130px;margin-top:-68px;overflow:hidden}.lp-hero-glow{position:absolute;top:-20%;right:-10%;width:620px;height:620px;background:radial-gradient(circle,rgba(139,92,246,.55),transparent 62%);filter:blur(20px);pointer-events:none}.lp-hero-inner{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.lp-hero-copy h1{font-size:clamp(2.4rem,5vw,3.6rem);font-weight:800;margin:18px 0 16px}.lp-hero-copy p{font-size:clamp(1rem,1.4vw,1.18rem);color:#ffffffd1;max-width:40ch}.lp-pill{display:inline-flex;align-items:center;gap:7px;padding:6px 14px;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,255,255,.22);font-size:12.5px;font-weight:600;letter-spacing:.01em}.lp-hero-actions{display:flex;gap:14px;margin:30px 0 16px;flex-wrap:wrap}.lp-hero-note{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#ffffffb3}.lp-hero-visual{position:relative}.lp-mockup{width:100%;height:auto;display:block}.lp-stats{position:relative;margin-top:64px;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--lp-border);border:1px solid var(--lp-border);border-radius:var(--lp-radius);overflow:hidden;box-shadow:var(--lp-shadow)}.lp-stat{background:#fff;color:var(--lp-ink);padding:22px 16px;text-align:center;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center}.lp-stat-value{font-weight:800;font-size:clamp(1.15rem,2vw,1.4rem);letter-spacing:-.02em;line-height:1.15}.lp-stat-sub{font-size:.78rem;font-weight:500;color:var(--lp-ink-mute)}.lp-section{padding:96px 0}.lp-section-alt{background:var(--lp-bg-alt)}.lp-head{text-align:center;max-width:640px;margin:0 auto 52px}.lp-head h2{font-size:clamp(1.9rem,3.4vw,2.6rem);font-weight:800}.lp-head p{margin-top:12px;font-size:1.05rem;color:var(--lp-ink-mute)}.lp-grid{display:grid;gap:22px}.lp-grid-3{grid-template-columns:repeat(3,1fr)}.lp-grid-4{grid-template-columns:repeat(4,1fr)}.lp-card{background:#fff;border:1px solid var(--lp-border);border-radius:var(--lp-radius);padding:28px;box-shadow:var(--lp-shadow);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.lp-card:hover{transform:translateY(-4px);box-shadow:var(--lp-shadow-hover);border-color:#d9d5ff}.lp-feature-icon,.lp-usecase-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;font-size:22px;color:#fff;background:linear-gradient(135deg,var(--lp-brand-2),var(--lp-brand));margin-bottom:16px}.lp-feature h3,.lp-usecase h3{font-size:1.12rem;font-weight:700;margin-bottom:8px}.lp-feature p,.lp-usecase p{color:var(--lp-ink-mute);font-size:.95rem}.lp-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;counter-reset:step}.lp-step{text-align:center;padding:0 12px;position:relative}.lp-step-num{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;font-size:20px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--lp-brand-2),var(--lp-brand));box-shadow:0 12px 24px -8px #6366f199;margin-bottom:18px}.lp-step h3{font-size:1.12rem;font-weight:700;margin-bottom:8px}.lp-step p{color:var(--lp-ink-mute);font-size:.95rem}.lp-step:not(:last-child):after{content:"";position:absolute;top:26px;left:calc(50% + 40px);right:calc(-50% + 40px);height:2px;background:repeating-linear-gradient(90deg,var(--lp-border) 0 8px,transparent 8px 16px)}.lp-pricing{align-items:stretch}.lp-plan{display:flex;flex-direction:column;text-align:left;position:relative}.lp-plan h3{font-size:1.15rem;font-weight:700}.lp-plan.popular{border-color:var(--lp-brand);box-shadow:0 24px 50px -18px #6366f166;transform:translateY(-8px)}.lp-plan.popular:hover{transform:translateY(-12px)}.lp-plan-tag{position:absolute;top:-13px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,var(--lp-brand-2),var(--lp-brand));color:#fff;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:5px 14px;border-radius:999px;white-space:nowrap}.lp-plan-price{font-size:2.5rem;font-weight:800;margin:14px 0 4px;display:flex;align-items:baseline;gap:2px}.lp-plan-currency{font-size:1.4rem;font-weight:700}.lp-plan-per{font-size:.95rem;font-weight:500;color:var(--lp-ink-mute)}.lp-plan ul{list-style:none;padding:0;margin:22px 0;display:flex;flex-direction:column;gap:11px;flex:1}.lp-plan li{display:flex;align-items:flex-start;gap:9px;font-size:.93rem;color:var(--lp-ink-soft)}.lp-plan li svg{color:var(--lp-brand);font-size:1.1em;flex-shrink:0;margin-top:2px}.lp-plan .lp-btn{width:100%}.lp-plan.enterprise{background:linear-gradient(135deg,#0a0a0a,#1a1a1a);border:1px solid #ffd70055;box-shadow:0 0 0 1px #ffd70014,0 20px 40px -18px #00000080}.lp-plan.enterprise h3,.lp-plan.enterprise .lp-plan-custom{color:#fff}.lp-plan.enterprise li{color:#d4d4d4}.lp-plan.enterprise li svg{color:gold}.lp-plan-tag.enterprise-tag{position:static;transform:none;display:inline-flex;align-items:center;gap:6px;background:gold;color:#1a1a1a;margin-bottom:10px}.lp-plan-custom{font-size:1.6rem;font-weight:800}.lp-plan-note{font-size:.85rem;color:#a3a3a3;margin:2px 0 4px}.lp-btn-enterprise{background:gold;color:#1a1a1a}.lp-btn-enterprise:hover{background:#ffe033;transform:translateY(-2px)}.lp-quote{display:flex;flex-direction:column;gap:14px}.lp-stars{display:flex;gap:3px;color:#f59e0b;font-size:15px}.lp-quote-text{font-size:1rem;color:var(--lp-ink);line-height:1.7;flex:1}.lp-quote-author{display:flex;align-items:center;gap:12px}.lp-avatar{width:42px;height:42px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--lp-brand-2),var(--lp-brand))}.lp-quote-author strong{display:block;font-size:.92rem}.lp-quote-author span{font-size:.82rem;color:var(--lp-ink-mute)}.lp-cta{background:linear-gradient(135deg,var(--lp-brand-3),var(--lp-brand-2));color:#fff;padding:88px 0;text-align:center}.lp-cta-inner{display:flex;flex-direction:column;align-items:center;gap:14px}.lp-cta h2{font-size:clamp(1.9rem,3.4vw,2.6rem);font-weight:800}.lp-cta p{font-size:1.1rem;color:#ffffffd9}.lp-cta .lp-btn{margin-top:12px}.lp-cta-note{font-size:13px;color:#ffffffb8}.lp-footer{background:#0b1020;color:#cbd5e1;padding:60px 0 30px}.lp-footer-inner{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}.lp-footer-brand{max-width:320px}.lp-footer-brand p{margin:14px 0 18px;font-size:.9rem;color:#94a3b8}.lp-socials{display:flex;gap:10px}.lp-socials a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9px;font-size:18px;background:#ffffff0f;color:#cbd5e1;transition:background .15s ease,color .15s ease}.lp-socials a:hover{background:var(--lp-brand);color:#fff}.lp-footer-links{display:grid;grid-template-columns:repeat(3,auto);gap:12px 40px;align-content:start}.lp-footer-links button,.lp-footer-links a{background:none;border:none;cursor:pointer;text-align:left;font-size:.9rem;color:#94a3b8;transition:color .15s ease}.lp-footer-links button:hover,.lp-footer-links a:hover{color:#fff}.lp-footer-bottom{margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);font-size:.82rem;color:#64748b}.lp-faq-wrap{max-width:780px}.lp-faq{display:flex;flex-direction:column;gap:12px}.lp-faq-item{background:#fff;border:1px solid var(--lp-border);border-radius:14px;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.lp-faq-item.open{border-color:#c7d2fe;box-shadow:var(--lp-shadow)}.lp-faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;background:none;border:none;cursor:pointer;text-align:left;font-size:.98rem;font-weight:650;color:var(--lp-ink);font-family:inherit}.lp-faq-chev{font-size:1.4em;color:var(--lp-brand);flex-shrink:0;transition:transform .3s ease}.lp-faq-item.open .lp-faq-chev{transform:rotate(180deg)}.lp-faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .32s cubic-bezier(.22,1,.36,1)}.lp-faq-item.open .lp-faq-a{grid-template-rows:1fr}.lp-faq-a>div{overflow:hidden;min-height:0}.lp-faq-a p{padding:0 20px 20px;margin:0;font-size:.94rem;line-height:1.65;color:var(--lp-ink-mute)}.lp-wa-fab{position:fixed;bottom:24px;right:24px;z-index:9999;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#25d366;color:#fff;font-size:30px;box-shadow:0 8px 24px -4px #25d3668c;transition:transform .18s ease,box-shadow .2s ease}.lp-wa-fab:hover{transform:scale(1.08);box-shadow:0 12px 30px -4px #25d366b3}.lp-wa-fab:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid #25d366;animation:lp-wa-pulse 2s ease-out infinite}@keyframes lp-wa-pulse{0%{transform:scale(1);opacity:.7}70%{transform:scale(1.9);opacity:0}to{transform:scale(1.9);opacity:0}}.lp-wa-tip{position:absolute;right:calc(100% + 14px);top:50%;transform:translateY(-50%) translate(6px);white-space:nowrap;background:var(--lp-ink);color:#fff;font-size:12.5px;font-weight:600;padding:8px 12px;border-radius:9px;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}.lp-wa-tip:after{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-left-color:var(--lp-ink)}.lp-wa-fab:hover .lp-wa-tip{opacity:1;transform:translateY(-50%) translate(0)}@media (prefers-reduced-motion: reduce){.lp-wa-fab:after{animation:none}}@media (max-width: 980px){.lp-nav-links,.lp-nav-cta{display:none}.lp-nav-toggle{display:inline-flex}.lp-nav-mobile{display:flex}.lp-hero-inner{grid-template-columns:1fr;gap:40px;text-align:center}.lp-hero-copy p{max-width:none}.lp-hero-actions,.lp-pill{justify-content:center}.lp-hero-visual{max-width:560px;margin:0 auto}.lp-grid-4{grid-template-columns:repeat(2,1fr)}.lp-step:not(:last-child):after{display:none}}@media (max-width: 720px){.lp-hero{padding-bottom:90px}.lp-section{padding:68px 0}.lp-wa-fab{width:48px;height:48px;font-size:26px;bottom:18px;right:18px}.lp-wa-tip{display:none}.lp-faq-q{font-size:.92rem;padding:16px}.lp-cta{padding:64px 0}.lp-grid-3,.lp-grid-4,.lp-steps{grid-template-columns:1fr}.lp-stats{grid-template-columns:repeat(2,1fr)}.lp-plan.popular,.lp-plan.popular:hover{transform:none}.lp-footer-inner{flex-direction:column;gap:32px}.lp-footer-links{grid-template-columns:repeat(2,1fr)}}@media (max-width: 420px){.lp-stats{grid-template-columns:1fr}.lp-hero-actions{flex-direction:column}.lp-hero-actions .lp-btn{width:100%}}.lp-seo-inner{max-width:860px;margin:0 auto;text-align:center}.lp-seo-inner h2{margin-bottom:18px}.lp-seo-inner p{color:var(--lp-text-soft, #4b5563);line-height:1.75;margin:0 auto 16px;font-size:1.02rem}.lp-seo-tags{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.lp-seo-tags li{font-size:.85rem;font-weight:600;color:var(--lp-brand, #4f46e5);background:#6366f117;border:1px solid rgba(99,102,241,.18);border-radius:999px;padding:6px 14px}.lp-contact-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.lp-contact-card p{margin-bottom:20px}.lp-contact-card .lp-btn{margin-top:auto;align-self:stretch;justify-content:center}.lp-contact-copy{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:0;background:none;border:none;font-size:.82rem;font-weight:600;color:var(--lp-ink-mute);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.lp-contact-copy:hover{color:var(--lp-brand)}.lp-contact-copy svg{font-size:1rem;flex-shrink:0}.lp-security-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px;margin-top:28px;text-decoration:none}.lp-security-badge{display:inline-flex;align-items:center;gap:7px;font-size:.82rem;font-weight:600;color:var(--lp-ink-mute);white-space:nowrap}.lp-security-badge svg{font-size:1rem;color:var(--lp-brand)}.lp-security-badges:hover .lp-security-badge{color:var(--lp-ink)}@media (max-width: 640px){.lp-security-badges{gap:8px 14px}.lp-security-badge{font-size:.76rem}}.lp-contact-info{margin-top:40px;padding:24px 28px;background:var(--lp-card, #fff);border:1px solid var(--lp-border);border-radius:var(--lp-radius);display:flex;flex-wrap:wrap;justify-content:center;gap:14px 32px;font-size:.92rem;color:var(--lp-ink)}.lp-contact-info>div{display:flex;align-items:center;gap:8px;white-space:nowrap}.lp-contact-info svg{color:var(--lp-brand);font-size:1.05rem;flex-shrink:0}.lp-contact-info a{color:var(--lp-brand);font-weight:600}.lp-copy-icon{display:inline-flex;align-items:center;justify-content:center;padding:3px;background:none;border:none;color:var(--lp-ink-mute);cursor:pointer;border-radius:6px;font-size:.95rem;line-height:1}.lp-copy-icon:hover{color:var(--lp-brand);background:#6366f11a}@media (max-width: 640px){.lp-contact-info{justify-content:flex-start;padding:20px}}.legal-page{--lg-brand: #6366f1;--lg-ink: #1e293b;--lg-ink-soft: #475569;--lg-ink-mute: #64748b;--lg-bg: #ffffff;--lg-bg-alt: #f6f7fb;--lg-border: #e6e8ef;min-height:100vh;background:var(--lg-bg);color:var(--lg-ink);font-family:var(--font-sans, "Inter", system-ui, sans-serif);line-height:1.7}.legal-page *,.legal-page *:before,.legal-page *:after{box-sizing:border-box}.legal-page a{color:var(--lg-brand);text-decoration:none}.legal-page a:hover{text-decoration:underline}.legal-nav{position:sticky;top:0;z-index:10;background:#ffffffe6;-webkit-backdrop-filter:saturate(180%) blur(10px);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--lg-border)}.legal-nav-inner{max-width:800px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.legal-logo{display:inline-flex;align-items:center;gap:8px;font-size:17px;font-weight:800;letter-spacing:-.03em;color:var(--lg-ink)}.legal-logo b{color:var(--lg-brand)}.legal-logo svg{width:26px;height:26px}.legal-back{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--lg-ink-soft)!important}.legal-back:hover{color:var(--lg-brand)!important;text-decoration:none!important}.legal-container{max-width:800px;margin:0 auto;padding:56px 24px 80px}.legal-title{font-size:clamp(1.9rem,4vw,2.5rem);font-weight:800;letter-spacing:-.02em;margin:0 0 8px}.legal-meta{font-size:.9rem;color:var(--lg-ink-mute);margin:0 0 40px}.legal-intro{font-size:1.05rem;color:var(--lg-ink-soft);margin:0 0 8px}.legal-section{margin-top:40px}.legal-section h2{font-size:1.3rem;font-weight:700;letter-spacing:-.01em;margin:0 0 12px;padding-top:8px}.legal-section p{margin:0 0 14px;color:var(--lg-ink-soft)}.legal-section p:last-child{margin-bottom:0}.legal-section ul{margin:0 0 14px;padding-left:22px;color:var(--lg-ink-soft)}.legal-section li{margin-bottom:8px}.legal-section strong{color:var(--lg-ink);font-weight:650}.legal-footer{border-top:1px solid var(--lg-border);background:var(--lg-bg-alt)}.legal-footer-inner{max-width:800px;margin:0 auto;padding:28px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.88rem;color:var(--lg-ink-mute)}.legal-footer-links{display:flex;gap:18px}@media (max-width: 560px){.legal-container{padding:40px 18px 64px}.legal-nav-inner{padding:12px 18px}.legal-back span{display:none}.legal-section{margin-top:32px}.legal-section h2{font-size:1.18rem}}.pt{--pt-brand: #6366f1;--pt-brand-2: #8b5cf6;--pt-ink: #1e293b;--pt-ink-soft: #475569;--pt-ink-mute: #64748b;--pt-bg: #f5f6fb;--pt-card: #ffffff;--pt-border: #e6e8ef;min-height:100vh;background:var(--pt-bg);color:var(--pt-ink);font-family:var(--font-sans, "Inter", system-ui, sans-serif);line-height:1.6}.pt *,.pt *:before,.pt *:after{box-sizing:border-box}.pt a{color:var(--pt-brand);text-decoration:none}.pt-logo{display:inline-flex;align-items:center;gap:8px;font-size:18px;font-weight:800;letter-spacing:-.03em;color:var(--pt-ink)}.pt-logo b{color:var(--pt-brand)}.pt-logo svg{width:26px;height:26px}.pt-login{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px;gap:28px}.pt-login .pt-logo{font-size:22px}.pt-login .pt-logo svg{width:32px;height:32px}.pt-card{width:100%;max-width:420px;background:var(--pt-card);border:1px solid var(--pt-border);border-radius:16px;padding:32px 28px;box-shadow:0 12px 40px -16px #0f172a2e}.pt-card h1{font-size:22px;font-weight:800;margin:0 0 6px;letter-spacing:-.02em}.pt-card .pt-sub{font-size:14px;color:var(--pt-ink-mute);margin:0 0 22px}.pt-field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.pt-field label{font-size:13px;font-weight:600;color:var(--pt-ink-soft)}.pt-input{width:100%;padding:11px 13px;font-size:14px;border:1px solid var(--pt-border);border-radius:10px;background:#fff;color:var(--pt-ink);transition:border-color .15s ease,box-shadow .15s ease}.pt-input:focus{outline:none;border-color:var(--pt-brand);box-shadow:0 0 0 3px #6366f11f}.pt-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border:none;border-radius:10px;cursor:pointer;font-size:14px;font-weight:700;font-family:inherit;background:linear-gradient(135deg,var(--pt-brand-2),var(--pt-brand));color:#fff;transition:transform .15s ease,box-shadow .2s ease,opacity .2s ease}.pt-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 22px -8px #6366f199}.pt-btn:disabled{opacity:.6;cursor:default}.pt-btn-ghost{background:none;color:var(--pt-ink-soft);border:1px solid var(--pt-border)}.pt-btn-ghost:hover:not(:disabled){background:var(--pt-bg);box-shadow:none}.pt-error{margin-top:14px;font-size:13px;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:9px;padding:10px 12px}.pt-success{text-align:center;padding:8px 0 4px}.pt-success-icon{width:56px;height:56px;border-radius:50%;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;background:#dcfce7;color:#16a34a;font-size:30px}.pt-success h2{font-size:19px;font-weight:800;margin:0 0 6px}.pt-success p{font-size:14px;color:var(--pt-ink-mute);margin:0}.pt-success .pt-hint{margin-top:4px;font-size:12.5px}.pt-header{background:#fff;border-bottom:1px solid var(--pt-border);position:sticky;top:0;z-index:5}.pt-header-inner{max-width:900px;margin:0 auto;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.pt-header-right{display:flex;align-items:center;gap:14px;min-width:0}.pt-email{font-size:13px;color:var(--pt-ink-mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.pt-logout{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:600;color:var(--pt-ink-soft);background:none;border:1px solid var(--pt-border);border-radius:8px;padding:6px 12px;cursor:pointer}.pt-logout:hover{background:var(--pt-bg);color:var(--pt-ink)}.pt-biz-brand{display:inline-flex;align-items:center;gap:10px;min-width:0}.pt-biz-logo{width:34px;height:34px;border-radius:8px;object-fit:cover;flex-shrink:0}.pt-biz-fallback-icon{font-size:22px;color:var(--pt-brand);flex-shrink:0}.pt-biz-name{font-size:16px;font-weight:800;letter-spacing:-.02em;color:var(--pt-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pt-main{max-width:900px;margin:0 auto;padding:28px 20px 64px}.pt-greeting{margin:0 0 20px}.pt-greeting h1{font-size:22px;font-weight:800;letter-spacing:-.02em;margin:0}.pt-greeting p{font-size:14px;color:var(--pt-ink-mute);margin:4px 0 0}.pt-biz-info{background:var(--pt-card);border:1px solid var(--pt-border);border-radius:14px;padding:16px 18px;margin:0 0 20px;display:flex;flex-direction:column;gap:14px}.pt-biz-contact{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--pt-ink-soft)}.pt-biz-contact span{display:inline-flex;align-items:center;gap:6px}.pt-bank-box{background:#f0f4ff;border:1px solid #dbe3ff;border-radius:10px;padding:12px 16px}.pt-bank-title{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--pt-brand);margin-bottom:8px}.pt-bank-grid{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:13px;color:var(--pt-ink)}.pt-bank-grid span{color:var(--pt-ink-mute)}.pt-footer{max-width:900px;margin:0 auto;padding:0 20px 40px;display:flex;align-items:center;gap:8px;justify-content:center;font-size:12px;color:var(--pt-ink-mute)}.pt-footer .pt-logo{font-size:14px}.pt-tabs{display:flex;gap:4px;background:#edeef4;border-radius:12px;padding:4px;margin-bottom:20px}.pt-tab{flex:1;padding:9px 12px;border:none;border-radius:9px;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--pt-ink-mute);background:none;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .15s ease,color .15s ease}.pt-tab.active{background:#fff;color:var(--pt-ink);box-shadow:0 1px 3px #0f172a14}.pt-tab-count{font-size:11px;font-weight:700;background:var(--pt-brand);color:#fff;border-radius:999px;padding:1px 7px}.pt-panel{background:#fff;border:1px solid var(--pt-border);border-radius:14px;overflow:hidden}.pt-table-wrap{overflow-x:auto}.pt-table{width:100%;border-collapse:collapse;font-size:13.5px}.pt-table th{text-align:left;padding:12px 16px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--pt-ink-mute);background:#fafbfd;border-bottom:1px solid var(--pt-border);white-space:nowrap}.pt-table td{padding:13px 16px;border-bottom:1px solid #f1f2f7;color:var(--pt-ink);vertical-align:middle}.pt-table tr:last-child td{border-bottom:none}.pt-table tbody tr:hover{background:#fafbff}.pt-num{font-weight:700}.pt-badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:700;text-transform:capitalize;background:#eef2ff;color:#4338ca}.pt-badge.paid,.pt-badge.delivered,.pt-badge.completed,.pt-badge.confirmed{background:#dcfce7;color:#166534}.pt-badge.overdue,.pt-badge.cancelled,.pt-badge.no_show,.pt-badge.refunded{background:#fee2e2;color:#991b1b}.pt-badge.pending,.pt-badge.partial,.pt-badge.processing,.pt-badge.rescheduled{background:#fef3c7;color:#92400e}.pt-dl{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;color:var(--pt-brand);background:#eef2ff;border:none;border-radius:8px;padding:6px 11px;cursor:pointer;font-family:inherit}.pt-dl:hover{background:#e0e7ff}.pt-appts{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;padding:16px}.pt-appt{border:1px solid var(--pt-border);border-radius:12px;padding:16px;background:#fff;display:flex;flex-direction:column;gap:6px}.pt-appt-title{font-size:14.5px;font-weight:700}.pt-appt-when{font-size:13px;color:var(--pt-ink-soft);display:flex;align-items:center;gap:6px}.pt-appt-meta{font-size:12.5px;color:var(--pt-ink-mute);display:flex;align-items:center;gap:6px}.pt-appt .pt-badge{align-self:flex-start;margin-top:4px}.pt-empty{text-align:center;padding:56px 24px;color:var(--pt-ink-mute)}.pt-empty svg{font-size:34px;opacity:.4;margin-bottom:10px}.pt-empty p{margin:0;font-size:14px}.pt-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;color:var(--pt-ink-mute);font-size:15px;gap:10px}.pt-spin{animation:pt-spin .8s linear infinite}@keyframes pt-spin{to{transform:rotate(360deg)}}@media (max-width: 560px){.pt-email{max-width:130px}.pt-main{padding:20px 14px 56px}.pt-tab span:not(.pt-tab-count){display:none}.pt-tab{font-size:0}.pt-tab svg{font-size:17px}.pt-tab-count{font-size:10px}.pt-table th,.pt-table td{padding:10px 12px}.pt-appts{grid-template-columns:1fr;padding:12px}}.notfound-page{min-height:60vh;display:flex;align-items:center;justify-content:center}.notfound-content{text-align:center}.notfound-number{font-size:120px;font-weight:900;color:var(--color-brand);opacity:.15;line-height:1;margin-bottom:16px}.notfound-content h1{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.notfound-content p{font-size:15px;color:var(--text-muted);margin-bottom:28px}.notfound-actions{display:flex;gap:12px;justify-content:center}
