:root{--bg: #fdfbf7;--bg-dark: #f4f1ea;--panel: #ffffff;--border: #e5e7eb;--text: #1e1b4b;--muted: #6b7280;--brand: #dba11a;--brand-2: #c4910f;--success: #22c55e;--danger: #ef4444;--nav-bg: #e8ebf0;--nav-bg-2: #e8ebf0;--nav-border: #d1d5db;--nav-text: #6b7280;--nav-text-strong: #1e1b4b;--nav-active: rgba(255, 255, 255, .8);--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 6px rgba(0,0,0,.07);--shadow-lg: 0 10px 24px rgba(0,0,0,.1);--radius-sm: .375rem;--radius: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--surface: var(--panel);--accent: var(--brand);--accent-subtle: rgba(219,161,26,.1);--hover: rgba(0,0,0,.04);--bg-hover: rgba(0,0,0,.04);--bg-card: var(--panel);--primary: var(--brand);--fg: var(--text)}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg);letter-spacing:.005em}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 320,"GRAD" 0,"opsz" 20}.app-root{display:grid;grid-template-columns:260px 1fr;height:100vh;overflow:hidden}.global-nav{background:var(--nav-bg);color:var(--nav-text);border-right:1px solid var(--nav-border);padding:24px 16px 20px;display:flex;flex-direction:column;gap:20px;overflow:visible;min-height:100vh}.brand-box{display:flex;flex-direction:column;gap:4px;padding:8px 10px 12px;border:none;border-radius:var(--radius-lg);background:transparent}.brand-icon{display:none}.brand-box h1{margin:0;font-size:22px;font-family:Inter,sans-serif;font-weight:700;font-style:normal;color:var(--nav-text-strong);letter-spacing:-.015em;line-height:1}.brand-box p{margin:0;font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);font-weight:500}.nav-links{display:flex;flex-direction:column;gap:3px;flex:1;overflow-y:auto;min-height:0;overflow:auto;padding-right:4px}.nav-link{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--nav-text);padding:10px 12px;border-radius:var(--radius);font-size:13px;font-weight:500;text-transform:none;letter-spacing:normal;border:1px solid transparent;transition:background-color .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.nav-link:hover{background:#fff9;border-color:transparent;color:var(--nav-text-strong)}.nav-link.active{background:#fff;border-color:#0000000d;color:var(--brand);box-shadow:var(--shadow-sm)}.nav-link.active .material-symbols-outlined{color:var(--brand)}.nav-footer{margin-top:auto;display:flex;gap:10px;align-items:center;padding:12px;border:1px solid var(--nav-border);border-radius:var(--radius-lg);background:#ffffff80}.nav-footer .avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--brand);color:#fff;font-size:11px;font-weight:700}.nav-footer strong{display:block;font-size:12px;color:var(--nav-text-strong)}.nav-footer small{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.page-host{min-height:0;overflow:auto;padding:16px;background:var(--bg)}.page-shell{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.page-head{padding:20px 28px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--panel)}.page-head h2{margin:0;font-size:24px;font-family:Inter,sans-serif;font-weight:700;font-style:normal;letter-spacing:-.01em;color:var(--text);line-height:1}.page-head p{margin:5px 0 0;color:var(--muted);font-size:12px;text-transform:none;letter-spacing:normal;font-weight:500;line-height:1.4}.btn{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--panel);color:var(--text);padding:8px 16px;font-size:13px;font-weight:600;text-transform:none;letter-spacing:normal;line-height:1.2;cursor:pointer;transition:border-color .14s ease,background-color .14s ease,color .14s ease,transform .14s ease,box-shadow .14s ease}.btn:hover{background:var(--panel);border-color:var(--brand);color:var(--text);box-shadow:var(--shadow-sm)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:700;letter-spacing:normal}.btn.primary:hover{background:var(--brand-2);border-color:var(--brand-2);color:#fff;box-shadow:var(--shadow-md)}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric{border:1px solid var(--border);border-radius:var(--radius-xl);padding:20px 18px;background:var(--panel);cursor:default;box-shadow:var(--shadow-sm);transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}.metric:hover{background:var(--brand);box-shadow:var(--shadow-md)}.metric:hover small,.metric:hover h3{color:#fff}.metric:hover .delta.up{color:#bbf7d0}.metric:hover .delta.down{color:#fecaca}.metric small{color:var(--muted);text-transform:uppercase;font-size:10px;letter-spacing:.1em;font-weight:600;transition:color .15s ease}.metric h3{margin:10px 0 0;font-size:36px;font-weight:700;letter-spacing:-.04em;line-height:1;transition:color .15s ease}.metric .delta{font-size:11px;margin-top:8px;font-weight:700}.delta.up{color:var(--success)}.delta.down{color:var(--danger)}.dashboard360{padding:18px;display:grid;gap:14px}.dashboard-range-switch{display:flex;gap:8px;align-items:center}.dashboard-kpi-grid{display:grid;gap:0;grid-template-columns:repeat(6,minmax(0,1fr))}.dashboard-main-grid,.dashboard-mid-grid{display:grid;gap:12px;grid-template-columns:2fr 1fr}.dashboard-bottom-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-hero-card,.dashboard-side-card,.dashboard-momentum-card,.dashboard-alerts-card{padding:16px}.dashboard-hero-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.dashboard-hero-head h3,.dashboard-side-card h3,.dashboard-momentum-card h3,.dashboard-alerts-card h3{margin:0}.dashboard-hero-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.dashboard-hero-head strong{font-size:12px;color:var(--brand)}.dashboard-funnel-list{display:grid;gap:8px}.dashboard-funnel-row{display:grid;gap:8px;align-items:center;grid-template-columns:minmax(160px,2fr) minmax(120px,3fr) auto}.dashboard-funnel-meta{display:flex;gap:8px;align-items:center;min-width:0}.dashboard-funnel-meta strong{font-size:12px}.dashboard-funnel-meta small{font-size:11px;color:var(--muted)}.dashboard-dot{width:8px;height:8px;border-radius:999px;flex:none}.dashboard-funnel-track{height:8px;border-radius:999px;background:#e5e7eb;overflow:hidden}.dashboard-funnel-track span{height:100%;display:block;border-radius:999px}.dashboard-hero-foot{margin-top:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.dashboard-hero-foot h4{margin:0 0 6px;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.dashboard-hero-foot ul{margin:0;padding-left:16px;display:grid;gap:4px}.dashboard-hero-foot li,.dashboard-hero-foot p{margin:0;font-size:12px;color:var(--text)}.dashboard-side-block{margin-top:12px}.dashboard-side-block h4{margin:0 0 8px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.dashboard-side-block ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}.dashboard-side-block li{border:1px solid var(--border);border-radius:8px;padding:7px 9px;display:flex;justify-content:space-between;gap:8px;font-size:12px}.dashboard-side-block li small{color:var(--muted)}.dashboard-mini-grid{margin-top:12px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-mini-grid>div{border:1px solid var(--border);border-radius:8px;padding:9px;display:grid;gap:3px}.dashboard-mini-grid small{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.dashboard-mini-grid strong{font-size:13px}.dashboard-mini-grid span{font-size:11px;color:var(--muted)}.dashboard-alert-list{margin-top:10px;display:grid;gap:8px}.dashboard-alert-item{border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px}.dashboard-alert-item strong{font-size:12px}.dashboard-alert-item p{margin:4px 0 0;color:var(--muted);font-size:12px}.dashboard-alert-item.warning{border-color:#f59e0b66;background:#f59e0b0f}.dashboard-alert-item.critical{border-color:#ef444466;background:#ef44440f}.dashboard-alert-item.info{border-color:#3b82f666;background:#3b82f60f}.dashboard-action-list{margin:10px 0 0;padding-left:16px;display:grid;gap:8px}.dashboard-action-list li{font-size:12px;color:var(--text)}.dashboard-error{padding:14px;border-color:#ef444466;background:#ef44440f}.dashboard-error h3{margin:0;font-size:15px}.dashboard-error p{margin:6px 0 10px;color:var(--danger)}.dashboard-skeleton-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.dashboard-skeleton{height:96px;border-radius:var(--radius-xl);border:1px solid var(--border);background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb,#f3f4f6 75%);background-size:200% 100%;animation:dashboardPulse 1.4s linear infinite}.dashboard-skeleton.large{grid-column:span 4;height:260px}.dashboard-skeleton.tall{grid-column:span 2;height:260px}@keyframes dashboardPulse{0%{background-position:150% 0}to{background-position:-50% 0}}.split{display:grid;grid-template-columns:340px 1fr 320px;min-height:72vh}.inbox-shell{display:flex;flex-direction:column;height:calc(100vh - 48px);max-height:calc(100vh - 48px);overflow:hidden}.inbox-split{flex:1;min-height:0}.inbox-left,.inbox-center,.inbox-right{min-height:0}.inbox-left{border-right:1px solid var(--border);background:var(--bg);position:relative;display:flex;flex-direction:column}.inbox-right{background:var(--panel);padding:16px;border-left:1px solid var(--border)}.inbox-center{border-right:1px solid var(--border);display:flex;flex-direction:column;background:#f9fafb;background-image:none}.inbox-conversation-head{padding:14px 16px;border-bottom:1px solid var(--border);background:#ffffffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.inbox-conversation-head h4{margin:0;font-size:17px;font-weight:700}.inbox-chats-scroll{flex:1;min-height:0}.inbox-newchat-bar{padding:10px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.inbox-newchat-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;background:var(--panel);display:flex;flex-direction:column}.inbox-newchat-header{display:flex;justify-content:space-between;align-items:center;padding:14px;border-bottom:1px solid var(--border)}.inbox-newchat-header strong{font-size:15px}.inbox-newchat-body{padding:16px 14px}.inbox-newchat-row{display:flex;gap:8px;margin-top:6px}.inbox-newchat-row input{flex:1}.inbox-newchat-row .btn{flex-shrink:0}.inbox-chat-item{width:100%;text-align:left;min-height:94px;height:94px;padding:12px 14px;border:none;border-bottom:1px solid var(--border);background:transparent;color:var(--text);cursor:pointer;display:grid;grid-template-rows:auto 1fr auto;gap:6px;transition:background-color .14s ease}.inbox-chat-item:hover{background:#fff9}.inbox-chat-item.active{background:#dba11a14;outline:1px solid rgba(219,161,26,.3);outline-offset:-1px}.inbox-chat-head{display:flex;justify-content:space-between;gap:8px}.inbox-chat-head strong{font-size:14px}.inbox-unread{font-size:12px;color:var(--brand);font-weight:700}.inbox-chat-item p{margin:0;font-size:12px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;line-height:1.35}.inbox-chat-item small{color:var(--muted);font-size:12px;white-space:nowrap}.inbox-messages-scroll{flex:1;min-height:0;overflow:auto;padding:14px 16px;display:grid;gap:10px;align-content:start}.inbox-bubble-row{display:flex}.inbox-bubble-row.outgoing{justify-content:flex-end}.inbox-bubble-row.incoming{justify-content:flex-start}.inbox-bubble{max-width:min(64%,620px);padding:10px 14px 8px;word-break:break-word;overflow-wrap:anywhere;font-size:13px}.inbox-bubble.incoming{background:#fff;border:1px solid var(--border);color:var(--text);border-radius:1rem 1rem 1rem .25rem;box-shadow:var(--shadow-sm)}.inbox-bubble.outgoing{background:var(--brand);border:1px solid var(--brand-2);color:#fff;border-radius:1rem 1rem .25rem;box-shadow:0 2px 10px #dba11a33}.inbox-bubble small{display:block;margin-top:6px;opacity:.72;font-size:11px}.inbox-media-link{color:var(--brand);font-weight:600}.inbox-message-type{font-style:italic;opacity:.85}.inbox-empty{color:var(--muted);font-size:13px}.inbox-composer{border-top:1px solid var(--border);padding:9px 12px;background:var(--panel);display:grid;gap:7px}.inbox-composer-row{display:flex;gap:8px}.inbox-composer-main{align-items:center}.inbox-input{flex:1;border:1px solid var(--border);border-radius:var(--radius-lg);padding:8px 12px;min-height:36px;font-size:13px;color:var(--text);background:var(--panel);outline:none;transition:border-color .14s ease,box-shadow .14s ease}.inbox-input::placeholder{color:var(--muted)}.inbox-input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #dba11a1a}textarea.inbox-input{line-height:1.4}.inbox-attach-wrap{position:relative}.inbox-clip-btn{width:40px;height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:999px}.inbox-clip-btn .material-symbols-outlined{font-size:20px}.inbox-attach-menu{position:absolute;left:0;bottom:46px;min-width:150px;display:grid;gap:2px;padding:6px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-lg);z-index:20}.inbox-attach-menu button{border:none;background:transparent;text-align:left;padding:8px 10px;border-radius:8px;cursor:pointer;color:var(--text)}.inbox-attach-menu button:hover{background:#e5e7eb}.inbox-attachment-pill{display:inline-flex;align-items:center;gap:8px;max-width:100%;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--text);font-size:12px;font-weight:600;text-transform:none;letter-spacing:normal}.inbox-scroll{overflow:auto}.inbox-scroll::-webkit-scrollbar{width:10px;height:10px}.inbox-scroll::-webkit-scrollbar-thumb{background:#64748b59;border-radius:999px;border:2px solid transparent;background-clip:content-box}.inbox-scroll::-webkit-scrollbar-thumb:hover{background:#64748b8c;border:2px solid transparent;background-clip:content-box}.inbox-contact-minimal{display:grid;gap:8px;margin-top:6px}.inbox-contact-minimal div{display:grid;gap:2px}.inbox-contact-minimal span{font-size:11px;color:var(--muted)}.inbox-contact-minimal strong{font-size:12px;color:var(--text);font-weight:500}.inbox-post-compose{display:grid;gap:8px;margin-top:8px}.inbox-post-list{margin-top:10px;display:grid;gap:8px}.inbox-post-item{border:1px solid var(--border);border-radius:var(--radius-lg);padding:10px 12px;background:var(--panel)}.inbox-post-item header{display:flex;justify-content:space-between;gap:8px;margin-bottom:5px}.inbox-post-item strong{font-size:12px}.inbox-post-item small{font-size:11px;color:var(--muted)}.inbox-post-item p{margin:0;font-size:12px;color:var(--text);white-space:pre-wrap}.card{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--panel);box-shadow:var(--shadow-sm)}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:14px 16px;border-bottom:1px solid var(--border);text-align:left;font-size:13px}.table th{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:600;background:#f9fafb}.table tbody tr{transition:background-color .12s ease}.table tbody tr:hover{background:#f9fafb}.page-shell input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=color]):not([type=hidden]):not(.inbox-input),.page-shell select:not(.inbox-input),.page-shell textarea:not(.inbox-input){border:1px solid var(--border)!important;border-radius:var(--radius)!important;padding:8px 12px!important;min-height:38px;font-size:13px;color:var(--text);background:var(--panel);outline:none;box-shadow:none;transition:border-color .14s ease,box-shadow .14s ease}.page-shell textarea:not(.inbox-input){line-height:1.4;min-height:78px}.page-shell input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=color]):not([type=hidden]):not(.inbox-input):focus,.page-shell select:not(.inbox-input):focus,.page-shell textarea:not(.inbox-input):focus{border-color:var(--brand)!important;box-shadow:0 0 0 3px #dba11a1a}.page-shell label>span{font-size:12px!important;color:var(--muted)!important;text-transform:none;letter-spacing:normal;font-weight:500}.kanban{display:flex;gap:14px}.kanban-main-wrap{padding:16px}.kanban-header-actions{display:flex;gap:8px;align-items:center}.kanban-alert{margin:12px 16px 0;padding:10px 12px;border:1px solid var(--border);border-radius:10px}.kanban-alert-error{border-color:#ef444466;color:var(--danger)}.kanban-alert-success{border-color:#22c55e66;color:var(--success)}.kanban-columns-page{padding:16px;display:grid;gap:14px}.kanban-columns-create{display:grid;gap:10px;padding:14px}.kanban-columns-list{display:grid;gap:12px}.kanban-column-row{display:grid;grid-template-columns:auto auto minmax(200px,1fr) auto auto minmax(220px,1fr) auto;gap:10px;align-items:center;padding:12px}.kanban-columns-drop-end{border:1px dashed var(--border);border-radius:10px;text-align:center;color:var(--muted);font-size:12px;padding:10px}.kanban-board-wrap{min-width:0}.kanban-scrollable{display:flex;gap:12px;overflow:auto hidden;padding-bottom:6px;min-height:calc(100vh - 170px)}.kanban-col{background:#f9fafb;border:none;border-right:1px solid var(--border);border-radius:0;padding:16px;min-width:320px;max-width:360px}.kanban-col:last-child{border-right:none}.kanban-col-colored{background:#f9fafb}.kanban-col-head{margin-bottom:10px}.kanban-col-head-modern{display:flex;justify-content:space-between;align-items:center;gap:10px}.kanban-col-head-modern strong{font-size:13px;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.kanban-col-head-modern small{color:var(--muted);font-size:12px}.kanban-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-xl);padding:14px;margin-top:8px;box-shadow:var(--shadow-sm);cursor:pointer;transition:box-shadow .15s ease,border-color .15s ease}.kanban-card-colored{transition:transform .15s ease,box-shadow .15s ease}.kanban-card-colored:hover{box-shadow:var(--shadow-md);border-color:#dba11a4d}.kanban-priority{font-size:10px;font-weight:700;border-radius:var(--radius-sm);padding:3px 8px;display:inline-block}.kanban-priority.high{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.kanban-priority.medium{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.kanban-priority.low{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.kanban-priority.won{background:var(--brand);color:#fff;border:1px solid var(--brand)}.kanban-drop-slot{height:10px;border-radius:6px;transition:background .15s ease}.kanban-drop-slot:hover,.kanban-drop-end:hover{background:#e5e7eb}.kanban-scrollable::-webkit-scrollbar{width:10px;height:10px}.kanban-scrollable::-webkit-scrollbar-thumb{background:#00000026;border-radius:999px}.kanban-drop-end{margin-top:10px;border:1px dashed var(--border);color:var(--muted);border-radius:10px;text-align:center;padding:8px;font-size:12px}.kanban-column-add-card{margin-top:10px;width:100%;border:1px dashed var(--border);background:transparent;border-radius:var(--radius-lg);padding:10px;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;font-size:12px;font-weight:600;text-transform:none;letter-spacing:normal}.kanban-column-add-card:hover{background:var(--brand);border-color:var(--brand);color:#fff}.kanban-drag-handle{border:1px solid var(--border);border-radius:var(--radius);width:34px;height:34px;display:grid;place-items:center;color:var(--muted);background:transparent;cursor:grab}.kanban-drag-handle:active{cursor:grabbing}.kanban-column-color-chip{width:12px;height:38px;border-radius:999px}.kanban-modal-grid{display:grid;gap:12px;grid-template-columns:minmax(260px,1fr) minmax(300px,1.3fr)}.kanban-card-modal{display:grid;gap:10px}.kanban-modal-fields{display:grid;gap:8px;align-content:start}.kanban-comments-wrap{display:grid;gap:8px}.kanban-comments-wrap h4{margin:0;font-size:13px;font-weight:600}.kanban-comment-compose{display:grid;gap:6px}.kanban-comments-list{max-height:320px;overflow:auto;display:grid;gap:6px;padding-right:4px}.kanban-comment-item{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel);padding:10px 12px;display:grid;gap:6px}.kanban-comment-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.kanban-comment-head small{color:var(--muted);font-size:10px}.kanban-comment-head strong{font-size:13px;font-weight:600}.kanban-comment-item p{margin:0;font-size:12.5px;line-height:1.35;color:var(--text)}.kanban-field-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.kanban-modal-grid .inbox-input{border-radius:var(--radius)!important;padding:7px 10px;min-height:34px;border-color:var(--border);border-width:1px;font-size:13px;background:var(--panel);box-shadow:none}.kanban-modal-fields textarea.inbox-input{min-height:78px}.kanban-comment-compose textarea.inbox-input{min-height:64px}.kanban-ghost-btn{border-radius:var(--radius);padding:7px 12px;font-size:12px;font-weight:600;text-transform:none;letter-spacing:normal;background:transparent;border-color:var(--border);border-width:1px}.kanban-comment-actions{display:flex;gap:6px;justify-content:flex-end}.toast-viewport{position:fixed;right:20px;bottom:20px;z-index:1300;display:grid;gap:10px;width:min(360px,calc(100vw - 24px))}.toast{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid var(--border);border-left-width:4px;border-radius:var(--radius-lg);background:var(--panel);color:var(--text);font-size:13px;box-shadow:var(--shadow-lg);animation:toast-in .2s ease-out}.toast-success{border-left-color:var(--success)}.toast-error{border-left-color:var(--danger)}.toast-info{border-left-color:var(--brand)}.toast-close{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:16px;line-height:1;padding:0 2px}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1200px){.app-root{grid-template-columns:72px 1fr}.brand-box h1,.brand-box p,.nav-link span:last-child,.nav-footer>div:last-child{display:none}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-main-grid,.dashboard-mid-grid,.dashboard-bottom-grid{grid-template-columns:1fr}.dashboard-skeleton-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-skeleton.large,.dashboard-skeleton.tall{grid-column:span 3;height:220px}.split{grid-template-columns:1fr}.inbox-shell{height:auto;max-height:none}.kanban{min-width:0}.kanban-column-row{grid-template-columns:auto auto minmax(200px,1fr)}.kanban-column-row>*:nth-child(n+4){grid-column:1 / -1}.kanban-modal-grid{grid-template-columns:1fr}.toast-viewport{right:12px;bottom:12px}}@media (max-width: 760px){.app-root{grid-template-columns:1fr}.global-nav{display:none}.page-host{padding:12px}.grid-4,.kanban{display:grid;grid-template-columns:1fr}.dashboard-range-switch{width:100%;justify-content:flex-end;flex-wrap:wrap}.dashboard-kpi-grid,.dashboard-mini-grid,.dashboard-hero-foot,.dashboard-funnel-row,.dashboard-skeleton-grid{grid-template-columns:1fr}.dashboard-hero-head{flex-direction:column;align-items:flex-start}.dashboard-skeleton.large,.dashboard-skeleton.tall{grid-column:span 1;height:180px}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000026;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#00000040}.page-shell,.card,.toast,.inbox-post-item,.kanban-card,.kanban-comment-item,.dashboard-alert-item,.metric{border-radius:var(--radius-xl);border-width:1px;box-shadow:var(--shadow-sm)}.btn{border-radius:var(--radius-xl)}.kanban-priority{border-radius:var(--radius-sm)}.kanban-drop-end,.kanban-columns-drop-end,.inbox-input{border-radius:var(--radius-lg)}.inbox-bubble{border-radius:1rem}.inbox-chat-item,.inbox-clip-btn{border-radius:var(--radius)}.inbox-attach-menu{border-radius:var(--radius-lg)}.inbox-attachment-pill{border-radius:var(--radius)}.dashboard-skeleton{border-radius:var(--radius-xl)}.nav-link{border-radius:var(--radius)}.nav-footer{border-radius:var(--radius-lg)}.nav-footer .avatar{border-radius:50%}.brand-box{border-radius:var(--radius-lg)}.brand-icon{border-radius:var(--radius)}.dashboard-side-block li{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel)}.dashboard-mini-grid>div{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel)}.dashboard-funnel-track,.dashboard-funnel-track span,.dashboard-dot{border-radius:999px}.inbox-conversation-head{background:var(--panel);border-bottom:1px solid var(--border)}.inbox-conversation-head h4{font-size:20px;font-weight:700;font-family:Inter,sans-serif;font-style:normal;letter-spacing:-.01em}.inbox-center{background:#f9fafb;background-image:none}.inbox-composer{background:var(--panel);border-top:1px solid var(--border)}.inbox-quick-reply-menu{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;max-height:220px;overflow-y:auto;box-shadow:var(--shadow-md)}.inbox-quick-reply-item{display:flex;flex-direction:column;gap:2px;width:100%;background:none;border:none;border-bottom:1px solid var(--border);padding:8px 12px;text-align:left;cursor:pointer;color:var(--text);transition:background .1s}.inbox-quick-reply-item:last-child{border-bottom:none}.inbox-quick-reply-item:hover{background:#00000008}.inbox-quick-reply-item strong{font-size:12px;color:var(--brand)}.inbox-quick-reply-item span{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kanban-drop-slot:hover,.kanban-drop-end:hover{background:#f3f4f6}.kanban-column-color-chip{border-radius:999px}.kanban-columns-drop-end{border:1px dashed var(--border)}.kanban-alert-error,.kanban-alert-success{border-width:1px}.nav-links{gap:3px}.page-shell label>span{font-size:11px;letter-spacing:.02em;font-weight:500;color:var(--muted)}.inbox-scroll::-webkit-scrollbar-track{background:transparent}.inbox-scroll::-webkit-scrollbar-thumb{background:#0000001f;border-radius:999px;border:2px solid transparent;background-clip:content-box}.kanban-card-colored:hover .kanban-priority{background:transparent;color:var(--text);border-color:var(--border)}.table thead tr th:first-child{border-top-left-radius:var(--radius)}.table thead tr th:last-child{border-top-right-radius:var(--radius)}.table thead th{background:#f9fafb}.dashboard-hero-card,.dashboard-side-card,.dashboard-momentum-card,.dashboard-alerts-card{background:var(--panel)}.kanban-scrollable{border:1px solid var(--border);border-radius:var(--radius-xl)}.page-head>div:first-child{display:flex;flex-direction:column}.page-shell input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=color]):not([type=hidden]):not(.inbox-input),.page-shell select:not(.inbox-input),.page-shell textarea:not(.inbox-input){border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.page-shell input:focus,.page-shell select:focus,.page-shell textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #dba11a1a;outline:none}.cp-root,.cp-root *,.cp-loading,.cp-error{box-sizing:border-box}.cp-root{min-height:100vh;background:#f8f8f8;color:#1a1a1a;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:flex;flex-direction:column}.cp-loading{min-height:100vh;background:#f8f8f8;display:flex;align-items:center;justify-content:center}.cp-error{min-height:100vh;background:#f8f8f8;color:#1a1a1a;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.cp-spinner{width:36px;height:36px;border:3px solid #e0e0e0;border-top-color:#137fec;border-radius:50%;animation:cp-spin .8s linear infinite}@keyframes cp-spin{to{transform:rotate(360deg)}}.cp-header{background:#fff;border-bottom:1px solid #e5e5e5;position:sticky;top:0;z-index:100}.cp-header-inner{max-width:1100px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.cp-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#1a1a1a}.cp-logo{width:36px;height:36px;border-radius:8px;object-fit:cover}.cp-logo-text{width:36px;height:36px;background:#137fec;color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px}.cp-brand-name{font-weight:700;font-size:17px}.cp-nav-links{display:flex;align-items:center;gap:16px}.cp-nav-links a{text-decoration:none;color:#444;font-size:14px;font-weight:500;transition:color .15s}.cp-nav-links a:hover{color:#137fec}.cp-btn-primary{display:inline-block;background:#137fec;color:#fff;padding:9px 20px;border-radius:8px;font-size:14px;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:background .15s}.cp-btn-primary:hover:not(:disabled){background:#0e6bc8}.cp-btn-primary:disabled{opacity:.6;cursor:not-allowed}.cp-btn-outline{display:inline-block;background:transparent;color:#137fec;padding:9px 20px;border-radius:8px;font-size:14px;font-weight:600;text-decoration:none;border:2px solid #137fec;cursor:pointer;transition:background .15s,color .15s}.cp-btn-outline:hover{background:#137fec;color:#fff}.cp-btn-hero{display:inline-block;background:#fff;color:#137fec;padding:12px 28px;border-radius:8px;font-size:16px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:background .15s}.cp-btn-hero:hover{background:#f0f0f0}.cp-btn-back{background:none;border:none;color:#137fec;cursor:pointer;font-size:14px;font-weight:600;padding:0;margin-bottom:16px}.cp-main{flex:1}.cp-hero{position:relative;min-height:380px;background:#1a1a1a;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center}.cp-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c}.cp-hero-content{position:relative;text-align:center;color:#fff;padding:40px 24px;display:flex;flex-direction:column;align-items:center;gap:16px}.cp-hero-logo{width:72px;height:72px;border-radius:16px;object-fit:cover;border:3px solid rgba(255,255,255,.3)}.cp-hero-content h1{margin:0;font-size:36px;font-weight:800}.cp-hero-tagline{margin:0;font-size:18px;opacity:.88}.cp-section{padding:60px 24px}.cp-section:nth-child(2n){background:#fff}.cp-section-inner{max-width:1100px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.cp-section-inner h2{margin:0;font-size:26px;font-weight:700;color:#1a1a1a}.cp-section-cta{display:flex;gap:12px}.cp-service-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.cp-service-card{background:#fff;border-radius:10px;padding:16px;border-left:4px solid #137fec;box-shadow:0 1px 4px #00000012}.cp-service-card--btn{cursor:pointer;text-align:left;border:none;border-left:4px solid #137fec;transition:box-shadow .15s,transform .1s}.cp-service-card--btn:hover{box-shadow:0 4px 16px #137fec26;transform:translateY(-1px)}.cp-service-card--btn.selected{outline:2px solid #137fec}.cp-service-name{margin:0 0 6px;font-weight:600;font-size:15px;color:#1a1a1a}.cp-service-meta{margin:0;font-size:13px;color:#666}.cp-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.cp-gallery-grid--full{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.cp-gallery-card{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 4px #00000014}.cp-gallery-card img{width:100%;height:200px;object-fit:cover;display:block}.cp-gallery-before-after{display:grid;grid-template-columns:1fr 1fr}.cp-gallery-before-after img{height:160px}.cp-gallery-label{display:block;font-size:11px;font-weight:700;color:#666;text-transform:uppercase;padding:6px 10px 2px;background:#f0f0f0}.cp-gallery-caption{margin:0;padding:10px 12px;font-size:13px;color:#444}.cp-footer{background:#1a1a1a;color:#ccc;padding:40px 24px}.cp-footer-inner{max-width:1100px;margin:0 auto;display:flex;flex-direction:column;gap:8px}.cp-footer-inner p,.cp-footer-inner a{margin:0;font-size:14px;color:#ccc;text-decoration:none}.cp-footer-name{font-weight:700;font-size:16px;color:#fff;margin-bottom:4px}.cp-footer-powered{margin-top:16px;font-size:12px;color:#888}.cp-page{min-height:calc(100vh - 200px);background:#f8f8f8;color:#1a1a1a}.cp-page-inner{max-width:800px;margin:0 auto;padding:48px 24px;display:flex;flex-direction:column;gap:24px}.cp-page-inner h1{margin:0;font-size:28px;font-weight:800}.cp-login-page{display:flex;align-items:center;justify-content:center;padding:48px 24px}.cp-login-card{background:#fff;border-radius:16px;padding:40px;width:100%;max-width:420px;box-shadow:0 4px 24px #00000017;display:flex;flex-direction:column;gap:20px}.cp-login-tabs{display:flex;border-bottom:2px solid #e5e5e5;gap:0}.cp-login-tabs button{flex:1;background:none;border:none;padding:10px;font-size:15px;font-weight:600;color:#888;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s}.cp-login-tabs button.active{color:#137fec;border-bottom-color:#137fec}.cp-form{display:flex;flex-direction:column;gap:14px}.cp-form label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600;color:#444}.cp-form input,.cp-form textarea{padding:10px 12px;border:1.5px solid #ddd;border-radius:8px;font-size:15px;color:#1a1a1a;background:#fafafa;transition:border-color .15s;outline:none;font-family:inherit}.cp-form input:focus,.cp-form textarea:focus{border-color:#137fec;background:#fff}.cp-form-error{color:#ef4444;font-size:14px;margin:0;background:#fff5f5;padding:8px 12px;border-radius:6px;border:1px solid #fca5a5}.cp-google-login{display:flex;flex-direction:column;gap:12px}.cp-divider{display:flex;align-items:center;gap:12px;color:#999;font-size:13px}.cp-divider:before,.cp-divider:after{content:"";flex:1;height:1px;background:#e5e5e5}.cp-steps{display:flex;gap:8px;align-items:center}.cp-step{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#aaa}.cp-step.active{color:#137fec}.cp-step.done{color:#22c55e}.cp-step-num{width:26px;height:26px;border-radius:50%;background:#e5e5e5;color:#888;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.cp-step.active .cp-step-num{background:#137fec;color:#fff}.cp-step.done .cp-step-num{background:#22c55e;color:#fff}.cp-book-step2,.cp-book-step3{display:flex;flex-direction:column;gap:20px}.cp-field{display:flex;flex-direction:column;gap:8px}.cp-field label{font-size:14px;font-weight:600;color:#444}.cp-field textarea{padding:10px 12px;border:1.5px solid #ddd;border-radius:8px;font-size:14px;color:#1a1a1a;resize:vertical;outline:none;font-family:inherit}.cp-field textarea:focus{border-color:#137fec}.cp-staff-chips{display:flex;flex-wrap:wrap;gap:8px}.cp-chip{padding:6px 14px;border-radius:20px;border:1.5px solid #ddd;background:#fff;font-size:13px;font-weight:600;color:#444;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.cp-chip.selected,.cp-chip:hover{border-color:#137fec;background:#137fec;color:#fff}.cp-date-nav{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:600}.cp-date-nav button{background:none;border:1.5px solid #ddd;border-radius:6px;padding:4px 10px;cursor:pointer;font-size:16px;color:#444;transition:border-color .15s}.cp-date-nav button:hover:not(:disabled){border-color:#137fec;color:#137fec}.cp-date-nav button:disabled{opacity:.4;cursor:not-allowed}.cp-time-grid{display:flex;flex-wrap:wrap;gap:8px}.cp-time-btn{padding:8px 14px;border-radius:8px;border:1.5px solid #ddd;background:#fff;font-size:14px;font-weight:600;color:#444;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.cp-time-btn:hover{border-color:#137fec;color:#137fec}.cp-time-btn.selected{border-color:#137fec;background:#137fec;color:#fff}.cp-confirm-card{background:#fff;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:12px;box-shadow:0 1px 6px #00000012}.cp-confirm-card h3{margin:0 0 4px;font-size:16px;font-weight:700}.cp-confirm-row{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:#555;padding:6px 0;border-bottom:1px solid #f0f0f0}.cp-confirm-row:last-child{border-bottom:none}.cp-confirm-row strong{color:#1a1a1a}.cp-book-success{display:flex;flex-direction:column;align-items:center;gap:16px;padding:80px 24px;text-align:center}.cp-success-icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:#22c55e;color:#fff;font-size:36px;font-weight:700}.cp-book-success h2{margin:0;font-size:26px;font-weight:800;color:#1a1a1a}.cp-book-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:8px}.cp-my-header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px}.cp-my-greeting{margin:0;font-size:15px;color:#666}.cp-my-new{align-self:flex-start}.cp-appointment-list{display:flex;flex-direction:column;gap:12px}.cp-appointment-card{background:#fff;border-radius:12px;padding:16px 20px;box-shadow:0 1px 4px #00000012;display:flex;flex-direction:column;gap:6px}.cp-appt-header{display:flex;justify-content:space-between;align-items:center}.cp-appt-service{font-size:16px;color:#1a1a1a}.cp-appt-status{font-size:13px;font-weight:700}.cp-appt-datetime{margin:0;font-size:14px;color:#444}.cp-appt-staff,.cp-appt-notes{margin:0;font-size:13px;color:#888}.cp-empty-state{display:flex;flex-direction:column;align-items:center;gap:16px;padding:48px 24px;text-align:center;color:#888}.cp-empty{color:#888;text-align:center;padding:40px 0}.cp-service-grid--book{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.cp-gallery-page .cp-page-inner{max-width:1100px}.notification-bell-wrapper{position:relative;z-index:1000;display:flex;justify-content:flex-end;padding:0 16px 8px}.notification-bell-btn{position:relative;background:none;border:1px solid var(--nav-border);border-radius:8px;color:var(--nav-text);cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.notification-bell-btn:hover{background:var(--nav-active);color:var(--nav-text-strong)}.notification-badge{position:absolute;top:-4px;right:-4px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1}.notification-panel{position:absolute;top:0;left:calc(100% + 8px);width:340px;max-height:440px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 32px #0000001f;z-index:1000;display:flex;flex-direction:column;overflow:hidden}.notification-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border);font-size:13px}.notification-panel-body{flex:1;overflow-y:auto}.notification-item{display:flex;align-items:flex-start;gap:10px;width:100%;padding:10px 14px;background:none;border:none;border-bottom:1px solid var(--border);color:var(--muted);cursor:pointer;text-align:left;font:inherit;font-size:12px;transition:background .15s}.notification-item:hover{background:var(--nav-active)}.notification-item.unread{color:var(--text);background:#dba11a0f}.notification-item.unread:hover{background:#dba11a1f}.notification-item-icon{font-size:18px;color:var(--brand);margin-top:1px;flex-shrink:0}.notification-item-content{flex:1;min-width:0}.notification-item-title{font-weight:600;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-item-body{font-size:11px;color:var(--muted);margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-item-time{font-size:10px;color:var(--muted);white-space:nowrap;flex-shrink:0;margin-top:2px}.import-wizard{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:998;display:flex;flex-direction:column;overflow:hidden}.import-wizard-header{padding:16px 24px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:var(--panel);gap:16px}.import-wizard-body{flex:1;overflow-y:auto;padding:24px}.import-wizard-footer{padding:16px 24px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px;background:var(--panel)}.import-step-indicator{display:flex;gap:8px;align-items:center}.import-step-dot{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:600;border:2px solid var(--border);color:var(--muted);background:transparent;flex-shrink:0}.import-step-dot.active{border-color:var(--brand);color:var(--brand);background:#137fec1a}.import-step-dot.completed{border-color:var(--success);color:#fff;background:var(--success)}.import-step-line{width:32px;height:2px;background:var(--border);flex-shrink:0}.import-step-line.completed{background:var(--success)}.mapping-grid{display:grid;gap:10px}.mapping-row{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;gap:8px;padding:10px 14px;background:var(--panel);border:1px solid var(--border);border-radius:8px}.mapping-arrow{text-align:center;color:var(--muted);font-size:16px}.mapping-preview{font-size:11px;color:var(--muted);margin-top:4px;max-height:36px;overflow:hidden}.selection-bar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:10px 20px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 20px #0000004d;z-index:100}.progress-bar{height:6px;background:var(--border);border-radius:3px;overflow:hidden;width:100%}.progress-bar-fill{height:100%;background:var(--brand);border-radius:3px;transition:width .3s ease}.table td input[type=checkbox],.table th input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--brand)}.status-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;text-transform:capitalize}.upload-zone{border:2px dashed var(--border);border-radius:12px;padding:40px;text-align:center;cursor:pointer;transition:border-color .2s}.upload-zone:hover{border-color:var(--brand)}.upload-zone.has-file{border-color:var(--success);border-style:solid}.review-table{width:100%;border-collapse:collapse;font-size:12px}.review-table th,.review-table td{padding:6px 10px;text-align:left;border-bottom:1px solid var(--border);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-table th{font-weight:600;color:var(--muted);position:sticky;top:0;background:var(--panel)}.review-table tr.has-error{background:#ef444414}.review-table tr.has-error td{color:var(--danger)}
