.reminders{border-radius:var(--radius);background:var(--primary-soft);box-shadow:var(--shadow-sm);border:1px solid #4f46e51f;align-items:center;gap:8px;margin-bottom:20px;padding:4px 6px 4px 14px;display:flex}@keyframes reminders-pulse{0%,to{box-shadow:var(--shadow-sm)}50%{box-shadow:0 0 0 4px #f973161f}}.reminders--soon{background:var(--clay-soft);border-color:#fed7aa;animation:2.4s ease-in-out infinite reminders-pulse}@media (prefers-reduced-motion:reduce){.reminders--soon{animation:none}}.reminders__main{cursor:pointer;font:inherit;text-align:start;background:0 0;border:none;flex:1;align-items:center;gap:10px;min-width:0;padding:8px;display:flex}.reminders__bell{flex-shrink:0;font-size:1.2rem;line-height:1}.reminders__text{flex-direction:column;gap:2px;min-width:0;display:flex}.reminders__text strong{color:var(--ink);font-size:.92rem}.reminders__meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;white-space:nowrap;font-size:.75rem;font-weight:500;overflow:hidden}.reminders--soon .reminders__meta{color:var(--clay)}.reminders__countdown{font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--ink);font-size:.875rem;font-weight:700}.reminders--soon .reminders__countdown{color:var(--clay)}.reminders__close{width:30px;height:30px;color:var(--muted);cursor:pointer;background:#ffffff80;border:none;border-radius:50%;flex-shrink:0;font-size:.8rem}.reminders__close:hover{color:var(--ink);background:#ffffffd9}.mobile-nav,.fab{display:none}@media (width<=768px){.mobile-nav{z-index:30;background:var(--surface);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom,0);inset-inline:0;display:grid;position:fixed;bottom:0;box-shadow:0 -4px 16px #0f172a0f}.mobile-nav__item{color:var(--muted);flex-direction:column;align-items:center;gap:2px;padding:8px 2px 7px;font-size:.5625rem;font-weight:600;text-decoration:none;transition:color .15s;display:flex}.mobile-nav__item span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.mobile-nav__item--on svg{transform:translateY(-1px)}.fab{inset-inline-end:16px;bottom:calc(64px + env(safe-area-inset-bottom,0));z-index:31;background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:50%;place-items:center;width:52px;height:52px;transition:all .15s;display:grid;position:fixed;box-shadow:0 4px 16px #4f46e566}.fab:active{transform:scale(.94)}.mobile-nav{inset-inline:10px;bottom:calc(8px + env(safe-area-inset-bottom,0));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border:1px solid #cdd5e1c7;border-radius:20px;min-height:66px;padding:5px 6px;overflow:hidden;box-shadow:0 16px 38px #0f172a2e,0 2px 8px #0f172a0f}.mobile-nav__item{color:#7a8496;min-width:0;min-height:54px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:14px;justify-content:center;gap:3px;padding:5px 2px 4px;font-size:.62rem;font-weight:650;position:relative}.mobile-nav__item svg{border-radius:10px;width:31px;height:27px;padding:4px 6px;transition:color .16s,background .16s,transform .16s}.mobile-nav__item--on{color:var(--primary)}.mobile-nav__item--on svg{color:var(--primary);background:var(--primary-soft);transform:translateY(-1px)}.fab{inset-inline-end:18px;bottom:calc(88px + env(safe-area-inset-bottom,0));background:linear-gradient(135deg,#5b5ce2,#7c4fe0);border:1px solid #ffffff38;width:54px;height:54px;box-shadow:0 13px 28px #5b5ce261}.mobile-more{z-index:42;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.mobile-more__backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a101c6b;border:0;width:100%;height:100%;position:absolute;inset:0}.mobile-more__sheet{z-index:1;width:calc(100% - 20px);max-width:520px;margin-bottom:calc(84px + env(safe-area-inset-bottom,0));border:1px solid var(--border);background:#fff;border-radius:24px;padding:10px 16px 16px;animation:.2s ease-out both mobile-sheet-in;position:relative;box-shadow:0 24px 70px #0f172a47}.mobile-more__handle{background:#d6dbe5;border-radius:999px;width:42px;height:4px;margin:0 auto 12px}.mobile-more__profile{border-bottom:1px solid var(--border);flex-direction:column;padding:4px 4px 14px;display:flex}.mobile-more__profile strong{font-size:.95rem}.mobile-more__profile span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.mobile-more__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:14px 0;display:grid}.mobile-more__link{min-height:52px;color:var(--ink);background:var(--bg-tint);border:1px solid #0000;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;font-size:.82rem;font-weight:650;text-decoration:none;display:flex}.mobile-more__link:hover,.mobile-more__link.active{color:var(--primary);background:var(--primary-soft);border-color:#dcdafe}.mobile-more__logout{width:100%;min-height:44px;color:var(--danger);background:var(--danger-soft);font:inherit;border:0;border-radius:13px;justify-content:center;align-items:center;gap:8px;font-size:.82rem;font-weight:700;display:flex}}@keyframes mobile-sheet-in{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:none}}:root{--bg:#f5f7fb;--bg-tint:#eef2f8;--surface:#fff;--surface-2:#f8fafc;--surface-glass:#ffffffb8;--ink:#111827;--text:#111827;--muted:#667085;--border:#e4e8f0;--border-strong:#cdd5e1;--primary:#5b5ce2;--primary-hover:#4b4cc8;--primary-soft:#eeeefe;--primary-tint:#f7f7ff;--clay:#f27b51;--clay-soft:#fff7ed;--gold:#eab308;--danger:#ef4444;--danger-soft:#fef2f2;--success:#22c55e;--success-soft:#f0fdf4;--surface-color:var(--surface);--border-color:var(--border);--primary-color:var(--primary);--muted-color:var(--muted);--danger-color:var(--danger);--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--duration-fast:.12s;--duration-normal:.16s;--duration-slow:.24s;--ease-default:cubic-bezier(.25, .1, .25, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--radius:16px;--radius-sm:11px;--radius-lg:22px;--ring:0 0 0 4px #5b5ce224;--shadow-sm:0 1px 3px #1018280a, 0 1px 2px #10182808;--shadow:0 10px 28px -10px #10182829, 0 2px 6px #1018280a;--shadow-lg:0 28px 70px -22px #10182840, 0 8px 22px #1018280f;--shadow-glow:0 12px 32px #5b5ce22e;--badge-available-bg:#dcfce7;--badge-available-text:#15803d;--badge-rented-bg:#e0e7ff;--badge-rented-text:#4338ca;--badge-draft-bg:#f1f5f9;--badge-draft-text:#475569;--badge-new-bg:#dbeafe;--badge-new-text:#1d4ed8;--badge-contacted-bg:#fef3c7;--badge-contacted-text:#b45309;--badge-viewed-bg:#ede9fe;--badge-viewed-text:#6d28d9;--badge-offer-bg:#dcfce7;--badge-offer-text:#15803d;--badge-contract-bg:#ccfbf1;--badge-contract-text:#0f766e;--badge-declined-bg:#fee2e2;--badge-declined-text:#dc2626;--badge-rejected-bg:#f1f5f9;--badge-rejected-text:#94a3b8;--badge-risk-low-bg:#dcfce7;--badge-risk-low-text:#15803d;--badge-risk-medium-bg:#fef3c7;--badge-risk-medium-text:#b45309;--badge-risk-high-bg:#fee2e2;--badge-risk-high-text:#dc2626;--font-display:"Heebo", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body:"Heebo", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;font-family:var(--font-body);color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{-webkit-text-size-adjust:100%;width:100%;max-width:100vw;min-height:100%;margin:0;overflow-x:hidden}body{background-color:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;-webkit-overflow-scrolling:touch;background-image:radial-gradient(1200px 600px at 100% -10%,#4f46e50a,#0000 60%),radial-gradient(900px 500px at -10% 110%,#f9731608,#0000 55%);background-attachment:fixed}#root{width:100%;overflow-x:hidden}@supports (padding:env(safe-area-inset-top)){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.025em;font-weight:700}button{font-family:inherit}.centered{place-items:center;min-height:100vh;padding:24px;display:grid}.app-shell{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--surface);border-inline-end:1px solid var(--border);flex-direction:column;align-self:start;gap:2px;height:100vh;padding:20px 12px;display:flex;position:sticky;top:0}.logo{color:var(--ink);letter-spacing:-.03em;margin:4px 10px 24px;font-size:1.1rem;font-weight:800;line-height:1.2}.logo-wrap{margin:4px 10px 24px}.logo-img{width:160px;height:auto}.logo:after{content:"";background:var(--primary);border-radius:3px;width:28px;height:3px;margin-top:8px;display:block}.sidebar nav{flex-direction:column;gap:1px;display:flex}.nav-link{border-radius:var(--radius-sm);color:var(--muted);transition:all var(--duration-fast) var(--ease-default);padding:9px 12px;font-size:.875rem;font-weight:500;text-decoration:none;position:relative}.nav-link:hover{background:var(--bg-tint);color:var(--ink)}.nav-link--active{background:var(--primary);color:#fff;font-weight:600;box-shadow:0 2px 8px #4f46e54d}.nav-link--active:hover{background:var(--primary-hover);color:#fff}.nav-link--admin{margin-top:var(--space-sm);border-top:1px solid var(--border);padding-top:calc(var(--space-sm) + 1px);color:var(--muted)}.nav-link--admin:hover{color:var(--clay)}.nav-link--browse{margin-top:var(--space-sm);border-top:1px solid var(--border);padding-top:calc(var(--space-sm) + 1px);color:var(--primary);font-weight:600}.nav-link--browse:hover{background:var(--primary-soft)}.sidebar-admin-badge{background:var(--clay-soft);color:var(--clay);border-radius:999px;margin-bottom:4px;padding:2px 8px;font-size:.6875rem;font-weight:700;display:inline-block}.sidebar-footer{border-top:1px solid var(--border);color:var(--muted);flex-direction:column;gap:4px;margin-top:auto;padding-top:12px;font-size:.8rem;display:flex}.user-email{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.sidebar-trial{margin:0 10px var(--space-sm)}.sidebar-trial__badge{color:#fff;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:999px;padding:3px 10px;font-size:.6875rem;font-weight:700;display:inline-block}.sidebar-demo-badge{margin:0 10px var(--space-sm)}.sidebar-demo-badge span{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:3px 10px;font-size:.6875rem;font-weight:700;display:inline-block}.demo-banner-small{background:var(--primary-soft);color:var(--primary);border-radius:var(--radius-sm);margin-bottom:var(--space-md);text-align:center;padding:8px 16px;font-size:.8125rem;font-weight:500}.demo-banner-small a{color:var(--primary);font-weight:700;text-decoration:underline}.pwa-install-banner{z-index:100;padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0));background:var(--surface);border-top:1px solid var(--border);animation:.3s slideUp;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0f172a1a}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.pwa-install-content{align-items:center;gap:12px;max-width:600px;margin:0 auto;display:flex}.pwa-install-icon{border-radius:12px;flex-shrink:0;width:48px;height:48px}.pwa-install-text{flex-direction:column;flex:1;gap:2px;display:flex}.pwa-install-text strong{font-size:.875rem}.pwa-install-text span{color:var(--muted);font-size:.75rem}.pwa-install-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;padding:8px 20px;font-size:.875rem;font-weight:600}.pwa-install-close{color:var(--muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px;font-size:1rem}.login-forgot{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:4px 0;font-size:.8125rem}.login-terms{color:var(--muted);align-items:flex-start;gap:8px;font-size:.8125rem;line-height:1.5;display:flex}.login-terms input{flex:none;width:18px;height:18px;margin-top:1px}.login-terms a{color:var(--primary)}:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 45%, transparent);outline-offset:2px}.contact-list{gap:var(--space-sm);flex-direction:column;display:flex}.contact-item{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--bg-tint);border-radius:var(--radius-sm);border:1px solid var(--border);display:flex}.contact-item__info{flex:1;min-width:0}.contact-item__name{font-size:.875rem;font-weight:600}.contact-item__phone{color:var(--muted);font-size:.75rem}.contact-item__relation{color:var(--primary);font-size:.6875rem;font-weight:600}.contact-item__delete{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;font-size:.875rem}.contact-item__delete:hover{color:var(--danger);background:var(--danger-soft)}.contact-add-btn{align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;font:inherit;color:var(--muted);background:0 0;width:100%;font-size:.8125rem;transition:all .15s;display:flex}.contact-add-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-tint)}.content{min-width:0;max-width:1200px;animation:page-rise .35s var(--ease-default) both;padding:32px clamp(24px,4vw,48px)}@media (width<=768px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{border-inline-end:none;border-bottom:1px solid var(--border);z-index:20;flex-direction:row;align-items:center;gap:10px;min-width:0;height:auto;padding:10px 14px;overflow-x:auto}.logo{flex-shrink:0;margin:0;font-size:.95rem}.logo:after{display:none}.logo-wrap{flex:0 140px;min-width:90px;margin:0}.logo-img{width:min(140px,100%);display:block}.sidebar-demo-badge,.sidebar-trial{white-space:nowrap;margin:0}.sidebar .sidebar-nav{display:none}.sidebar-footer{border:none;flex-direction:row;flex-shrink:0;align-items:center;margin:0 0 0 auto;padding:0}.user-email{display:none}.content{padding:16px 16px calc(80px + env(safe-area-inset-bottom,0))}input:not([type=checkbox]):not([type=radio]),select,button,.btn-primary,.btn-secondary{min-height:44px}.pwa-install-banner{bottom:calc(58px + env(safe-area-inset-bottom,0));padding-bottom:12px}}@keyframes page-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.content{animation:none}}.page-header{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.page-header h2{margin:0;font-size:1.5rem;font-weight:700}.page-header h2:before{content:"";width:6px;height:6px;background:var(--primary);vertical-align:middle;border-radius:50%;margin-inline-end:var(--space-sm);display:inline-block}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-lg);box-shadow:var(--shadow-sm);transition:all var(--duration-normal) var(--ease-default)}.card--clickable{cursor:pointer}.card--clickable:hover{box-shadow:var(--shadow);border-color:var(--border-strong);transform:translateY(-1px)}.card--clickable:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.card-collapsible{overflow:hidden}.card-collapsible__header{cursor:pointer;padding:var(--space-md) 0;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;display:flex}.card-collapsible__header:hover{opacity:.8}.card-collapsible__icon{transition:transform var(--duration-normal) ease;color:var(--muted);font-size:.8rem}.card-collapsible__icon--open{transform:rotate(180deg)}.card-collapsible__body{transition:max-height var(--duration-slow) var(--ease-default), opacity var(--duration-normal) ease;overflow:hidden}.card-collapsible__body--collapsed{opacity:0;max-height:0}.card-collapsible__body--expanded{opacity:1;max-height:2000px}label{color:var(--ink);gap:var(--space-xs);flex-direction:column;font-size:.8125rem;font-weight:600;display:flex}input,select,textarea{border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;color:var(--ink);background:var(--surface);transition:border-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease;padding:10px 12px;font-size:.875rem}input::placeholder,textarea::placeholder{color:#94a3b8}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:var(--ring);outline:none}textarea{resize:vertical;min-height:88px}.input--error,.select--error,.textarea--error{border-color:var(--danger)}.input-error,.select-error,.textarea-error{color:var(--danger);margin-top:2px;font-size:.75rem}.btn-primary{background:var(--primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-default);border:none;justify-content:center;align-items:center;padding:10px 20px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:0 1px 3px #4f46e54d,0 1px 2px #4f46e533}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #4f46e559,0 2px 4px #4f46e533}.btn-primary:active{transform:translateY(0);box-shadow:0 1px 2px #4f46e533}.btn-primary:disabled{background:var(--border);color:var(--muted);cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-default);justify-content:center;align-items:center;padding:10px 20px;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.btn-secondary:hover{background:var(--bg-tint);border-color:var(--border-strong)}.btn-danger{background:var(--danger);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-default);border:none;padding:10px 20px;font-size:.875rem;font-weight:600}.btn-danger:hover{background:#dc2626}.btn-link{color:var(--primary);cursor:pointer;font:inherit;text-align:start;transition:color var(--duration-fast) ease;background:0 0;border:none;border-radius:6px;padding:4px;font-size:.875rem;font-weight:600}.btn-link:hover{color:var(--primary-hover)}.btn--sm{padding:6px 12px;font-size:.8125rem}.btn--lg{padding:12px 24px;font-size:.9375rem}.badge{border-radius:999px;align-items:center;padding:3px 10px;font-size:.75rem;font-weight:600;line-height:1.4;display:inline-flex}.badge--available{background:var(--badge-available-bg);color:var(--badge-available-text)}.badge--rented{background:var(--badge-rented-bg);color:var(--badge-rented-text)}.badge--draft{background:var(--badge-draft-bg);color:var(--badge-draft-text)}.badge--status-new{background:var(--badge-new-bg);color:var(--badge-new-text)}.badge--status-contacted{background:var(--badge-contacted-bg);color:var(--badge-contacted-text)}.badge--status-viewed{background:var(--badge-viewed-bg);color:var(--badge-viewed-text)}.badge--status-offer{background:var(--badge-offer-bg);color:var(--badge-offer-text)}.badge--status-contract{background:var(--badge-contract-bg);color:var(--badge-contract-text)}.badge--status-presented{color:#6d28d9;background:#ede9fe}.badge--status-declined{background:var(--badge-declined-bg);color:var(--badge-declined-text)}.badge--status-rejected{background:var(--badge-rejected-bg);color:var(--badge-rejected-text)}.badge--risk-low{background:var(--badge-risk-low-bg);color:var(--badge-risk-low-text)}.badge--risk-medium{background:var(--badge-risk-medium-bg);color:var(--badge-risk-medium-text)}.badge--risk-high{background:var(--badge-risk-high-bg);color:var(--badge-risk-high-text)}.error{color:var(--danger);background:var(--danger-soft);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);margin:0 0 var(--space-md);border:1px solid #fecaca;font-size:.8125rem}.success{color:var(--success);background:var(--success-soft);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);margin:0 0 var(--space-md);border:1px solid #bbf7d0;font-size:.8125rem}.loading-spinner{border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg, var(--bg-tint) 25%, var(--border) 50%, var(--bg-tint) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.2s ease-in-out infinite skeleton}@keyframes skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fade-in,.stagger-item{animation:fadeIn var(--duration-slow) var(--ease-default) both}.stagger-item:first-child{animation-delay:0s}.stagger-item:nth-child(2){animation-delay:40ms}.stagger-item:nth-child(3){animation-delay:80ms}.stagger-item:nth-child(4){animation-delay:.12s}.stagger-item:nth-child(5){animation-delay:.16s}.stagger-item:nth-child(6){animation-delay:.2s}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.pulse{animation:2s ease-in-out infinite pulse}.empty-state{text-align:center;padding:var(--space-2xl) var(--space-lg);color:var(--muted)}.empty-state-icon{margin-bottom:var(--space-md);opacity:.4;font-size:2.5rem}.empty-state-title{font-family:var(--font-display);margin:0 0 var(--space-sm);color:var(--ink);font-size:1rem;font-weight:600}.empty-state-text{color:var(--muted);margin:0;font-size:.875rem}.empty-state-action{margin-top:var(--space-md)}.error-boundary{min-height:200px;padding:var(--space-lg);justify-content:center;align-items:center;display:flex}.error-boundary-content{text-align:center;max-width:400px}.error-boundary-content h3{margin:0 0 var(--space-sm);color:var(--danger)}.error-boundary-content p{margin:0 0 var(--space-md);color:var(--muted)}.loading-spinner--sm{border-width:1.5px;width:16px;height:16px}.loading-spinner--lg{border-width:3px;width:32px;height:32px}.entity-form{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}@media (width<=640px){.entity-form{gap:var(--space-sm);grid-template-columns:1fr}}.form-group{gap:var(--space-xs);flex-direction:column;display:flex}.form-group--full{grid-column:1/-1}.entity-form label{animation:fadeIn var(--duration-slow) var(--ease-default) both}.entity-form label:first-child{animation-delay:0s}.entity-form label:nth-child(2){animation-delay:20ms}.entity-form label:nth-child(3){animation-delay:40ms}.entity-form label:nth-child(4){animation-delay:60ms}.entity-form label:nth-child(5){animation-delay:80ms}.entity-form label:nth-child(6){animation-delay:.1s}.entity-form label:nth-child(7){animation-delay:.12s}.entity-form label:nth-child(8){animation-delay:.14s}input,select,textarea{transition:border-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease}input:focus,select:focus,textarea:focus{transform:none}.entity-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}@media (width<=768px){.entity-grid{grid-template-columns:1fr}}.entity-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-lg);box-shadow:var(--shadow-sm);transition:all var(--duration-normal) var(--ease-default);cursor:pointer;position:relative;overflow:hidden}.entity-card:before{content:"";background:var(--primary);opacity:0;width:3px;transition:opacity var(--duration-normal) ease;position:absolute;inset-block:0;inset-inline-start:0}.entity-card:hover{box-shadow:var(--shadow);border-color:var(--border-strong);transform:translateY(-1px)}.entity-card:hover:before{opacity:1}.entity-card:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.entity-card h3{margin:0 0 var(--space-sm);font-family:var(--font-display);transition:color var(--duration-fast) ease;font-size:1rem;font-weight:600}.entity-card:hover h3{color:var(--primary)}.entity-card .meta{color:var(--muted);margin:0 0 var(--space-xs);font-size:.8125rem}.entity-card .price{font-family:var(--font-display);color:var(--primary);margin:var(--space-sm) 0;font-size:1.1rem;font-weight:700}.entity-card .actions{gap:var(--space-sm);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border);display:flex}.login-logo{text-align:center;margin-bottom:var(--space-md)}.login-logo-img{width:180px;height:auto;margin-bottom:var(--space-md)}.login-logo-icon{margin-bottom:var(--space-sm);font-size:2.5rem}.login-subtitle{color:var(--muted);margin:0;font-size:.875rem}.login-form{gap:var(--space-md);width:400px;max-width:100%;padding:var(--space-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border);background:var(--surface);animation:page-rise .4s var(--ease-default) both;flex-direction:column;display:flex}.login-form h1{text-align:center;color:var(--ink);letter-spacing:-.03em;margin:0;font-size:1.5rem;font-weight:800}.login-form label{gap:var(--space-xs);flex-direction:column;font-size:.8125rem;font-weight:600;display:flex}.login-form label .label-text{color:var(--ink)}.login-form input{padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease;font-size:.875rem}.login-form input:focus{border-color:var(--primary);box-shadow:var(--ring)}.login-form input::placeholder{color:var(--border-strong)}.login-form .error{padding:var(--space-sm) var(--space-md);background:var(--danger-soft);color:var(--danger);border-radius:var(--radius-sm);text-align:center;margin:0;font-size:.8125rem}.login-submit{margin-top:var(--space-xs);width:100%;padding:var(--space-md)!important;font-size:.875rem!important}.btn-google{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--ink);font:inherit;cursor:pointer;box-shadow:var(--shadow-sm);transition:all var(--duration-fast) var(--ease-default);justify-content:center;align-items:center;gap:10px;padding:12px;font-size:.875rem;font-weight:600;display:flex}.btn-google:hover{background:var(--bg-tint);border-color:var(--border-strong);box-shadow:var(--shadow);transform:translateY(-1px)}.btn-apple{border-radius:var(--radius-sm);color:#fff;width:100%;font:inherit;cursor:pointer;box-shadow:var(--shadow-sm);transition:all var(--duration-fast) var(--ease-default);background:#000;border:1px solid #000;justify-content:center;align-items:center;gap:10px;padding:12px;font-size:.875rem;font-weight:600;display:flex}.btn-apple:hover{box-shadow:var(--shadow);background:#1a1a1a;transform:translateY(-1px)}.login-fields{flex-direction:column;gap:14px;display:flex}.login-divider{color:var(--muted);align-items:center;gap:12px;font-size:.75rem;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border);flex:1;height:1px}.feature-gated{text-align:center;padding:var(--space-2xl) var(--space-lg);background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius)}.feature-gated__lock{margin-bottom:var(--space-md);opacity:.6;font-size:2.5rem}.feature-gated__title{font-family:var(--font-display);margin:0 0 var(--space-sm);font-size:1.1rem;font-weight:700}.feature-gated__text{color:var(--muted);margin:0 0 var(--space-md);font-size:.875rem}.feature-gated__plan{color:var(--muted);font-size:.8125rem}.feature-badge{color:#b45309;background:#fef3c7;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.6875rem;font-weight:600;display:inline-flex}.admin-header{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.admin-stats{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=480px){.admin-stats{grid-template-columns:1fr}}.admin-stats__value{font-size:2rem;font-weight:800;line-height:1}.admin-stats__label{color:var(--muted);margin-top:var(--space-xs);font-size:.8125rem}.admin-tenants__header{margin-bottom:var(--space-md)}.admin-tenants__list{gap:var(--space-sm);flex-direction:column;display:flex}.admin-tenant-card{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--bg-tint);border-radius:var(--radius-sm);flex-wrap:wrap;display:flex}.admin-tenant-card__name{font-size:.9375rem;font-weight:600}.admin-tenant-card__meta{gap:var(--space-xs);flex-wrap:wrap;margin-top:4px;display:flex}.admin-tenant-card__actions{gap:var(--space-sm);align-items:center;display:flex}.admin-tenant-card__select{border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;padding:6px 8px;font-size:.8125rem}.admin-plans{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=640px){.admin-plans{grid-template-columns:1fr}}.admin-plan{padding:var(--space-md);border:1px solid var(--border);border-radius:var(--radius-sm)}.admin-plan--highlighted{border-color:var(--primary);background:var(--primary-tint)}.admin-plan--pro{border-color:var(--clay);background:var(--clay-soft)}.admin-plan__name{margin-bottom:4px;font-weight:700}.admin-plan__price{font-size:1.5rem;font-weight:800}.admin-plan__price span{font-size:.75rem;font-weight:400}.admin-plan__features{color:var(--muted);margin-top:4px;font-size:.8125rem}.admin-section{margin-top:var(--space-lg)}body{background:radial-gradient(circle at 88% 2%, #5b5ce217, transparent 25rem), radial-gradient(circle at 8% 96%, #0ea5e90f, transparent 26rem), var(--bg)}.app-shell{background:0 0;grid-template-columns:272px minmax(0,1fr)}.sidebar{isolation:isolate;color:#fff;background:radial-gradient(circle at 100% 0,#7c3aed57,#0000 18rem),linear-gradient(#121a2b 0%,#182238 100%);border-inline-end:0;gap:0;padding:24px 16px 18px;overflow:hidden;box-shadow:12px 0 38px #0f172a14}.sidebar:after{content:"";z-index:-1;inset-inline-start:-90px;filter:blur(2px);background:#5b5ce21f;border-radius:50%;width:180px;height:180px;position:absolute;bottom:80px}.sidebar-brand{border-bottom:1px solid #ffffff17;margin-bottom:16px;padding:2px 8px 22px}.sidebar .logo-wrap{margin:0}.sidebar .logo-img{filter:brightness(0)invert();opacity:.98;width:154px;display:block}.sidebar-brand__caption{color:#ffffff7a;letter-spacing:.03em;margin-top:8px;font-size:.72rem;font-weight:500;display:block}.sidebar-nav{flex-direction:column;gap:4px;display:flex}.sidebar-nav__label{color:#ffffff61;letter-spacing:.08em;text-transform:uppercase;padding:4px 12px 6px;font-size:.67rem;font-weight:700}.sidebar-nav__label--tools{margin-top:12px}.sidebar .nav-link{color:#ffffffad;border:1px solid #0000;border-radius:12px;align-items:center;gap:11px;min-height:44px;padding:9px 12px;font-size:.88rem;font-weight:500;display:flex}.sidebar .nav-link svg{opacity:.76;transition:opacity var(--duration-fast) ease, transform var(--duration-fast) ease;flex:none}.sidebar .nav-link:hover{color:#fff;background:#ffffff12;border-color:#ffffff0f}.sidebar .nav-link:hover svg{opacity:1;transform:translate(-1px)}.sidebar .nav-link--active,.sidebar .nav-link--active:hover{color:#fff;background:linear-gradient(135deg,#6366f1f2,#7c3aede6);border-color:#ffffff24;box-shadow:0 9px 22px #4f46e552,inset 0 1px #ffffff29}.sidebar .nav-link--active svg{opacity:1}.sidebar .nav-link--admin,.sidebar .nav-link--browse{border-top:1px solid #0000;margin-top:0;padding-top:9px}.sidebar-trial,.sidebar-demo-badge{margin:0 8px 14px}.sidebar-trial__badge,.sidebar-demo-badge span{text-align:center;color:#fff;background:#ffffff1a;border:1px solid #ffffff1a;width:100%;padding:7px 10px}.sidebar-footer{border-top-color:#ffffff1a;gap:8px;padding-top:14px}.sidebar-user-card{background:#ffffff0f;border:1px solid #ffffff14;border-radius:14px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;padding:10px;display:grid;position:relative}.sidebar-user-card__avatar{color:#fff;background:linear-gradient(135deg,#7375f2,#9a64ed);border-radius:12px;place-items:center;width:38px;height:38px;font-size:.76rem;font-weight:800;display:grid}.sidebar-user-card__info{flex-direction:column;min-width:0;display:flex}.sidebar-user-card__info strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:650;overflow:hidden}.sidebar-user-card .user-email{color:#ffffff7a;font-size:.68rem}.sidebar-user-card__plan{top:-7px;color:#d9dcff;background:#2a3652;border:1px solid #ffffff14;border-radius:999px;padding:2px 7px;font-size:.58rem;font-weight:700;position:absolute;inset-inline-start:8px}.sidebar .nav-link--subscription{color:#ffffffb8;margin-top:2px}.sidebar-logout{color:#ffffff8f;cursor:pointer;width:100%;min-height:40px;font:inherit;text-align:start;background:0 0;border:0;border-radius:10px;align-items:center;gap:9px;padding:8px 12px;font-size:.8rem;font-weight:500;display:flex}.sidebar-logout:hover{color:#fff;background:#ffffff12}.content{width:100%;max-width:1420px;margin-inline:auto;padding:38px clamp(26px,4vw,56px) 52px}.demo-banner-small{color:#4b4cc8;background:linear-gradient(90deg,#eeeefe,#f7f7ff);border:1px solid #dddafe;border-radius:13px;padding:10px 16px}.page-header{margin-bottom:26px}.page-header h2{letter-spacing:-.035em;font-size:clamp(1.55rem,2.4vw,2rem);font-weight:800}.page-header h2:before{background:linear-gradient(135deg, var(--primary), #8b5cf6);width:9px;height:9px;box-shadow:0 0 0 5px var(--primary-soft);margin-inline-end:10px}.card,.entity-card{box-shadow:var(--shadow-sm);border-color:#cdd5e1b8}.card:hover{border-color:#b5beccd9}input,select,textarea{background:#ffffffeb;min-height:44px;padding:10px 13px}textarea{min-height:104px}.btn-primary{background:linear-gradient(135deg,#5b5ce2,#7554df);border-radius:11px;min-height:42px;padding-inline:20px;box-shadow:0 8px 18px -8px #5b5ce2b8,inset 0 1px #ffffff2e}.btn-primary:hover{background:linear-gradient(135deg,#4f50cf,#6847d0)}.btn-secondary{border-radius:11px;min-height:42px;box-shadow:0 1px 2px #10182808}.badge{border:1px solid color-mix(in srgb, currentColor 12%, transparent);font-weight:650}@media (width<=768px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{z-index:25;background:radial-gradient(circle at 95% 0,#7c3aed61,#0000 12rem),#121a2b;border-bottom:0;min-height:64px;padding:10px 16px;position:sticky;top:0;overflow:visible;box-shadow:0 8px 26px #0f172a29}.sidebar:after,.sidebar-brand__caption,.sidebar .sidebar-nav{display:none}.sidebar-brand{border:0;align-items:center;min-width:0;margin:0;padding:0;display:flex}.sidebar .logo-wrap{flex:0 126px}.sidebar .logo-img{width:126px}.sidebar-demo-badge,.sidebar-trial{margin:0}.sidebar-demo-badge span,.sidebar-trial__badge{background:#ffffff1a;border-color:#ffffff1f;width:auto;padding:5px 9px;font-size:.64rem}.sidebar-footer:not(.sidebar-footer--demo){display:none}.sidebar-footer--demo{margin-inline-start:auto;display:flex}.sidebar-footer--demo .sidebar-user-card{display:none}.sidebar-footer--demo .sidebar-logout{color:#fffc;min-height:40px;padding:6px 8px}.content{padding:22px 16px calc(96px + env(safe-area-inset-bottom,0))}.card{border-radius:16px;padding:18px}.page-header{align-items:flex-start;margin-bottom:20px}.page-header h2{font-size:1.55rem}.pwa-install-banner{bottom:calc(80px + env(safe-area-inset-bottom,0));border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:16px;margin:0 10px}}.toast-container{top:max(16px, env(safe-area-inset-top));z-index:9999;pointer-events:none;flex-direction:column;gap:8px;width:min(420px,100vw - 32px);display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{border:1px solid var(--border);cursor:pointer;pointer-events:auto;background:#fff;border-radius:12px;align-items:center;gap:10px;padding:12px 16px;transition:opacity .3s,transform .3s;animation:.4s cubic-bezier(.34,1.56,.64,1) both toastSlideIn;display:flex;box-shadow:0 8px 24px -8px #0f172a26,0 2px 6px #0f172a0f}.toast:active{transform:scale(.98)}.toast--exiting{animation:.3s ease-in both toastSlideOut}.toast--success{background:linear-gradient(135deg,#f0fdf4,#fff);border-color:#bbf7d0}.toast--success .toast__icon{color:#15803d;background:#dcfce7}.toast--error{background:linear-gradient(135deg,#fef2f2,#fff);border-color:#fecaca}.toast--error .toast__icon{color:#dc2626;background:#fee2e2}.toast--warning{background:linear-gradient(135deg,#fffbeb,#fff);border-color:#fde68a}.toast--warning .toast__icon{color:#b45309;background:#fef3c7}.toast--info{background:linear-gradient(135deg,#eef2ff,#fff);border-color:#c7d2fe}.toast--info .toast__icon{color:#4f46e5;background:#e0e7ff}.toast__icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;font-weight:800;display:flex}.toast__message{color:var(--ink);flex:1;font-size:.875rem;font-weight:600;line-height:1.4}.toast__close{color:var(--muted);cursor:pointer;opacity:.5;background:0 0;border:none;flex-shrink:0;padding:4px;font-size:.75rem;transition:opacity .15s}.toast__close:hover{opacity:1}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(-20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toastSlideOut{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-10px)scale(.95)}}
