@import"https://fonts.googleapis.com/css2?family=Comfortaa:wght@600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700&display=swap";/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.flex-shrink{flex-shrink:1}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.text-right{text-align:right}.break-all{word-break:break-all}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}:root{--brand-blue:#02379b;--brand-blue-dark:#011f6b;--brand-blue-light:#2255c4;--brand-blue-rgb:2, 55, 155;--brand-orange:#ee7533;--brand-orange-dark:#d4611e;--brand-orange-rgb:238, 117, 51;--brand-cyan:#0fbbdb;--brand-cyan-dark:#0a97b3;--brand-cyan-rgb:15, 187, 219;--brand-blue-50:#eef3fc;--brand-blue-100:#dce6f8;--brand-blue-300:#6c8fd6;--brand-blue-500:var(--brand-blue);--brand-blue-600:#022e82;--brand-blue-700:var(--brand-blue-dark);--brand-blue-900:#011340;--brand-orange-50:#fdf1e9;--brand-orange-100:#fbe1cc;--brand-orange-300:#f4a876;--brand-orange-500:var(--brand-orange);--brand-orange-600:#de6624;--brand-orange-700:var(--brand-orange-dark);--brand-orange-900:#8a3c10;--brand-cyan-50:#e7fafd;--brand-cyan-100:#cdf3f9;--brand-cyan-500:var(--brand-cyan);--brand-cyan-700:var(--brand-cyan-dark);--neutral-0:#fff;--neutral-50:#f8fafc;--neutral-100:#f1f5f9;--neutral-150:#e9eef6;--neutral-200:#e2e8f0;--neutral-300:#cbd5e1;--neutral-400:#94a3b8;--neutral-500:#64748b;--neutral-600:#475569;--neutral-700:#334155;--neutral-800:#1e293b;--neutral-900:#0f172a;--neutral-950:#0b132b;--color-success:#117c38;--color-success-bg:#effaf3;--color-success-border:#bee8cc;--color-warning:#a45a05;--color-warning-bg:#fef6e7;--color-warning-border:#f7dba5;--color-danger:#cd2121;--color-danger-bg:#fdeeed;--color-danger-border:#f5c2be;--color-info:#0272ac;--color-info-bg:#e9f6fd;--color-info-border:#b8e4f5;--stage-inquiry:var(--neutral-500);--stage-gathering:var(--color-info);--stage-quotation:var(--brand-cyan);--stage-negotiation:var(--brand-orange);--stage-deposit:#7c3aed;--stage-confirmed:var(--color-success);--font-headings:"Comfortaa", "Plus Jakarta Sans", sans-serif;--font-ui:"Plus Jakarta Sans", sans-serif;--font-body:"Inter", sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Consolas", monospace;--r-xs:4px;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--r-2xl:28px;--r-portal-hero:32px;--r-portal-pill:9999px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--ease-smooth:.2s cubic-bezier(.4, 0, .2, 1);--ease-spring:.5s cubic-bezier(.34, 1.56, .64, 1);--ease-express:.35s cubic-bezier(.22, 1, .36, 1);--sidebar-width:260px;--sidebar-collapsed-width:64px;--header-height:64px;--content-max-width:1600px;--content-max-width-portal:1200px;--table-row-compact:36px;--table-row-default:44px;--table-row-comfortable:56px;--dashboard-grid-cols:repeat(5, 1fr);--charts-grid-cols:2fr 1.2fr;--chat-pane-grid-cols:1.5fr 1fr;--itinerary-builder-grid-cols:1.2fr 2fr;--font-interface:var(--font-ui);--transition-speed:.2s}.crm-shell{font-size:14px}.light-theme,:root{--bg-app:var(--neutral-150);--bg-sidebar:#fff;--bg-card:#fff;--bg-card-hover:#f8faff;--bg-subtle:#f1f5fb;--bg-subtle-hover:#e8eef8;--bg-overlay:#020f3773;--text-primary:#0b132b;--text-secondary:#374151;--text-muted:#69707e;--text-placeholder:#9ca3af;--border-color:#e2e8f0;--border-focus:#93c5fd;--border-strong:#cbd5e1;--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000a;--shadow-md:0 4px 20px #02379b12, 0 1px 3px #0000000d;--shadow-lg:0 10px 40px #02379b1f, 0 4px 8px #0000000f;--shadow-xl:0 24px 64px #02379b26, 0 8px 16px #00000014;--sidebar-border:1px solid #e8eef8;--header-bg:#ffffffe6;--logo-filter:none;--logo-text:#0b132b;--primary-blue:#02379b;--primary-blue-hover:#011f6b;--secondary-orange:#ee7533;--secondary-orange-hover:#d4611e;--electric-cyan:#0fbbdb;--table-header-bg:#f8faff;--table-row-even:transparent;--table-row-hover:#f0f6ff;--accent-text:#0b132b;--bg-main:#f0f4fa;--text-main:#0b132b;--success-green:#16a34a;--warning-yellow:#d97706;--danger-red:#dc2626;--card-bg:var(--bg-card);--logo-text-color:var(--logo-text);--text-subtle:var(--text-muted);--glass-glow:0 8px 32px 0 #02379b12;--color-success-bg:#effaf3;--color-success-border:#bee8cc;--color-warning-bg:#fef6e7;--color-warning-border:#f7dba5;--color-danger-bg:#fdeeed;--color-danger-border:#f5c2be;--color-info-bg:#e9f6fd;--color-info-border:#b8e4f5}.dark-theme{--bg-app:#0f172a;--bg-sidebar:#1e293b;--bg-card:#1e293b;--bg-card-hover:#334155;--bg-subtle:#334155;--bg-subtle-hover:#475569;--bg-overlay:#0f172acc;--text-primary:#f8fafc;--text-secondary:#e2e8f0;--text-muted:#a1aec1;--text-placeholder:#64748b;--border-color:#ffffff14;--border-focus:#3b82f699;--border-strong:#ffffff26;--shadow-xs:0 1px 2px #00000080;--shadow-sm:0 1px 3px #0009, 0 0 0 1px #ffffff0a;--shadow-md:0 4px 24px #00000080, 0 0 0 1px #ffffff0d;--shadow-lg:0 10px 40px #0009, 0 0 0 1px #ffffff0f;--shadow-xl:0 24px 64px #000000b3, 0 0 0 1px #ffffff0f;--sidebar-border:1px solid #ffffff0f;--header-bg:#0b132beb;--logo-filter:brightness(0) invert(1);--logo-text:#f1f5f9;--primary-blue:#4f8ef7;--primary-blue-hover:#3b7ef0;--secondary-orange:#ee7533;--secondary-orange-hover:#d4611e;--electric-cyan:#0fbbdb;--table-header-bg:#0b132b;--table-row-even:transparent;--table-row-hover:#ffffff0a;--accent-text:#f1f5f9;--bg-main:#050811;--text-main:#f1f5f9;--success-green:#22c55e;--warning-yellow:#f59e0b;--danger-red:#ef4444;--card-bg:var(--bg-card);--logo-text-color:var(--logo-text);--text-subtle:var(--text-muted);--glass-glow:0 8px 32px 0 #00000073;--color-success:#22c55e;--color-warning:#f59e0b;--color-danger:#f26a6a;--color-info:#0fbbdb;--color-success-bg:#22c55e1f;--color-success-border:#22c55e47;--color-warning-bg:#f59e0b1f;--color-warning-border:#f59e0b47;--color-danger-bg:#ef44441f;--color-danger-border:#ef444447;--color-info-bg:#0fbbdb1f;--color-info-border:#0fbbdb47;--stage-inquiry:var(--neutral-400);--stage-gathering:var(--color-info);--stage-quotation:var(--brand-cyan);--stage-negotiation:var(--brand-orange);--stage-deposit:#8b5cf6;--stage-confirmed:var(--color-success)}.dark-theme ::-webkit-scrollbar-track{background:0 0}.dark-theme ::-webkit-scrollbar-thumb{background:#ffffff1a}.dark-theme ::-webkit-scrollbar-thumb:hover{background:#fff3}.dark-theme ::-webkit-scrollbar-corner{background:0 0}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:14px}body{font-family:var(--font-body);background:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;transition:background var(--ease-smooth),color var(--ease-smooth);font-size:13px;line-height:1.6;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}h1{font-family:var(--font-headings);color:var(--text-primary);letter-spacing:-.02em;font-size:2rem;font-weight:700;line-height:1.15}h2{font-family:var(--font-headings);color:var(--text-primary);letter-spacing:-.02em;font-size:1.5rem;font-weight:700;line-height:1.2}h3{font-family:var(--font-headings);color:var(--text-primary);letter-spacing:-.015em;font-size:1.25rem;font-weight:600;line-height:1.25}h4{font-family:var(--font-ui);color:var(--text-primary);font-size:1.0625rem;font-weight:600;line-height:1.3}h5{font-family:var(--font-ui);color:var(--text-primary);font-size:.9375rem;font-weight:600;line-height:1.3}h6{font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.8125rem;font-weight:600;line-height:1.35}.text-body{font-family:var(--font-body);font-size:.9375rem;font-weight:400;line-height:1.6}.text-body-md{font-family:var(--font-body);font-size:.9375rem;font-weight:500;line-height:1.6}.text-small{font-family:var(--font-body);color:var(--text-muted);font-size:.8125rem;font-weight:400;line-height:1.5}.text-tiny{font-family:var(--font-ui);letter-spacing:.02em;text-transform:uppercase;font-size:.6875rem;font-weight:500;line-height:1.4}.text-mono{font-family:var(--font-mono);letter-spacing:0;font-size:.8125rem;font-weight:500;line-height:1.5}.crm-layout{background:var(--bg-app);min-height:100vh;display:flex}.crm-sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:var(--sidebar-border);z-index:100;height:100vh;transition:width var(--ease-express),transform var(--ease-express);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;position:fixed;overflow:hidden}.crm-sidebar.sidebar-collapsed{width:var(--sidebar-collapsed-width)}.crm-sidebar:before{content:"";background:linear-gradient(180deg,var(--brand-blue) 0%,var(--brand-cyan) 50%,var(--brand-orange) 100%);z-index:1;border-radius:0 2px 2px 0;width:3px;position:absolute;top:0;bottom:0;left:0}.crm-main-viewport{margin-left:var(--sidebar-width);min-width:0;width:calc(100vw - var(--sidebar-width));transition:margin-left var(--ease-express),width var(--ease-express);flex-direction:column;flex-grow:1;gap:1.5rem;padding:2rem;display:flex}@media (min-width:1700px){.crm-main-viewport:not(.viewport-expanded){max-width:var(--content-max-width);margin-inline:auto;margin-left:max(var(--sidebar-width),calc((100vw - var(--content-max-width)) / 2))}}.crm-main-viewport.viewport-expanded{margin-left:var(--sidebar-collapsed-width);width:calc(100vw - var(--sidebar-collapsed-width))}.sidebar-nav-btn{width:100%;font-family:var(--font-ui);color:var(--text-muted);border-radius:var(--r-md);cursor:pointer;text-align:left;white-space:nowrap;transition:all var(--ease-smooth);background:0 0;border:none;align-items:center;gap:.65rem;padding:.6rem .875rem;font-size:.875rem;font-weight:500;display:flex;position:relative;overflow:hidden}.sidebar-nav-btn svg{transition:color var(--ease-smooth),transform var(--ease-smooth);flex-shrink:0}.sidebar-nav-btn:hover svg{color:var(--brand-blue);transform:scale(1.1)}.sidebar-nav-btn.active{background:linear-gradient(135deg,rgba(var(--brand-blue-rgb),.1),rgba(var(--brand-cyan-rgb),.06));color:var(--brand-blue);border:1px solid rgba(var(--brand-blue-rgb),.15);font-weight:600}.sidebar-nav-btn.active svg{color:var(--brand-blue)}.dark-theme .sidebar-nav-btn.active{color:var(--primary-blue);background:#4f8ef71f;border-color:#4f8ef733}.dark-theme .sidebar-nav-btn.active svg{color:var(--primary-blue)}.dark-theme .sidebar-nav-btn:hover{color:var(--text-primary);background:#ffffff0d}.crm-sidebar.sidebar-collapsed .sidebar-nav-label,.crm-sidebar.sidebar-collapsed .sidebar-section-label,.crm-sidebar.sidebar-collapsed .sidebar-user-info,.crm-sidebar.sidebar-collapsed .sidebar-brand-text,.crm-sidebar.sidebar-collapsed .sidebar-footer-actions span{opacity:0;pointer-events:none;width:0;overflow:hidden}.crm-sidebar.sidebar-collapsed .sidebar-nav-btn{justify-content:center;gap:0;padding:.65rem}.glass-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-lg);box-shadow:var(--shadow-md);transition:all var(--ease-smooth);padding:1.5rem}.glass-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-strong);transform:translateY(-1px)}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-lg);box-shadow:var(--shadow-md);transition:all var(--ease-smooth);padding:1.5rem;position:relative;overflow:hidden}.stat-card:before{content:"";border-radius:var(--r-lg) var(--r-lg) 0 0;height:3px;position:absolute;top:0;left:0;right:0}.stat-card.blue:before{background:linear-gradient(90deg,var(--brand-blue),var(--brand-cyan))}.stat-card.orange:before{background:linear-gradient(90deg,var(--brand-orange),#f59e0b)}.stat-card.cyan:before{background:linear-gradient(90deg,var(--brand-cyan),#06b6d4)}.stat-card.green:before{background:linear-gradient(90deg,var(--color-success),#4ade80)}.stat-card.purple:before{background:linear-gradient(90deg,#7c3aed,#a78bfa)}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.portal-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-portal-hero);box-shadow:var(--shadow-md);padding:var(--space-8);transition:transform .3s var(--ease-spring),box-shadow .3s var(--ease-smooth)}.portal-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.btn{border-radius:var(--r-md);font-family:var(--font-ui);cursor:pointer;transition:all var(--ease-smooth);white-space:nowrap;border:1px solid #0000;outline:none;justify-content:center;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn:active{transform:scale(.97)}.btn:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px}.btn-primary{background:var(--brand-blue);color:#fff;box-shadow:0 1px 3px rgba(var(--brand-blue-rgb),.3),0 4px 12px rgba(var(--brand-blue-rgb),.2)}.btn-primary:hover{background:var(--brand-blue-dark);box-shadow:0 4px 20px rgba(var(--brand-blue-rgb),.4);transform:translateY(-1px)}.btn-cta{background:linear-gradient(135deg,var(--brand-orange),#f59e0b);color:#fff;box-shadow:0 1px 3px rgba(var(--brand-orange-rgb),.3),0 4px 12px rgba(var(--brand-orange-rgb),.2)}.btn-cta:hover{background:linear-gradient(135deg,var(--brand-orange-dark),#d97706);box-shadow:0 4px 20px rgba(var(--brand-orange-rgb),.4);transform:translateY(-1px)}.btn-cta:after{content:"";background:linear-gradient(90deg,#0000,#ffffff40,#0000);width:60%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.btn-cta:hover:after{left:150%}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-color);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background:var(--bg-subtle);border-color:var(--border-strong)}.btn-danger{color:var(--color-danger);background:#dc262614;border-color:#dc262640}.btn-danger:hover{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--bg-subtle);color:var(--text-primary)}.btn-sm{border-radius:var(--r-sm);padding:.35rem .7rem;font-size:.75rem}.btn-lg{border-radius:var(--r-lg);padding:.7rem 1.4rem;font-size:.9375rem}.btn-icon{border-radius:var(--r-md);aspect-ratio:1;padding:.5rem}.btn:disabled,.btn.btn-disabled{cursor:not-allowed;box-shadow:none;transform:none!important}.btn-primary:disabled,.btn-cta:disabled{background:var(--neutral-200);color:var(--text-placeholder)}.dark-theme .btn-primary:disabled,.dark-theme .btn-cta:disabled{color:var(--text-placeholder);background:#ffffff14}.btn-secondary:disabled{background:var(--bg-card);color:var(--text-placeholder);border-color:var(--border-color)}.btn-secondary:disabled:hover{background:var(--bg-card);border-color:var(--border-color)}.btn-danger:disabled{color:var(--color-danger);opacity:.4}.btn-danger:disabled:hover{color:var(--color-danger);background:#dc262614}.btn-ghost:disabled{color:var(--text-placeholder)}.btn-cta:focus-visible{outline-color:var(--brand-orange)}.btn-danger:focus-visible{outline-color:var(--color-danger)}.btn-loading{pointer-events:none;min-width:2.5rem;position:relative;color:#0000!important}.btn-loading:before{content:"";color:#fff;opacity:.85;border:2px solid;border-top-color:#0000;border-radius:50%;width:14px;height:14px;margin:-7px 0 0 -7px;animation:.7s linear infinite spin;position:absolute;top:50%;left:50%}.btn-secondary.btn-loading:before,.btn-ghost.btn-loading:before{color:var(--text-muted)}.btn-danger.btn-loading:before{color:var(--color-danger)}.btn-portal{border-radius:var(--r-portal-pill);transition:transform .25s var(--ease-spring),box-shadow .25s var(--ease-express);padding:.75em 1.75em;font-size:.9375rem}.btn-portal:hover{transform:translateY(-2px)}.hamburger-btn{display:none!important}.form-group{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.form-label{font-family:var(--font-ui);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.form-input,.form-select,.form-textarea{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-md);width:100%;color:var(--text-primary);font-family:var(--font-body);transition:all var(--ease-smooth);box-shadow:var(--shadow-xs);outline:none;padding:.6rem .875rem;font-size:.875rem}.form-input::-moz-placeholder,.form-textarea::-moz-placeholder{color:var(--text-placeholder)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-placeholder)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--brand-blue);box-shadow:0 0 0 3px rgba(var(--brand-blue-rgb),.12);background:var(--bg-card)}select option{background-color:var(--bg-card);color:var(--text-primary)}.dark-theme .form-input,.dark-theme .form-select,.dark-theme .form-textarea{background:#ffffff0a;border-color:#ffffff1a}.dark-theme .form-input:focus,.dark-theme .form-select:focus,.dark-theme .form-textarea:focus{border-color:var(--primary-blue);background:#ffffff0f;box-shadow:0 0 0 3px #4f8ef733}.form-input.form-input-error,.form-select.form-input-error,.form-textarea.form-input-error{border-color:var(--color-danger);box-shadow:0 0 0 3px var(--color-danger-bg)}.form-input.form-input-success,.form-select.form-input-success,.form-textarea.form-input-success{border-color:var(--color-success);box-shadow:0 0 0 3px var(--color-success-bg)}.form-error-text{font-family:var(--font-body);color:var(--color-danger);margin-top:.25rem;font-size:.8125rem}.toggle-switch{background:var(--bg-subtle);border:1px solid var(--border-color);cursor:pointer;width:36px;height:20px;transition:background var(--ease-express);border-radius:9999px;flex-shrink:0;position:relative}.toggle-switch.on{background:var(--brand-blue);border-color:var(--brand-blue)}.toggle-switch:after{content:"";width:16px;height:16px;box-shadow:var(--shadow-xs);transition:transform var(--ease-express);background:#fff;border-radius:50%;position:absolute;top:1px;left:1px}.toggle-switch.on:after{transform:translate(16px)}input[type=checkbox].form-checkbox{accent-color:var(--brand-blue);width:18px;height:18px}.badge{font-family:var(--font-ui);letter-spacing:.02em;border:1px solid #0000;border-radius:9999px;align-items:center;gap:.25rem;padding:.2rem .55rem;font-size:.7rem;font-weight:700;display:inline-flex}.badge-blue{background:rgba(var(--brand-blue-rgb),.1);color:var(--brand-blue);border-color:rgba(var(--brand-blue-rgb),.2)}.badge-orange{background:rgba(var(--brand-orange-rgb),.1);color:var(--brand-orange);border-color:rgba(var(--brand-orange-rgb),.2)}.badge-cyan{background:rgba(var(--brand-cyan-rgb),.1);color:var(--brand-cyan);border-color:rgba(var(--brand-cyan-rgb),.2)}.badge-green{color:var(--color-success);background:#16a34a1a;border-color:#16a34a33}.badge-red{color:var(--color-danger);background:#dc26261a;border-color:#dc262633}.badge-yellow{color:var(--color-warning);background:#d977061a;border-color:#d9770633}.badge-gray{background:var(--bg-subtle);color:var(--text-muted);border-color:var(--border-color)}.badge-stage-inquiry{color:var(--stage-inquiry);background:#64748b1a;border-color:#64748b33}.badge-stage-gathering{background:var(--color-info-bg);color:var(--stage-gathering);border-color:var(--color-info-border)}.badge-stage-quotation{background:rgba(var(--brand-cyan-rgb),.1);color:var(--stage-quotation);border-color:rgba(var(--brand-cyan-rgb),.2)}.badge-stage-negotiation{background:rgba(var(--brand-orange-rgb),.1);color:var(--stage-negotiation);border-color:rgba(var(--brand-orange-rgb),.2)}.badge-stage-deposit{color:var(--stage-deposit);background:#7c3aed1a;border-color:#7c3aed33}.badge-stage-confirmed{background:var(--color-success-bg);color:var(--stage-confirmed);border-color:var(--color-success-border)}.badge-permission{border-radius:var(--r-xs);font-family:var(--font-mono);letter-spacing:.01em;background:var(--bg-subtle);color:var(--text-muted);border:1px solid var(--border-color);align-items:center;gap:.3rem;padding:.15rem .5rem;font-size:.68rem;font-weight:600;display:inline-flex}.badge-permission.badge-permission-admin{background:var(--brand-blue);color:#fff;border-color:var(--brand-blue)}.status-indicator{font-family:var(--font-ui);border-radius:9999px;align-items:center;gap:.4rem;padding:.25rem .65rem;font-size:.72rem;font-weight:600;display:inline-flex}.status-indicator:before{content:"";border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-success{color:var(--color-success);background:#16a34a1a;border:1px solid #16a34a33}.status-success:before{background:var(--color-success);box-shadow:0 0 0 2px #16a34a33}.status-warning{color:var(--color-warning);background:#d977061a;border:1px solid #d9770633}.status-warning:before{background:var(--color-warning)}.status-danger{color:var(--color-danger);background:#dc26261a;border:1px solid #dc262633}.status-danger:before{background:var(--color-danger);animation:1.5s ease-in-out infinite pulse-dot}.custom-table-container{border-radius:var(--r-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);overflow-x:auto}.custom-table{border-collapse:collapse;text-align:left;width:100%}.custom-table th{background:var(--table-header-bg);font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-color);color:var(--text-muted);white-space:nowrap;padding:.875rem 1rem;font-size:.75rem;font-weight:600}.custom-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);transition:background var(--ease-smooth);vertical-align:middle;padding:.875rem 1rem;font-size:.8125rem}.custom-table tr:last-child td{border-bottom:none}.custom-table tr:hover td{background:var(--table-row-hover)}.custom-table.density-compact td,.custom-table.density-compact th{height:var(--table-row-compact);padding-top:.4rem;padding-bottom:.4rem}.custom-table.density-comfortable td,.custom-table.density-comfortable th{height:var(--table-row-comfortable);padding-top:1.1rem;padding-bottom:1.1rem}.custom-table th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.custom-table th.sortable .sort-chevron{opacity:.6;transition:opacity var(--ease-smooth),color var(--ease-smooth);margin-left:.25rem}.custom-table th.sortable.sort-active{color:var(--brand-blue)}.custom-table th.sortable.sort-active .sort-chevron{opacity:1;color:var(--brand-blue)}.custom-table tr.row-selected td{background:var(--brand-blue-50);border-left:2px solid var(--brand-blue)}.dark-theme .custom-table tr.row-selected td{background:#4f8ef71a}.custom-table.sticky-first-col th:first-child,.custom-table.sticky-first-col td:first-child{background:inherit;z-index:1;position:sticky;left:0}.table-empty-state{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 1.5rem;display:flex}.table-empty-state svg{color:var(--text-muted);opacity:.6}.tabs-bar{gap:var(--space-2);border-bottom:1px solid var(--border-color);display:flex}.tab-btn{padding:var(--space-3) var(--space-4);font-family:var(--font-ui);color:var(--text-muted);cursor:pointer;transition:color .2s var(--ease-smooth),border-color .2s var(--ease-smooth);background:0 0;border:none;border-bottom:2px solid #0000;font-size:.875rem;font-weight:600}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:var(--brand-blue);border-bottom-color:var(--brand-blue)}.portal-shell .tab-btn.active{background:var(--brand-blue-50);border-radius:var(--r-portal-pill);border-bottom-color:#0000}.kanban-container{align-items:flex-start;gap:1rem;min-height:550px;padding-bottom:1rem;display:flex;overflow:auto hidden}.kanban-lane{background:var(--bg-subtle);border-radius:var(--r-lg);border:1px solid var(--border-color);max-height:82vh;transition:border-color var(--ease-smooth),box-shadow var(--ease-smooth);flex-direction:column;flex:0 0 300px;gap:.75rem;padding:1rem;display:flex;overflow-y:auto}.kanban-lane.drag-over{border-color:var(--brand-blue);box-shadow:0 0 0 2px rgba(var(--brand-blue-rgb),.2)}.kanban-lane-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding-bottom:.625rem;display:flex}.kanban-lane-title{font-family:var(--font-ui);color:var(--text-primary);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:700;display:flex}.kanban-count{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-muted);border-radius:9999px;padding:.1rem .45rem;font-size:.7rem;font-weight:700}.kanban-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-md);cursor:grab;box-shadow:var(--shadow-xs);transition:all var(--ease-smooth);flex-direction:column;gap:.625rem;padding:.875rem 1rem;display:flex;position:relative;overflow:hidden}.kanban-card:before{content:"";border-radius:var(--r-xs) 0 0 var(--r-xs);width:3px;position:absolute;top:0;bottom:0;left:0}.kanban-card.urgency-high:before{background:var(--color-danger)}.kanban-card.urgency-medium:before{background:var(--color-warning)}.kanban-card.urgency-low:before{background:var(--color-success)}.kanban-card:hover{background:var(--bg-card-hover);box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-2px)scale(1.01)}.kanban-card:active{cursor:grabbing;transform:scale(.99)}.kanban-card-drag-placeholder{border:2px dashed var(--border-strong);border-radius:var(--r-md);background:0 0;min-height:80px;animation:1.5s ease-in-out infinite pulse-border}.modal-overlay{background:var(--bg-overlay);-webkit-backdrop-filter:blur(8px);z-index:1000;animation:fadeIn var(--ease-smooth) forwards;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.modal-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-xl);box-shadow:var(--shadow-xl);width:100%;max-width:900px;max-height:90vh;animation:scaleIn var(--ease-spring) forwards;overflow-y:auto}.modal-content.modal-sm{max-width:480px}.modal-content.modal-lg{max-width:1200px}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.5rem 1.75rem;display:flex}.modal-body{padding:1.5rem 1.75rem}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:.75rem;padding:1rem 1.75rem;display:flex}.drawer-overlay{background:var(--bg-overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;animation:fadeIn var(--ease-smooth) forwards;position:fixed;top:0;right:0;bottom:0;left:0}.drawer-panel{background:var(--bg-card);border-left:1px solid var(--border-color);width:480px;max-width:95vw;box-shadow:var(--shadow-xl);z-index:1001;animation:slideInRight var(--ease-express) forwards;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:98;background:#05081180;display:none;position:fixed;top:0;right:0;bottom:0;left:0}.sidebar-open .sidebar-overlay{display:block}.chat-pane{background:var(--bg-subtle);border-radius:var(--r-lg);border:1px solid var(--border-color);flex-direction:column;gap:1rem;height:400px;padding:1rem;display:flex;overflow-y:auto}.chat-bubble{border-radius:var(--r-lg);max-width:75%;animation:fadeUp var(--ease-smooth) forwards;padding:.75rem 1rem;font-size:.875rem;line-height:1.5}.chat-bubble.agent{background:linear-gradient(135deg,var(--brand-blue),var(--brand-blue-light));color:#fff;border-bottom-right-radius:var(--r-xs);box-shadow:0 2px 12px rgba(var(--brand-blue-rgb),.3);align-self:flex-end}.chat-bubble.client{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);border-bottom-left-radius:var(--r-xs);box-shadow:var(--shadow-xs);align-self:flex-start}.chat-bubble.system{color:var(--text-muted);text-align:center;background:0 0;align-self:center;font-size:.72rem;font-style:italic}.progress-track{background:var(--bg-subtle);border-radius:9999px;height:6px;overflow:hidden}.progress-fill{height:100%;transition:width 1s var(--ease-spring);background:linear-gradient(90deg,var(--brand-blue),var(--brand-cyan));border-radius:9999px}.progress-fill.orange{background:linear-gradient(90deg,var(--brand-orange),#f59e0b)}.progress-fill.green{background:linear-gradient(90deg,var(--color-success),#4ade80)}.progress-fill.danger{background:linear-gradient(90deg,var(--color-danger),#f87171)}.progress-ring{transform:rotate(-90deg)}.progress-ring-track{fill:none;stroke:var(--bg-subtle);stroke-width:6px}.progress-ring-fill{fill:none;stroke-width:6px;stroke-linecap:round;transition:stroke-dashoffset 1.2s var(--ease-spring);stroke:url(#ring-gradient)}.itinerary-day-box{border:1px solid var(--border-color);border-radius:var(--r-lg);background:var(--bg-card);box-shadow:var(--shadow-xs);transition:all var(--ease-smooth);margin-bottom:1.5rem;padding:1.25rem}.itinerary-day-box:hover{border-color:rgba(var(--brand-blue-rgb),.25);box-shadow:var(--shadow-md)}.costing-item-row{border-bottom:1px dashed var(--border-color);transition:background var(--ease-smooth);border-radius:var(--r-sm);justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.8125rem;display:flex}.costing-item-row:hover{background:var(--bg-subtle)}.itinerary-timeline{max-width:760px;position:relative}.itinerary-timeline:before{content:"";background:repeating-linear-gradient(var(--border-strong) 0 10px,transparent 10px 18px);width:2px;position:absolute;top:8px;bottom:8px;left:27px}.itinerary-day-node{gap:var(--space-5);padding:var(--space-5) 0;grid-template-columns:56px 1fr;display:grid;position:relative}.itinerary-day-node .day-badge{background:var(--bg-card);width:56px;height:56px;box-shadow:var(--shadow-sm);color:var(--brand-blue);font-family:var(--font-headings);z-index:1;border-radius:50%;place-items:center;font-size:1.125rem;font-weight:700;display:grid}.itinerary-day-node.day-today .day-badge{background:var(--brand-blue);color:#fff}.payment-schedule-track{background:var(--bg-subtle);border-radius:9999px;height:8px;position:relative}.payment-schedule-fill{background:linear-gradient(90deg,var(--brand-blue),var(--brand-cyan));height:100%;transition:width .8s var(--ease-spring);border-radius:9999px}.payment-milestone{background:var(--bg-card);border:3px solid var(--border-strong);border-radius:50%;width:16px;height:16px;position:absolute;top:50%;transform:translate(-50%,-50%)}.payment-milestone.paid{border-color:var(--color-success)}.payment-milestone.due-next{border-color:var(--brand-orange);box-shadow:0 0 0 4px var(--brand-orange-100)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.4)}}@keyframes pulse-badge{0%,to{border-color:#dc262647;box-shadow:0 0 #dc262600}50%{border-color:#dc26268c;box-shadow:0 0 0 3px #dc262617}}@media (prefers-reduced-motion:reduce){.pulse-badge{animation:none!important}}@keyframes pulse-border{0%,to{border-color:var(--border-strong)}50%{border-color:var(--brand-blue)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes countUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes glow-pulse{0%,to{box-shadow:0 0 rgba(var(--brand-blue-rgb),.4)}50%{box-shadow:0 0 0 8px rgba(var(--brand-blue-rgb),0)}}@keyframes shake{0%{transform:rotate(0)}15%{transform:rotate(12deg)}30%{transform:rotate(-12deg)}45%{transform:rotate(8deg)}60%{transform:rotate(-8deg)}75%{transform:rotate(4deg)}85%{transform:rotate(-4deg)}to{transform:rotate(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes gradient-flow{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.animate-fade-in{animation:fadeUp .3s var(--ease-smooth) forwards}.panel-fade-in{animation:fadeIn .3s var(--ease-smooth) forwards}.animate-scale-in{animation:scaleIn var(--ease-spring) forwards}.animate-slide-in{animation:slideInRight var(--ease-express) forwards}.animate-spin{animation:1s linear infinite spin}.animate-float{animation:3s ease-in-out infinite float}.animate-glow{animation:2s ease-in-out infinite glow-pulse}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.skeleton{background:linear-gradient(90deg,var(--bg-subtle) 25%,var(--bg-subtle-hover) 50%,var(--bg-subtle) 75%);border-radius:var(--r-md);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}.gradient-text{background:linear-gradient(135deg,var(--brand-blue),var(--brand-cyan));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.gradient-text-orange{background:linear-gradient(135deg,var(--brand-orange),#f59e0b);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.dark-theme input::-webkit-calendar-picker-indicator{filter:invert();cursor:pointer}input::-webkit-calendar-picker-indicator{cursor:pointer}@media (max-width:1024px){:root{--dashboard-grid-cols:repeat(2, 1fr);--charts-grid-cols:1fr;--chat-pane-grid-cols:1fr;--itinerary-builder-grid-cols:1fr}.crm-sidebar{z-index:99;transform:translate(-100%);width:var(--sidebar-width)!important}.sidebar-open .crm-sidebar{transform:translate(0)}.crm-main-viewport{padding:1.25rem;width:100%!important;margin-left:0!important}.hamburger-btn{padding:.5rem!important;display:inline-flex!important}.chat-workspace-grid{max-height:none!important;overflow:visible!important}.chat-workspace-left-pane,.chat-workspace-right-pane{height:auto!important}.chat-workspace-right-pane{margin-top:1.5rem;border-left:none!important;padding-left:0!important}}@media (max-width:640px){:root{--dashboard-grid-cols:1fr}.crm-main-viewport{padding:1rem}.kanban-lane{flex:0 0 270px}form.glass-card{grid-template-columns:1fr!important}form.glass-card>div{grid-column:span 1!important}}@media (min-width:2560px){:root{--dashboard-grid-cols:repeat(7, 1fr)}.crm-main-viewport{max-width:2400px;margin-left:max(var(--sidebar-width),calc((100vw - 2400px)/2))}}.filter-bar{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;width:100%;margin-bottom:1.5rem;padding:.875rem 1.25rem;display:flex}.filter-bar-group{flex-wrap:wrap;align-items:center;gap:.625rem;display:flex}.search-input-wrapper{flex:1;min-width:280px;position:relative}.search-input-wrapper svg{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-input-wrapper input{width:100%;height:38px;padding-left:2.5rem;font-size:.85rem}.dark-theme .hover-row:hover td{background:#ffffff0a!important}.light-theme .hover-row:hover td{background:#f0f6ff!important}.modal-overlay{background:var(--bg-overlay)!important}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--brand-blue)!important;box-shadow:0 0 0 3px rgba(var(--brand-blue-rgb),.15)!important}.print-only{display:none}@media print{@page{size:A4 portrait;margin:10mm}body{color:#000!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#fff!important;font-size:11pt!important}.web-only,.crm-sidebar,.sidebar-overlay,.hamburger-btn{display:none!important}.print-only{width:100%!important;display:block!important}.page-break{page-break-before:always}.avoid-break{page-break-inside:avoid}}.paatheya-tooltip{pointer-events:none;background-color:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--r-sm,6px);font-family:var(--font-ui,sans-serif);white-space:nowrap;box-shadow:var(--shadow-md,0 4px 12px #00000026);opacity:0;z-index:99999;padding:6px 10px;font-size:.75rem;font-weight:500;line-height:1.2;transition:opacity .15s ease-in-out,transform .15s ease-in-out;position:absolute;transform:scale(.95)}.paatheya-tooltip.visible{opacity:1;transform:scale(1)}.chat-widget{z-index:9999;position:fixed;bottom:20px;right:20px}.chat-widget-launcher{background:linear-gradient(135deg,var(--brand-blue),var(--brand-blue-light));color:#fff;cursor:pointer;width:58px;height:58px;box-shadow:var(--shadow-lg);transition:transform var(--ease-smooth),box-shadow var(--ease-smooth);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.chat-widget-launcher:hover{box-shadow:var(--shadow-xl);transform:scale(1.06)}.chat-widget-launcher:active{transform:scale(.98)}.chat-widget-launcher:focus-visible{box-shadow:0 0 0 4px rgba(var(--brand-blue-rgb),.35);outline:none}.chat-widget-pip{background:var(--brand-orange);color:#fff;min-width:20px;height:20px;font-family:var(--font-ui);text-align:center;box-shadow:0 0 0 2px var(--bg-card);border-radius:9999px;padding:0 5px;font-size:.68rem;font-weight:700;line-height:20px;position:absolute;top:-2px;right:-2px}.chat-widget-panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-lg);width:min(360px,100vw - 40px);height:min(520px,100vh - 140px);box-shadow:var(--shadow-xl);animation:fadeUp var(--ease-express) forwards;flex-direction:column;display:flex;position:absolute;bottom:74px;right:0;overflow:hidden}.chat-widget-header{background:linear-gradient(135deg,var(--brand-blue),var(--brand-blue-light));color:#fff;flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem;padding:.85rem 1rem;display:flex}.chat-widget-heading{align-items:center;gap:.5rem;display:flex}.chat-widget-title{font-family:var(--font-ui);font-size:.95rem;font-weight:600}.chat-widget-subtitle{opacity:.85;font-size:.7rem}.chat-widget-close{border-radius:var(--r-sm);color:#fff;cursor:pointer;width:30px;height:30px;transition:background var(--ease-smooth);background:#ffffff24;border:none;justify-content:center;align-items:center;display:inline-flex}.chat-widget-close:hover{background:#ffffff47}.chat-widget-body{background:var(--bg-app);flex-direction:column;flex:1;gap:.6rem;min-height:0;padding:1rem;display:flex;overflow-y:auto}.chat-widget-body .chat-bubble{max-width:85%}.chat-widget-time{opacity:.7;margin-top:.3rem;font-size:.65rem}.chat-widget-day{background:var(--bg-subtle);color:var(--text-muted);border-radius:9999px;align-self:center;padding:.15rem .6rem;font-size:.68rem;font-weight:600}.chat-widget-state{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:.5rem;margin:auto;padding:1.5rem 1rem;font-size:.85rem;display:flex}.chat-widget-state-title{font-family:var(--font-ui);color:var(--text-primary);font-size:.95rem;font-weight:600}.chat-widget-intro{background:var(--bg-card);flex-direction:column;gap:.6rem;padding:1rem;display:flex}.chat-widget-intro .form-label{margin-bottom:.15rem}.chat-widget-footer{border-top:1px solid var(--border-color);background:var(--bg-card);flex-shrink:0;padding:.75rem}.chat-widget-composer{align-items:flex-end;gap:.5rem;display:flex}.chat-widget-composer .form-textarea{resize:none;border-radius:var(--r-lg);flex:1;min-height:40px;max-height:120px;line-height:1.45}.chat-widget-send{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:flex}.chat-widget-hint{color:var(--text-muted);text-align:center;margin:.45rem 0 0;font-size:.68rem}@media (max-width:560px){.chat-widget{bottom:14px;right:14px}.chat-widget-panel{width:calc(100vw - 28px);height:min(70vh,520px)}}.crm-page-title{font-family:var(--font-headings);color:var(--text-primary);align-items:center;gap:.75rem;margin:0;font-size:1.5rem;font-weight:700;line-height:1.25;display:flex}.crm-page-subtitle{font-family:var(--font-body);color:var(--text-muted);margin:.2rem 0 0;font-size:.85rem;font-weight:400}.crm-page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.modal-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.animate-pop{animation:popIn var(--ease-spring) forwards}@keyframes popIn{0%{opacity:0;transform:scale(.94)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.spinner{border:2px solid var(--border-color);border-top-color:var(--brand-blue);vertical-align:-2px;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin;display:inline-block}.spinner-lg{border-width:3px;width:26px;height:26px}@media print{.no-print{display:none!important}}.hub-empty{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:.4rem;padding:3rem 1.5rem;display:flex}.hub-empty-icon{background:var(--bg-subtle);width:48px;height:48px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;margin-bottom:.35rem;display:flex}.hub-empty-title{font-family:var(--font-ui);color:var(--text-primary);margin:0;font-size:.95rem;font-weight:600}.hub-empty-body{max-width:36ch;margin:0;font-size:.85rem;line-height:1.55}.hub-empty .btn{margin-top:.5rem}.row-actions{align-items:center;gap:.3rem;display:flex}.custom-table tbody tr .row-actions{opacity:0;transition:opacity var(--ease-smooth)}.custom-table tbody tr:hover .row-actions,.custom-table tbody tr:focus-within .row-actions{opacity:1}@media (hover:none){.custom-table tbody tr .row-actions{opacity:1}}.action-btn{border:1px solid var(--border-color);border-radius:var(--r-sm);background:var(--bg-card);width:30px;height:30px;color:var(--text-muted);cursor:pointer;transition:all var(--ease-smooth);justify-content:center;align-items:center;padding:0;display:inline-flex}.action-btn:hover{color:var(--text-primary);border-color:var(--border-strong);background:var(--bg-subtle)}.action-btn:focus-visible{border-color:var(--brand-blue);box-shadow:0 0 0 3px rgba(var(--brand-blue-rgb),.15);outline:none}.action-btn.is-success:hover{color:var(--color-success);border-color:var(--color-success)}.action-btn.is-danger:hover{color:var(--color-danger);border-color:var(--color-danger)}.action-btn:disabled{opacity:.45;cursor:not-allowed}.custom-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.filter-chip{font-family:var(--font-ui);border:1px solid var(--border-color);background:var(--bg-subtle);color:var(--text-secondary);cursor:pointer;transition:all var(--ease-smooth);white-space:nowrap;border-radius:9999px;padding:.35rem .8rem;font-size:.78rem;font-weight:600}.filter-chip:hover{border-color:var(--border-strong);color:var(--text-primary);background:var(--bg-subtle-hover)}.filter-chip:focus-visible{box-shadow:0 0 0 3px rgba(var(--brand-blue-rgb),.2);outline:none}.filter-chip.is-active{background:var(--brand-blue);border-color:var(--brand-blue);color:#fff}.filter-chip.is-active:hover{background:var(--brand-blue-dark);border-color:var(--brand-blue-dark)}.tpl-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;display:grid}.tpl-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);transition:border-color var(--ease-smooth),box-shadow var(--ease-smooth);flex-direction:column;padding:1.15rem;display:flex}.tpl-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.tpl-card-flags{flex-wrap:wrap;gap:.35rem;min-height:20px;margin-bottom:.5rem;display:flex}.tpl-card-name{font-family:var(--font-ui);color:var(--text-primary);margin-bottom:.2rem;font-size:.95rem;font-weight:700}.tpl-card-meta{color:var(--text-muted);margin-bottom:1rem;font-size:.75rem}.tpl-card-actions{flex-wrap:wrap;gap:.35rem;margin-top:auto;display:flex}.tpl-card-btn{font-family:var(--font-ui);border-radius:var(--r-sm);border:1px solid var(--border-color);background:var(--bg-subtle);color:var(--text-secondary);cursor:pointer;transition:all var(--ease-smooth);align-items:center;gap:.3rem;padding:.35rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.tpl-card-btn:hover{border-color:var(--brand-blue);color:var(--brand-blue);background:var(--bg-card)}.tpl-card-btn:focus-visible{box-shadow:0 0 0 3px rgba(var(--brand-blue-rgb),.2);outline:none}.tpl-card-btn.is-danger{color:var(--color-danger);border-color:var(--color-danger-border)}.tpl-card-btn.is-danger:hover{background:var(--color-danger-bg);border-color:var(--color-danger);color:var(--color-danger)}.tpl-flag{letter-spacing:.02em;border:1px solid #0000;border-radius:9999px;padding:.15rem .6rem;font-size:.68rem;font-weight:700}.tpl-flag.is-preset{background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--color-warning-border)}.tpl-flag.is-default{background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success-border)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}:root{--text-xs: .7857rem;--text-sm: .8571rem;--text-base: .9286rem;--text-md: 1rem;--text-lg: 1.1429rem;--text-xl: 1.4286rem;--text-2xl: 2rem;--numeric: tabular-nums;--sidebar-width: 248px;--sidebar-collapsed-width: 60px;--subnav-height: 44px;--tabbar-height: 58px;--series-1: var(--brand-blue);--series-2: var(--brand-orange);--series-3: var(--brand-cyan);--series-4: #7C3AED;--series-5: #117C38;--series-6: #A45A05;--series-7: #6C8FD6;--series-8: #C2410C;--grid-line: var(--border-color)}.dark-theme{--series-1: #6C8FD6;--series-2: #F4A876;--series-3: var(--brand-cyan);--series-4: #A78BFA;--series-5: #4ADE80;--series-6: #FBBF24;--series-7: #93C5FD;--series-8: #FB923C}.crm-layout h1,.crm-layout h2,.crm-layout h3,.crm-layout h4,.crm-layout h5,.crm-layout h6,.crm-page-title,.card-title,.section-title{font-family:var(--font-ui);font-weight:600;letter-spacing:-.011em;color:var(--text-primary)}.crm-page-title{font-size:var(--text-xl);line-height:1.25;gap:var(--space-2)}.crm-page-subtitle{font-size:var(--text-base);color:var(--text-muted)}.num,td.num,.stat-value,.kpi-value,.report-table td[data-numeric=true]{font-variant-numeric:var(--numeric);font-feature-settings:"tnum" 1}.crm-main-viewport{padding:var(--space-6) var(--space-6) var(--space-10);gap:var(--space-5)}.crm-sidebar:before{display:none}.crm-sidebar{box-shadow:none;border-right:1px solid var(--border-color)}.sidebar-nav-btn{font-size:var(--text-base);padding:.5rem .75rem;border-radius:var(--r-sm);border:none;color:var(--text-secondary)}.sidebar-nav-btn:hover{background:var(--bg-subtle);color:var(--text-primary)}.sidebar-nav-btn:hover svg{transform:none;color:currentColor}.sidebar-nav-btn.active{background:var(--bg-subtle);color:var(--text-primary);font-weight:600;border:none}.sidebar-nav-btn.active:before{content:"";position:absolute;left:0;top:50%;width:2px;height:16px;transform:translateY(-50%);border-radius:0 2px 2px 0;background:var(--brand-blue)}.dark-theme .sidebar-nav-btn.active{background:#ffffff0f}.dark-theme .sidebar-nav-btn.active:before{background:var(--primary-blue)}.sidebar-section-label{font-size:var(--text-xs);letter-spacing:.07em;font-weight:600;color:var(--text-placeholder)}.nav-sub{list-style:none;margin:2px 0 var(--space-2);padding-left:.9rem;border-left:1px solid var(--border-color);margin-left:1.05rem;display:flex;flex-direction:column;gap:1px}.nav-sub-item{width:100%;display:flex;align-items:center;gap:.5rem;padding:.34rem .5rem;border:none;background:transparent;border-radius:var(--r-sm);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--text-muted);cursor:pointer;text-align:left;white-space:nowrap;transition:color var(--ease-smooth),background var(--ease-smooth)}.nav-sub-item:hover{background:var(--bg-subtle);color:var(--text-primary)}.nav-sub-item.active{color:var(--brand-blue);font-weight:600}.dark-theme .nav-sub-item.active{color:var(--primary-blue)}.crm-sidebar.sidebar-collapsed .nav-sub{display:none}.surface{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.glass-card{box-shadow:var(--shadow-sm);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:var(--r-lg)}.surface-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-color);flex-wrap:wrap}.surface-head h3{font-size:var(--text-md);margin:0}.surface-head p{font-size:var(--text-sm);color:var(--text-muted);margin:2px 0 0}.surface-body{padding:var(--space-5)}.surface-body-flush{padding:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;padding-bottom:var(--space-1)}.page-head-text{min-width:0}.page-head-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.breadcrumb{display:flex;align-items:center;gap:.35rem;font-size:var(--text-xs);color:var(--text-muted);margin-bottom:2px;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.kpi-row{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));container-type:inline-size}.kpi-tile{position:relative;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-md);padding:var(--space-4);display:flex;flex-direction:column;gap:.35rem;min-width:0;text-align:left;cursor:pointer;transition:border-color var(--ease-smooth),box-shadow var(--ease-smooth)}.kpi-tile:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.kpi-tile:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px}.kpi-tile[data-static=true]{cursor:default}.kpi-label{font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-value{font-family:var(--font-ui);font-size:var(--text-2xl);font-weight:600;line-height:1.1;color:var(--text-primary);letter-spacing:-.02em}.kpi-foot{display:flex;align-items:center;gap:.3rem;font-size:var(--text-xs);color:var(--text-muted)}.kpi-delta{display:inline-flex;align-items:center;gap:.15rem;font-weight:600}.kpi-delta[data-dir=up]{color:var(--color-success)}.kpi-delta[data-dir=down]{color:var(--color-danger)}.kpi-tile[data-tone=warning] .kpi-value{color:var(--color-warning)}@container (max-width: 520px){.kpi-value{font-size:var(--text-xl)}}.report-layout{display:flex;flex-direction:column;gap:var(--space-5);min-width:0;container-type:inline-size;container-name:page}.report-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-md)}.report-toolbar .spacer{flex:1 1 auto;min-width:0}.chip-group{display:inline-flex;background:var(--bg-subtle);border-radius:var(--r-sm);padding:2px;gap:2px}.chip{border:none;background:transparent;padding:.3rem .6rem;border-radius:calc(var(--r-sm) - 1px);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:500;color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:background var(--ease-smooth),color var(--ease-smooth)}.chip:hover{color:var(--text-primary)}.chip.active{background:var(--bg-card);color:var(--text-primary);font-weight:600;box-shadow:var(--shadow-xs)}.report-grid{display:grid;gap:var(--space-4);grid-template-columns:minmax(0,1fr)}.report-grid>*{min-width:0}.table-scroll{min-width:0}@container page (min-width: 860px){.report-grid[data-split=true]{grid-template-columns:repeat(2,minmax(0,1fr))}}@container page (min-width: 1500px){.report-grid[data-split=true]{grid-template-columns:repeat(3,minmax(0,1fr))}}.chart-frame{width:100%;min-width:0}.report-catalog{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.report-card{display:flex;flex-direction:column;gap:.3rem;padding:var(--space-4);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-md);text-align:left;cursor:pointer;transition:border-color var(--ease-smooth),box-shadow var(--ease-smooth),transform var(--ease-smooth)}.report-card:hover{border-color:var(--brand-blue);box-shadow:var(--shadow-sm)}.report-card:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px}.report-card-title{font-family:var(--font-ui);font-size:var(--text-md);font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:.4rem}.report-card-desc{font-size:var(--text-sm);color:var(--text-muted);line-height:1.5}.category-head{display:flex;align-items:baseline;gap:var(--space-2);margin:var(--space-2) 0 var(--space-1)}.category-head h3{font-size:var(--text-md);margin:0}.category-head span{font-size:var(--text-xs);color:var(--text-muted)}.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:0 0 var(--r-lg) var(--r-lg)}.report-table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.report-table th{position:sticky;top:0;z-index:1;background:var(--bg-card);text-align:left;font-family:var(--font-ui);font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;padding:.6rem var(--space-4);border-bottom:1px solid var(--border-color);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.report-table th:hover{color:var(--text-primary)}.report-table th[data-align=right],.report-table td[data-align=right]{text-align:right}.report-table td{padding:.55rem var(--space-4);border-bottom:1px solid var(--border-color);color:var(--text-secondary);white-space:nowrap;max-width:34ch;overflow:hidden;text-overflow:ellipsis}.report-table td:first-child{color:var(--text-primary);font-weight:500}.report-table tbody tr:hover td{background:var(--table-row-hover)}.report-table tbody tr:last-child td{border-bottom:none}.report-table tfoot td{font-weight:600;color:var(--text-primary);background:var(--bg-subtle);border-top:1px solid var(--border-strong);border-bottom:none}.table-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);font-size:var(--text-sm);color:var(--text-muted)}.palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-overlay);z-index:2000;display:flex;align-items:flex-start;justify-content:center;padding:10vh var(--space-4) var(--space-4)}.palette{width:min(640px,100%);max-height:70vh;display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-lg);box-shadow:var(--shadow-xl);overflow:hidden}.palette-input-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-color)}.palette-input{flex:1;border:none;background:transparent;outline:none;font-family:var(--font-ui);font-size:var(--text-lg);color:var(--text-primary)}.palette-input::-moz-placeholder{color:var(--text-placeholder)}.palette-input::placeholder{color:var(--text-placeholder)}.palette-results{overflow-y:auto;padding:var(--space-2)}.palette-group-label{padding:var(--space-2) var(--space-3) .3rem;font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-placeholder)}.palette-item{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:.5rem var(--space-3);border:none;background:transparent;border-radius:var(--r-sm);font-family:var(--font-ui);font-size:var(--text-base);color:var(--text-secondary);cursor:pointer;text-align:left}.palette-item[data-active=true]{background:var(--bg-subtle);color:var(--text-primary)}.palette-item .hint{margin-left:auto;font-size:var(--text-xs);color:var(--text-muted)}.palette-foot{display:flex;gap:var(--space-4);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);font-size:var(--text-xs);color:var(--text-muted)}kbd{font-family:var(--font-mono);font-size:.72em;padding:1px 5px;border-radius:4px;background:var(--bg-subtle);border:1px solid var(--border-color);color:var(--text-muted)}.search-trigger{display:inline-flex;align-items:center;gap:var(--space-2);padding:.38rem .6rem;min-width:180px;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--r-sm);color:var(--text-muted);font-family:var(--font-ui);font-size:var(--text-sm);cursor:pointer;transition:border-color var(--ease-smooth),color var(--ease-smooth)}.search-trigger:hover{border-color:var(--border-strong);color:var(--text-secondary)}.search-trigger kbd{margin-left:auto}.state-block{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-5);text-align:center;color:var(--text-muted)}.state-block svg{opacity:.4}.state-block h4{font-size:var(--text-md);color:var(--text-secondary);margin:0}.state-block p{font-size:var(--text-sm);max-width:42ch;margin:0}.skeleton{background:linear-gradient(90deg,var(--bg-subtle) 25%,var(--bg-subtle-hover) 37%,var(--bg-subtle) 63%);background-size:400% 100%;animation:shimmer 1.4s ease-in-out infinite;border-radius:var(--r-sm)}@keyframes shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}@media (prefers-reduced-motion: reduce){.skeleton{animation:none}}@media (max-width: 1024px){.crm-main-viewport{padding:var(--space-4) var(--space-4) var(--space-10)}.report-grid[data-split=true]{grid-template-columns:minmax(0,1fr)}}@media (max-width: 768px){.page-head{align-items:flex-start;flex-direction:column;gap:var(--space-3)}.page-head-actions{width:100%}.report-toolbar{align-items:stretch}.report-toolbar .spacer{display:none}.search-trigger{min-width:0}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}@media (max-width: 640px){.crm-main-viewport{padding:var(--space-3) var(--space-3) calc(var(--tabbar-height) + var(--space-6))}.kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-value{font-size:var(--text-xl)}.report-catalog{grid-template-columns:minmax(0,1fr)}.report-table td{max-width:20ch}.palette-backdrop{padding:var(--space-3);align-items:flex-end}.palette{max-height:80vh}}.tab-bar{display:none}@media (max-width: 640px){.tab-bar{position:fixed;left:0;right:0;bottom:0;height:calc(var(--tabbar-height) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);display:flex;align-items:stretch;background:var(--bg-sidebar);border-top:1px solid var(--border-color);z-index:90}.tab-bar-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:none;background:transparent;font-family:var(--font-ui);font-size:.6875rem;font-weight:500;color:var(--text-muted);cursor:pointer;min-width:0}.tab-bar-btn span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-bar-btn.active{color:var(--brand-blue);font-weight:600}.dark-theme .tab-bar-btn.active{color:var(--primary-blue)}}@media (hover: none) and (pointer: coarse){.chip,.nav-sub-item,.sidebar-nav-btn,.palette-item{min-height:40px}.report-table td,.report-table th{padding-top:.7rem;padding-bottom:.7rem}}@media print{.crm-sidebar,.tab-bar,.report-toolbar,.page-head-actions,.search-trigger{display:none!important}.crm-main-viewport{margin-left:0!important;width:100%!important;padding:0!important}.report-table td{white-space:normal;max-width:none}}@media (max-width: 900px){.header-search span,.header-search kbd{display:none}.header-search{min-width:0;padding:.45rem}}@media (max-width: 640px){.chat-widget{bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom,0px) + 12px)!important}.chat-widget-panel{max-height:calc(100vh - var(--tabbar-height) - 40px)}}.scroll-row{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;max-width:100%;scroll-snap-type:x proximity}.scroll-row::-webkit-scrollbar{height:0}.scroll-row>*{flex-shrink:0;scroll-snap-align:start}.hub-toolbar-row{flex-wrap:wrap}@media (max-width: 640px){.hub-toolbar-row>.scroll-row{flex:1 1 100%;order:2}}@media (max-width: 640px){.crm-header{flex-wrap:wrap;align-items:flex-start!important;gap:.6rem!important;padding-bottom:.75rem!important}.crm-header>div:first-child{flex:1 1 100%;min-width:0}.crm-header>div:first-child h2{font-size:var(--text-lg)}.crm-header .header-search{order:3;flex:1 1 auto}}.row-actions-cell{width:1%;white-space:nowrap;padding-left:var(--space-2)!important}.row-actions{display:flex;align-items:center;gap:.3rem;justify-content:flex-end;opacity:0;transition:opacity var(--ease-smooth)}.report-table tbody tr:hover .row-actions,.report-table tbody tr:focus-within .row-actions{opacity:1}.row-action{display:inline-flex;align-items:center;gap:.28rem;padding:.22rem .5rem;border:1px solid var(--border-color);border-radius:var(--r-sm);background:var(--bg-card);color:var(--text-secondary);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:600;white-space:nowrap;cursor:pointer;transition:border-color var(--ease-smooth),color var(--ease-smooth),background var(--ease-smooth)}.row-action:hover{border-color:var(--brand-blue);color:var(--brand-blue)}.row-action:focus-visible{outline:2px solid var(--brand-blue);outline-offset:1px}.row-action[data-tone=success]:hover{border-color:var(--color-success);color:var(--color-success)}.report-table tbody tr[data-selected=true] td{background:rgba(var(--brand-blue-rgb),.06)}.dark-theme .report-table tbody tr[data-selected=true] td{background:#4f8ef71f}.report-table input[type=checkbox]{width:15px;height:15px;accent-color:var(--brand-blue);cursor:pointer;vertical-align:middle}.selection-bar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--bg-subtle);font-family:var(--font-ui);font-size:var(--text-base);color:var(--text-primary)}.selection-bar .spacer{flex:1 1 auto}@media (hover: none) and (pointer: coarse){.row-actions{opacity:1}.row-action{padding:.4rem .6rem}}.bulk-field{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap}.bulk-field select{width:auto;min-width:150px;padding:.3rem .5rem}.custom-table input[type=checkbox]{width:15px;height:15px;accent-color:var(--brand-blue);cursor:pointer;vertical-align:middle}.custom-table tr[data-selected=true] td{background:rgba(var(--brand-blue-rgb),.06)}.dark-theme .custom-table tr[data-selected=true] td{background:#4f8ef71f}.field-label{display:block;font-size:var(--text-xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.4rem}.saved-views-popover{position:absolute;top:calc(100% + 6px);right:0;width:min(320px,calc(100vw - 2rem));background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--r-md);box-shadow:var(--shadow-lg);z-index:60;max-height:70vh;overflow-y:auto}.saved-views-section{padding:var(--space-4)}.saved-views-section .bulk-field{font-size:var(--text-sm)}.saved-views-section .bulk-field select{min-width:0}@media (max-width: 640px){.saved-views-popover{right:auto;left:0}}.header-actions{min-width:0}@media (max-width: 768px){.header-status-pill{padding:.4rem .5rem;gap:.3rem}}@media (max-width: 560px){.header-company-chip{display:none!important}.header-actions{gap:.4rem}}@media (max-width: 430px){.header-status-pill.pulse-badge{display:none!important}.header-status-pill{padding:.35rem}.header-status-pill svg{display:none}}.bell-panel{z-index:10000!important}@media (max-width: 560px){.bell-panel{position:fixed!important;top:auto!important;right:10px!important;left:10px!important;width:auto!important;bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom,0px) + 12px);max-height:calc(100vh - var(--tabbar-height) - 90px);display:flex;flex-direction:column}.bell-panel>div:nth-child(2){flex:1;max-height:none!important}}.currency-select-wrap{display:flex;align-items:center;gap:.5rem}.currency-helper-line{font-size:var(--text-xs);color:var(--text-muted);display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.25rem}.currency-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem;border-radius:9999px;font-size:var(--text-xs);font-weight:600;background:var(--bg-subtle);border:1px solid var(--border-color);color:var(--text-primary)}@media (max-width: 1024px){.exchange-rates-grid{grid-template-columns:1fr}}@media (max-width: 768px){.crm-page-header{flex-direction:column;align-items:flex-start;gap:.75rem}.crm-page-header>button{width:100%;justify-content:center}.currency-helper-line{flex-direction:column;align-items:flex-start;gap:.25rem}}@media (max-width: 640px){.filter-bar{flex-direction:column;align-items:stretch;gap:.5rem}.filter-bar .search-input-wrapper,.filter-bar select,.filter-bar input{width:100%!important}.custom-table-container{border-radius:6px}.modal-content{width:100%!important;max-width:100%!important;margin:.5rem!important;padding:1rem!important}}.traveller-pwa-container{min-height:100vh;min-height:100dvh;background-color:var(--bg-subtle, #f8fafc);color:var(--text-primary, #0f172a);display:flex;flex-direction:column;padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}.traveller-header{position:sticky;top:0;z-index:40;background:var(--bg-card, #ffffff);border-bottom:1px solid var(--border-color, #e2e8f0);box-shadow:0 1px 3px #0000000a}.traveller-header-inner{max-width:600px;margin:0 auto;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.traveller-brand{display:flex;align-items:center;gap:.5rem}.traveller-logo-img{height:28px;max-width:120px;-o-object-fit:contain;object-fit:contain}.traveller-logo-text{font-size:1rem;font-weight:700;letter-spacing:-.01em}.traveller-header-actions{display:flex;align-items:center;gap:.5rem}.traveller-ref-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .5rem;border-radius:9999px;background:var(--bg-subtle, #f1f5f9);border:1px solid var(--border-color, #cbd5e1);font-size:.75rem;font-weight:600;color:var(--text-secondary, #475569);cursor:pointer}.traveller-status-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .5rem;border-radius:9999px;font-size:.7rem;font-weight:600}.traveller-status-badge.is-online{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.traveller-status-badge.is-offline{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.traveller-updated-banner{background:var(--bg-card, #ffffff);border-bottom:1px solid var(--border-color, #e2e8f0);padding:.4rem 1rem}.traveller-updated-inner{max-width:600px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;font-size:.75rem}.traveller-updated-text{display:flex;align-items:center;gap:.4rem;color:var(--text-secondary, #64748b);font-weight:500}.traveller-updated-dot{width:7px;height:7px;border-radius:50%;background-color:#10b981}.traveller-updated-banner.is-cached .traveller-updated-dot{background-color:#f59e0b}.traveller-refresh-btn{display:inline-flex;align-items:center;gap:.25rem;background:none;border:1px solid var(--border-color, #cbd5e1);border-radius:6px;padding:.2rem .5rem;font-size:.7rem;font-weight:600;color:var(--text-primary, #0f172a);cursor:pointer}.traveller-main-viewport{flex:1;max-width:600px;width:100%;margin:0 auto;padding:1rem;box-sizing:border-box}.traveller-page-container{display:flex;flex-direction:column;gap:1rem}.traveller-hero-card{background:var(--bg-card, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:14px;padding:1.25rem;box-shadow:0 1px 3px #00000008}.traveller-hero-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.traveller-destination-pill{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:600;color:var(--brand-blue, #02379b);background:#eff6ff;border:1px solid #bfdbfe;padding:.2rem .6rem;border-radius:9999px}.traveller-confirmed-pill{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:600;color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;padding:.2rem .6rem;border-radius:9999px}.traveller-hero-title{font-size:1.25rem;font-weight:700;line-height:1.3;margin:0 0 .5rem;color:var(--text-primary, #0f172a)}.traveller-hero-summary{font-size:.85rem;color:var(--text-secondary, #64748b);line-height:1.45;margin:0 0 1rem}.traveller-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color, #e2e8f0)}.traveller-metric-item{display:flex;align-items:center;gap:.5rem}.traveller-metric-icon{color:var(--brand-blue, #02379b);flex-shrink:0}.traveller-metric-label{font-size:.7rem;color:var(--text-muted, #94a3b8);text-transform:uppercase;font-weight:600}.traveller-metric-val{font-size:.85rem;font-weight:600;color:var(--text-primary, #0f172a)}.traveller-timeline-wrapper{display:flex;flex-direction:column;gap:.75rem}.traveller-timeline-header{display:flex;align-items:center;justify-content:space-between}.traveller-timeline-title{font-size:1rem;font-weight:700;margin:0}.traveller-toggle-links{display:flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--text-muted, #94a3b8)}.traveller-link-btn{background:none;border:none;padding:0;font-size:.75rem;font-weight:600;color:var(--brand-blue, #02379b);cursor:pointer}.traveller-days-list{display:flex;flex-direction:column;gap:.75rem}.traveller-day-card{background:var(--bg-card, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #00000005}.traveller-day-toggle{width:100%;display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;background:none;border:none;text-align:left;cursor:pointer}.traveller-day-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:#eff6ff;color:var(--brand-blue, #02379b);flex-shrink:0}.traveller-day-badge span{font-size:.6rem;text-transform:uppercase;font-weight:700;line-height:1}.traveller-day-badge strong{font-size:1.1rem;line-height:1;font-weight:800}.traveller-day-heading{flex:1;min-width:0}.traveller-day-title{font-size:.95rem;font-weight:600;margin:0;color:var(--text-primary, #0f172a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.traveller-day-distance{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--text-muted, #64748b);margin-top:.15rem}.traveller-chevron{color:var(--text-muted, #94a3b8);flex-shrink:0}.traveller-day-content{padding:0 1rem 1rem;border-top:1px solid var(--border-color, #f1f5f9)}.traveller-day-desc{font-size:.85rem;line-height:1.5;color:var(--text-secondary, #475569);margin:.75rem 0}.traveller-items-box{background:var(--bg-subtle, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:8px;padding:.75rem;margin-top:.5rem}.traveller-items-label{font-size:.75rem;font-weight:700;color:var(--text-secondary, #475569);margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.02em}.traveller-items-list{display:flex;flex-direction:column;gap:.4rem}.traveller-item-row{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-primary, #0f172a)}.traveller-item-qty{font-size:.75rem;font-weight:600;color:var(--text-muted, #64748b);background:var(--bg-card, #ffffff);border:1px solid var(--border-color, #cbd5e1);padding:.1rem .35rem;border-radius:4px}.traveller-vouchers-list{display:flex;flex-direction:column;gap:1rem}.traveller-voucher-card{background:var(--bg-card, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:14px;padding:1.25rem;box-shadow:0 1px 3px #00000008}.traveller-voucher-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:1rem}.traveller-voucher-title-group{display:flex;align-items:center;gap:.75rem}.traveller-voucher-icon{width:40px;height:40px;border-radius:10px;background:var(--bg-subtle, #f1f5f9);display:flex;align-items:center;justify-content:center;flex-shrink:0}.traveller-voucher-title{font-size:1rem;font-weight:700;margin:0;color:var(--text-primary, #0f172a)}.traveller-voucher-docno{font-size:.75rem;font-family:monospace;color:var(--text-muted, #64748b)}.traveller-conf-callout{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;padding:.75rem 1rem;margin-bottom:1rem}.traveller-conf-label{font-size:.7rem;text-transform:uppercase;font-weight:700;color:var(--brand-blue, #02379b);letter-spacing:.03em;margin-bottom:.2rem}.traveller-conf-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.traveller-conf-code{font-size:1.15rem;font-family:monospace;font-weight:800;color:#1e3a8a;letter-spacing:.05em}.traveller-copy-action-btn{display:inline-flex;align-items:center;gap:.35rem;background:#fff;border:1px solid #93c5fd;border-radius:6px;padding:.35rem .75rem;font-size:.8rem;font-weight:600;color:var(--brand-blue, #02379b);cursor:pointer}.traveller-voucher-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color, #f1f5f9)}.traveller-voucher-detail{display:flex;flex-direction:column;gap:.15rem}.traveller-vdetail-label{font-size:.7rem;text-transform:uppercase;font-weight:600;color:var(--text-muted, #94a3b8)}.traveller-vdetail-val{font-size:.85rem;font-weight:600;color:var(--text-primary, #0f172a)}.traveller-voucher-items{margin-bottom:.75rem}.traveller-vitems-title{font-size:.75rem;font-weight:700;color:var(--text-secondary, #475569);text-transform:uppercase;margin-bottom:.4rem}.traveller-vitems-list{display:flex;flex-direction:column;gap:.5rem}.traveller-vitem-row{display:flex;align-items:center;justify-content:space-between;background:var(--bg-subtle, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:8px;padding:.6rem .75rem}.traveller-vitem-title{font-size:.85rem;font-weight:600;display:block}.traveller-vitem-sub{font-size:.75rem;color:var(--text-secondary, #64748b);display:block}.traveller-vitem-desc{font-size:.75rem;color:var(--text-muted, #64748b);margin:.2rem 0 0}.traveller-voucher-terms{display:flex;align-items:flex-start;gap:.4rem;font-size:.75rem;color:var(--text-muted, #64748b);background:var(--bg-subtle, #f8fafc);padding:.5rem .75rem;border-radius:6px}.traveller-emergency-card{background:#fef2f2;border:1px solid #fecaca;border-radius:14px;padding:1.25rem;box-shadow:0 1px 3px #00000008}.traveller-emergency-header{display:flex;align-items:center;gap:.6rem;margin-bottom:1rem}.traveller-emergency-title{font-size:1rem;font-weight:700;color:#991b1b;margin:0}.traveller-emergency-subtitle{font-size:.75rem;color:#b91c1c;margin:0}.traveller-emergency-list{display:flex;flex-direction:column;gap:.6rem}.traveller-contact-action-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;background:#fff;border:1px solid #fca5a5;border-radius:10px;padding:.75rem 1rem}.traveller-contact-name{font-size:.85rem;font-weight:700;color:#7f1d1d;display:block}.traveller-contact-desc{font-size:.75rem;color:#991b1b;display:block}.traveller-call-btn.is-emergency{display:inline-flex;align-items:center;gap:.35rem;background:#dc2626;color:#fff;padding:.45rem .85rem;border-radius:8px;font-size:.8rem;font-weight:700;text-decoration:none}.traveller-contact-card{background:var(--bg-card, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:14px;padding:1.25rem}.traveller-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.85rem}.traveller-card-title{font-size:.95rem;font-weight:700;margin:0}.traveller-manager-profile{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.traveller-manager-avatar{width:44px;height:44px;border-radius:50%;background:var(--brand-blue, #02379b);color:#fff;font-weight:700;font-size:1.1rem;display:flex;align-items:center;justify-content:center}.traveller-manager-name{font-size:1rem;font-weight:700;margin:0}.traveller-manager-role{font-size:.75rem;color:var(--text-muted, #64748b)}.traveller-contact-btn-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.traveller-action-button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.65rem 1rem;border-radius:10px;font-size:.85rem;font-weight:600;text-decoration:none}.traveller-action-button.is-call{background:var(--brand-blue, #02379b);color:#fff}.traveller-action-button.is-email{background:var(--bg-subtle, #f1f5f9);color:var(--text-primary, #0f172a);border:1px solid var(--border-color, #cbd5e1)}.traveller-operator-info{margin-bottom:1rem}.traveller-operator-name{font-size:1.05rem;font-weight:700;margin:0 0 .25rem}.traveller-operator-tagline{font-size:.8rem;color:var(--text-secondary, #64748b);margin:0 0 .6rem}.traveller-operator-row{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-secondary, #475569);margin-bottom:.25rem}.traveller-op-link{color:var(--brand-blue, #02379b);text-decoration:none;font-weight:500}.traveller-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:50;background:var(--bg-card, #ffffff);border-top:1px solid var(--border-color, #e2e8f0);padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 -2px 10px #0000000d}.traveller-bottom-nav-inner{max-width:600px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);height:60px}.traveller-nav-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;background:none;border:none;color:var(--text-muted, #64748b);cursor:pointer;transition:color .15s ease;padding:.35rem 0}.traveller-nav-tab.is-active{color:var(--brand-blue, #02379b);font-weight:600}.traveller-nav-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.traveller-nav-badge{position:absolute;top:-4px;right:-8px;background:var(--brand-blue, #02379b);color:#fff;font-size:.65rem;font-weight:700;border-radius:9999px;padding:0 .35rem;min-width:14px;height:14px;line-height:14px;text-align:center}.traveller-nav-label{font-size:.7rem;letter-spacing:.01em}.traveller-loading-screen,.traveller-error-screen{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:1.5rem;box-sizing:border-box;background:var(--bg-subtle, #f8fafc)}.traveller-loading-card,.traveller-error-card{background:var(--bg-card, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:16px;padding:2rem 1.5rem;max-width:420px;width:100%;text-align:center;box-shadow:0 4px 12px #0000000d}.traveller-spinner{width:40px;height:40px;border:3px solid var(--border-color, #e2e8f0);border-top-color:var(--brand-blue, #02379b);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1.25rem}.traveller-error-icon-box{margin-bottom:1rem}.traveller-error-title{font-size:1.2rem;font-weight:700;margin:0 0 .5rem}.traveller-error-message{font-size:.85rem;color:var(--text-secondary, #475569);line-height:1.45;margin:0 0 .75rem}.traveller-error-hint{font-size:.8rem;color:var(--text-muted, #94a3b8);line-height:1.45;margin:0 0 1.5rem}.traveller-btn-primary{background:var(--brand-blue, #02379b);color:#fff;border:none;border-radius:10px;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;cursor:pointer;width:100%}
