.avatar{border-radius:50%;object-fit:cover;flex-shrink:0}.avatar-xs{width:24px;height:24px;font-size:10px}.avatar-sm{width:32px;height:32px;font-size:12px}.avatar-md{width:40px;height:40px;font-size:14px}.avatar-lg{width:52px;height:52px;font-size:18px}.avatar-placeholder{display:flex;align-items:center;justify-content:center;background:var(--amber-bg);color:var(--amber);font-weight:600;font-family:var(--font)}.sidebar{display:flex;flex-direction:column;width:var(--sidebar-w);height:100%;background:var(--white);border-right:1px solid var(--border);overflow-y:auto}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid var(--border)}.sidebar-logo{display:flex;align-items:center;gap:8px}.sidebar-logo-mark{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--amber);color:#fff;font-size:11px;font-weight:700;border-radius:var(--radius-sm);letter-spacing:.5px}.sidebar-logo-text{font-size:13px;font-weight:600;color:var(--text)}.sidebar-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;cursor:pointer;color:var(--text-2);border-radius:var(--radius-sm)}.sidebar-close:hover{background:var(--surface)}.sidebar-org{padding:10px 16px;border-bottom:1px solid var(--border)}.sidebar-org-name{display:block;font-size:12px;font-weight:600;color:var(--text)}.sidebar-org-tier{display:inline-block;font-size:10px;font-weight:500;color:var(--amber);background:var(--amber-bg);padding:1px 6px;border-radius:10px;margin-top:2px;text-transform:uppercase;letter-spacing:.5px}.sidebar-nav{flex:1;padding:8px;display:flex;flex-direction:column;gap:2px}.sidebar-link{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--radius);font-size:13px;font-weight:500;color:var(--text-2);text-decoration:none;transition:background .1s,color .1s}.sidebar-link:hover{background:var(--surface);color:var(--text);text-decoration:none}.sidebar-link-active{background:var(--amber-bg)!important;color:var(--amber)!important}.sidebar-link-locked{opacity:.55}.sidebar-link-icon{display:flex;align-items:center;flex-shrink:0}.sidebar-link-label{flex:1}.sidebar-lock-icon{display:flex;align-items:center;color:var(--text-3)}.sidebar-footer{padding:8px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:4px}.sidebar-user{display:flex;align-items:center;gap:8px;padding:8px 10px}.sidebar-user-info{flex:1;overflow:hidden}.sidebar-user-name{display:block;font-size:12px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-signout{background:none;border:none;font-size:11px;color:var(--text-3);cursor:pointer;padding:0;font-family:var(--font)}.sidebar-signout:hover{color:var(--text-2)}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:var(--mobile-nav-h);background:var(--white);border-top:1px solid var(--border);z-index:50}@media (min-width: 768px){.mobile-nav{display:none}}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:1;text-decoration:none;color:var(--text-3);font-size:10px;font-weight:500;transition:color .1s}.mobile-nav-item:hover{text-decoration:none}.mobile-nav-item-active{color:var(--amber)}.mobile-nav-icon{display:flex;align-items:center}.mobile-nav-label{line-height:1}.notif-bell{position:relative}.notif-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:none;border-radius:var(--radius);cursor:pointer;color:var(--text-2);position:relative}.notif-btn:hover{background:var(--surface);color:var(--text)}.notif-badge{position:absolute;top:4px;right:4px;background:var(--red);color:#fff;font-size:9px;font-weight:600;min-width:14px;height:14px;border-radius:7px;display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1}.notif-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:320px;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);z-index:200;overflow:hidden}.notif-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);font-size:13px;font-weight:600;color:var(--text)}.notif-mark-all{background:none;border:none;font-size:12px;font-family:var(--font);color:var(--amber);cursor:pointer}.notif-list{max-height:360px;overflow-y:auto}.notif-empty{padding:24px 16px;text-align:center;font-size:13px;color:var(--text-3)}.notif-item{display:block;width:100%;padding:12px 16px;text-align:left;border:none;background:none;border-bottom:1px solid var(--border);cursor:pointer;font-family:var(--font)}.notif-item:hover{background:var(--surface)}.notif-item:last-child{border-bottom:none}.notif-item-unread{background:var(--amber-lt)}.notif-item-title{font-size:13px;font-weight:500;color:var(--text)}.notif-item-body{font-size:12px;color:var(--text-2);margin-top:2px}.notif-item-time{font-size:11px;color:var(--text-3);margin-top:4px}.app-shell{display:flex;height:100vh;overflow:hidden;background:var(--bg)}.app-shell-sidebar{width:var(--sidebar-w);flex-shrink:0;height:100%}.app-shell-mobile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a171466;z-index:100}.app-shell-mobile-sidebar{width:var(--sidebar-w);height:100%;background:var(--white)}.app-shell-main{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden;min-width:0}.app-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 16px;height:52px;background:var(--white);border-bottom:1px solid var(--border);flex-shrink:0}.app-topbar-desktop{justify-content:flex-end;padding:0 20px;height:48px}.app-topbar-menu{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:none;cursor:pointer;color:var(--text-2);border-radius:var(--radius)}.app-topbar-menu:hover{background:var(--surface)}.app-topbar-logo{font-size:15px;font-weight:700;color:var(--amber);letter-spacing:.5px}.app-topbar-spacer{flex:1}.app-shell-content{flex:1;overflow-y:auto;padding:20px 16px;padding-bottom:calc(var(--mobile-nav-h) + 20px)}@media (min-width: 768px){.app-shell-content{padding:24px}}.desktop-only{display:none}.mobile-only{display:flex}@media (min-width: 768px){.desktop-only{display:flex}.mobile-only{display:none}}.spinner{border-radius:50%;border-style:solid;border-color:var(--border-md);border-top-color:var(--amber);animation:spin .7s linear infinite}.spinner-sm{width:16px;height:16px;border-width:2px}.spinner-md{width:24px;height:24px;border-width:2px}.spinner-lg{width:36px;height:36px;border-width:3px}.toast-container{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column;gap:8px;min-width:280px;max-width:400px;width:calc(100% - 32px)}@media (min-width: 768px){.toast-container{bottom:24px;left:auto;right:24px;transform:none}}.toast{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:var(--radius-lg);box-shadow:var(--shadow);font-size:13px;font-weight:500}.toast-success{background:var(--green-bg);color:var(--green)}.toast-error{background:var(--red-bg);color:var(--red)}.toast-info{background:var(--blue-bg);color:var(--blue)}.toast-warning{background:var(--amber-bg);color:var(--amber)}.toast-message{flex:1}.toast-dismiss{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:none;cursor:pointer;color:inherit;opacity:.6;border-radius:4px}.toast-dismiss:hover{opacity:1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;border-radius:var(--radius);font-family:var(--font);font-weight:500;cursor:pointer;transition:opacity .1s,background .1s;white-space:nowrap;min-height:44px}.btn-sm{padding:6px 12px;font-size:12px;min-height:32px}.btn-md{padding:10px 16px;font-size:14px;min-height:40px}.btn-lg{padding:12px 20px;font-size:15px;min-height:48px}.btn-primary{background:var(--amber);color:#fff}.btn-primary:hover:not(:disabled){opacity:.88}.btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--border)}.btn-ghost{background:transparent;color:var(--text-2)}.btn-ghost:hover:not(:disabled){background:var(--surface);color:var(--text)}.btn-danger{background:var(--red-bg);color:var(--red)}.btn-danger:hover:not(:disabled){background:#f7d0d0}.btn-outline{background:transparent;color:var(--amber);border:1px solid var(--amber)}.btn-outline:hover:not(:disabled){background:var(--amber-lt)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-loading{cursor:wait}.btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.btn-secondary .btn-spinner,.btn-ghost .btn-spinner,.btn-outline .btn-spinner{border-color:#1a171433;border-top-color:var(--text)}.input-group{display:flex;flex-direction:column;gap:4px}.input-label{font-size:13px;font-weight:500;color:var(--text)}.input-field{width:100%;padding:10px 12px;font-family:var(--font);font-size:14px;color:var(--text);background:var(--white);border:1px solid var(--border-md);border-radius:var(--radius);outline:none;transition:border-color .15s;min-height:44px}.input-field::placeholder{color:var(--text-3)}.input-field:focus{border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-lt)}.input-field.input-error{border-color:var(--red)}.input-hint{font-size:12px;color:var(--text-2)}.input-hint-error{color:var(--red)}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px 16px}.auth-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-xl);padding:32px 28px;width:100%;max-width:400px}.auth-logo{display:flex;justify-content:center;margin-bottom:20px}.auth-logo-mark{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--amber);color:#fff;font-size:16px;font-weight:700;border-radius:var(--radius-lg);letter-spacing:.5px}.auth-title{text-align:center;font-size:1.25rem;font-weight:600;color:var(--text)}.auth-subtitle{text-align:center;font-size:13px;color:var(--text-2);margin-top:4px;margin-bottom:24px}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-submit{width:100%;margin-top:4px}.auth-links{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;flex-wrap:wrap}.auth-link{background:none;border:none;font-size:13px;color:var(--amber);cursor:pointer;font-family:var(--font)}.auth-link:hover{text-decoration:underline}.auth-link-sep{color:var(--text-3);font-size:13px}.magic-link-card{text-align:center}.magic-link-spinner{margin:16px auto}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.page-header-text{flex:1;min-width:0}.page-header-title{font-size:1.25rem;font-weight:600;color:var(--text)}.page-header-subtitle{font-size:13px;color:var(--text-2);margin-top:2px}.page-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.dashboard{display:flex;flex-direction:column;gap:16px}.dashboard-loading{display:flex;justify-content:center;padding:48px}.dashboard-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media (min-width: 768px){.dashboard-stats{grid-template-columns:repeat(4,1fr)}}.stat-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;display:flex;flex-direction:column;gap:2px;border-top:3px solid transparent}.stat-card-clickable{cursor:pointer;transition:border-color .15s,box-shadow .15s}.stat-card-clickable:hover{box-shadow:var(--shadow-sm)}.stat-card-amber{border-top-color:var(--amber)}.stat-card-blue{border-top-color:var(--blue)}.stat-card-green{border-top-color:var(--green)}.stat-card-red{border-top-color:var(--red)}.stat-card-value{font-size:1.5rem;font-weight:600;color:var(--text);line-height:1.2}.stat-card-label{font-size:12px;font-weight:500;color:var(--text-2);text-transform:uppercase;letter-spacing:.4px}.stat-card-sub{font-size:11px;color:var(--text-3);margin-top:2px}.dashboard-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px}.dashboard-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.dashboard-card-header h3{font-size:14px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:8px}.dashboard-overdue-badge{font-size:11px;font-weight:500;background:var(--red-bg);color:var(--red);padding:2px 8px;border-radius:10px}.dashboard-card-link{background:none;border:none;font-family:var(--font);font-size:12px;color:var(--amber);cursor:pointer;font-weight:500}.pipeline-bar{display:flex;gap:4px;height:56px;align-items:stretch}.pipeline-bar-segment{display:flex;flex-direction:column;gap:4px;min-width:40px}.pipeline-bar-fill{flex:1;border-radius:var(--radius-sm);min-height:8px;opacity:.9}.pipeline-bar-label{display:flex;flex-direction:column;gap:0}.pipeline-bar-label span{font-size:11px;font-weight:500;white-space:nowrap}.pipeline-bar-count{color:var(--text-3)!important;font-weight:400!important}.followup-list{display:flex;flex-direction:column;gap:0}.followup-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--border);cursor:pointer}.followup-item:last-child{border-bottom:none}.followup-item:hover .followup-item-name{color:var(--amber)}.followup-item-info{display:flex;flex-direction:column;gap:1px;min-width:0}.followup-item-name{font-size:13px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .1s}.followup-item-org{font-size:11px;color:var(--text-3)}.followup-item-date{font-size:12px;font-weight:500;white-space:nowrap}.dashboard-revenue{display:flex;align-items:baseline;gap:8px}.dashboard-revenue-amount{font-size:2rem;font-weight:600;color:var(--green)}.dashboard-revenue-label{font-size:13px;color:var(--text-2)}.dashboard-welcome{text-align:center;padding:40px 24px}.dashboard-welcome h3{font-size:16px;margin-bottom:8px}.dashboard-welcome p{font-size:13px;color:var(--text-2);margin-bottom:16px}.dashboard-welcome-btn{background:var(--amber);color:#fff;border:none;border-radius:var(--radius);padding:10px 20px;font-family:var(--font);font-size:14px;font-weight:500;cursor:pointer}.dashboard-welcome-btn:hover{opacity:.88}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:500;white-space:nowrap}.badge-default{background:var(--surface);color:var(--text-2)}.badge-amber{background:var(--amber-bg);color:var(--amber)}.badge-green{background:var(--green-bg);color:var(--green)}.badge-red{background:var(--red-bg);color:var(--red)}.badge-blue{background:var(--blue-bg);color:var(--blue)}.badge-purple{background:var(--purple-bg);color:var(--purple)}.client-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px;cursor:pointer;transition:border-color .15s,box-shadow .15s;position:relative}.client-card:hover{border-color:var(--border-md);box-shadow:var(--shadow-sm)}.client-card-arrows{display:flex;gap:4px;opacity:0;transition:opacity .15s}.client-card:hover .client-card-arrows{opacity:1}@media (max-width: 767px){.client-card-arrows{opacity:1}}.client-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.client-card-names{display:flex;flex-direction:column;gap:2px;min-width:0}.client-card-name{font-size:13px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-card-org{font-size:11px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-card-type{flex-shrink:0;font-size:10px!important;padding:2px 6px!important}.client-card-services{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.client-card-service-tag{font-size:10px;font-weight:500;color:var(--text-2);background:var(--surface);border-radius:4px;padding:1px 6px}.client-card-more{color:var(--text-3)}.client-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.client-card-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.client-card-deal{font-size:12px;font-weight:600;color:var(--text)}.client-card-followup{font-size:11px;font-weight:500}.fu-overdue{color:var(--red)}.fu-soon{color:var(--amber)}.fu-ok{color:var(--text-3)}.client-card-arrow{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid var(--border);background:var(--white);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-2);transition:background .1s,color .1s,border-color .1s}.client-card-arrow:hover{background:var(--amber-bg);border-color:var(--amber);color:var(--amber)}.client-card-arrow-forward:hover{background:var(--green-bg);border-color:var(--green);color:var(--green)}.client-card.dragging{opacity:.45;cursor:grabbing}.client-card[draggable=true]{cursor:grab}.pipeline{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;align-items:flex-start;min-height:calc(100vh - 200px)}@media (max-width: 767px){.pipeline{flex-wrap:nowrap;min-height:auto}}.pipeline-column{flex-shrink:0;width:260px;display:flex;flex-direction:column;gap:0;background:var(--surface);border-radius:var(--radius-lg);overflow:hidden}@media (max-width: 767px){.pipeline-column{width:230px}}.pipeline-column-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-top:3px solid transparent;background:var(--surface)}.pipeline-column-name{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.pipeline-column-count{font-size:11px;font-weight:600;padding:1px 7px;border-radius:10px;min-width:20px;text-align:center}.pipeline-column-body{display:flex;flex-direction:column;gap:6px;padding:0 8px 8px;flex:1;overflow-y:auto;max-height:calc(100vh - 280px)}@media (max-width: 767px){.pipeline-column-body{max-height:60vh}}.pipeline-empty{font-size:12px;color:var(--text-3);text-align:center;padding:20px 0}.pipeline-add-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px;border:none;background:none;font-family:var(--font);font-size:12px;font-weight:500;color:var(--text-3);cursor:pointer;border-top:1px solid var(--border);transition:color .1s,background .1s}.pipeline-add-btn:hover{color:var(--amber);background:var(--amber-lt)}.pipeline-column.drag-over{background:var(--amber-lt);outline:2px dashed var(--amber);outline-offset:-2px}.pipeline-column.drag-over .pipeline-column-body{min-height:80px}.pipeline-empty.pipeline-drop-hint{color:var(--amber);font-weight:500}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a171466;display:flex;align-items:flex-end;justify-content:center;z-index:1000;padding:0}@media (min-width: 640px){.modal-overlay{align-items:center;padding:24px}}.modal{background:var(--white);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-height:92vh;overflow:hidden;display:flex;flex-direction:column}@media (min-width: 640px){.modal{border-radius:var(--radius-xl)}.modal-sm{max-width:400px}.modal-md{max-width:560px}.modal-lg{max-width:720px}.modal-xl{max-width:960px}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 16px;border-bottom:1px solid var(--border)}.modal-title{font-size:16px;font-weight:600;color:var(--text)}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;border-radius:var(--radius);color:var(--text-2);cursor:pointer}.modal-close:hover{background:var(--surface);color:var(--text)}.modal-body{padding:20px;overflow-y:auto;flex:1}.modal-footer{padding:16px 20px;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end}.select-field{width:100%;padding:10px 32px 10px 12px;font-family:var(--font);font-size:14px;color:var(--text);background:var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236B6860' d='M6 8L1 3h10z'/%3E%3C/svg%3E") no-repeat right 12px center;border:1px solid var(--border-md);border-radius:var(--radius);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;transition:border-color .15s;min-height:44px}.select-field:focus{border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-lt)}.select-field.input-error{border-color:var(--red)}.textarea-field{width:100%;padding:10px 12px;font-family:var(--font);font-size:14px;color:var(--text);background:var(--white);border:1px solid var(--border-md);border-radius:var(--radius);outline:none;resize:vertical;transition:border-color .15s;min-height:44px;line-height:1.6}.textarea-field::placeholder{color:var(--text-3)}.textarea-field:focus{border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-lt)}.textarea-field.input-error{border-color:var(--red)}.client-modal-form{display:flex;flex-direction:column;gap:16px}.client-modal-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 480px){.client-modal-row{grid-template-columns:1fr}}.client-modal-field{display:flex;flex-direction:column;gap:6px}.client-modal-error{padding:10px 12px;background:var(--red-bg);color:var(--red);border-radius:var(--radius);font-size:13px}.client-modal-services{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;padding:10px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border)}@media (min-width: 480px){.client-modal-services{grid-template-columns:repeat(3,1fr)}}.client-modal-service-check{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:12px;color:var(--text);padding:3px 0}.client-modal-service-check input[type=checkbox]{width:14px;height:14px;accent-color:var(--amber);cursor:pointer;flex-shrink:0}.client-modal-service-check:hover span{color:var(--amber)}.activity-feed{display:flex;flex-direction:column;gap:0}.activity-item{display:flex;align-items:flex-start;gap:10px;padding:8px 0;position:relative}.activity-item:not(:last-child):after{content:"";position:absolute;left:13px;top:28px;bottom:0;width:1px;background:var(--border)}.activity-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;flex-shrink:0;position:relative;z-index:1}.activity-icon-green{background:var(--green-bg);color:var(--green)}.activity-icon-blue{background:var(--blue-bg);color:var(--blue)}.activity-icon-amber{background:var(--amber-bg);color:var(--amber)}.activity-icon-purple{background:var(--purple-bg);color:var(--purple)}.activity-icon-default{background:var(--surface);color:var(--text-3)}.activity-content{display:flex;flex-direction:column;gap:2px;min-width:0;padding-top:4px}.activity-label{font-size:12px;color:var(--text);line-height:1.4}.activity-time{font-size:11px;color:var(--text-3)}.activity-feed-loading{display:flex;justify-content:center;padding:16px}.activity-feed-empty{font-size:12px;color:var(--text-3);text-align:center;padding:16px}.comm-log-loading{display:flex;justify-content:center;padding:16px}.comm-log{display:flex;flex-direction:column;gap:12px}.comm-log-add{display:flex;flex-direction:column;gap:8px;background:var(--surface);border-radius:var(--radius);padding:10px}.comm-log-type-row{display:flex;gap:4px;flex-wrap:wrap}.comm-log-type-btn{padding:3px 10px;border:1px solid var(--border);background:var(--white);border-radius:20px;font-family:var(--font);font-size:11px;font-weight:500;color:var(--text-2);cursor:pointer;transition:background .1s,color .1s,border-color .1s}.comm-log-type-btn.active,.comm-log-type-btn:hover{background:var(--amber-bg);border-color:var(--amber);color:var(--amber)}.comm-log-textarea{width:100%;padding:8px 10px;font-family:var(--font);font-size:13px;color:var(--text);background:var(--white);border:1px solid var(--border-md);border-radius:var(--radius);outline:none;resize:vertical;line-height:1.5}.comm-log-textarea:focus{border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-lt)}.comm-log-add-footer{display:flex;align-items:center;justify-content:space-between}.comm-log-hint{font-size:11px;color:var(--text-3)}.comm-log-list{display:flex;flex-direction:column;gap:8px}.comm-log-item{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.comm-log-item-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.comm-log-item-type{font-size:12px;font-weight:600;color:var(--text)}.comm-log-item-meta{font-size:11px;color:var(--text-3)}.comm-log-item-text{font-size:13px;color:var(--text);line-height:1.5;white-space:pre-wrap}.comm-log-show-more{background:none;border:none;font-family:var(--font);font-size:12px;color:var(--amber);cursor:pointer;text-align:center;padding:4px;width:100%}.client-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a171459;z-index:200;display:flex;justify-content:flex-end}.client-detail{width:100%;max-width:420px;height:100%;background:var(--white);display:flex;flex-direction:column;overflow:hidden;box-shadow:-4px 0 24px #1a17141a}@media (max-width: 640px){.client-detail{max-width:100%}}.client-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px;border-bottom:1px solid var(--border)}.client-detail-header-main{display:flex;flex-direction:column;gap:4px;min-width:0}.client-detail-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.client-detail-name{font-size:16px;font-weight:600;color:var(--text)}.client-detail-stage{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px}.stage-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.client-detail-org{font-size:13px;color:var(--text-2)}.client-detail-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;border-radius:var(--radius);cursor:pointer;color:var(--text-2);flex-shrink:0}.client-detail-close:hover{background:var(--surface)}.client-detail-actions{display:flex;align-items:center;gap:8px;padding:12px 20px;border-bottom:1px solid var(--border)}.client-detail-confirm{display:flex;align-items:center;gap:6px}.client-detail-confirm-text{font-size:12px;color:var(--red);font-weight:500}.client-detail-tabs{display:flex;padding:0 20px;border-bottom:1px solid var(--border);gap:0}.client-detail-tab{padding:10px 12px;border:none;background:none;font-family:var(--font);font-size:13px;font-weight:500;color:var(--text-2);cursor:pointer;border-bottom:2px solid transparent;transition:color .1s;white-space:nowrap}.client-detail-tab:hover{color:var(--text)}.client-detail-tab.active{color:var(--amber);border-bottom-color:var(--amber)}.client-detail-body{flex:1;overflow-y:auto;padding:16px 20px}.client-info{display:flex;flex-direction:column;gap:0}.info-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--border)}.info-row:last-child{border-bottom:none}.info-row-col{flex-direction:column;align-items:flex-start;gap:6px}.info-row-label{font-size:12px;font-weight:500;color:var(--text-2);flex-shrink:0;min-width:80px}.info-row-value{font-size:13px;color:var(--text);text-align:right;word-break:break-word}.info-row-value.fu-overdue{color:var(--red);font-weight:500}.info-row-value.fu-soon{color:var(--amber);font-weight:500}.client-info-services{display:flex;flex-wrap:wrap;gap:4px}.client-info-service-tag{font-size:11px;font-weight:500;color:var(--text-2);background:var(--surface);border-radius:4px;padding:2px 8px}.client-info-notes{font-size:13px;color:var(--text);line-height:1.6;white-space:pre-wrap}.client-info-form{display:flex;flex-direction:column;gap:0}.info-form-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid var(--border)}.info-form-row:last-of-type{border-bottom:none}.info-form-label{font-size:12px;font-weight:500;color:var(--text-2);flex-shrink:0;min-width:80px}.info-form-label.label-danger{color:var(--red)}.info-form-label.label-warning{color:var(--amber)}.info-form-input,.info-form-select{flex:1;min-width:0;font-family:var(--font);font-size:13px;color:var(--text);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);padding:4px 6px;text-align:right;transition:border-color .15s,background .15s;outline:none}.info-form-input:focus,.info-form-select:focus{border-color:var(--amber);background:var(--white);text-align:left}.info-form-input:hover:not(:focus),.info-form-select:hover:not(:focus){border-color:var(--border-md);background:var(--surface)}.info-form-input.input-danger{color:var(--red)}.info-form-input.input-warning{color:var(--amber)}.info-form-select{cursor:pointer}.info-form-section{display:flex;flex-direction:column;gap:8px;padding:10px 0;border-bottom:1px solid var(--border)}.info-form-services{display:flex;flex-wrap:wrap;gap:6px}.service-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500;padding:3px 8px;border-radius:20px;cursor:pointer;border:1px solid var(--border);background:var(--white);color:var(--text-2);transition:all .12s;-webkit-user-select:none;user-select:none}.service-chip input[type=checkbox]{display:none}.service-chip:hover{border-color:var(--amber);color:var(--amber)}.service-chip.active{background:var(--amber-bg);border-color:var(--amber);color:var(--amber)}.info-form-textarea{width:100%;font-family:var(--font);font-size:13px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;resize:vertical;line-height:1.6;outline:none;transition:border-color .15s;box-sizing:border-box}.info-form-textarea:focus{border-color:var(--amber);background:var(--white)}.info-form-save-bar{display:flex;align-items:center;gap:10px;padding:12px 0 4px}.info-form-unsaved{font-size:12px;color:var(--text-3)}.csv-upload{display:flex;flex-direction:column;gap:16px}.csv-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:40px 24px;border:2px dashed var(--border-md);border-radius:var(--radius-lg);cursor:pointer;text-align:center;color:var(--text-3);transition:border-color .15s,background .15s}.csv-dropzone:hover{border-color:var(--amber);background:var(--amber-lt)}.csv-dropzone-text{font-size:14px;color:var(--text)}.csv-dropzone-text span{color:var(--amber);font-weight:500}.csv-dropzone-hint{font-size:12px;color:var(--text-3);max-width:360px}.csv-error{font-size:13px;color:var(--red);background:var(--red-bg);padding:8px 12px;border-radius:var(--radius)}.csv-template{display:flex;align-items:center;gap:8px}.csv-template-label{font-size:12px;color:var(--text-2)}.csv-template-btn{background:none;border:none;font-family:var(--font);font-size:12px;color:var(--amber);cursor:pointer;text-decoration:underline}.csv-preview{display:flex;flex-direction:column;gap:16px}.csv-preview-count{font-size:13px;color:var(--text-2)}.csv-mapping{display:flex;flex-direction:column;gap:8px;background:var(--surface);border-radius:var(--radius);padding:12px}.csv-mapping-row{display:flex;align-items:center;gap:12px}.csv-mapping-label{font-size:12px;font-weight:500;color:var(--text);min-width:120px}.csv-mapping-select{flex:1;padding:6px 10px;font-family:var(--font);font-size:13px;color:var(--text);background:var(--white);border:1px solid var(--border-md);border-radius:var(--radius-sm);outline:none;cursor:pointer}.csv-mapping-select:focus{border-color:var(--amber)}.csv-preview-table-wrap{overflow-x:auto}.csv-preview-table{min-width:400px}.csv-preview-table table{width:100%;border-collapse:collapse;font-size:12px}.csv-preview-table th{text-align:left;padding:6px 8px;background:var(--surface);color:var(--text-2);font-weight:600;border-bottom:1px solid var(--border);white-space:nowrap}.csv-preview-table td{padding:6px 8px;color:var(--text);border-bottom:1px solid var(--border);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.csv-done{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:40px 24px}.csv-done-icon{width:48px;height:48px;background:var(--green-bg);color:var(--green);font-size:24px;font-weight:700;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.csv-done h3{font-size:16px;color:var(--text)}.csv-done p{font-size:13px;color:var(--text-2)}.crm-page{display:flex;flex-direction:column;height:100%}.crm-header-actions{display:flex;gap:8px;align-items:center}.crm-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}.crm-search-wrap{display:flex;align-items:center;gap:8px;flex:1;min-width:180px;background:var(--white);border:1px solid var(--border-md);border-radius:var(--radius);padding:0 12px;color:var(--text-3);transition:border-color .15s}.crm-search-wrap:focus-within{border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-lt);color:var(--text-2)}.crm-search{flex:1;height:40px;border:none;outline:none;font-family:var(--font);font-size:13px;color:var(--text);background:none}.crm-search::placeholder{color:var(--text-3)}.crm-search-clear{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;background:none;color:var(--text-3);cursor:pointer;border-radius:3px}.crm-search-clear:hover{color:var(--text)}.crm-filters{display:flex;gap:6px}.crm-filter-select{padding:8px 28px 8px 10px;font-family:var(--font);font-size:13px;color:var(--text);background:var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath fill='%236B6860' d='M5 7L1 3h8z'/%3E%3C/svg%3E") no-repeat right 10px center;border:1px solid var(--border-md);border-radius:var(--radius);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;height:40px}.crm-filter-select:focus{border-color:var(--amber)}.crm-loading{display:flex;justify-content:center;padding:48px}.project-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px;cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:border-color .15s,box-shadow .15s}.project-card:hover{border-color:var(--border-md);box-shadow:0 1px 4px #1a171412}.project-card.dragging{opacity:.45;cursor:grabbing}.project-card[draggable=true]{cursor:grab}.project-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.project-card-title{font-size:13px;font-weight:600;color:var(--text);line-height:1.4;flex:1}.project-card-priority{font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px;flex-shrink:0;white-space:nowrap}.project-card-client{font-size:11px;color:var(--text-2);font-weight:500}.project-card-service{font-size:11px;color:var(--text-3)}.project-card-progress{display:flex;align-items:center;gap:6px}.project-card-progress-bar{flex:1;height:3px;background:var(--border);border-radius:2px;overflow:hidden}.project-card-progress-fill{height:100%;background:var(--green);border-radius:2px;transition:width .3s ease}.project-card-progress-text{font-size:10px;color:var(--text-3);flex-shrink:0}.project-card-due{font-size:11px;font-weight:500;color:var(--text-3)}.project-card-due.due-overdue{color:var(--red)}.project-card-due.due-soon{color:var(--amber)}.project-board{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;align-items:flex-start;min-height:calc(100vh - 220px)}@media (max-width: 767px){.project-board{flex-wrap:nowrap;min-height:auto}}.project-board-column{flex-shrink:0;width:240px;display:flex;flex-direction:column;background:var(--surface);border-radius:var(--radius-lg);overflow:hidden;transition:outline .1s,background .1s}@media (max-width: 767px){.project-board-column{width:210px}}.project-board-column.drag-over{background:var(--amber-lt);outline:2px dashed var(--amber);outline-offset:-2px}.project-board-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-top:3px solid transparent;background:var(--surface)}.project-board-name{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.project-board-count{font-size:11px;font-weight:600;padding:1px 7px;border-radius:10px;min-width:20px;text-align:center}.project-board-body{display:flex;flex-direction:column;gap:6px;padding:0 8px 8px;flex:1;overflow-y:auto;max-height:calc(100vh - 300px)}@media (max-width: 767px){.project-board-body{max-height:55vh}}.project-board-empty{font-size:12px;color:var(--text-3);text-align:center;padding:20px 0}.project-board-empty.drop-hint{color:var(--amber);font-weight:500}.project-board-add-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px;border:none;background:none;font-family:var(--font);font-size:12px;font-weight:500;color:var(--text-3);cursor:pointer;border-top:1px solid var(--border);transition:color .1s,background .1s}.project-board-add-btn:hover{color:var(--amber);background:var(--amber-lt)}.project-list{overflow-x:auto}.project-table{width:100%;border-collapse:collapse;font-size:13px}.project-th{text-align:left;font-size:11px;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.4px;padding:8px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.project-th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.project-th.sortable:hover{color:var(--text)}.sort-neutral{opacity:.35}.project-row{cursor:pointer;transition:background .1s}.project-row:hover{background:var(--surface)}.project-td{padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text)}.project-td-client{color:var(--text-2);font-size:12px;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-td-empty{color:var(--text-3)}.project-td-due.due-overdue{color:var(--red);font-weight:500}.project-td-due.due-soon{color:var(--amber);font-weight:500}.project-td-tasks{color:var(--text-2);font-size:12px}.project-row-title{font-weight:600;display:block}.project-row-service{font-size:11px;color:var(--text-3);display:block;margin-top:1px}.project-status-chip{font-size:11px;font-weight:500;padding:2px 8px;border-radius:10px;white-space:nowrap}.project-priority-chip{font-size:11px;font-weight:500;padding:2px 8px;border-radius:10px}.project-table-empty{text-align:center;color:var(--text-3);font-size:13px;padding:40px 0}.project-calendar{display:flex;flex-direction:column;gap:12px}.cal-nav{display:flex;align-items:center;gap:8px}.cal-nav-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--border);background:var(--white);border-radius:var(--radius);cursor:pointer;color:var(--text-2);transition:background .1s,border-color .1s}.cal-nav-btn:hover{background:var(--surface);border-color:var(--border-md)}.cal-month-label{font-size:15px;font-weight:600;color:var(--text);min-width:160px}.cal-today-btn{margin-left:auto;padding:4px 12px;font-family:var(--font);font-size:12px;font-weight:500;color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:background .1s,color .1s}.cal-today-btn:hover{background:var(--amber-lt);color:var(--amber);border-color:var(--amber)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.cal-weekday{font-size:11px;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.4px;padding:8px 0;text-align:center;background:var(--surface);border-bottom:1px solid var(--border)}.cal-day{min-height:90px;padding:6px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:3px;background:var(--white)}.cal-day:nth-child(7n){border-right:none}.cal-day.other-month{background:var(--surface)}.cal-day.other-month .cal-day-num{color:var(--text-3)}.cal-day.today .cal-day-num{background:var(--amber);color:var(--white);border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-weight:600}.cal-day-num{font-size:12px;font-weight:500;color:var(--text);width:22px;height:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cal-day-projects{display:flex;flex-direction:column;gap:2px;flex:1}.cal-project-chip{font-size:10px;font-weight:500;padding:2px 5px;border-radius:4px;border:none;cursor:pointer;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:opacity .1s}.cal-project-chip:hover{opacity:.8}.cal-more{font-size:10px;color:var(--text-3);padding-left:4px}@media (max-width: 640px){.cal-day{min-height:60px}.cal-project-chip{display:none}.cal-day-projects:before{content:attr(data-count)}}.task-modal-form{display:flex;flex-direction:column;gap:12px}.task-modal-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 480px){.task-modal-row{grid-template-columns:1fr}}.task-modal-project-label{font-size:12px;color:var(--text-2);background:var(--surface);border-radius:var(--radius-sm);padding:4px 8px}.task-modal-error{font-size:13px;color:var(--red);background:var(--red-bg);border-radius:var(--radius);padding:8px 12px}.file-links{display:flex;flex-direction:column;gap:8px}.file-links-loading{padding:16px 0;display:flex;justify-content:center}.file-links-empty{font-size:13px;color:var(--text-3);text-align:center;padding:16px 0}.file-links-list{display:flex;flex-direction:column;gap:4px}.file-link-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border)}.file-link-anchor{display:flex;align-items:center;gap:7px;color:var(--blue);text-decoration:none;font-size:13px;font-weight:500;min-width:0;flex:1}.file-link-anchor:hover{text-decoration:underline}.file-link-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-link-delete{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-3);flex-shrink:0;transition:background .1s,color .1s}.file-link-delete:hover{background:var(--red-bg);color:var(--red)}.file-link-form{display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border)}.file-link-input{font-family:var(--font);font-size:13px;color:var(--text);background:var(--white);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 10px;outline:none;transition:border-color .15s}.file-link-input:focus{border-color:var(--amber)}.file-link-form-actions{display:flex;gap:6px}.file-link-add-btn{display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px dashed var(--border-md);background:none;border-radius:var(--radius);font-family:var(--font);font-size:12px;font-weight:500;color:var(--text-3);cursor:pointer;transition:color .1s,border-color .1s,background .1s}.file-link-add-btn:hover{color:var(--amber);border-color:var(--amber);background:var(--amber-lt)}.time-tracker{display:flex;flex-direction:column;gap:8px}.time-tracker-loading{padding:16px 0;display:flex;justify-content:center}.time-tracker-summary{padding:8px 0 4px;border-bottom:1px solid var(--border)}.time-tracker-total{font-size:13px;font-weight:600;color:var(--text)}.time-tracker-empty{font-size:13px;color:var(--text-3);text-align:center;padding:12px 0}.time-entries-list{display:flex;flex-direction:column;gap:4px}.time-entry-row{display:flex;align-items:flex-start;gap:8px;padding:7px 10px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border)}.time-entry-hours{font-size:13px;font-weight:700;color:var(--text);flex-shrink:0;min-width:28px}.time-entry-detail{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.time-entry-task{font-size:12px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.time-entry-desc{font-size:11px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.time-entry-date{font-size:11px;color:var(--text-3);flex-shrink:0}.time-entry-delete{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-3);flex-shrink:0;transition:background .1s,color .1s}.time-entry-delete:hover{background:var(--red-bg);color:var(--red)}.time-entry-form{display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border)}.time-entry-form-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}.time-entry-select,.time-entry-input{font-family:var(--font);font-size:13px;color:var(--text);background:var(--white);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 10px;outline:none;transition:border-color .15s;width:100%;box-sizing:border-box}.time-entry-select:focus,.time-entry-input:focus{border-color:var(--amber)}.time-entry-form-actions{display:flex;gap:6px}.time-entry-add-btn{display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px dashed var(--border-md);background:none;border-radius:var(--radius);font-family:var(--font);font-size:12px;font-weight:500;color:var(--text-3);cursor:pointer;transition:color .1s,border-color .1s,background .1s}.time-entry-add-btn:hover:not(:disabled){color:var(--amber);border-color:var(--amber);background:var(--amber-lt)}.time-entry-add-btn:disabled{opacity:.4;cursor:not-allowed}.project-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a171459;z-index:200;display:flex;justify-content:flex-end}.project-detail{width:100%;max-width:440px;height:100%;background:var(--white);display:flex;flex-direction:column;overflow:hidden;box-shadow:-4px 0 24px #1a17141a}@media (max-width: 640px){.project-detail{max-width:100%}}.project-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px;border-bottom:1px solid var(--border);flex-shrink:0}.project-detail-header-main{display:flex;flex-direction:column;gap:4px;min-width:0}.project-detail-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.project-detail-title{font-size:15px;font-weight:600;color:var(--text)}.project-detail-status-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;white-space:nowrap}.project-detail-client{font-size:12px;color:var(--text-2)}.project-detail-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;border-radius:var(--radius);cursor:pointer;color:var(--text-2);flex-shrink:0}.project-detail-close:hover{background:var(--surface)}.project-detail-actions{display:flex;align-items:center;gap:8px;padding:10px 20px;border-bottom:1px solid var(--border);flex-shrink:0}.project-detail-confirm{display:flex;align-items:center;gap:6px}.project-detail-confirm-text{font-size:12px;color:var(--red);font-weight:500}.project-detail-fields{padding:12px 20px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:0;flex-shrink:0;max-height:50vh;overflow-y:auto}.detail-field-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid var(--border)}.detail-field-row:last-of-type{border-bottom:none}.detail-field-label{font-size:12px;font-weight:500;color:var(--text-2);flex-shrink:0;min-width:72px}.detail-field-input,.detail-field-select{flex:1;min-width:0;font-family:var(--font);font-size:13px;color:var(--text);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);padding:3px 6px;text-align:right;outline:none;transition:border-color .12s,background .12s}.detail-field-input:focus,.detail-field-select:focus{border-color:var(--amber);background:var(--white);text-align:left}.detail-field-input:hover:not(:focus),.detail-field-select:hover:not(:focus){border-color:var(--border-md);background:var(--surface)}.detail-field-select{cursor:pointer}.detail-field-section{display:flex;flex-direction:column;gap:6px;padding:8px 0}.detail-field-textarea{width:100%;font-family:var(--font);font-size:13px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:7px 10px;resize:vertical;line-height:1.6;outline:none;transition:border-color .15s;box-sizing:border-box}.detail-field-textarea:focus{border-color:var(--amber);background:var(--white)}.detail-save-bar{display:flex;align-items:center;gap:10px;padding:10px 0 2px}.detail-unsaved{font-size:12px;color:var(--text-3)}.project-detail-tabs{display:flex;padding:0 20px;border-bottom:1px solid var(--border);gap:0;flex-shrink:0}.project-detail-tab{display:flex;align-items:center;gap:5px;padding:10px 12px;border:none;background:none;font-family:var(--font);font-size:13px;font-weight:500;color:var(--text-2);cursor:pointer;border-bottom:2px solid transparent;transition:color .1s;white-space:nowrap}.project-detail-tab:hover{color:var(--text)}.project-detail-tab.active{color:var(--amber);border-bottom-color:var(--amber)}.project-detail-tab-badge{font-size:10px;font-weight:600;background:var(--surface);color:var(--text-2);padding:1px 5px;border-radius:8px}.project-detail-body{flex:1;overflow-y:auto;padding:14px 20px}.tasks-panel-loading{padding:20px 0;display:flex;justify-content:center}.tasks-panel{display:flex;flex-direction:column;gap:8px}.tasks-panel-add{display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px dashed var(--border-md);background:none;border-radius:var(--radius);font-family:var(--font);font-size:12px;font-weight:500;color:var(--text-3);cursor:pointer;transition:color .1s,border-color .1s,background .1s}.tasks-panel-add:hover{color:var(--amber);border-color:var(--amber);background:var(--amber-lt)}.tasks-panel-empty{font-size:13px;color:var(--text-3);text-align:center;padding:16px 0}.task-group{display:flex;flex-direction:column;gap:2px}.task-group-header{display:flex;align-items:center;justify-content:space-between;padding:4px 0 2px}.task-group-label{font-size:11px;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.4px}.task-group-count{font-size:11px;color:var(--text-3)}.task-row{display:flex;align-items:flex-start;gap:8px;padding:7px 8px;border-radius:var(--radius);cursor:pointer;transition:background .1s}.task-row:hover{background:var(--surface)}.task-check{width:16px;height:16px;border:1.5px solid var(--border-md);border-radius:4px;background:var(--white);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;transition:background .1s,border-color .1s}.task-check:hover{border-color:var(--green)}.task-check.checked{background:var(--green);border-color:var(--green);color:var(--white)}.task-row-body{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.task-row-title{font-size:13px;color:var(--text);line-height:1.3}.task-row-title.done{color:var(--text-3);text-decoration:line-through}.task-row-meta{display:flex;align-items:center;gap:6px}.task-priority-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.task-priority-dot.p-low{background:var(--text-3)}.task-priority-dot.p-high{background:var(--amber)}.task-priority-dot.p-urgent{background:var(--red)}.task-row-due{font-size:11px;color:var(--text-3);font-weight:500}.task-row-due.due-overdue{color:var(--red)}.task-row-due.due-soon{color:var(--amber)}.task-subtask-count{font-size:10px;color:var(--text-3);background:var(--surface);padding:1px 5px;border-radius:4px}.task-row-delete{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;color:transparent;flex-shrink:0;transition:background .1s,color .1s}.task-row:hover .task-row-delete{color:var(--text-3)}.task-row-delete:hover{background:var(--red-bg);color:var(--red)!important}.project-modal-form{display:flex;flex-direction:column;gap:12px}.project-modal-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 480px){.project-modal-row{grid-template-columns:1fr}}.project-modal-error{font-size:13px;color:var(--red);background:var(--red-bg);border-radius:var(--radius);padding:8px 12px}.projects-page{display:flex;flex-direction:column;gap:0}.projects-loading{display:flex;justify-content:center;padding:60px 0}.projects-toolbar{display:flex;align-items:center;gap:10px;padding:12px 0 16px;flex-wrap:wrap}.projects-search-wrap{position:relative;display:flex;align-items:center;flex:1;min-width:160px;max-width:280px}.projects-search-wrap svg{position:absolute;left:10px;color:var(--text-3);pointer-events:none;flex-shrink:0}.projects-search{width:100%;padding:7px 10px 7px 32px;font-family:var(--font);font-size:13px;color:var(--text);background:var(--white);border:1px solid var(--border);border-radius:var(--radius);outline:none;transition:border-color .15s}.projects-search:focus{border-color:var(--amber)}.projects-search-clear{position:absolute;right:8px;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;background:none;cursor:pointer;color:var(--text-3);border-radius:3px}.projects-search-clear:hover{color:var(--text)}.projects-filters{display:flex;gap:8px;flex-wrap:wrap}.projects-filter-select{font-family:var(--font);font-size:12px;color:var(--text-2);background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:6px 10px;cursor:pointer;outline:none;transition:border-color .15s}.projects-filter-select:focus{border-color:var(--amber)}.projects-view-switcher{display:flex;gap:2px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:3px;margin-left:auto}.view-btn{padding:4px 12px;font-family:var(--font);font-size:12px;font-weight:500;color:var(--text-2);background:none;border:none;border-radius:calc(var(--radius) - 2px);cursor:pointer;transition:background .1s,color .1s}.view-btn:hover{color:var(--text)}.view-btn.active{background:var(--white);color:var(--text);box-shadow:0 1px 3px #1a171414}@media (max-width: 640px){.projects-toolbar{gap:8px}.projects-search-wrap{max-width:100%;flex:1 1 100%}.projects-filters{flex:1 1 100%}.projects-view-switcher{margin-left:0}}.tier-gate{position:relative;min-height:200px}.tier-gate-preview{opacity:.25;pointer-events:none;-webkit-user-select:none;user-select:none;filter:blur(2px)}.tier-gate-lock{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px 24px;background:#f5f4f0d9;border-radius:var(--radius-lg);border:1px dashed var(--border-md);gap:8px}.tier-gate-icon{color:var(--amber);margin-bottom:4px}.tier-gate-title{font-size:15px;font-weight:600;color:var(--text)}.tier-gate-desc{font-size:13px;color:var(--text-2);max-width:300px}.tier-gate-features{list-style:none;display:flex;flex-direction:column;gap:4px;margin-top:4px}.tier-gate-features li{font-size:12px;color:var(--text-2);display:flex;align-items:center;gap:6px}.tier-gate-features li:before{content:"✓";color:var(--green);font-weight:600}.tier-gate-btn{margin-top:8px;padding:8px 16px;background:var(--amber);color:#fff;border:none;border-radius:var(--radius);font-family:var(--font);font-size:13px;font-weight:500;cursor:pointer}.tier-gate-btn:hover{opacity:.88}:root{--bg: #F5F4F0;--surface: #ECEAE4;--white: #FFFFFF;--border: #E0DDD5;--border-md: #CCC9C0;--text: #1A1714;--text-2: #6B6860;--text-3: #AAA89F;--amber: #BA7517;--amber-bg: #FAEEDA;--amber-lt: #FEF3E0;--red: #A32D2D;--red-bg: #FCEBEB;--green: #0F6E56;--green-bg: #E1F5EE;--blue: #185FA5;--blue-bg: #E6F1FB;--purple: #3C3489;--purple-bg: #EEEDFE;--radius-sm: 6px;--radius: 8px;--radius-lg: 12px;--radius-xl: 16px;--font: "DM Sans", sans-serif;--font-serif: "DM Serif Display", serif;--sidebar-w: 220px;--mobile-nav-h: 60px;--shadow-sm: 0 1px 3px rgba(26, 23, 20, .06);--shadow: 0 2px 8px rgba(26, 23, 20, .08)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:14px;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{font-family:var(--font);font-size:14px;font-weight:400;line-height:1.6;color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;color:var(--text)}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.1rem}h4{font-size:1rem}p{color:var(--text)}a{color:var(--amber);text-decoration:none}a:hover{text-decoration:underline}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.p-5{padding:20px}.p-6{padding:24px}.px-3{padding-left:12px;padding-right:12px}.px-4{padding-left:16px;padding-right:16px}.px-6{padding-left:24px;padding-right:24px}.py-2{padding-top:8px;padding-bottom:8px}.py-3{padding-top:12px;padding-bottom:12px}.py-4{padding-top:16px;padding-bottom:16px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.text-sm{font-size:12px}.text-base{font-size:14px}.text-lg{font-size:16px}.text-xl{font-size:18px}.font-medium{font-weight:500}.font-semibold{font-weight:600}.text-muted{color:var(--text-2)}.text-subtle{color:var(--text-3)}.text-amber{color:var(--amber)}.text-center{text-align:center}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px}.surface{background:var(--surface);border-radius:var(--radius);padding:12px}.divider{height:1px;background:var(--border);margin:12px 0}.stage-lead{color:#0c447c;background:#e6f1fb}.stage-in-talks{color:#72243e;background:#fbeaf0}.stage-signed{color:#085041;background:#e1f5ee}.stage-done{color:#444441;background:#f1efe8}.stage-dot-lead{background:#378add}.stage-dot-in-talks{background:#d4537e}.stage-dot-signed{background:#1d9e75}.stage-dot-done{background:#888780}.type-church{background:#faeeda;color:#633806}.type-ministry{background:#fbeaf0;color:#72243e}.type-influencer{background:#e6f1fb;color:#0c447c}.type-artist{background:#eeedfe;color:#3c3489}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-md);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-3)}:focus-visible{outline:2px solid var(--amber);outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fade-in{animation:fadeIn .15s ease-out}
