.app-container{display:flex;min-height:100vh}.sidebar{width:260px;flex-shrink:0;background:var(--bg-secondary);border-right:1px solid var(--glass-border);display:flex;flex-direction:column;height:100vh;position:sticky;top:0}.logo-section{padding:16px 20px;border-bottom:1px solid var(--glass-border)}.logo-section h2{font-size:1.35rem;letter-spacing:.05em;color:var(--color-gold-base)}.menu-list{list-style:none;padding:8px 12px;display:flex;flex-direction:column;gap:4px;flex-grow:1;overflow-y:auto}.menu-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:var(--border-radius-sm);color:var(--text-secondary);text-decoration:none;font-weight:500;font-size:.92rem;cursor:pointer;transition:var(--transition-smooth)}.menu-item:hover,.menu-item.active{background:var(--bg-tertiary);color:var(--color-gold-base);border-left:3px solid var(--color-gold-base)}.sidebar-footer{padding:10px 20px;border-top:1px solid var(--glass-border);font-size:.78rem;color:var(--text-muted)}.main-content{flex-grow:1;padding:40px;max-width:1400px;margin:0 auto;width:100%}.header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.header-section h1{font-size:2.2rem;margin-bottom:6px}.user-profile{display:flex;align-items:center;gap:12px;padding:8px 16px;border-radius:50px}.avatar{width:36px;height:36px;border-radius:50%;background:var(--color-gold-base);color:#000;display:flex;align-items:center;justify-content:center;font-weight:700}.kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:40px}.kpi-card{padding:20px 24px;display:flex;flex-direction:column;position:relative}.kpi-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.kpi-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.kpi-badge{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:4px}.kpi-badge.badge-success{background:#10b9811a;color:var(--accent-green);border:1px solid rgba(16,185,129,.2)}.kpi-badge.badge-danger{background:#ef44441a;color:var(--accent-red);border:1px solid rgba(239,68,68,.2)}.kpi-badge.badge-info{background:#3b82f61a;color:var(--accent-blue);border:1px solid rgba(59,130,246,.2)}.kpi-badge.badge-gold{background:#b594101a;color:var(--color-gold-light);border:1px solid rgba(181,148,16,.2)}.kpi-value{font-size:2.1rem;font-weight:700;margin-bottom:4px;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-primary)}.kpi-subtitle{font-size:.72rem;color:var(--text-muted);font-weight:400}.data-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}.section-card{padding:32px}.section-title{font-size:1.25rem;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.custom-table{width:100%;border-collapse:collapse}.custom-table th,.custom-table td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--glass-border)}.custom-table th{color:var(--text-secondary);font-weight:500;font-size:.9rem}.custom-table tbody tr{transition:var(--transition-smooth)}.custom-table tbody tr:hover{background:var(--bg-tertiary)}.customer-table{table-layout:fixed;font-size:.82rem}.customer-table th,.customer-table td{padding:12px 8px}.customer-table th{font-size:.78rem}.customer-table__name-col{width:150px}.customer-table__contact-col{width:160px}.customer-table__status-col{width:72px}.customer-table__planner-col{width:88px}.customer-table__channel-col{width:68px}.customer-table__date-col{width:84px}.customer-table__action-col{width:72px}.customer-table th:nth-child(n+3),.customer-table td:nth-child(n+3){white-space:nowrap}.customer-table td:first-child{word-break:keep-all}.customer-table__contact{font-size:.82rem}.customer-table__phone-line{display:block;white-space:nowrap}.badge{display:inline-block;padding:4px 10px;border-radius:50px;font-size:.8rem;font-weight:600}.badge-gold{background:#b594101f;color:var(--color-gold-dark)}.badge-blue{background:#2563eb1a;color:var(--accent-blue)}.badge-green{background:#16a34a1a;color:var(--accent-green)}.badge-red{background:#dc26261a;color:var(--accent-red)}.timeline-container{display:flex;flex-direction:column;position:relative;padding-left:8px}.timeline-line{position:absolute;left:23px;top:16px;bottom:16px;width:1px;background:var(--glass-border);z-index:0}.timeline-item{display:flex;gap:16px;position:relative;margin-bottom:24px;z-index:1}.timeline-item:last-child{margin-bottom:0}.timeline-icon-node{width:32px;height:32px;border-radius:50%;background:var(--bg-tertiary);border:1px solid var(--glass-border);display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0;z-index:2;box-shadow:0 0 0 4px var(--bg-secondary)}.timeline-content{flex-grow:1;background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);padding:12px 16px;display:flex;flex-direction:column;gap:6px}.timeline-header{display:flex;justify-content:space-between;align-items:center}.timeline-title{font-size:.9rem;font-weight:600;color:var(--color-gold-light)}.timeline-time{font-size:.75rem;color:var(--text-muted)}.timeline-desc{font-size:.82rem;color:var(--text-secondary);line-height:1.5;word-break:break-all}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.modal-content{width:90%;max-width:800px;max-height:85vh;overflow-y:auto;background:var(--bg-secondary);border-radius:var(--border-radius-md);border:1px solid var(--glass-border);box-shadow:var(--shadow-premium);animation:slideUp .3s cubic-bezier(.34,1.56,.64,1)}.modal-header{padding:24px 32px;border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center}.modal-body{padding:32px}.modal-close-btn{background:transparent;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;transition:var(--transition-smooth)}.modal-close-btn:hover{color:var(--color-gold-base);transform:rotate(90deg)}.form-group{margin-bottom:20px;display:flex;flex-direction:column;gap:8px}.form-group label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.form-control{background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);padding:12px 16px;color:var(--text-primary);font-size:.95rem;outline:none;transition:var(--transition-smooth)}.form-control:focus{border-color:var(--color-gold-base);box-shadow:none}.filter-search-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}.search-box-container{position:relative;flex-grow:1;max-width:400px}.search-input{width:100%;padding-left:40px}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.filter-btn-group{display:flex;gap:8px;flex-wrap:wrap}.filter-chip{background:var(--bg-secondary);border:1px solid var(--glass-border);color:var(--text-secondary);padding:8px 16px;border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition-smooth);font-size:.85rem;font-weight:500}.filter-chip:hover,.filter-chip.active{background:var(--bg-tertiary);color:var(--color-gold-base);border-color:var(--color-gold-base)}.pagination-container{display:flex;justify-content:space-between;align-items:center;margin-top:32px}.page-btn{background:var(--bg-secondary);border:1px solid var(--glass-border);color:var(--text-primary);padding:8px 16px;border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition-smooth);font-size:.85rem;display:inline-flex;align-items:center;gap:8px}.page-btn:hover:not(:disabled){border-color:var(--color-gold-base);color:var(--color-gold-base);background:var(--bg-tertiary)}.page-btn:disabled{opacity:.3;cursor:not-allowed}.chart-container{display:flex;align-items:flex-end;justify-content:space-between;height:200px;padding:20px 10px 10px;border-bottom:1px solid var(--glass-border);gap:12px}.chart-bar-wrapper{display:flex;flex-direction:column;align-items:center;flex-grow:1;height:100%;justify-content:flex-end}.chart-bar{width:100%;max-width:45px;border-radius:4px 4px 0 0;background:var(--color-gold-base);transition:height .6s cubic-bezier(.175,.885,.32,1.275);position:relative;box-shadow:none}.chart-bar:hover{filter:brightness(1.2)}.chart-bar-tooltip{position:absolute;top:-32px;left:50%;transform:translate(-50%);background:var(--bg-secondary);border:1px solid var(--color-gold-base);padding:4px 8px;border-radius:4px;font-size:.75rem;color:var(--text-primary);white-space:nowrap;opacity:0;transition:opacity .2s ease;pointer-events:none;box-shadow:0 4px 10px #0000001a;z-index:5}.chart-bar:hover .chart-bar-tooltip{opacity:1}.chart-label{margin-top:12px;font-size:.8rem;color:var(--text-secondary)}.calendar-wrapper{display:flex;flex-direction:column;gap:16px}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calendar-day-label{text-align:center;font-weight:600;font-size:.85rem;color:var(--text-secondary);padding:8px 0;border-bottom:1px solid var(--glass-border)}.calendar-cell{min-height:95px;background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);padding:8px;display:flex;flex-direction:column;gap:4px;transition:var(--transition-smooth)}.calendar-cell:hover{background:var(--bg-tertiary);border-color:var(--color-gold-base)}.calendar-cell.today{background:var(--bg-tertiary);border:1.5px solid var(--color-gold-base)}.calendar-cell.other-month{opacity:.15;pointer-events:none}.calendar-date-num{font-size:.85rem;font-weight:500;color:var(--text-muted)}.calendar-cell.today .calendar-date-num{color:var(--color-gold-base);font-weight:700}.calendar-events{display:flex;flex-direction:column;gap:2px;overflow-y:auto;max-height:60px}.calendar-event-tag{font-size:.7rem;padding:2px 6px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.tag-wedding{background:#4f46e51a;color:var(--color-gold-base);border-left:2px solid var(--color-gold-base)}.tag-photo{background:#3b82f61a;color:var(--accent-blue);border-left:2px solid var(--accent-blue)}.tag-custom{background:#10b9811a;color:var(--accent-green);border-left:2px solid var(--accent-green)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideIn{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}.tab-transition-container{animation:slideUp .4s cubic-bezier(.16,1,.3,1)}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.details-card{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);padding:20px}.details-card h4{font-size:1.05rem;margin-bottom:16px;color:var(--color-gold-light);border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:8px}.info-row-item{display:flex;justify-content:space-between;margin-bottom:12px;font-size:.9rem}.info-row-item span:first-child{color:var(--text-secondary)}.info-row-item span:last-child{font-weight:500}.sidebar-profile-card{margin:10px 12px 6px;padding:10px 12px;background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);box-shadow:none;display:flex;flex-direction:column;gap:4px}.profile-meta-row{display:flex;flex-direction:column;gap:2px;font-size:.78rem;color:var(--text-secondary)}.profile-name{font-weight:700;font-size:.9rem;color:var(--color-gold-light);margin-bottom:2px}.sidebar-cash-box{margin:0 12px 6px;padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);font-size:.78rem;color:var(--text-secondary);display:flex;flex-direction:column;gap:4px}.cash-info-item{display:flex;justify-content:space-between;align-items:center}.cash-info-item strong{color:var(--color-gold-base)}.dashboard-visual-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:40px}.donut-chart-box{display:flex;align-items:center;justify-content:space-between;padding:16px 12px;gap:24px}.donut-svg-wrapper{position:relative;width:130px;height:130px;flex-shrink:0}.donut-center-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none}.donut-center-text span{font-size:.75rem;color:var(--text-secondary)}.donut-center-text strong{font-size:1.15rem;color:var(--color-gold-light);display:block}.donut-legend{display:flex;flex-direction:column;gap:12px;flex-grow:1;max-width:320px}.legend-card{background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);padding:8px 12px;display:flex;flex-direction:column;gap:6px;transition:var(--transition-smooth)}.legend-card:hover{border-color:var(--color-gold-base)}.legend-header{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;font-weight:500}.legend-info{display:flex;align-items:center;gap:8px;color:var(--text-secondary)}.legend-pct{font-weight:700;color:var(--text-primary)}.legend-bar-bg{height:4px;background:#ffffff0d;border-radius:2px;overflow:hidden}.legend-bar-fill{height:100%;border-radius:2px}.legend-color{width:8px;height:8px;border-radius:50%}.pipeline-container{display:flex;flex-direction:column;gap:20px;padding:12px 0}.pipeline-bar-wrapper{display:flex;flex-direction:column;gap:8px}.pipeline-track{height:14px;background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);overflow:hidden;display:flex}.pipeline-fill{height:100%;transition:width .8s cubic-bezier(.4,0,.2,1)}.pipeline-metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pipeline-metric-box{background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);padding:14px 16px;display:flex;flex-direction:column;gap:4px;transition:var(--transition-smooth)}.pipeline-metric-box:hover{border-color:var(--color-gold-base)}.pipeline-metric-label{font-size:.75rem;color:var(--text-secondary);font-weight:500}.pipeline-metric-value{font-size:1.5rem;font-weight:700}.calendar-cell.saturday:hover{background:#3b82f60f}.calendar-cell.saturday .calendar-date-num{color:#2563eb}.calendar-cell.sunday:hover{background:#ef44440f}.calendar-cell.sunday .calendar-date-num{color:#dc2626}.calendar-events{max-height:110px!important}.calendar-event-card{display:flex;flex-direction:column;padding:6px 8px;border-radius:var(--border-radius-sm);margin-bottom:4px;font-size:.72rem;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--glass-border);transition:var(--transition-smooth)}.calendar-event-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-premium)}.event-header{display:flex;align-items:center;gap:4px;margin-bottom:2px}.event-category-badge{padding:1px 5px;border-radius:3px;font-size:.62rem;font-weight:700}.event-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-detail-desc{font-size:.65rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge-wedding{background-color:#f43f5e1a;color:#f43f5e}.badge-photo{background-color:#3b82f61a;color:#3b82f6}.badge-dress{background-color:#e879f91a;color:#c084fc}.badge-suit{background-color:#64748b1a;color:#64748b}.badge-honeymoon{background-color:#84cc1626;color:#4d7c0f}.badge-etc{background-color:#94a3b81a;color:#475569}.calendar-cell.saturday{background:#3b82f608}.calendar-cell.sunday{background:#ef444408}
