:root{--apple-blue: #007AFF;--apple-purple: #5856D6;--apple-green: #34C759;--apple-orange: #FF9500;--apple-red: #FF3B30;--apple-gray: #8E8E93;--bg-primary: #eef1f5;--bg-white: #ffffff;--bg-glass: rgba(255, 255, 255, .8);--bg-hover: rgba(0, 0, 0, .04);--text-primary: #1d1d1f;--text-secondary: #424245;--text-muted: #86868b;--border-color: rgba(0, 0, 0, .1);--border-subtle: rgba(0, 0, 0, .06);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .12)}html.dark-mode{--bg-primary: #0f0f14;--bg-white: #1a1a24;--bg-glass: rgba(30, 30, 40, .85);--bg-hover: rgba(255, 255, 255, .06);--text-primary: #f0f0f2;--text-secondary: #b0b0b8;--text-muted: #6b6b78;--border-color: rgba(255, 255, 255, .1);--border-subtle: rgba(255, 255, 255, .05);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .5);color-scheme:dark}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased}.app-layout{display:flex;flex-direction:column;min-height:100vh}.app-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:16px;background:var(--bg-primary)}.loading-logo{width:56px;height:56px;border-radius:14px;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.95)}}.main-content{flex:1;background:var(--bg-primary)}.page-container{padding:24px 32px;max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-header h1{margin:0;font-size:28px;font-weight:600;color:var(--text-primary);letter-spacing:-.5px}.header-actions{display:flex;align-items:center;gap:12px}.count-badge{background:var(--bg-white);color:var(--text-secondary);padding:6px 14px;border-radius:20px;font-size:13px;font-weight:500;border:1px solid var(--border-color)}.btn-primary{background:linear-gradient(135deg,var(--apple-blue),var(--apple-purple));color:#fff;border:none;padding:10px 20px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--bg-white);color:var(--text-primary);border:1px solid var(--border-color);padding:8px 16px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-secondary:hover{background:var(--bg-hover);border-color:#00000026}.btn-secondary.active-filter{background:#0066cc1a;color:#06c;border-color:#0066cc4d;font-weight:600}.btn-danger{background:#ff3b301a;color:#ff3b30;border:1px solid rgba(255,59,48,.3);padding:8px 16px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-danger:hover{background:#ff3b3033;border-color:#ff3b3080}.filters-bar{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.search-input{flex:1;min-width:250px;max-width:400px;padding:10px 16px;background:var(--bg-white);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-size:14px;transition:all .15s ease}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{outline:none;border-color:var(--apple-blue);box-shadow:0 0 0 3px #007aff26}.filter-select{padding:10px 16px;background:var(--bg-white);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .15s ease}.filter-select:focus{outline:none;border-color:var(--apple-blue)}table.data-table{width:100%;background:var(--bg-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:16px;border-collapse:collapse;border:1px solid var(--border-color);box-shadow:var(--shadow-sm);overflow:hidden}table.data-table th{background:#00000008;padding:14px 16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color)}table.data-table td{padding:14px 16px;font-size:14px;color:var(--text-primary);border-bottom:1px solid var(--border-subtle)}table.data-table tbody tr:last-child td{border-bottom:none}table.data-table .clickable-row{cursor:pointer;transition:background .15s ease}table.data-table .clickable-row:hover{background:#007aff0a}table.data-table .clickable-row.expanded{background:#007aff0f}table.data-table .expand-icon{color:var(--text-muted);font-size:10px;width:30px}table.data-table .primary-cell{font-weight:600;color:var(--text-primary)}table.data-table .expanded-row td{padding:0;background:#00000005}.status-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.status-badge.active{background:#34c75926;color:#248a3d}.status-badge.completed{background:#007aff26;color:#06c}.status-badge.pending{background:#ff950026;color:#c93400}.status-badge.inactive{background:#8e8e9326;color:#636366}.expanded-content{padding:20px 24px}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin-bottom:16px}.detail-item label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;display:block}.detail-item p{margin:0;font-size:14px;color:var(--text-secondary)}.detail-item p.mono{font-family:SF Mono,Monaco,Menlo,monospace;font-size:12px;color:var(--text-muted)}.action-buttons{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--border-subtle)}.stat-icon{font-size:2rem}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:28px;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.stat-label{font-size:13px;color:var(--text-muted);font-weight:500}.dashboard-section{background:var(--bg-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:16px;border:1px solid var(--border-color);padding:20px;margin-bottom:20px;box-shadow:var(--shadow-sm)}.dashboard-section h2{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-secondary)}.quick-actions{display:flex;gap:10px;flex-wrap:wrap}.status-list{display:flex;flex-direction:column;gap:12px}.status-item{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--text-secondary)}.loading{text-align:center;padding:60px 20px;color:var(--text-muted);font-size:15px}.loading:after{content:"";display:inline-block;width:18px;height:18px;margin-left:10px;border:2px solid var(--border-color);border-top-color:var(--apple-blue);border-radius:50%;animation:spin .8s linear infinite}.error{text-align:center;padding:40px 20px;color:var(--apple-red);background:#ff3b3014;border-radius:12px;border:1px solid rgba(255,59,48,.2)}@media (max-width: 768px){.main-content{margin-left:0}.sidebar{display:none}.page-container{padding:12px 8px}.page-header{flex-direction:column;gap:12px;align-items:flex-start}.page-header h1{font-size:22px}.filters-bar{flex-direction:column}.search-input{max-width:none}.dashboard-container{padding:12px 8px}table.data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px;font-size:13px}table.data-table th,table.data-table td{padding:10px 12px;font-size:12px;white-space:nowrap}.detail-grid{grid-template-columns:1fr 1fr;gap:12px}.action-buttons{flex-wrap:wrap}.btn-primary,.btn-secondary,.btn-danger{min-height:44px;padding:10px 16px;font-size:14px}.header-actions{flex-wrap:wrap;width:100%}.modal-content{width:95%!important;max-width:95vw!important;max-height:85vh;overflow-y:auto;padding:20px 16px;border-radius:16px;margin:0 auto}.slide-panel{width:100vw!important;max-width:100vw!important;padding-bottom:env(safe-area-inset-bottom,16px)}.stat-value{font-size:22px}}@media (max-width: 375px){.page-container{padding:8px 6px}.page-header h1{font-size:20px}.btn-primary,.btn-secondary,.btn-danger{padding:10px 12px;font-size:13px}.detail-grid{grid-template-columns:1fr}}@supports (-webkit-touch-callout: none){input,select,textarea{font-size:max(16px,1em)!important}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0003;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#0000004d}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0006;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1000;display:flex;justify-content:center;align-items:center}.modal-content{background:#fff;padding:30px;border-radius:12px;box-shadow:0 8px 30px #0000001f;width:90%;max-width:500px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.form-group{margin-bottom:16px;display:flex;flex-direction:column;gap:6px}.form-input{padding:10px 12px;border:1px solid #e1e1e1;border-radius:8px;font-size:14px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;width:100%}input,select,textarea,button{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.financial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.financial-card{background:#ffffff80;padding:16px;border-radius:12px;border:1px solid rgba(0,0,0,.08);display:flex;flex-direction:column;gap:8px}.financial-card label{font-size:12px;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.financial-value{font-size:24px;font-weight:700;color:var(--apple-blue);letter-spacing:-.5px}.financial-card small{font-size:11px;color:var(--text-muted)}.wip-list{display:flex;flex-direction:column;gap:12px}.wip-item{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#fff6;border-radius:10px;border:1px solid rgba(0,0,0,.06);gap:16px}.wip-info{display:flex;flex-direction:column;gap:4px;flex:1}.wip-title{font-size:14px;font-weight:600;color:var(--text-primary)}.wip-client{font-size:12px;color:var(--text-muted)}.wip-meta{display:flex;align-items:center;gap:12px}.wip-dev{font-size:12px;color:var(--text-secondary);min-width:100px}.wip-price{font-size:14px;font-weight:600;color:var(--apple-green);min-width:90px;text-align:right}.view-all-link{display:block;text-align:center;padding:12px;margin-top:12px;color:var(--apple-blue);text-decoration:none;font-size:13px;font-weight:500;border-radius:8px;transition:background .15s ease}.view-all-link:hover{background:#007aff14}.invoice-summary{display:flex;gap:16px;margin-bottom:20px}.invoice-stat{flex:1;background:#ffffffb3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.4);border-radius:14px;padding:16px 20px;display:flex;flex-direction:column;gap:4px;box-shadow:0 2px 8px #0000000a}.invoice-stat.paid{border-left:3px solid #34c759}.invoice-stat.pending{border-left:3px solid #ff9500}.invoice-stat-label{font-size:12px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.invoice-stat-value{font-size:1.4rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.stripe-mode-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600}.stripe-mode-badge.test{background:#ff95001f;color:#ff9500;border:1px solid rgba(255,149,0,.3)}.stripe-mode-badge.live{background:#ff3b301f;color:#ff3b30;border:1px solid rgba(255,59,48,.3)}.status-badge.draft{background:#8e8e931f;color:#8e8e93}.status-badge.void{background:#8e8e9314;color:#aeaeb2;text-decoration:line-through}.loading-spinner{display:flex;align-items:center;justify-content:center;padding:4rem;color:var(--text-muted);font-size:15px}html.dark-mode body{background:var(--bg-primary);color:var(--text-primary)}.dark-mode table.data-table th{background:#ffffff0a}.dark-mode table.data-table .clickable-row:hover{background:#60a5fa14}.dark-mode table.data-table .clickable-row.expanded{background:#60a5fa0f}.dark-mode table.data-table .expanded-row td{background:#ffffff05}.dark-mode .filter-select option{background:#1a1a24;color:#f0f0f2}.dark-mode .btn-secondary:hover{border-color:#ffffff26}.dark-mode .form-input,.dark-mode .form-select,.dark-mode textarea.form-input{background:#232330;color:#f0f0f2;border-color:#ffffff1a}.dark-mode .form-input::placeholder{color:#6b6b78}.dark-mode .slide-panel,.dark-mode .modal-overlay .modal-content,.dark-mode .archive-modal-content{background:#1a1a24;color:#f0f0f2}.dark-mode .modal-overlay{background:#000000b3}.dark-mode .stat-card,.dark-mode .dashboard-card,.dark-mode .quick-actions-section,.dark-mode .metric-card{background:#1e1e28b3;border-color:#ffffff0f}.dark-mode .signin-card{background:#1a1a24;border-color:#ffffff14}.dark-mode .signin-card h1{color:#f0f0f2}.dark-mode .expanded-content{background:transparent}.dark-mode .detail-item p{color:var(--text-secondary)}.dark-mode .count-badge{background:#232330}.dark-mode .stripe-mode-badge{background:#34c75926}.photo-upload-container{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.photo-file-upload-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--bg-white);border:1px dashed var(--border-color);border-radius:8px;font-size:13px;font-weight:500;color:var(--apple-blue);cursor:pointer;transition:all .15s ease}.photo-file-upload-btn:hover{background:#007aff0f;border-color:var(--apple-blue)}.developer-photo-preview{width:60px;height:60px;border-radius:50%;object-fit:cover;border:2px solid var(--border-color)}body.clocked-in:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:99999;border:3px solid rgba(249,115,22,.55);box-shadow:inset 0 18px 22px -18px #f9731638,inset 0 -18px 22px -18px #f9731638,inset 18px 0 22px -18px #f9731638,inset -18px 0 22px -18px #f9731638}@media (min-width: 1400px){body.clocked-in:after{border-width:4px;box-shadow:inset 0 22px 28px -20px #f9731638,inset 0 -22px 28px -20px #f9731638,inset 22px 0 28px -20px #f9731638,inset -22px 0 28px -20px #f9731638}}.signin-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;background:linear-gradient(135deg,#f0f4ff,#e8f0fe,#f5f7fa)}.signin-card{background:#fffc;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.7);border-radius:24px;padding:56px 48px;max-width:420px;width:100%;text-align:center;box-shadow:0 12px 48px #003c781a}.signin-logo img{width:72px;height:72px;border-radius:16px;margin-bottom:20px;box-shadow:0 4px 16px #003c781f}.signin-card h1{font-size:1.8rem;font-weight:700;color:#1a1a2e;margin:0 0 8px}.signin-subtitle{color:#6b7280;font-size:.95rem;margin:0 0 32px;line-height:1.5}.signin-button-wrap{display:flex;justify-content:center;margin-bottom:24px}.signin-footer{color:#9ca3af;font-size:.78rem;margin:0;line-height:1.4}.top-nav{position:sticky;top:0;left:0;right:0;z-index:100;padding:12px 24px;display:flex;justify-content:center;background:#fff9;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(0,0,0,.06);overflow:visible}.nav-inner{display:flex;align-items:center;flex-wrap:nowrap;gap:24px;width:100%;padding:0 8px}.nav-brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}.nav-logo{height:36px;width:auto;object-fit:contain}.nav-links{list-style:none;margin:0;display:flex;align-items:center;justify-content:center;gap:4px;background:#0000000a;border-radius:12px;padding:4px;flex:1}.nav-links li{cursor:pointer;position:relative}.nav-links li a{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:10px;text-decoration:none;color:#424245;font-size:.9rem;font-weight:600;transition:all .35s cubic-bezier(.4,0,.2,1);white-space:nowrap;cursor:pointer;position:relative;z-index:1}.nav-links li a:hover{background:#ffffff80;color:#1d1d1f}.nav-links li a.active{color:#06c;background:linear-gradient(135deg,#ffffffb3,#fff6 40%,#c8dcff59 60%,#ffffff80);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);box-shadow:0 2px 8px #0066cc1f,0 1px 3px #0000000f,inset 0 1px #fffc,inset 0 -1px #0000000a;border:1px solid rgba(255,255,255,.6);animation:glassSlideIn .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes glassSlideIn{0%{opacity:0;transform:scale(.92);box-shadow:none}60%{opacity:1;transform:scale(1.03)}to{opacity:1;transform:scale(1);box-shadow:0 2px 8px #0066cc1f,0 1px 3px #0000000f,inset 0 1px #fffc,inset 0 -1px #0000000a}}.nav-links li a:not(.active){border:1px solid transparent}.nav-icon{font-size:1rem}.nav-text{flex:1}.nav-user{display:flex;align-items:center;gap:8px;margin-left:auto;padding-left:16px;flex-shrink:0;position:relative}.profile-trigger{display:flex;align-items:center;gap:6px;padding:4px 8px 4px 4px;border:1px solid transparent;border-radius:20px;background:transparent;cursor:pointer;transition:background .2s,border-color .2s;color:inherit}.profile-trigger:hover{background:#0000000a;border-color:#0000000f}.profile-caret{font-size:.6rem;opacity:.5;line-height:1}.nav-avatar-fallback{width:28px;height:28px;border-radius:50%;background:var(--apple-blue, #007AFF);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}.nav-user-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.nav-avatar{width:28px;height:28px;border-radius:50%;border:2px solid rgba(0,102,204,.15)}.nav-user-name{font-size:.82rem;font-weight:600;color:#374151;white-space:nowrap}.impersonation-inline{display:flex;align-items:center;gap:4px}.impersonate-select-inline{width:140px;padding:3px 20px 3px 6px;border:1px solid rgba(0,0,0,.12);border-radius:4px;font-size:.7rem;background:#ffffffe6;outline:none;color:#374151;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%239ca3af'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center}.impersonate-select-inline:focus{border-color:#06c;box-shadow:0 0 0 2px #0066cc26}.impersonate-select-inline:disabled{opacity:.5;cursor:wait}.impersonate-error-inline{color:#dc2626;font-size:.65rem;white-space:nowrap}.nav-signout{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:#9ca3af;font-size:.85rem;cursor:pointer;border-radius:50%;transition:background .15s,color .15s}.nav-signout:hover{background:#dc262614;color:#dc2626}.dark-mode-toggle{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);background:var(--bg-hover);border-radius:50%;font-size:1rem;cursor:pointer;transition:background .2s,transform .2s;padding:0}.dark-mode-toggle:hover{transform:scale(1.1);background:var(--bg-glass)}.profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:240px;background:#fffffff2;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(0,0,0,.08);border-radius:14px;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f;padding:6px;z-index:300;animation:dropdownIn .18s ease-out}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.profile-dropdown-header{display:flex;flex-direction:column;padding:10px 12px 8px}.profile-dropdown-name{font-weight:700;font-size:.9rem;color:#1d1d1f}.profile-dropdown-email{font-size:.75rem;color:#8e8e93;margin-top:1px}.profile-dropdown-divider{height:1px;background:#0000000f;margin:4px 8px}.profile-dropdown-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;text-decoration:none;color:#374151;font-size:.88rem;font-weight:500;cursor:pointer;transition:background .15s;border:none;background:none;width:100%;text-align:left}.profile-dropdown-item:hover{background:#0000000a}.profile-dropdown-signout{color:#dc2626}.profile-dropdown-signout:hover{background:#dc26260f}.profile-dropdown-impersonate{padding:6px 12px}.profile-dropdown-impersonate .impersonate-select-inline{width:100%}.dark-mode .top-nav{background:#1e1e23d9;border-bottom-color:#ffffff14}.dark-mode .nav-links{background:#ffffff0f}.dark-mode .nav-links li a{color:#a1a1aa}.dark-mode .nav-links li a:hover{background:#ffffff1a;color:#f4f4f5}.dark-mode .nav-links li a.active{color:#60a5fa;background:linear-gradient(135deg,#ffffff14,#ffffff0a 40%,#60a5fa14 60%,#ffffff0f);backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%);box-shadow:0 2px 8px #60a5fa26,0 1px 3px #0003,inset 0 1px #ffffff1a,inset 0 -1px #00000026;border:1px solid rgba(255,255,255,.12);animation:glassSlideInDark .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes glassSlideInDark{0%{opacity:0;transform:scale(.92);box-shadow:none}60%{opacity:1;transform:scale(1.03)}to{opacity:1;transform:scale(1);box-shadow:0 2px 8px #60a5fa26,0 1px 3px #0003,inset 0 1px #ffffff1a,inset 0 -1px #00000026}}.dark-mode .nav-user-name{color:#d4d4d8}.dark-mode .profile-trigger:hover{background:#ffffff14;border-color:#ffffff1a}.dark-mode .profile-dropdown{background:#282830f2;border-color:#ffffff1a;box-shadow:0 8px 32px #00000059,0 2px 8px #0003}.dark-mode .profile-dropdown-name{color:#f4f4f5}.dark-mode .profile-dropdown-email{color:#71717a}.dark-mode .profile-dropdown-divider{background:#ffffff14}.dark-mode .profile-dropdown-item{color:#d4d4d8}.dark-mode .profile-dropdown-item:hover{background:#ffffff0f}.dark-mode .profile-dropdown-signout{color:#f87171}.dark-mode .profile-dropdown-signout:hover{background:#f8717114}.dark-mode .impersonate-select-inline{background-color:#ffffff14;border-color:#ffffff26;color:#e2e8f0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%2371717a'/%3E%3C/svg%3E")}.dark-mode .impersonate-select-inline option{background:#1e1e2e;color:#e2e8f0}@media (max-width: 1280px){.top-nav{padding:10px 12px}.nav-inner{gap:10px}.nav-links{gap:2px;padding:3px}.nav-links li a{padding:8px 10px;gap:0}.nav-links li a .nav-text{display:none}.nav-icon{font-size:1.1rem}.nav-user{padding-left:6px;gap:4px}.nav-user-name,.profile-caret{display:none}.profile-trigger{padding:2px}.nav-logo{height:30px}}@media (max-width: 768px){.top-nav{padding:8px 12px}.nav-inner{gap:8px;flex-wrap:nowrap}.brand-text{display:none}.nav-logo{width:34px;height:34px}.nav-links{display:none}.nav-user{padding-left:8px;gap:4px}.nav-user-name,.profile-caret{display:none}.profile-trigger{padding:2px}.nav-avatar{width:24px;height:24px}.dark-mode-toggle{width:28px;height:28px;font-size:.9rem}}.impersonation-bar{display:flex;align-items:center;gap:8px;padding:4px 16px;background:#0066cc14;border-bottom:1px solid rgba(0,102,204,.15)}.impersonate-input{flex:1;max-width:300px;padding:4px 10px;border:1px solid rgba(0,0,0,.12);border-radius:6px;font-size:.8rem;background:#ffffffe6;outline:none}.impersonate-input:focus{border-color:#06c}.btn-impersonate{padding:4px 12px;border:none;border-radius:6px;background:#06c;color:#fff;font-size:.78rem;cursor:pointer;white-space:nowrap}.btn-impersonate:disabled{opacity:.5;cursor:not-allowed}.impersonate-error{color:#dc2626;font-size:.75rem}.impersonation-banner{display:flex;align-items:center;justify-content:center;gap:12px;padding:6px 16px;background:linear-gradient(90deg,#f59e0b,#d97706);color:#fff;font-size:.8rem;font-weight:500}.impersonation-banner strong{font-weight:700}.btn-stop-impersonate{padding:3px 10px;border:1px solid rgba(255,255,255,.5);border-radius:6px;background:#fff3;color:#fff;font-size:.75rem;cursor:pointer}.btn-stop-impersonate:hover{background:#ffffff4d}.dark-mode .impersonation-bar{background:#0066cc1f;border-color:#06c3}.dark-mode .impersonate-input{background:#ffffff14;border-color:#ffffff26;color:#e2e8f0}@media (max-width: 768px){.impersonation-bar{padding:4px 8px}.impersonate-input{max-width:180px;font-size:.75rem}}.mobile-bottom-nav{display:none}@media (max-width: 768px){.mobile-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:200;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(0,0,0,.08);padding:6px 8px max(6px,env(safe-area-inset-bottom));justify-content:space-between;align-items:stretch;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:2px}.mobile-bottom-nav::-webkit-scrollbar{display:none}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px;text-decoration:none;color:#6b7280;font-size:.6rem;font-weight:500;border-radius:10px;transition:color .15s,background .15s;min-width:52px;flex:1 0 auto}.bottom-nav-item.active{color:#06c;background:#0066cc14}.bottom-nav-item:active{background:#0000000f}.bottom-nav-icon{font-size:1.15rem;line-height:1}.bottom-nav-label{line-height:1;white-space:nowrap}html.dark-mode .mobile-bottom-nav{background:#1e1e28eb;border-top-color:#ffffff14}html.dark-mode .bottom-nav-item{color:#9ca3af}html.dark-mode .bottom-nav-item.active{color:#60a5fa;background:#60a5fa1a}body{padding-bottom:64px}}:root{--aat-primary-blue: #0066cc;--aat-bright-blue: #00a3ff;--aat-teal: #00bcd4;--aat-dark-blue: #003d7a;--aat-accent: #00e5ff;--aat-success: #00c853;--aat-warning: #ffa726;--aat-danger: #e53935;--glass-bg: rgba(255, 255, 255, .55);--glass-border: rgba(255, 255, 255, .6);--glass-shadow: 0 4px 24px rgba(0, 40, 100, .08);--glass-hover-shadow: 0 8px 32px rgba(0, 40, 100, .12);--crystal-bg: linear-gradient(135deg, rgba(210, 230, 255, .45) 0%, rgba(180, 215, 255, .3) 40%, rgba(200, 225, 255, .5) 100%);--crystal-border: rgba(140, 185, 255, .4);--crystal-shadow: 0 4px 24px rgba(0, 60, 140, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--crystal-hover-shadow: 0 8px 36px rgba(0, 60, 140, .18), inset 0 1px 0 rgba(255, 255, 255, .7);--transition: all .25s ease}.dashboard-container{padding:2rem;min-height:100vh;max-width:1400px;margin:0 auto}.gel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.gel-title{font-size:2.25rem;font-weight:700;color:var(--aat-dark-blue);letter-spacing:-.02em}.gel-badge{padding:.4rem .9rem;border-radius:50px;background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);font-size:.8rem;font-weight:600;color:var(--text-primary)}.live-badge{color:var(--aat-teal);border-color:#00bcd44d}.gel-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:2.5rem}.gel-stats-grid.weekly-grid{grid-template-columns:repeat(3,1fr);margin-bottom:0}.gel-stats-grid.monthly-grid{grid-template-columns:repeat(4,1fr);margin-bottom:0}@media (max-width: 1024px){.gel-stats-grid,.gel-stats-grid.weekly-grid,.gel-stats-grid.monthly-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.gel-stats-grid,.gel-stats-grid.weekly-grid,.gel-stats-grid.monthly-grid{grid-template-columns:1fr}}.gel-stat-card.net-positive{background:linear-gradient(135deg,#dcffe699,#b4f0c866);border-color:#22c55e59}.gel-stat-card.net-positive .stat-value{color:#15803d}.gel-stat-card.net-warning{background:linear-gradient(135deg,#ffe6d299,#ffc8b466);border-color:#f9731659}.gel-stat-card.net-warning .stat-value{color:#c2410c}.gel-stat-card.cost-danger{background:linear-gradient(135deg,#ffdcdc99,#ffbebe66);border-color:#e5393559}.gel-stat-card.cost-danger .stat-value{color:var(--aat-danger)}.gel-stat-card.reserve-pending-card{background:linear-gradient(135deg,#fef3c78c,#fde08459);border-color:#ca8a0459}.gel-stat-card.reserve-pending-card .stat-value{color:#92400e}.gel-stat-card.reserve-pending-card .stat-label{color:#78350f}.gel-stat-card.reserve-collected-card{background:linear-gradient(135deg,#d1fae58c,#a7f3d059);border-color:#10b98159}.gel-stat-card.reserve-collected-card .stat-value{color:#065f46}.gel-stat-card.reserve-collected-card .stat-label{color:#047857}.gel-stat-card.transfer-tile{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.gel-stat-card.transfer-tile:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001f}.gel-stat-card.transfer-tile:active{transform:translateY(0)}.gel-stat-card.compact-card{padding:1.1rem 1.4rem;opacity:.88}.gel-stat-card.compact-card .stat-value{font-size:1.2rem}.gel-stat-card.compact-card .stat-icon{font-size:1.3rem}.gel-stat-card.biz-savings-card{display:flex;align-items:center;padding:1.8rem 2rem;gap:1.2rem;transition:border-color .4s ease,background .4s ease}.gel-stat-card.biz-savings-card .stat-info{display:flex;flex-direction:column;gap:.2rem}.gel-stat-card{position:relative;padding:1.75rem;border-radius:16px;background:var(--crystal-bg);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid var(--crystal-border);border-top:1px solid rgba(255,255,255,.7);border-left:1px solid rgba(200,220,255,.5);box-shadow:var(--crystal-shadow);overflow:hidden;text-decoration:none;color:inherit;display:flex;align-items:center;gap:1.25rem;transition:var(--transition)}.gel-stat-card:hover{transform:translateY(-3px);box-shadow:var(--crystal-hover-shadow);border-color:#78aaff8c}.gel-card-shine{position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,#ffffff59,#fff0);pointer-events:none;border-radius:16px 16px 0 0}.gel-glow{position:absolute;bottom:-20px;right:-20px;width:80px;height:80px;border-radius:50%;background:radial-gradient(circle,rgba(100,160,255,.15) 0%,transparent 70%);pointer-events:none}.stat-icon{font-size:2.5rem}.stat-info{display:flex;flex-direction:column;gap:.2rem}.stat-value{font-size:2.25rem;font-weight:800;color:var(--aat-dark-blue);line-height:1}.stat-label{font-size:.9rem;color:#6b7280;font-weight:500}.gel-section{margin-bottom:2.5rem}.gel-section-title{font-size:1.4rem;font-weight:700;margin-bottom:1.25rem;display:flex;align-items:center;gap:.6rem;color:var(--text-primary)}.gel-emoji{font-size:1.5rem}.gel-hours-badge{margin-left:auto;padding:.4rem .9rem;border-radius:50px;background:var(--aat-primary-blue);color:#fff;font-size:.8rem;font-weight:600}.gel-metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}@media (max-width: 1400px){.gel-metrics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.gel-metrics-grid{grid-template-columns:1fr}}.gel-metric-card{position:relative;padding:1.5rem;border-radius:16px;background:var(--crystal-bg);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid var(--crystal-border);border-top:1px solid rgba(255,255,255,.7);border-left:1px solid rgba(200,220,255,.5);box-shadow:var(--crystal-shadow);overflow:hidden;transition:var(--transition);display:flex;flex-direction:column;gap:.5rem}.gel-metric-card:hover{transform:translateY(-2px);box-shadow:var(--crystal-hover-shadow);border-color:#78aaff8c}.gel-metric-card label{font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.gel-metric-value{font-size:1.75rem;font-weight:800;color:var(--aat-primary-blue);line-height:1}.gel-metric-card small{font-size:.75rem;color:#9ca3af}.gel-wip-list{display:flex;flex-direction:column;gap:.75rem}.gel-wip-item{position:relative;padding:1.25rem;border-radius:14px;background:var(--crystal-bg);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid var(--crystal-border);border-top:1px solid rgba(255,255,255,.7);border-left:1px solid rgba(200,220,255,.5);box-shadow:var(--crystal-shadow);display:flex;justify-content:space-between;align-items:center;overflow:hidden;transition:var(--transition)}.gel-wip-item:hover{transform:translate(4px);box-shadow:var(--crystal-hover-shadow)}.wip-info{display:flex;flex-direction:column;gap:.3rem;flex:1}.gel-wip-title{font-weight:700;font-size:1rem;color:var(--text-primary)}.gel-wip-client{font-size:.85rem;color:#6b7280}.wip-meta{display:flex;align-items:center;gap:1.25rem}.gel-wip-dev{font-size:.85rem;color:#6b7280}.gel-wip-hours{font-size:.85rem;font-weight:600;color:#4f46e5;background:#4f46e514;padding:.2rem .55rem;border-radius:8px}.gel-wip-revenue{font-size:.95rem;font-weight:700;color:#059669}.gel-wip-item.has-revenue{border-left:3px solid #059669}.gel-wip-price{font-size:1.1rem;font-weight:700;color:var(--aat-primary-blue)}.gel-status-badge{padding:.35rem .7rem;border-radius:10px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.gel-status-badge.hourly{background:#ffa7261f;color:#e08600}.gel-status-badge.fixed{background:#0066cc1a;color:var(--aat-primary-blue)}.gel-view-all-button{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;padding:1rem 1.5rem;border-radius:14px;background:var(--aat-primary-blue);color:#fff;text-decoration:none;font-weight:600;font-size:.95rem;transition:var(--transition);box-shadow:0 4px 16px #0066cc40}.gel-view-all-button:hover{transform:scale(1.01);box-shadow:0 6px 20px #0066cc59}.gel-arrow{font-size:1.25rem;transition:transform .2s}.gel-view-all-button:hover .gel-arrow{transform:translate(4px)}.gel-quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.gel-action-button{padding:1.25rem;border-radius:14px;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);text-align:center;text-decoration:none;color:var(--aat-primary-blue);font-weight:600;transition:var(--transition);cursor:pointer}.gel-action-button:hover{transform:translateY(-2px);box-shadow:var(--glass-hover-shadow);background:#ffffffb3}.gel-developer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;max-width:100%}.gel-developer-card{position:relative;padding:1.75rem;border-radius:16px;background:var(--crystal-bg);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid var(--crystal-border);border-top:1px solid rgba(255,255,255,.7);border-left:1px solid rgba(200,220,255,.5);box-shadow:var(--crystal-shadow);overflow:hidden;transition:var(--transition);display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem}.gel-developer-card:hover{transform:translateY(-3px);box-shadow:var(--crystal-hover-shadow);border-color:#78aaff8c}.gel-developer-photo{width:90px;height:90px;border-radius:50%;overflow:hidden;border:3px solid rgba(0,102,204,.2);box-shadow:0 4px 12px #00000014}.gel-developer-card:hover .gel-developer-photo{border-color:#06c6}.gel-developer-photo img{width:100%;height:100%;object-fit:cover;border-radius:50%;background:#f0f0f0}.gel-developer-photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2.25rem;background:linear-gradient(135deg,var(--aat-primary-blue),var(--aat-teal));color:#fff;border-radius:50%}.gel-developer-name{font-size:1.2rem;font-weight:700;color:var(--aat-dark-blue);margin:0}.gel-developer-stats{width:100%;display:flex;flex-direction:column;gap:.5rem;margin-top:.25rem}.gel-developer-stat-row{display:flex;justify-content:space-between;align-items:center;padding:.6rem .8rem;background:#00000005;border-radius:10px;border:1px solid rgba(0,0,0,.04)}.gel-developer-stat-label{font-size:.8rem;color:#6b7280;font-weight:500}.gel-developer-stat-value{font-size:1rem;font-weight:700;color:var(--aat-primary-blue)}.gel-developer-stat-value.positive{color:var(--aat-success)}.gel-developer-profit-badge{margin-top:.25rem;padding:.6rem 1rem;border-radius:50px;background:#00c8531a;color:var(--aat-success);font-weight:700;font-size:.9rem}.gel-developer-glow{display:none}.developer-photo-upload{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}.developer-photo-preview{width:100px;height:100px;border-radius:50%;object-fit:cover;border:2px solid var(--aat-primary-blue);box-shadow:0 4px 12px #06c3}.photo-upload-button{padding:.75rem 1.5rem;background:var(--aat-primary-blue);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:var(--transition)}.photo-upload-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0066cc4d}@media (max-width: 768px){.dashboard-container{padding:1rem .5rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px))}.gel-header{flex-direction:column;gap:.5rem;align-items:flex-start;margin-bottom:1.25rem}.gel-title{font-size:1.5rem}.header-actions{flex-wrap:wrap;gap:6px}.gel-badge{font-size:.72rem;padding:.3rem .7rem}.gel-stats-grid{grid-template-columns:1fr;gap:.75rem}.gel-stats-grid.weekly-grid,.gel-stats-grid.monthly-grid{grid-template-columns:1fr 1fr}.gel-metrics-grid{grid-template-columns:1fr}.gel-stat-card{padding:1.15rem 1rem;border-radius:12px;gap:.75rem}.stat-icon{font-size:1.75rem}.stat-value{font-size:1.5rem}.stat-label{font-size:.8rem}.gel-section{margin-bottom:1.5rem}.gel-section-title{font-size:1.15rem;margin-bottom:.75rem}.gel-wip-item{flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem;border-radius:12px}.wip-meta{width:100%;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.gel-view-all-button{padding:.85rem 1.15rem;border-radius:12px;font-size:.9rem}.gel-developer-grid{grid-template-columns:1fr;gap:.75rem}.gel-developer-card{padding:1.25rem;border-radius:12px}.gel-developer-photo{width:64px;height:64px}.gel-developer-name{font-size:1.05rem}.gel-quick-actions{grid-template-columns:repeat(2,1fr);gap:.5rem}.gel-action-button{padding:.85rem;border-radius:12px;font-size:.82rem;min-height:44px}.gel-metric-card{padding:1rem;border-radius:12px}.gel-metric-value{font-size:1.35rem}.gel-stat-card.biz-savings-card{padding:1.15rem 1rem;gap:.75rem}}@media (max-width: 375px){.dashboard-container{padding:.75rem .35rem}.gel-title{font-size:1.3rem}.gel-stats-grid.weekly-grid,.gel-stats-grid.monthly-grid{grid-template-columns:1fr}.stat-value{font-size:1.35rem}.gel-stat-card{padding:.9rem .75rem}}.dev-clock-alert{display:flex;align-items:center;gap:10px;padding:12px 18px;background:linear-gradient(135deg,#00c8531f,#00bcd414);border:1px solid rgba(0,200,83,.25);border-radius:12px;margin-bottom:1.5rem;font-size:.9rem;color:#1b5e20}.clock-dot{width:8px;height:8px;border-radius:50%;background:#00c853;animation:blink 1.2s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.clock-alert-link{margin-left:auto;color:var(--aat-primary-blue);text-decoration:none;font-weight:600;font-size:.82rem}.clock-alert-link:hover{text-decoration:underline}.dashboard-section{margin-bottom:2rem}.section-title{font-size:1.1rem;font-weight:700;color:var(--aat-dark-blue, #003d7a);margin-bottom:.75rem}.dev-time-table{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:14px;overflow:hidden;box-shadow:var(--glass-shadow)}.dev-time-header{display:grid;grid-template-columns:2fr 1fr .7fr 2fr;gap:8px;padding:10px 16px;background:#0066cc0a;border-bottom:1px solid var(--glass-border);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #86868b)}.dev-time-row{display:grid;grid-template-columns:2fr 1fr .7fr 2fr;gap:8px;padding:10px 16px;border-bottom:1px solid rgba(0,0,0,.04);font-size:.85rem;align-items:center}.dev-time-row:last-child{border-bottom:none}.dev-time-project{font-weight:600;color:var(--text-primary, #1d1d1f)}.dev-time-date{color:var(--text-secondary, #424245)}.dev-time-hours{font-weight:700;color:var(--aat-primary-blue, #0066cc)}.dev-time-notes{color:var(--text-muted, #86868b);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-section{text-align:center;padding:2.5rem 1rem;color:var(--text-muted, #86868b);font-size:.9rem}@media (max-width: 768px){.dev-time-header,.dev-time-row{grid-template-columns:1.5fr .8fr .6fr}.dev-time-notes{display:none}.dev-time-header,.dev-time-row{gap:4px;padding:8px 10px}.dev-time-project{font-size:.82rem}.dev-time-date{font-size:.78rem}.dev-time-hours{font-size:.82rem}.dev-clock-alert{flex-wrap:wrap;font-size:.82rem;padding:10px 14px}.clock-alert-link{margin-left:0;margin-top:4px}}html.dark-mode{--crystal-bg: linear-gradient(135deg, rgba(30, 40, 60, .7) 0%, rgba(25, 35, 55, .6) 40%, rgba(35, 45, 65, .7) 100%);--crystal-border: rgba(80, 120, 180, .3);--crystal-shadow: 0 4px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .05);--crystal-hover-shadow: 0 8px 36px rgba(0, 0, 0, .4), inset 0 1px 0 rgba(255, 255, 255, .08);--glass-bg: rgba(30, 30, 40, .6);--glass-border: rgba(255, 255, 255, .08)}.dark-mode .gel-stat-card{border-top-color:#ffffff14;border-left-color:#648cc826}.dark-mode .gel-stat-card:hover{border-color:#60a5fa66}.dark-mode .gel-card-shine{opacity:.03}.dark-mode .gel-title{color:#f0f0f2}.dark-mode .stat-label{color:#a1a1b0}.dark-mode .stat-value,.dark-mode .gel-section-title{color:#f0f0f2}.dark-mode .gel-metric-card{background:#1e1e28b3;border-color:#ffffff0f}.dark-mode .gel-metric-card label{color:#a1a1b0}.dark-mode .gel-metric-card .metric-value{color:#f0f0f2}.dark-mode .quick-action-card{background:#1e1e28b3;border-color:#ffffff0f;color:#60a5fa}.dark-mode .quick-action-card:hover{background:#282837cc;border-color:#60a5fa4d}.dark-mode .dev-time-header{background:#ffffff0a;color:#a1a1b0}.dark-mode .dev-time-row{border-bottom-color:#ffffff0d}.dark-mode .dev-time-row:hover{background:#60a5fa0f}.dark-mode .wip-table th{background:#ffffff0a;color:#a1a1b0}.dark-mode .wip-table td{color:#d4d4d8;border-bottom-color:#ffffff0d}.dark-mode .wip-table tr:hover td{background:#60a5fa0f}.projects-layout{display:flex;gap:0;height:calc(100vh - 80px);max-width:1600px;margin:0 auto;padding:0 24px}.projects-layout.table-fullpage{max-width:1400px;width:100%;padding:0 2rem;margin:0 auto}.projects-layout.table-fullpage .projects-list-panel{width:100%!important;min-width:unset;max-width:100%;border-right:none;padding-right:0}.projects-list-panel{width:480px;min-width:300px;max-width:800px;display:flex;flex-direction:column;border-right:1px solid rgba(0,102,204,.12);padding-right:16px;overflow:hidden}.resize-handle{width:6px;cursor:col-resize;background:transparent;position:relative;flex-shrink:0;transition:background .15s}.resize-handle:hover,.resize-handle:active{background:#0066cc26}.resize-handle:after{content:"";position:absolute;top:50%;left:1px;transform:translateY(-50%);width:3px;height:40px;border-radius:2px;background:#06c3;opacity:0;transition:opacity .15s}.resize-handle:hover:after{opacity:1}.projects-list-header{display:flex;align-items:center;justify-content:space-between;padding:20px 0 12px}.projects-list-header h1{font-size:1.5rem;font-weight:700;color:#1a1a2e;margin:0}.projects-header-actions{display:flex;align-items:center;gap:10px}.count-badge{font-size:.8rem;color:#6b7280;background:#ffffffb3;padding:4px 10px;border-radius:20px;border:1px solid rgba(0,102,204,.1)}.projects-filters{display:flex;flex-direction:column;gap:8px;padding-bottom:12px;border-bottom:1px solid rgba(0,102,204,.08)}.search-input{width:100%;padding:10px 14px;border:1px solid rgba(0,102,204,.15);border-radius:10px;background:#ffffffb3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:.9rem;color:#1a1a2e;outline:none;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.search-input:focus{border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.search-input::placeholder{color:#9ca3af}.filter-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.archive-toggle{display:flex;align-items:center;gap:4px;font-size:.78rem;color:#6b7280;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none}.archive-toggle input[type=checkbox]{accent-color:#0066cc;cursor:pointer}.btn-reset-prefs{padding:4px 10px;border:1px solid rgba(0,102,204,.15);border-radius:6px;background:#ffffff80;font-size:.75rem;color:#6b7280;cursor:pointer;white-space:nowrap;transition:all .2s}.btn-reset-prefs:hover{background:#0066cc14;color:#06c;border-color:#0066cc4d}.filter-select{flex:1;padding:8px 10px;border:1px solid rgba(0,102,204,.15);border-radius:8px;background:#ffffffb3;font-size:.82rem;color:#374151;outline:none;cursor:pointer}.filter-select:focus{border-color:#06c}.projects-list{flex:1;overflow-y:auto;padding:8px 0}.projects-list::-webkit-scrollbar{width:6px}.projects-list::-webkit-scrollbar-thumb{background:#0066cc26;border-radius:3px}.project-list-item{padding:14px 16px;border-radius:10px;cursor:pointer;transition:all .15s ease;border:1px solid rgba(0,0,0,.06);margin-bottom:6px;position:relative;background:#ffffff4d}.project-list-item:hover{background:#fff9;border-color:#0066cc26}.project-list-item.selected{background:#0066cc14;border-color:#0066cc40;box-shadow:0 2px 8px #0066cc14}.project-list-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.project-list-title{font-size:.9rem;font-weight:600;color:#1a1a2e;line-height:1.3;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list-price{font-size:.82rem;font-weight:600;color:#06c;white-space:nowrap}.project-list-item-meta{display:flex;justify-content:space-between;align-items:center;margin-top:6px;gap:8px}.project-list-client{font-size:.8rem;color:#6b7280;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list-dev{font-size:.78rem;color:#9ca3af;white-space:nowrap}.project-list-status{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.project-list-financials{display:flex;justify-content:space-between;align-items:center;margin-top:6px;padding-top:6px;border-top:1px solid rgba(0,0,0,.04)}.project-list-gross{font-size:.8rem;font-weight:600;color:#06c}.project-list-net{font-size:.8rem;font-weight:600}.project-list-net.positive{color:#059669}.project-list-net.negative{color:#dc2626}.project-list-type-badge{display:inline-block;font-size:.68rem;color:#06c;background:#0066cc14;padding:2px 8px;border-radius:10px;margin-top:4px;font-weight:500}.project-detail-panel{flex:1;overflow-y:auto;padding:20px 0 20px 24px}.project-detail-panel::-webkit-scrollbar{width:6px}.project-detail-panel::-webkit-scrollbar-thumb{background:#0066cc26;border-radius:3px}.project-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9ca3af;text-align:center}.empty-icon{font-size:3rem;margin-bottom:16px;opacity:.5}.project-detail-empty h3{margin:0 0 8px;color:#6b7280;font-weight:600}.project-detail-empty p{margin:0;font-size:.9rem}.project-detail-content{display:flex;flex-direction:column;gap:20px}.project-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.project-detail-title{font-size:1.4rem;font-weight:700;color:#1a1a2e;margin:0 0 8px;line-height:1.3}.project-detail-badges{display:flex;gap:8px;flex-wrap:wrap}.status-pill{color:#fff;font-size:.75rem;font-weight:600;padding:4px 14px;border-radius:20px;text-transform:uppercase;letter-spacing:.3px}.type-pill{font-size:.75rem;font-weight:600;padding:4px 14px;border-radius:20px;background:#0066cc1a;color:#06c}.priority-pill{font-size:.75rem;font-weight:600;padding:4px 14px;border-radius:20px;background:#ff98001f;color:#e65100}.priority-tag{font-size:.68rem;font-weight:700;padding:1px 6px;border:1px solid;border-radius:4px;margin-right:6px;white-space:nowrap;letter-spacing:.02em}.project-detail-actions{display:flex;gap:8px;flex-shrink:0}.detail-section{display:flex;flex-direction:column;gap:8px}.detail-section-label{font-size:.78rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin:0}.glass-card{background:#ffffff8c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.6);border-radius:12px;padding:16px;box-shadow:0 2px 12px #003c780f;transition:box-shadow .2s ease}.glass-card:hover{box-shadow:0 4px 20px #003c781a}.detail-card{background:#ffffff8c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.6);border-radius:12px;padding:16px;box-shadow:0 2px 12px #003c780f;transition:box-shadow .2s ease}.client-info-row{display:flex;flex-direction:column;gap:6px}.client-link{display:flex;align-items:center;gap:8px;color:#06c;text-decoration:none;font-weight:600;font-size:.95rem;transition:color .15s}.client-link:hover{color:#003d7a}.client-link-icon{font-size:1.1rem}.client-link-name{flex:1}.client-link-arrow{font-size:1.1rem;opacity:.5;transition:opacity .15s,transform .15s}.client-link:hover .client-link-arrow{opacity:1;transform:translate(2px)}.client-email{font-size:.82rem;color:#6b7280;margin-left:28px}.financials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.financial-tile{display:flex;flex-direction:column;gap:6px;text-align:center}.financial-tile label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.3px;font-weight:500}.financial-value{font-size:1.3rem;font-weight:700;color:#1a1a2e}.financial-value.gross{color:#06c}.financial-value.dev{color:#e65100}.financial-value.company{color:#00875a}.rates-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.rate-tile{display:flex;flex-direction:column;gap:4px;text-align:center;padding:12px}.rate-tile label{font-size:.72rem;color:#6b7280;text-transform:uppercase;letter-spacing:.3px;font-weight:500}.rate-value{font-size:1.05rem;font-weight:700;color:#1a1a2e}.rate-value.profit{color:#00875a}.developer-info-row{display:flex;justify-content:space-between;align-items:center}.developer-name{font-weight:600;color:#1a1a2e;font-size:.95rem}.developer-rate{font-size:.85rem;color:#06c;font-weight:600;background:#0066cc14;padding:4px 12px;border-radius:20px}.payment-status-row{display:flex;gap:10px;flex-wrap:wrap}.payment-chip{font-size:.82rem;font-weight:600;padding:8px 16px;border-radius:10px;border:1px solid}.payment-chip.paid{background:#00875a14;border-color:#00875a33;color:#00875a}.payment-chip.unpaid{background:#6b72800f;border-color:#6b728026;color:#9ca3af}.description-text{color:#374151;font-size:.9rem;line-height:1.6;margin:0;white-space:pre-wrap}.dates-grid{display:flex;gap:24px;flex-wrap:wrap}.date-item{display:flex;flex-direction:column;gap:2px}.date-item label{font-size:.72rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px;font-weight:500}.date-item span{font-size:.88rem;color:#374151;font-weight:500}.quote-link{display:block;text-align:center;color:#06c;text-decoration:none;font-weight:600;font-size:.9rem;transition:background .15s}.quote-link:hover{background:#0066cc0f}.project-id-footer{font-size:.72rem;color:#d1d5db;text-align:right;padding-top:8px;border-top:1px solid rgba(0,0,0,.04)}.btn-bill-now{margin-top:10px;padding:8px 20px;background:linear-gradient(135deg,#059669,#10b981);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease;width:100%}.btn-bill-now:hover{opacity:.9;transform:translateY(-1px)}.btn-bill-now:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-bill-subtle{margin-top:6px;padding:4px 12px;background:none;color:#6b7280;border:1px solid #e5e7eb;border-radius:6px;font-size:.75rem;cursor:pointer;transition:all .2s}.btn-bill-subtle:hover{color:#059669;border-color:#059669;background:#0596690a}.btn-bill-subtle:disabled{opacity:.5;cursor:not-allowed}.btn-pay-dev{padding:6px 14px;background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border:none;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-pay-dev:hover{background:linear-gradient(135deg,#219a52,#27ae60);transform:translateY(-1px);box-shadow:0 3px 8px #27ae604d}.dev-photo-row{display:flex;align-items:center;gap:10px}.dev-photo-thumb{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid rgba(0,102,204,.2);flex-shrink:0}.invoice-info-card{margin-top:12px;padding:14px;border-radius:10px}.invoice-info-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.invoice-info-label{font-size:.82rem;font-weight:600;color:#374151}.invoice-info-details{display:flex;justify-content:space-between;align-items:center}.invoice-amount{font-size:1.1rem;font-weight:700;color:#06c}.billing-status{display:inline-block;padding:2px 10px;border-radius:10px;font-size:.75rem;font-weight:600;text-transform:uppercase}.billing-status.paid{background:#0596691a;color:#059669}.billing-status.pending{background:#f59e0b1a;color:#d97706}.billing-status.refunded,.billing-status.partial_refund{background:#6b72801a;color:#6b7280}.billing-status.failed{background:#dc26261a;color:#dc2626}.btn-refund{margin-top:10px;padding:6px 16px;background:transparent;border:1px solid rgba(220,38,38,.3);color:#dc2626;border-radius:8px;font-size:.8rem;cursor:pointer;transition:all .15s ease}.btn-refund:hover{background:#dc26260d}.refund-form{margin-top:10px;padding:12px;border:1px solid rgba(220,38,38,.15);border-radius:8px;background:#ffffff80}.refund-form-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.refund-form-row label{font-size:.8rem;font-weight:600;color:#374151;min-width:70px}.refund-input{flex:1;padding:6px 10px;border:1px solid rgba(0,0,0,.12);border-radius:6px;font-size:.82rem}.refund-actions{display:flex;gap:8px;justify-content:flex-end}.btn-sm{padding:6px 14px;font-size:.8rem}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.clock-total-badge{display:inline-block;margin-left:8px;padding:2px 10px;font-size:.75rem;font-weight:600;background:#0066cc1a;color:#06c;border-radius:10px}.clock-upwork-link{margin-left:10px;font-size:.78rem;font-weight:600;color:#06c;text-decoration:none}.clock-upwork-link:hover{text-decoration:underline}.clock-event-readonly{font-size:.7rem;padding:2px 6px;border-radius:999px;background:#6b72801f;color:#6b7280}.clock-events-list{display:flex;flex-direction:column;gap:8px}.clock-event-row{padding:10px 14px;border-radius:10px}.clock-event-main{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.clock-event-dev{font-weight:600;font-size:.88rem;color:#1d1d1f}.clock-event-hours{font-weight:700;font-size:.9rem;color:#06c}.clock-event-times{display:flex;gap:16px;font-size:.78rem;color:#6b7280}.clock-event-notes{margin-top:4px;font-size:.8rem;color:#6b7280;font-style:italic}.btn-add-clock-event{margin-left:8px;padding:2px 10px;font-size:.72rem;font-weight:600;background:#0596691a;color:#059669;border:1px solid rgba(5,150,105,.2);border-radius:6px;cursor:pointer}.btn-add-clock-event:hover{background:#05966933}.add-clock-event-form{display:flex;flex-direction:column;gap:8px;padding:12px;margin-bottom:10px;background:#0066cc0a;border:1px solid rgba(0,102,204,.12);border-radius:10px}.clock-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.clock-form-field label{display:block;font-size:.72rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}.clock-form-field .form-input{width:100%;font-size:.82rem}.clock-event-admin{position:relative;padding-right:30px}.btn-delete-clock{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:22px;height:22px;border:none;border-radius:50%;background:#dc262614;color:#dc2626;font-size:.7rem;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s}.clock-event-compact:hover .btn-delete-clock,.clock-event-row:hover .btn-delete-clock{opacity:1}.btn-delete-clock:hover{background:#dc262633}.dark-mode .btn-add-clock-event{background:#34d3991f;color:#34d399;border-color:#34d39933}.dark-mode .add-clock-event-form{background:#0066cc0f;border-color:#0066cc26}.dark-mode .btn-delete-clock{background:#f871711a;color:#f87171}.dark-mode .btn-delete-clock:hover{background:#f8717140}.clock-events-by-day{display:flex;flex-direction:column;gap:4px}.clock-day-group{border:1px solid rgba(0,0,0,.06);border-radius:8px;overflow:hidden}.clock-day-header{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#00000008;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.8rem;transition:background .15s}.clock-day-header:hover{background:#0000000f}.clock-day-toggle{font-size:.65rem;color:#6b7280;width:12px}.clock-day-label{font-weight:600;color:#374151}.clock-day-count{font-size:.72rem;color:#9ca3af}.clock-day-total{margin-left:auto;font-weight:700;color:#06c;font-size:.82rem}.clock-day-events{display:flex;flex-direction:column}.clock-day-events .clock-event-compact{border-radius:0;border-top:1px solid rgba(0,0,0,.04);margin:0;padding:6px 10px 6px 24px}.clock-event-row-main{display:flex;align-items:center;gap:10px;font-size:.82rem}.clock-event-dev-name{font-weight:600;color:#1d1d1f;min-width:80px}.clock-event-hours{font-weight:700;color:#06c;min-width:50px}.clock-event-time{font-size:.75rem;color:#6b7280}.clock-event-actions{margin-left:auto;display:flex;gap:4px;opacity:0;transition:opacity .15s}.clock-event-compact:hover .clock-event-actions{opacity:1}.btn-edit-clock{width:22px;height:22px;border:none;border-radius:50%;background:#0066cc14;color:#06c;font-size:.72rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-edit-clock:hover{background:#0066cc2e}.clock-event-description{margin-top:4px;position:relative}.clock-event-description .clock-desc-text{font-size:.78rem;color:#6b7280;font-style:italic;line-height:1.4;max-height:2.8em;overflow:hidden;cursor:pointer;transition:max-height .3s ease;word-break:break-word}.clock-event-description.expanded .clock-desc-text{max-height:none}.btn-expand-desc{border:none;background:none;color:#06c;font-size:.72rem;cursor:pointer;padding:2px 0;font-weight:500}.btn-expand-desc:hover{text-decoration:underline}.clock-event-edit-form{display:flex;flex-direction:column;gap:6px;padding:4px 0}.clock-event-edit-form .clock-form-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.clock-edit-notes{font-size:.8rem;resize:vertical;min-height:36px}.clock-edit-actions{display:flex;gap:6px}.btn-collapse-clock-days{margin-left:8px;padding:2px 8px;font-size:.68rem;font-weight:600;background:#0000000a;color:#6b7280;border:1px solid rgba(0,0,0,.08);border-radius:6px;cursor:pointer}.btn-collapse-clock-days:hover{background:#00000014}.dark-mode .clock-day-group{border-color:#ffffff14}.dark-mode .clock-day-header{background:#ffffff0a}.dark-mode .clock-day-header:hover{background:#ffffff14}.dark-mode .clock-day-label{color:#e5e7eb}.dark-mode .clock-day-total{color:#60a5fa}.dark-mode .clock-event-dev-name{color:#e5e7eb}.dark-mode .clock-event-hours{color:#60a5fa}.dark-mode .clock-event-description .clock-desc-text{color:#9ca3af}.dark-mode .btn-edit-clock{background:#60a5fa1a;color:#60a5fa}.dark-mode .btn-expand-desc{color:#60a5fa}.dark-mode .clock-day-events .clock-event-compact{border-color:#ffffff0a}.text-muted{color:#9ca3af;font-size:.88rem}.btn-primary{background:#06c;color:#fff;border:none;padding:8px 18px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-primary:hover{background:#003d7a}.btn-secondary{background:#0066cc14;color:#06c;border:1px solid rgba(0,102,204,.15);padding:8px 18px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s}.btn-secondary:hover{background:#0066cc24}.btn-danger{background:#dc262614;color:#dc2626;border:1px solid rgba(220,38,38,.15);padding:8px 18px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s}.btn-danger:hover{background:#dc262624}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:16px;padding:32px;width:100%;max-width:520px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.modal-content h2{margin:0 0 20px;font-size:1.3rem;color:#1a1a2e}.custom-confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100}.custom-confirm-modal{background:#fff;border-radius:16px;padding:24px;width:calc(100% - 32px);max-width:460px;box-shadow:0 20px 60px #0003}.custom-confirm-modal h3{margin:0 0 10px;font-size:1.15rem;color:#1a1a2e}.custom-confirm-modal p{margin:0;color:#6b7280}.custom-confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:.82rem;font-weight:600;color:#374151;margin-bottom:4px}.form-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;color:#1a1a2e;outline:none;background:#fff;box-sizing:border-box;transition:border-color .15s}.form-input:focus{border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}textarea.form-input{resize:vertical}.form-row{display:flex;gap:12px}.form-row .form-group{flex:1}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid #f3f4f6}.loading{text-align:center;padding:60px 20px;color:#6b7280;font-size:1rem}.error{text-align:center;padding:60px 20px;color:#dc2626}.edit-form{display:flex;flex-direction:column;gap:16px}.edit-form .form-input,.project-detail-content .form-input{background:#00000008;border:1px solid rgba(0,102,204,.15);color:#1a1a2e}.edit-form .form-input:focus,.project-detail-content .form-input:focus{background:#fffc;border-color:#06c}html.dark-mode .edit-form .form-input,html.dark-mode .project-detail-content .form-input{background:#ffffff0a;border-color:#64a0ff26;color:#e0e0e4}html.dark-mode .edit-form .form-input:focus,html.dark-mode .project-detail-content .form-input:focus{background:#ffffff14;border-color:#64a0ff66}.edit-form input[type=number]{font-weight:600}.edit-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.edit-row.three-col{grid-template-columns:1fr 1fr 1fr}.net-profit-display{font-size:1.15rem;font-weight:700;color:#00c853;padding:10px 0;font-family:Inter,sans-serif}.edit-field{display:flex;flex-direction:column;gap:4px}.edit-field label{font-size:.78rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.3px}.title-edit{font-size:1.2rem!important;font-weight:700!important;padding:8px 12px!important}.badge-select{width:auto!important;font-size:.82rem!important;padding:6px 12px!important;border-radius:20px!important;font-weight:600}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.88rem;color:#374151;padding:8px 0}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:#0066cc;cursor:pointer}.btn-primary:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 900px){.projects-layout{flex-direction:column;height:auto}.projects-list-panel{width:100%;min-width:0;border-right:none;border-bottom:1px solid rgba(0,102,204,.12);padding-right:0;padding-bottom:16px;max-height:50vh}.project-detail-panel{padding:16px 0 0}.rates-grid{grid-template-columns:repeat(2,1fr)}}.status-dropdown{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#0066cc0f;color:#1a1a2e;font-size:.78rem;font-weight:700;padding:5px 28px 5px 14px;border-radius:20px;border:2px solid rgba(0,102,204,.25);cursor:pointer;text-transform:uppercase;letter-spacing:.3px;outline:none;transition:all .2s ease;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.status-dropdown:hover{border-color:#0066cc80;background-color:#0066cc1a}.status-dropdown:focus{border-color:#06c;box-shadow:0 0 0 3px #0066cc1f}.archive-toggle{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:.82rem;font-weight:500;color:#6b7280;white-space:nowrap;padding:7px 12px;border:1px solid rgba(0,102,204,.15);border-radius:8px;background:#ffffffb3;transition:all .15s;-webkit-user-select:none;user-select:none}.archive-toggle:hover{border-color:#06c;color:#374151}.archive-toggle input[type=checkbox]{width:14px;height:14px;accent-color:#0066cc;cursor:pointer}.view-toggle{display:flex;background:#ffffffb3;border:1px solid rgba(0,102,204,.12);border-radius:8px;overflow:hidden}.toggle-btn{padding:6px 10px;border:none;background:transparent;color:#9ca3af;font-size:1rem;cursor:pointer;transition:all .15s;line-height:1}.toggle-btn.active{background:#0066cc1a;color:#06c}.toggle-btn:hover:not(.active){background:#0000000a;color:#6b7280}.project-list-primary{display:flex;justify-content:space-between;align-items:center;gap:12px}.project-list-client-name{font-size:.95rem;font-weight:700;color:#1a1a2e;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list-gross-amount{font-size:.95rem;font-weight:700;color:#06c;white-space:nowrap}.project-list-secondary{display:flex;justify-content:space-between;align-items:center;margin-top:3px;gap:12px}.project-list-dev-name{font-size:.82rem;font-weight:500;color:#6b7280;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list-net-amount{font-size:.82rem;font-weight:600;white-space:nowrap}.project-list-net-amount.positive{color:#059669}.project-list-net-amount.negative{color:#dc2626}.project-list-tertiary{display:flex;align-items:center;gap:6px;margin-top:6px;padding-top:6px;border-top:1px solid rgba(0,0,0,.04);flex-wrap:wrap}.project-list-project-name{font-size:.75rem;color:#9ca3af;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.project-list-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.project-list-status-text{font-size:.7rem;color:#6b7280;font-weight:500;white-space:nowrap}.project-list-type-tag{font-size:.65rem;font-weight:600;color:#06c;background:#0066cc0f;padding:1px 6px;border-radius:8px;white-space:nowrap}.project-list-hours{font-size:.7rem;font-weight:600;color:#00bcd4;white-space:nowrap}.projects-table-container{flex:1;overflow-y:auto;padding:4px 0}.projects-table-container::-webkit-scrollbar{width:6px}.projects-table-container::-webkit-scrollbar-thumb{background:#0066cc26;border-radius:3px}.projects-table{display:flex;flex-direction:column}.projects-table-totals{display:grid;grid-template-columns:28px 1.4fr 1.1fr .8fr .8fr 1.5fr 1fr .6fr;gap:8px;padding:6px 12px;font-size:.75rem;font-weight:700;color:#374151;border-bottom:1px solid rgba(0,0,0,.06);background:#0066cc0a;border-radius:8px 8px 0 0}.totals-label{grid-column:1 / 4;text-align:right;color:#6b7280;font-weight:600;text-transform:uppercase;font-size:.68rem;letter-spacing:.04em;padding-right:8px}.totals-gross{color:#06c;font-size:.82rem}.totals-net{color:#059669;font-size:.82rem}.totals-fixed-pending{font-size:.78rem;color:#b45309;font-style:italic;padding:2px 8px;background:#b4530914;border-radius:6px;white-space:nowrap}.dark-mode .projects-table-totals{color:#e5e7eb;background:#0066cc14;border-bottom-color:#ffffff0f}.dark-mode .totals-label{color:#9ca3af}.dark-mode .totals-gross{color:#60a5fa}.dark-mode .totals-net{color:#34d399}.dark-mode .totals-fixed-pending{color:#fbbf24;background:#fbbf241a}.projects-table-header{display:grid;grid-template-columns:28px 1.4fr 1.1fr .8fr .8fr 1.5fr 1fr .6fr;gap:8px;padding:8px 12px;border-bottom:1px solid rgba(0,102,204,.1);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#9ca3af;background:#f5f7fa;position:sticky;top:0;z-index:5}html.dark-mode .projects-table-header{background:#1e293b}.projects-table-row{display:grid;grid-template-columns:28px 1.4fr 1.1fr .8fr .8fr 1.5fr 1fr .6fr;gap:8px;padding:10px 12px;cursor:pointer;border-bottom:1px solid rgba(0,0,0,.03);font-size:.82rem;align-items:center;transition:background .12s;border-radius:6px;position:relative}.projects-table-row:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:6px;pointer-events:none;opacity:0}.projects-table-row[data-project-type=Hourly]:after{background:#3b82f60b;opacity:1}.projects-table-row[data-project-type=Fixed]:after,.projects-table-row[data-project-type=""]:after{background:#10b98109;opacity:1}html.dark-mode .projects-table-row[data-project-type=Hourly]:after{background:#60a5fa12}html.dark-mode .projects-table-row[data-project-type=Fixed]:after,html.dark-mode .projects-table-row[data-project-type=""]:after{background:#34d3990d}.projects-table-row:hover{background:#fff9}.projects-table-row.expanded{background:#0066cc0f;border-bottom-color:transparent}.pt-col-expand{font-size:.7rem;color:#9ca3af;width:28px;text-align:center}.pt-col-type{font-size:.75rem;color:#6b7280}.table-expanded-detail{padding:16px 20px 20px 44px;border-bottom:2px solid rgba(0,102,204,.1);background:#ffffff80;animation:slideDown .15s ease}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:2000px}}.table-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.table-detail-header h3{font-size:1.1rem;font-weight:700;color:#1a1a2e;margin:0}.table-detail-actions{display:flex;gap:8px}.btn-sm{padding:5px 12px!important;font-size:.78rem!important}.btn-small{padding:4px 10px;font-size:.75rem;border-radius:6px;text-decoration:none;display:inline-block}.table-detail-view{display:flex;flex-direction:column;gap:8px}.table-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:12px}.td-block{display:flex;flex-direction:column;gap:2px}.td-block label{font-size:.65rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px}.td-block span{font-size:.88rem;color:#374151;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-sub{font-size:.75rem!important;color:#9ca3af!important;display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-amount{font-weight:700!important}.td-amount.gross{color:#06c!important}.td-amount.net{color:#059669!important}.td-amount.dev{color:#f59e0b!important}.table-detail-rates{display:flex;gap:20px;padding:8px 0;font-size:.82rem;color:#374151}.table-detail-rates .profit{color:#059669}.table-detail-payment{display:flex;gap:8px;padding:8px 0;flex-wrap:wrap}.table-detail-dates{display:flex;gap:20px;font-size:.8rem;color:#6b7280;padding:8px 0}.td-text-section{padding:8px 0;border-top:1px solid rgba(0,0,0,.04)}.td-text-section label{font-size:.65rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:4px}.td-text-section p{font-size:.85rem;color:#374151;margin:0;line-height:1.5}.td-footer{font-size:.7rem;color:#d1d5db;text-align:right;padding-top:8px}.detail-top-row{display:flex;gap:24px;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid rgba(0,0,0,.06);margin-bottom:8px}.detail-info-inline{flex:1;min-width:0}.detail-info-inline .table-detail-grid{margin-bottom:0}.quick-toggles-row{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:10px 0 0;border-bottom:none;margin-bottom:0;flex:0 0 auto;position:relative;z-index:0}.quick-toggle-group{display:flex;align-items:center;gap:8px;flex:0 0 auto;position:relative}.quick-toggles-row .toggle-label{font-size:.78rem;color:#1f2937!important;line-height:1.2;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;position:static!important;letter-spacing:normal!important;font-weight:400!important}.quick-toggles-row .toggle-label.active-lock{color:#dc2626!important;font-weight:600!important}.toggle-switch.mini{position:relative;display:block;width:36px;min-width:36px;height:20px;min-height:20px;flex:0 0 36px;cursor:pointer;isolation:isolate}.toggle-switch.mini input{opacity:0;width:36px;height:20px;position:absolute;top:0;left:0;z-index:2;cursor:pointer;margin:0}.toggle-switch.mini .toggle-slider{position:absolute;cursor:pointer;top:0;left:0;width:36px;height:20px;background:#cbd5e1;border-radius:20px;transition:background .3s;z-index:1}.toggle-switch.mini .toggle-slider:before{content:"";position:absolute;width:16px;height:16px;bottom:2px;left:2px;background:#fff;border-radius:50%;transition:transform .3s;box-shadow:0 1px 3px #00000026}.toggle-switch.mini input:checked+.toggle-slider:before{transform:translate(16px)}.toggle-switch.mini input:checked+.toggle-slider{background:#3b82f6}.toggle-switch.mini.lock-toggle input:checked+.toggle-slider{background:#ef4444}.quick-toggle-status{display:flex;align-items:center;gap:8px;margin-bottom:8px}.inline-status-select{background:#ffffff80;border:1px solid rgba(0,0,0,.12);border-radius:6px;padding:4px 8px;font-size:.78rem;font-weight:600;cursor:pointer;outline:none;width:auto;min-width:120px;max-width:200px}.inline-status-select:hover{border-color:#0066cc4d}.inline-edit-title{width:100%;font-size:1.1rem;font-weight:700;color:#1a1a2e;border:none;border-bottom:2px solid rgba(0,102,204,.3);background:transparent;padding:2px 0;outline:none}.inline-edit-title:focus{border-bottom-color:#06c}.inline-edit-input{width:100%;font-size:.82rem;color:#374151;border:1px solid rgba(0,0,0,.1);border-radius:4px;padding:4px 6px;background:#fffc;outline:none;transition:border-color .15s}.inline-edit-input:focus{border-color:#06c;box-shadow:0 0 0 2px #0066cc14}.inline-edit-textarea{width:100%;font-size:.82rem;color:#374151;border:1px solid rgba(0,0,0,.1);border-radius:4px;padding:6px 8px;background:#fffc;outline:none;resize:vertical;font-family:inherit;line-height:1.5}.inline-edit-textarea:focus{border-color:#06c;box-shadow:0 0 0 2px #0066cc14}.payment-chip-toggle{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s}.payment-chip-toggle.paid{background:#10b9811f;color:#059669}.payment-chip-toggle.unpaid{background:#0000000a;color:#9ca3af}.payment-chip-toggle:hover{opacity:.8;transform:scale(1.02)}.hours-cap-indicator{font-size:.78rem;color:#6b7280;padding:4px 0}.hours-cap-used{color:#9ca3af}html.dark-mode .detail-top-row{border-bottom-color:#ffffff0f}html.dark-mode .quick-toggles-row .toggle-label{color:#e2e8f0!important}html.dark-mode .quick-toggles-row .toggle-label.active-lock{color:#ef4444!important}html.dark-mode .toggle-switch.mini .toggle-slider{background:#4b5563}html.dark-mode .inline-status-select{color:#e2e8f0;border-color:#ffffff1a;background:#ffffff0d}html.dark-mode .inline-edit-title{color:#e2e8f0;border-bottom-color:#60a5fa4d}html.dark-mode .inline-edit-input,html.dark-mode .inline-edit-textarea{color:#e2e8f0;background:#1e293b80;border-color:#ffffff1a}html.dark-mode .inline-edit-input:focus,html.dark-mode .inline-edit-textarea:focus{border-color:#60a5fa}html.dark-mode .hours-cap-indicator{color:#94a3b8}.clock-events-compact{display:flex;flex-direction:column;gap:4px}.clock-event-compact{display:flex;gap:12px;font-size:.8rem;color:#374151}.table-detail-edit{display:flex;flex-direction:column;gap:12px}.edit-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.edit-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.edit-grid-4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:12px}.pt-col-client{font-weight:600;color:#1a1a2e;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pt-col-dev{color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pt-col-gross{font-weight:700;color:#06c;white-space:nowrap}.pt-col-net{font-weight:600;white-space:nowrap}.pt-col-net.positive{color:#059669}.pt-col-net.negative{color:#dc2626}.pt-col-project{color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}.pt-col-status{font-size:.75rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-hero{padding:20px;border-radius:14px;margin-bottom:4px}.hero-people-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:18px}.hero-block{display:flex;flex-direction:column;gap:4px}.hero-label{font-size:.7rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.hero-value{font-size:1.05rem;font-weight:700;color:#1a1a2e}.hero-value.muted{color:#9ca3af;font-weight:400}.hero-value-link{font-size:1.05rem;font-weight:700;color:#06c;text-decoration:none;transition:color .15s}.hero-value-link:hover{color:#003d7a}.hero-sub{font-size:.78rem;color:#6b7280}.hero-financials-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;padding:14px 0;border-top:1px solid rgba(0,102,204,.08)}.hero-financial{display:flex;flex-direction:column;gap:2px;text-align:center}.hero-financial label{font-size:.68rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.4px}.hero-amount{font-size:1.35rem;font-weight:800;color:#1a1a2e}.hero-amount.gross{color:#06c}.hero-amount.net{color:#059669}.hero-amount.dev{color:#e65100}.hero-hourly-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding-top:12px;border-top:1px solid rgba(0,102,204,.08)}.hero-rate{display:flex;flex-direction:column;align-items:center;gap:2px}.hero-rate label{font-size:.65rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px}.hero-rate span{font-size:.95rem;font-weight:700;color:#374151}.hero-rate span.profit{color:#059669}.hero-progress-row{display:flex;align-items:center;gap:12px;padding-top:12px;border-top:1px solid rgba(0,102,204,.08)}.hero-progress-row label{font-size:.7rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.progress-bar-container{flex:1;height:8px;background:#00000014;border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#06c,#00c853);border-radius:4px;transition:width .3s ease}.progress-bar-label{font-size:.85rem;font-weight:700;color:#374151;min-width:36px;text-align:right}.btn-archive-viewer{padding:4px 10px;border:1px solid rgba(139,92,246,.2);border-radius:6px;background:#8b5cf614;font-size:.75rem;color:#7c3aed;cursor:pointer;white-space:nowrap;transition:all .2s}.btn-archive-viewer:hover{background:#8b5cf626;border-color:#8b5cf666}.archive-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.archive-modal{background:#fff;border-radius:16px;width:95vw;max-width:1200px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 25px 50px #00000040;overflow:hidden}.archive-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.archive-modal-header h2{margin:0;font-size:1.3rem;color:#1f2937}.archive-modal-close{width:32px;height:32px;border:none;background:#f3f4f6;border-radius:8px;font-size:1rem;cursor:pointer;color:#6b7280;display:flex;align-items:center;justify-content:center;transition:all .2s}.archive-modal-close:hover{background:#e5e7eb;color:#1f2937}.archive-filters{padding:16px 24px;border-bottom:1px solid #e5e7eb;background:#fafbfc}.archive-filter-row{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:12px}.archive-filter-field{display:flex;flex-direction:column;gap:4px;flex:1;min-width:140px}.archive-filter-field label{font-size:.72rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.archive-filter-field .form-input{padding:6px 10px;font-size:.85rem}.archive-filter-actions{display:flex;gap:10px;align-items:center}.archive-filter-actions .btn-primary{padding:6px 16px;font-size:.82rem;border:none;background:#06c;color:#fff;border-radius:8px;cursor:pointer;transition:background .2s}.archive-filter-actions .btn-primary:hover{background:#0052a3}.archive-filter-actions .btn-secondary{padding:6px 16px;font-size:.82rem;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:8px;cursor:pointer;transition:all .2s}.archive-filter-actions .btn-secondary:hover{background:#f3f4f6}.archive-filter-actions .btn-export{padding:6px 16px;font-size:.82rem;border:1px solid rgba(16,185,129,.3);background:#10b98114;color:#059669;border-radius:8px;cursor:pointer;transition:all .2s;margin-left:auto}.archive-filter-actions .btn-export:hover{background:#10b98126;border-color:#10b98180}.archive-count{font-size:.82rem;color:#6b7280;font-weight:500}.archive-results{flex:1;overflow:auto;padding:0}.archive-loading,.archive-empty{padding:48px 24px;text-align:center;color:#6b7280;font-size:.95rem}.archive-table{width:100%;border-collapse:collapse;font-size:.85rem}.archive-table thead{position:sticky;top:0;background:#f9fafb;z-index:1}.archive-table th{padding:10px 14px;text-align:left;font-size:.72rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e5e7eb}.archive-table td{padding:10px 14px;border-bottom:1px solid #f3f4f6;color:#374151}.archive-row{cursor:pointer;transition:background .15s}.archive-row:hover{background:#0066cc0a}.archive-title{font-weight:600;color:#1f2937;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-right{text-align:right}.archive-totals{background:#f0f7ff;font-size:.88rem}.archive-totals td{border-top:2px solid #d1d5db;padding:12px 14px}.dev-group-header{display:flex;align-items:center;gap:10px;padding:10px 16px 6px;margin-top:8px;border-bottom:2px solid rgba(0,102,204,.15)}.dev-group-header:first-child{margin-top:0}.dev-group-name{font-weight:700;font-size:.92rem;color:#1a1a2e;letter-spacing:.01em}.dev-group-count{font-size:.78rem;color:#6b7280;background:#0066cc14;padding:1px 8px;border-radius:10px}html.dark-mode .dev-group-name{color:#e0e0e0}html.dark-mode .dev-group-header{border-bottom-color:#64a0ff33}html.dark-mode .dev-group-count{background:#64a0ff26;color:#a0b0c0}.projects-table-group-header{display:flex;align-items:center;gap:12px;padding:10px 16px;margin-top:4px;background:linear-gradient(135deg,#0066cc0f,#0066cc05);border-bottom:2px solid rgba(0,102,204,.15);border-top:1px solid rgba(0,102,204,.08)}.projects-table-group-header:first-child{margin-top:0;border-top:none}.group-dev-name{font-weight:700;font-size:.9rem;color:#1a1a2e}.group-dev-count{font-size:.78rem;color:#6b7280}.group-dev-total{margin-left:auto;font-weight:600;font-size:.88rem;color:#06c}html.dark-mode .projects-table-group-header{background:linear-gradient(135deg,#64a0ff14,#64a0ff08);border-bottom-color:#64a0ff33;border-top-color:#64a0ff1a}html.dark-mode .group-dev-name{color:#e0e0e0}html.dark-mode .group-dev-count{color:#a0b0c0}html.dark-mode .group-dev-total{color:#64a0ff}.field-disabled .form-input,.input-readonly{background:#f3f4f6!important;color:#6b7280!important;cursor:not-allowed;border-color:#e5e7eb!important}html.dark-mode .field-disabled .form-input,html.dark-mode .input-readonly{background:#ffffff0a!important;color:#888!important;border-color:#ffffff14!important}.auto-calc-badge{display:inline-block;font-size:.65rem;font-weight:500;color:#6b7280;background:#e5e7eb;padding:0 5px;border-radius:4px;margin-left:6px;vertical-align:middle;text-transform:uppercase;letter-spacing:.03em}html.dark-mode .auto-calc-badge{background:#ffffff1a;color:#888}html.dark-mode .projects-list-header h1,html.dark-mode .project-detail-title,html.dark-mode .project-list-title,html.dark-mode .table-detail-header h3,html.dark-mode .hero-value,html.dark-mode .hero-amount,html.dark-mode .modal-content h2,html.dark-mode .archive-modal-header h2,html.dark-mode .archive-title{color:#f0f0f2}html.dark-mode .search-input,html.dark-mode .financial-value,html.dark-mode .rate-value,html.dark-mode .developer-name,html.dark-mode .clock-event-dev,html.dark-mode .project-list-client-name,html.dark-mode .pt-col-client,html.dark-mode .status-dropdown,html.dark-mode .form-input{color:#e0e0e4}html.dark-mode .filter-select,html.dark-mode .description-text,html.dark-mode .date-item span,html.dark-mode .invoice-info-label,html.dark-mode .refund-form-row label,html.dark-mode .form-group label,html.dark-mode .checkbox-label,html.dark-mode .td-block span,html.dark-mode .table-detail-rates,html.dark-mode .td-text-section p,html.dark-mode .clock-event-compact,html.dark-mode .pt-col-project,html.dark-mode .hero-rate span,html.dark-mode .progress-bar-label,html.dark-mode .archive-table td{color:#b0b0b8}html.dark-mode .count-badge,html.dark-mode .archive-toggle,html.dark-mode .btn-reset-prefs,html.dark-mode .project-list-client,html.dark-mode .detail-section-label,html.dark-mode .client-email,html.dark-mode .financial-tile label,html.dark-mode .rate-tile label,html.dark-mode .clock-event-times,html.dark-mode .clock-event-notes,html.dark-mode .edit-field label,html.dark-mode .project-list-status-text,html.dark-mode .pt-col-type,html.dark-mode .pt-col-dev,html.dark-mode .hero-sub,html.dark-mode .archive-modal-close,html.dark-mode .archive-count,html.dark-mode .archive-loading,html.dark-mode .archive-empty,html.dark-mode .archive-table th{color:#8a8a96}html.dark-mode .search-input,html.dark-mode .filter-select,html.dark-mode .count-badge,html.dark-mode .btn-reset-prefs,html.dark-mode .archive-toggle,html.dark-mode .view-toggle{background:#ffffff0f;border-color:#ffffff1a}html.dark-mode .project-list-item{background:#ffffff0a}html.dark-mode .project-list-item:hover{background:#60a5fa14}html.dark-mode .project-list-item.selected{background:#60a5fa1f}html.dark-mode .glass-card,html.dark-mode .detail-card{background:#1e1e2ab3;border-color:#ffffff0f}html.dark-mode .refund-form{background:#ffffff0a}html.dark-mode .modal-content,html.dark-mode .custom-confirm-modal{background:#1a1a24;color:#f0f0f2}html.dark-mode .custom-confirm-modal h3{color:#f0f0f2}html.dark-mode .custom-confirm-modal p{color:#b0b0b8}html.dark-mode .projects-table-row:hover{background:#60a5fa14}html.dark-mode .table-expanded-detail{background:#1e1e2a99}html.dark-mode .archive-modal{background:#1a1a24}html.dark-mode .archive-modal-close{background:#ffffff0f}html.dark-mode .archive-modal-close:hover{color:#f0f0f2;background:#ffffff1a}html.dark-mode .archive-filters{background:#ffffff08}html.dark-mode .archive-filter-actions .btn-secondary{background:#ffffff0f;color:#b0b0b8}html.dark-mode .archive-filter-actions .btn-secondary:hover{background:#ffffff1a}html.dark-mode .archive-table thead{background:#ffffff0a}html.dark-mode .archive-totals{background:#60a5fa14}.table-top-bar{display:flex;align-items:center;padding:6px 16px;border-bottom:1px solid rgba(0,0,0,.06)}.btn-collapse-all{font-size:.78rem;font-weight:600;color:#6b7280;background:#0000000a;border:1px solid rgba(0,0,0,.08);border-radius:6px;padding:4px 12px;cursor:pointer;transition:background .15s}.btn-collapse-all:hover{background:#00000014;color:#374151}html.dark-mode .table-top-bar{border-bottom-color:#ffffff0f}html.dark-mode .btn-collapse-all{background:#ffffff0f;border-color:#ffffff1a;color:#a0b0c0}html.dark-mode .btn-collapse-all:hover{background:#ffffff1a;color:#e0e0e4}.pm-approvals-section{margin:8px 12px;border:1px solid #f59e0b;border-radius:10px;background:#fffbeb;overflow:hidden}.pm-approvals-header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;font-size:.82rem;font-weight:700;color:#92400e;cursor:pointer;background:#fef3c7;-webkit-user-select:none;user-select:none}.pm-approvals-header:hover{background:#fde68a}.approval-count-badge{background:#f59e0b;color:#fff;font-size:.72rem;font-weight:700;border-radius:10px;padding:1px 8px}.pm-approvals-list{padding:6px 8px;display:flex;flex-direction:column;gap:6px}.pm-approval-item{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#fff;border:1px solid #fcd34d;border-radius:8px;font-size:.8rem}.approval-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.approval-title{font-weight:600;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approval-meta{font-size:.74rem;color:#6b7280}.approval-price{font-weight:700;color:#059669;white-space:nowrap;min-width:60px;text-align:right}.approval-actions{display:flex;gap:6px;flex-shrink:0}.btn-approve{padding:4px 12px;border-radius:6px;font-size:.76rem;font-weight:700;background:#d1fae5;color:#065f46;border:1px solid #6ee7b7;cursor:pointer}.btn-approve:hover{background:#a7f3d0}.btn-reject{padding:4px 12px;border-radius:6px;font-size:.76rem;font-weight:700;background:#fee2e2;color:#991b1b;border:1px solid #fca5a5;cursor:pointer}.btn-reject:hover{background:#fecaca}html.dark-mode .pm-approvals-section{background:#2d2000;border-color:#b45309}html.dark-mode .pm-approvals-header{background:#3d2a00;color:#fcd34d}html.dark-mode .pm-approvals-header:hover{background:#4d3500}html.dark-mode .pm-approval-item{background:#1f2937;border-color:#78350f}html.dark-mode .approval-title{color:#f3f4f6}html.dark-mode .approval-meta{color:#9ca3af}html.dark-mode .btn-approve{background:#064e3b;color:#6ee7b7;border-color:#065f46}html.dark-mode .btn-approve:hover{background:#065f46}html.dark-mode .btn-reject{background:#7f1d1d;color:#fca5a5;border-color:#991b1b}html.dark-mode .btn-reject:hover{background:#991b1b}.group-collapse-icon{font-size:.65rem;color:#9ca3af;width:14px;text-align:center;flex-shrink:0}html.dark-mode .group-collapse-icon{color:#6b7280}.dev-group-net{margin-left:auto;font-weight:700;font-size:.88rem;color:#059669}html.dark-mode .dev-group-net{color:#34d399}.group-dev-net{font-weight:700;font-size:.88rem;color:#059669}html.dark-mode .group-dev-net{color:#34d399}.projects-table-group-header{cursor:pointer;-webkit-user-select:none;user-select:none}.projects-table-group-header:hover{background:linear-gradient(135deg,#0066cc1a,#0066cc0a)}html.dark-mode .projects-table-group-header:hover{background:linear-gradient(135deg,#64a0ff1f,#64a0ff0d)}.table-new-form{padding:16px 20px 20px;border-bottom:2px solid rgba(0,102,204,.15);background:#0066cc08;animation:slideDown .15s ease}html.dark-mode .table-new-form{background:#64a0ff0d;border-bottom-color:#64a0ff33}.table-expanded-detail .table-detail-edit .form-input{background:#fff9;border-color:#06c3}.table-expanded-detail .table-detail-edit .form-input:focus{background:#fff}html.dark-mode .table-expanded-detail .table-detail-edit .form-input{background:#ffffff0f;border-color:#64a0ff33;color:#e0e0e4}html.dark-mode .table-expanded-detail .table-detail-edit .form-input:focus{background:#ffffff1a}@media (max-width: 768px){.projects-layout{flex-direction:column;height:auto}.projects-layout.table-fullpage{height:auto}.projects-list-panel{width:100%!important;min-width:0;border-right:none;max-height:none}.project-detail-panel{padding:12px 0 0}.projects-list-header{flex-wrap:wrap;gap:8px}.projects-list-header h1{font-size:1.2rem}.projects-header-actions{flex-wrap:wrap;gap:6px}.projects-filters{flex-direction:column;gap:8px}.filter-row{flex-wrap:wrap;gap:6px}.filter-select{flex:1;min-width:100px}.projects-table-header{display:none}.projects-table-row{display:flex;flex-wrap:wrap;gap:4px;padding:10px 12px}.pt-col-expand{width:20px}.pt-col-client{flex:1 1 40%;font-size:.82rem}.pt-col-dev{flex:1 1 40%;font-size:.78rem}.pt-col-gross,.pt-col-net{flex:0 0 auto}.pt-col-project{flex:1 1 100%;font-size:.78rem;color:#374151}.pt-col-status,.pt-col-type{font-size:.72rem}.priority-tag{font-size:.62rem}.table-expanded-detail{padding:12px 12px 16px}.table-detail-header{flex-wrap:wrap;gap:8px}.table-detail-header h3{font-size:.95rem;flex:1 1 100%}.table-detail-actions{flex-wrap:wrap}.edit-grid-4{grid-template-columns:1fr 1fr}.edit-grid-3,.edit-grid-2{grid-template-columns:1fr}.table-detail-grid{grid-template-columns:repeat(2,1fr)}.quick-toggles-row{flex-direction:column;align-items:flex-start;gap:10px}.detail-top-row{flex-direction:column;gap:12px}.quick-toggle-status{width:auto}.inline-status-select{width:auto;max-width:100%}.hero-people-row{flex-direction:column;gap:12px}.hero-financials-row,.hero-hourly-row{flex-wrap:wrap;gap:8px}.edit-form .edit-row,.edit-form .edit-row.three-col{grid-template-columns:1fr}.project-detail-header{flex-direction:column;gap:8px;align-items:flex-start}.project-detail-actions{width:100%;display:flex;gap:8px}.payment-status-row{flex-wrap:wrap}.dates-grid{grid-template-columns:repeat(2,1fr)}.resize-handle{display:none}.archive-modal{width:95vw;max-height:90vh;margin:5vh auto}.archive-filter-row{flex-direction:column}.archive-table{font-size:.75rem}.archive-table th,.archive-table td{padding:6px 8px}}@keyframes projectGlow{0%{box-shadow:0 0 #00b47800}20%{box-shadow:0 0 16px 4px #00b47866}50%{box-shadow:0 0 24px 8px #00b47840}80%{box-shadow:0 0 16px 4px #00b47826}to{box-shadow:0 0 #00b47800}}@keyframes fieldGlow{0%{text-shadow:0 0 0 rgba(0,180,120,0);background:transparent}15%{text-shadow:0 0 8px rgba(0,180,120,.6);background:#00b4781f}50%{text-shadow:0 0 12px rgba(0,180,120,.35);background:#00b47814}85%{text-shadow:0 0 4px rgba(0,180,120,.15);background:#00b4780a}to{text-shadow:0 0 0 rgba(0,180,120,0);background:transparent}}.project-glow{animation:projectGlow 2.3s ease-in-out;border-color:#00b47866!important}.field-glow{animation:fieldGlow 2.3s ease-in-out;border-radius:4px}.dark-mode .project-glow{animation:projectGlow 2.3s ease-in-out;border-color:#34d39966!important}.project-locked{opacity:.85;border-left:3px solid #ef4444!important}.lock-indicator{display:flex;align-items:center;gap:8px;margin-top:10px;padding:6px 12px;background:#ef444414;border-radius:8px;border:1px solid rgba(239,68,68,.2)}.lock-badge{font-size:.82rem;font-weight:600;color:#dc2626}.lock-reason{font-size:.78rem;color:#6b7280;font-style:italic}.dark-mode .lock-indicator{background:#ef44441f;border-color:#ef444440}.dark-mode .lock-badge{color:#f87171}.dark-mode .lock-reason{color:#9ca3af}.progress-slider{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#e2e8f0;border-radius:4px;outline:none;cursor:pointer}.progress-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#06c;cursor:pointer;border:2px solid white;box-shadow:0 1px 4px #0003}.progress-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#06c;cursor:pointer;border:2px solid white;box-shadow:0 1px 4px #0003}.dark-mode .progress-slider{background:#374151}.archive-row-selected{background:#0066cc14!important}.dark-mode .archive-row-selected{background:#60a5fa1f!important}.archive-detail-row td{padding:0!important}.archive-detail-panel{padding:16px 20px;background:#0066cc0a;border-top:1px solid rgba(0,102,204,.1);border-bottom:2px solid rgba(0,102,204,.15)}.archive-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px 16px;margin-bottom:12px}.archive-detail-grid>div{display:flex;flex-direction:column;gap:2px}.archive-detail-grid label{font-size:.7rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.03em}.archive-detail-grid span{font-size:.85rem;font-weight:500;color:#1f2937}.archive-detail-text{margin-top:8px;padding-top:8px;border-top:1px solid rgba(0,0,0,.06)}.archive-detail-text label{font-size:.72rem;font-weight:600;color:#6b7280;text-transform:uppercase}.archive-detail-text p,.archive-detail-text a{font-size:.82rem;color:#374151;margin:2px 0 0;line-height:1.4}.archive-detail-text a{color:#06c;word-break:break-all}.archive-detail-actions{margin-top:12px;padding-top:8px;border-top:1px solid rgba(0,0,0,.06)}.dark-mode .archive-detail-panel{background:#60a5fa0f;border-color:#60a5fa1f}.dark-mode .archive-detail-grid span{color:#e5e7eb}.dark-mode .archive-detail-grid label{color:#9ca3af}.dark-mode .archive-detail-text p{color:#d1d5db}.dark-mode .archive-detail-text a{color:#60a5fa}.clients-table-header,.clients-table-row{display:grid;grid-template-columns:28px 1.4fr 1.2fr 1.5fr .8fr .8fr .9fr;align-items:center;gap:0;padding:0 12px}.clients-table-header{background:#f5f7fa;border-bottom:2px solid rgba(0,102,204,.1);padding-top:8px;padding-bottom:8px;position:sticky;top:0;z-index:5}.clients-table-header span{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:#6b7280}.clients-table-row{padding-top:10px;padding-bottom:10px;border-bottom:1px solid rgba(0,0,0,.04);cursor:pointer;transition:background .15s ease}.clients-table-row:hover{background:#0066cc08}.clients-table-row.expanded{background:#0066cc0f;border-bottom-color:transparent}.ct-col-expand{font-size:.65rem;color:#9ca3af;text-align:center;width:28px}.ct-col-name{font-size:.85rem;font-weight:600;color:#1a1a2e;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-col-company{font-size:.82rem;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-col-email{font-size:.8rem;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ct-col-source,.ct-col-payment{font-size:.8rem;color:#6b7280}.ct-col-status{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.client-financials-inline{display:flex;gap:12px;margin:8px 0}.client-fin-tile{display:flex;flex-direction:column;align-items:center;gap:2px;background:#ffffff8c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.6);border-radius:10px;padding:10px 20px;box-shadow:0 2px 8px #003c780d}.client-fin-tile label{font-size:.68rem;color:#6b7280;text-transform:uppercase;letter-spacing:.3px;font-weight:500}.fin-val{font-size:1.1rem;font-weight:700;color:#e65100}.fin-val.avg{color:#06c}.fin-val.max{color:#00875a}[data-theme=dark] .clients-table-header,.dark-mode .clients-table-header{background:#1e293b;border-bottom-color:#60a5fa1f}[data-theme=dark] .clients-table-header span,.dark-mode .clients-table-header span{color:#94a3b8}[data-theme=dark] .clients-table-row,.dark-mode .clients-table-row{border-bottom-color:#ffffff0a}[data-theme=dark] .clients-table-row:hover,.dark-mode .clients-table-row:hover{background:#60a5fa0d}[data-theme=dark] .clients-table-row.expanded,.dark-mode .clients-table-row.expanded{background:#60a5fa14}[data-theme=dark] .ct-col-name,.dark-mode .ct-col-name{color:#e2e8f0}[data-theme=dark] .ct-col-company,[data-theme=dark] .ct-col-email,[data-theme=dark] .ct-col-source,[data-theme=dark] .ct-col-payment,.dark-mode .ct-col-company,.dark-mode .ct-col-email,.dark-mode .ct-col-source,.dark-mode .ct-col-payment{color:#94a3b8}[data-theme=dark] .client-fin-tile,.dark-mode .client-fin-tile{background:#1e293b80;border-color:#60a5fa1a}[data-theme=dark] .client-fin-tile label,.dark-mode .client-fin-tile label{color:#94a3b8}@media (max-width: 1100px){.clients-table-header,.clients-table-row{grid-template-columns:28px 1.2fr 1fr 0 0 .7fr .8fr}.ct-col-email,.ct-col-source{display:none}}@media (max-width: 768px){.clients-table-header,.clients-table-row{grid-template-columns:28px 1fr 0 0 0 0 .8fr}.ct-col-company,.ct-col-email,.ct-col-source,.ct-col-payment{display:none}.client-financials-inline{flex-direction:column}}.ai-report-loading{padding:20px;text-align:center;background:var(--bg-secondary, #f0f4ff);border-radius:8px;margin-top:12px}.ai-report-loading-icon{font-size:1.5rem;margin-bottom:8px}.ai-report-loading p{color:#666;font-size:.9rem;margin:4px 0}.ai-report-loading .ai-report-loading-sub{color:#999;font-size:.8rem}.ai-report-container{margin-top:12px;padding:16px;background:var(--bg-secondary, #f8f9fa);border-radius:8px;border:1px solid var(--border-color, #e0e0e0)}.ai-report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ai-report-header h4{margin:0;font-size:.95rem}.ai-report-meta{display:flex;gap:8px;font-size:.75rem;color:#888;align-items:center}.ai-report-content{font-size:.85rem;line-height:1.6;white-space:pre-wrap}.ai-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.ai-metric{padding:10px 12px;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;background:#fff9}.ai-metric-label{font-size:.72rem;color:#6b7280;font-weight:700;text-transform:uppercase;letter-spacing:.4px}.ai-metric-value{font-size:1.05rem;font-weight:800;color:#111827;margin-top:2px}.ai-metric-max{font-size:.7rem;font-weight:600;opacity:.5}.ai-metric-rationale{font-size:.72rem;color:#6b7280;margin-top:4px;line-height:1.4}.ai-business-summary{font-size:.82rem;font-weight:600;color:#374151;font-style:italic;padding:8px 12px;margin-bottom:10px;background:#6366f10f;border-left:3px solid rgba(99,102,241,.4);border-radius:0 6px 6px 0}.ai-collapsible-title{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s}.ai-collapsible-title:hover{color:#06c}.ai-summary-text{line-height:1.6;color:#1f2937}.ai-summary-collapsed{max-height:4.8em;overflow:hidden;position:relative;mask-image:linear-gradient(to bottom,black 60%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 60%,transparent 100%)}.ai-summary-expanded{max-height:none}.ai-expand-btn{background:none;border:none;color:#06c;font-size:.78rem;font-weight:600;cursor:pointer;padding:2px 0;margin-top:2px}.ai-expand-btn:hover{text-decoration:underline}.ai-tools-list{display:flex;flex-wrap:wrap;gap:6px}.ai-tool-tag{display:inline-block;padding:3px 10px;font-size:.75rem;font-weight:600;background:#6366f114;color:#4338ca;border-radius:12px;border:1px solid rgba(99,102,241,.15)}.ai-horizon-section{padding:8px 0 0;border-top:1px dashed rgba(0,0,0,.08);margin-top:6px}.btn-add-contact{background:none;border:1px solid rgba(0,102,204,.3);color:#06c;font-size:.72rem;font-weight:600;padding:3px 10px;border-radius:4px;cursor:pointer}.btn-add-contact:hover{background:#0066cc0f}.contact-add-form{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:8px 0;align-items:end}.contact-add-form .btn-primary{grid-column:span 4;justify-self:start}.form-input-sm{padding:6px 8px!important;font-size:.8rem!important}.contacts-list{display:flex;flex-direction:column;gap:4px;margin-top:6px}.contact-row{display:flex;align-items:center;gap:10px;padding:6px 10px;background:#00000005;border-radius:6px;font-size:.82rem}.contact-name{font-weight:600;color:#1a1a2e}.contact-role{font-size:.72rem;color:#6366f1;background:#6366f114;padding:1px 8px;border-radius:10px;font-weight:600}.contact-email{font-size:.8rem}.contact-phone{font-size:.8rem;color:#6b7280}.btn-delete-contact{margin-left:auto;background:none;border:none;color:#9ca3af;cursor:pointer;font-size:.75rem;padding:2px 4px}.btn-delete-contact:hover{color:#ef4444}.email-setup-card{padding:16px;background:#f59e0b0f;border:1px solid rgba(245,158,11,.2);border-radius:8px;margin-top:12px}.email-setup-card h4{margin:0 0 8px;font-size:.9rem}.email-setup-card p{font-size:.8rem;color:#6b7280;margin:0 0 10px}.email-setup-steps{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.email-step{display:flex;align-items:flex-start;gap:10px;font-size:.82rem;color:#374151}.email-step-num{width:22px;height:22px;border-radius:50%;background:#06c;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;flex-shrink:0;margin-top:1px}.email-video-link{display:inline-flex;align-items:center;gap:4px;color:#dc2626;font-size:.82rem;font-weight:600;text-decoration:none;transition:opacity .15s}.email-video-link:hover{opacity:.8;text-decoration:underline}.email-connected-inline{padding:0 12px;margin-bottom:8px}.email-setup-form{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.email-setup-form .form-input{flex:1;min-width:180px}.email-connected-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:.78rem;font-weight:600;color:#16a34a;background:#16a34a14;border-radius:6px}.ai-report-block{margin-top:10px}.ai-report-block-title{font-size:.78rem;font-weight:800;color:#374151;margin-bottom:6px}.ai-report-text{color:#1f2937}.ai-report-list{margin:0;padding-left:16px;color:#1f2937}.ai-notes-section{margin-top:14px;padding-top:12px;border-top:1px dashed rgba(0,102,204,.18)}.ai-notes-title{font-size:.78rem;font-weight:800;color:#374151;margin-bottom:6px}.ai-notes-textarea{width:100%;border:1px solid #d1d5db;border-radius:8px;padding:10px 12px;font-size:.85rem;font-family:inherit;resize:vertical;background:#fff;color:#111827;box-sizing:border-box}.ai-notes-textarea:focus{outline:none;border-color:#0066cc80;box-shadow:0 0 0 2px #0066cc1f}[data-theme=dark] .ai-report-loading{background:#1e293b80}[data-theme=dark] .ai-report-loading p{color:#94a3b8}[data-theme=dark] .ai-report-loading .ai-report-loading-sub{color:#64748b}[data-theme=dark] .ai-report-container{background:#1e293b80;border-color:#60a5fa1a}[data-theme=dark] .ai-report-header h4{color:#e2e8f0}[data-theme=dark] .ai-report-meta{color:#64748b}[data-theme=dark] .ai-report-content{color:#cbd5e1}[data-theme=dark] .ai-metric{background:#1e293b59;border-color:#60a5fa1f}[data-theme=dark] .ai-metric-label{color:#94a3b8}[data-theme=dark] .ai-metric-value{color:#e2e8f0}[data-theme=dark] .ai-metric-rationale{color:#94a3b8}[data-theme=dark] .ai-business-summary{color:#cbd5e1;background:#6366f11a;border-left-color:#818cf880}[data-theme=dark] .ai-summary-text{color:#cbd5e1}[data-theme=dark] .ai-expand-btn{color:#60a5fa}[data-theme=dark] .ai-tool-tag{background:#6366f126;color:#a5b4fc;border-color:#6366f140}[data-theme=dark] .ai-horizon-section{border-top-color:#ffffff14}[data-theme=dark] .contact-row{background:#ffffff08}[data-theme=dark] .contact-name{color:#e2e8f0}[data-theme=dark] .contact-role{color:#a5b4fc;background:#6366f126}[data-theme=dark] .btn-add-contact{color:#60a5fa;border-color:#60a5fa4d}[data-theme=dark] .email-setup-card{background:#f59e0b14;border-color:#f59e0b33}[data-theme=dark] .email-setup-card p{color:#94a3b8}[data-theme=dark] .ai-report-block-title,[data-theme=dark] .ai-notes-title{color:#e2e8f0}[data-theme=dark] .ai-report-text,[data-theme=dark] .ai-report-list{color:#cbd5e1}[data-theme=dark] .ai-notes-section{border-top-color:#60a5fa2e}[data-theme=dark] .ai-notes-textarea{background:#1e293b80;border-color:#60a5fa1f;color:#e2e8f0}.client-detail-polished{display:flex;flex-direction:column;gap:16px}.cd-section{padding:0}.cd-section-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;padding-bottom:8px;margin-bottom:10px;border-bottom:1px solid rgba(0,0,0,.06)}.cd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px 16px}.cd-item{display:flex;flex-direction:column;gap:2px}.cd-item-wide{grid-column:1 / -1}.cd-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#9ca3af}.cd-value{font-size:.88rem;color:#1a1a2e;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cd-status{font-weight:700;text-transform:uppercase;font-size:.8rem;letter-spacing:.3px}.cd-link{font-size:.88rem;color:#06c;text-decoration:none;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.cd-link:hover{text-decoration:underline}.cd-mono{font-family:SF Mono,Fira Code,monospace;font-size:.78rem;background:#0000000a;padding:2px 6px;border-radius:4px;color:#4a5568}.cd-badge{font-size:.82rem;font-weight:600;padding:2px 8px;border-radius:6px;display:inline-block;width:fit-content}.cd-badge-yes{color:#00875a;background:#00875a14}.cd-badge-no{color:#9e9e9e;background:#9e9e9e14}.cd-financials{display:flex;gap:12px;flex-wrap:wrap}.cd-fin-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 24px;border-radius:10px;background:#fff9;border:1px solid rgba(0,0,0,.06);box-shadow:0 1px 4px #0000000a;min-width:100px}.cd-fin-label{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:#6b7280}.cd-fin-amount{font-size:1.15rem;font-weight:700}.cd-fin-min .cd-fin-amount{color:#e65100}.cd-fin-avg .cd-fin-amount{color:#06c}.cd-fin-max .cd-fin-amount{color:#00875a}.cd-invoice-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.cd-invoice-row{background:#00000008;border:1px solid rgba(0,0,0,.06);border-radius:8px;padding:10px 12px}.cd-invoice-top{display:flex;align-items:center;gap:8px;font-size:.85rem}.cd-invoice-project{flex:1;font-weight:600;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cd-invoice-amount{font-weight:700;color:#0d6b3b;font-size:.9rem}.cd-invoice-status{font-size:.7rem;font-weight:600;text-transform:uppercase;padding:2px 8px;border-radius:20px}.cd-invoice-status-paid{background:#16a34a1f;color:#16a34a}.cd-invoice-status-pending,.cd-invoice-status-sent{background:#eab3081f;color:#a16207}.cd-invoice-status-overdue{background:#ef44441f;color:#dc2626}.cd-invoice-status-draft{background:#6b72801f;color:#6b7280}.cd-invoice-meta{display:flex;gap:12px;font-size:.75rem;color:#9ca3af;margin-top:4px}.cd-invoice-notes{font-size:.8rem;color:#6b7280;margin-top:4px;padding-top:4px;border-top:1px dashed rgba(0,0,0,.06);white-space:pre-wrap}.cd-invoice-total{display:flex;justify-content:space-between;padding:8px 12px;background:#0d6b3b0f;border-radius:8px;font-weight:700;font-size:.9rem;color:#0d6b3b;margin-top:4px}.dark-mode .cd-invoice-row{background:#ffffff0a;border-color:#ffffff14}.dark-mode .cd-invoice-project{color:#e2e8f0}.dark-mode .cd-invoice-amount{color:#4ade80}.dark-mode .cd-invoice-notes{color:#9ca3af;border-top-color:#ffffff0f}.dark-mode .cd-invoice-total{background:#4ade8014;color:#4ade80}.cd-doc-link{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:#0066cc0f;border:1px solid rgba(0,102,204,.12);border-radius:8px;color:#06c;text-decoration:none;font-size:.85rem;font-weight:500;transition:background .15s;margin-bottom:8px}.cd-doc-link:hover{background:#0066cc1f}.cd-text-block{margin-top:8px}.cd-text-block p{margin:4px 0 0;font-size:.85rem;color:#4a5568;line-height:1.5}.cd-notes{font-size:.85rem;color:#4a5568;line-height:1.6;white-space:pre-wrap;background:#00000005;padding:10px 14px;border-radius:8px;border:1px solid rgba(0,0,0,.04)}.cd-projects-list{display:flex;flex-direction:column;gap:4px}.cd-project-row{display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--bg-secondary, #f8f9fa);border-radius:8px;font-size:.85rem;transition:background .12s}.cd-project-row:hover{background:#0066cc0a}.cd-project-title{flex:1;font-weight:500;color:#1a1a2e}.cd-project-status{font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.3px}.cd-project-type{font-size:.75rem;color:#9ca3af;padding:2px 6px;background:#0000000a;border-radius:4px}.cd-empty-state{padding:40px 20px;text-align:center;color:#9ca3af;font-size:.9rem}[data-theme=dark] .cd-section-title{color:#94a3b8;border-bottom-color:#ffffff0f}[data-theme=dark] .cd-value{color:#e2e8f0}[data-theme=dark] .cd-link{color:#60a5fa}[data-theme=dark] .cd-mono{background:#ffffff0f;color:#94a3b8}[data-theme=dark] .cd-badge-yes{color:#4ade80;background:#4ade801a}[data-theme=dark] .cd-badge-no{color:#64748b;background:#64748b1a}[data-theme=dark] .cd-fin-card{background:#1e293b80;border-color:#60a5fa1a}[data-theme=dark] .cd-fin-label{color:#94a3b8}[data-theme=dark] .cd-doc-link{background:#60a5fa14;border-color:#60a5fa26;color:#60a5fa}[data-theme=dark] .cd-doc-link:hover{background:#60a5fa26}[data-theme=dark] .cd-text-block p{color:#94a3b8}[data-theme=dark] .cd-notes{color:#cbd5e1;background:#ffffff08;border-color:#ffffff0f}[data-theme=dark] .cd-project-row{background:#1e293b66}[data-theme=dark] .cd-project-row:hover{background:#60a5fa0f}[data-theme=dark] .cd-project-title{color:#e2e8f0}[data-theme=dark] .cd-project-type{color:#64748b;background:#ffffff0d}[data-theme=dark] .cd-empty-state{color:#64748b}.meetings-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.meeting-item{border:1px solid rgba(0,0,0,.08);border-radius:8px;overflow:hidden;transition:all .2s}.meeting-item:hover{border-color:#6366f14d}.meeting-item-selected{border-color:#6366f166;background:#6366f108}.meeting-item-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;cursor:pointer;gap:12px}.meeting-item-title{font-size:.85rem;font-weight:500;color:#1e293b;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meeting-item-date{font-size:.75rem;color:#64748b;white-space:nowrap}.meeting-detail{padding:0 14px 14px;border-top:1px solid rgba(0,0,0,.05)}.meeting-detail-row{margin-top:10px}.meeting-detail-label{display:block;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6366f1;margin-bottom:4px}.meeting-summary-text{font-size:.82rem;line-height:1.5;color:#334155;margin:0}.meeting-action-list{list-style:none;padding:0;margin:0}.meeting-action-list li{font-size:.8rem;color:#475569;padding:4px 0 4px 16px;position:relative;line-height:1.4}.meeting-action-list li:before{content:"•";position:absolute;left:4px;color:#6366f1}.meeting-topics{display:flex;flex-wrap:wrap;gap:4px}.ai-chat-container{background:#6366f108;border:1px solid rgba(99,102,241,.12);border-radius:12px;overflow:hidden;margin-top:12px}.ai-chat-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px}.ai-chat-header h4{margin:0;font-size:.95rem;color:#6366f1}.ai-chat-header-actions{display:flex;align-items:center;gap:8px}.ai-chat-body{border-top:1px solid rgba(99,102,241,.1)}.ai-chat-messages{max-height:400px;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:12px}.ai-chat-empty{text-align:center;color:#94a3b8;font-size:.85rem;padding:24px 16px;font-style:italic}.ai-chat-msg{display:flex;gap:8px;align-items:flex-start}.ai-chat-msg-user{flex-direction:row-reverse}.ai-chat-msg-avatar{font-size:1.1rem;flex-shrink:0;margin-top:2px}.ai-chat-msg-content{max-width:85%}.ai-chat-msg-text{padding:8px 12px;border-radius:12px;font-size:.84rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.ai-chat-md{white-space:normal}.ai-chat-md p{margin:0 0 4px}.ai-chat-md ul{margin:4px 0;padding-left:18px}.ai-chat-md li{margin:2px 0}.ai-chat-md strong{font-weight:600}.ai-chat-md code{background:#0000000f;padding:1px 4px;border-radius:3px;font-size:.82em}.ai-chat-md br{display:block;content:"";margin-top:4px}.ai-chat-msg-user .ai-chat-msg-text{background:#6366f1;color:#fff;border-bottom-right-radius:4px}.ai-chat-msg-assistant .ai-chat-msg-text{background:#0000000a;color:#1e293b;border-bottom-left-radius:4px}.ai-chat-msg-time{font-size:.65rem;color:#94a3b8;margin-top:2px;padding:0 4px}.ai-chat-msg-user .ai-chat-msg-time{text-align:right}.ai-chat-typing{display:flex;gap:4px;padding:12px 16px}.ai-chat-typing span{width:6px;height:6px;background:#6366f1;border-radius:50%;animation:chatBounce 1.2s ease-in-out infinite}.ai-chat-typing span:nth-child(2){animation-delay:.2s}.ai-chat-typing span:nth-child(3){animation-delay:.4s}@keyframes chatBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.ai-chat-input-row{display:flex;gap:8px;padding:10px 16px 14px;border-top:1px solid rgba(99,102,241,.08);background:#6366f105}.ai-chat-input{flex:1;border:1px solid rgba(0,0,0,.12);border-radius:8px;padding:8px 12px;font-size:.85rem;outline:none;background:#fff;transition:border-color .2s}.ai-chat-input:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f11a}.ai-chat-send{background:#6366f1;color:#fff;border:none;border-radius:8px;width:38px;height:38px;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.ai-chat-send:hover:not(:disabled){background:#4f46e5}.ai-chat-send:disabled{opacity:.5;cursor:default}[data-theme=dark] .meeting-item{border-color:#ffffff14}[data-theme=dark] .meeting-item:hover{border-color:#6366f166}[data-theme=dark] .meeting-item-selected{background:#6366f114;border-color:#6366f166}[data-theme=dark] .meeting-item-title{color:#e2e8f0}[data-theme=dark] .meeting-item-date{color:#94a3b8}[data-theme=dark] .meeting-detail{border-color:#ffffff0f}[data-theme=dark] .meeting-summary-text{color:#cbd5e1}[data-theme=dark] .meeting-action-list li{color:#94a3b8}[data-theme=dark] .ai-chat-container{background:#6366f10d;border-color:#6366f126}[data-theme=dark] .ai-chat-body{border-color:#6366f11f}[data-theme=dark] .ai-chat-msg-assistant .ai-chat-msg-text{background:#ffffff0f;color:#e2e8f0}[data-theme=dark] .ai-chat-input{background:#1e293bcc;border-color:#ffffff1a;color:#e2e8f0}[data-theme=dark] .ai-chat-input:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}[data-theme=dark] .ai-chat-input-row{border-color:#6366f11a;background:#6366f10a}@media (max-width: 768px){.cd-grid{grid-template-columns:1fr 1fr}.cd-financials{flex-direction:column}.cd-fin-card{flex-direction:row;justify-content:space-between;padding:10px 16px}.cd-project-row{flex-wrap:wrap}}.dark-mode .ai-report-loading{background:#1e293b80}.dark-mode .ai-report-loading p{color:#94a3b8}.dark-mode .ai-report-loading .ai-report-loading-sub{color:#64748b}.dark-mode .ai-report-container{background:#1e293b80;border-color:#60a5fa1a}.dark-mode .ai-report-header h4{color:#e2e8f0}.dark-mode .ai-report-meta{color:#64748b}.dark-mode .ai-report-content{color:#cbd5e1}.dark-mode .ai-metric{background:#1e293b59;border-color:#60a5fa1f}.dark-mode .ai-metric-label{color:#94a3b8}.dark-mode .ai-metric-value{color:#e2e8f0}.dark-mode .ai-metric-rationale{color:#94a3b8}.dark-mode .ai-business-summary{color:#cbd5e1;background:#6366f11a;border-left-color:#818cf880}.dark-mode .ai-summary-text{color:#cbd5e1}.dark-mode .ai-expand-btn{color:#60a5fa}.dark-mode .ai-tool-tag{background:#6366f126;color:#a5b4fc;border-color:#6366f140}.dark-mode .ai-horizon-section{border-top-color:#ffffff14}.dark-mode .contact-row{background:#ffffff08}.dark-mode .contact-name{color:#e2e8f0}.dark-mode .contact-role{color:#a5b4fc;background:#6366f126}.dark-mode .btn-add-contact{color:#60a5fa;border-color:#60a5fa4d}.dark-mode .email-setup-card{background:#f59e0b14;border-color:#f59e0b33}.dark-mode .email-setup-card p{color:#94a3b8}.dark-mode .ai-report-block-title,.dark-mode .ai-notes-title{color:#e2e8f0}.dark-mode .ai-report-text,.dark-mode .ai-report-list{color:#cbd5e1}.dark-mode .ai-notes-section{border-top-color:#60a5fa2e}.dark-mode .ai-notes-textarea{background:#1e293b80;border-color:#60a5fa1f;color:#e2e8f0}.dark-mode .cd-section-title{color:#94a3b8;border-bottom-color:#ffffff0f}.dark-mode .cd-value{color:#e2e8f0}.dark-mode .cd-link{color:#60a5fa}.dark-mode .cd-mono{background:#ffffff0f;color:#94a3b8}.dark-mode .cd-badge-yes{color:#4ade80;background:#4ade801a}.dark-mode .cd-badge-no{color:#64748b;background:#64748b1a}.dark-mode .cd-fin-card{background:#1e293b80;border-color:#60a5fa1a}.dark-mode .cd-fin-label{color:#94a3b8}.dark-mode .cd-doc-link{background:#60a5fa14;border-color:#60a5fa26;color:#60a5fa}.dark-mode .cd-doc-link:hover{background:#60a5fa26}.dark-mode .cd-text-block p{color:#94a3b8}.dark-mode .cd-notes{color:#cbd5e1;background:#ffffff08;border-color:#ffffff0f}.dark-mode .cd-project-row{background:#1e293b66}.dark-mode .cd-project-row:hover{background:#60a5fa0f}.dark-mode .cd-project-title{color:#e2e8f0}.dark-mode .cd-project-type{color:#64748b;background:#ffffff0d}.dark-mode .cd-empty-state{color:#64748b}.dark-mode .meeting-item{border-color:#ffffff14}.dark-mode .meeting-item-selected{border-color:#6366f166;background:#6366f10f}.dark-mode .meeting-item-title{color:#e2e8f0}.dark-mode .meeting-item-date{color:#64748b}.dark-mode .meeting-detail-content{background:#1e293b66;border-color:#60a5fa1a}.dark-mode .meeting-section-title{color:#94a3b8;border-bottom-color:#ffffff0f}.dark-mode .meeting-detail-body{color:#cbd5e1}.dark-mode .participant-item{background:#ffffff0a}.dark-mode .participant-name{color:#e2e8f0}.dark-mode .participant-email{color:#64748b}.dark-mode .onboarding-card{background:#1e293b80;border-color:#60a5fa1a}.dark-mode .onboarding-step-label{color:#94a3b8}.dark-mode .ai-chat-container{background:#1e293b80;border-color:#6366f126}.dark-mode .ai-chat-body{border-color:#6366f11f}.dark-mode .ai-chat-msg-assistant .ai-chat-msg-text{background:#ffffff0f;color:#e2e8f0}.dark-mode .ai-chat-input{background:#1e293bcc;border-color:#ffffff1a;color:#e2e8f0}.dark-mode .ai-chat-input:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.dark-mode .ai-chat-input-row{border-color:#6366f11a;background:#6366f10a}.dev-table-header,.dev-table-row{display:grid;grid-template-columns:28px 1.3fr 1.4fr 1.15fr .7fr .75fr .8fr;align-items:center;gap:0;padding:0 12px}.dev-table-header{background:#f5f7fa;border-bottom:2px solid rgba(0,102,204,.1);padding-top:8px;padding-bottom:8px;position:sticky;top:0;z-index:5}.dev-table-header span{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:#6b7280}.dev-table-row{padding-top:10px;padding-bottom:10px;border-bottom:1px solid rgba(0,0,0,.04);cursor:pointer;transition:background .15s ease}.dev-table-row:hover{background:#0066cc08}.dev-table-row.expanded{background:#0066cc0f;border-bottom-color:transparent}.dv-col-expand{font-size:.65rem;color:#9ca3af;text-align:center;width:28px}.dv-col-name{font-size:.85rem;font-weight:600;color:#1a1a2e;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:8px}.dv-col-name img{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}.dv-col-email,.dv-col-role{font-size:.82rem;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dv-col-rate{font-size:.85rem;font-weight:600;color:#06c}.dv-col-app-pw{font-size:.78rem;font-weight:600}.dv-col-status{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.dev-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px 20px;padding:12px 0}.dev-detail-grid .td-block label{font-size:.68rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px;margin-bottom:2px}.dev-detail-grid .td-block span{font-size:.88rem;color:#374151}.dev-detail-grid .td-block .mono{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.78rem;color:#6b7280;word-break:break-all}.dev-notes-section{margin-top:12px;padding:10px 14px;background:var(--bg-secondary, #f8f9fa);border-radius:8px;border:1px solid rgba(0,0,0,.04)}.dev-notes-section label{font-size:.68rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:4px}.dev-notes-section p{margin:0;font-size:.85rem;color:#374151;white-space:pre-wrap;line-height:1.5}html.dark-mode .dev-table-header,[data-theme=dark] .dev-table-header{background:#1e293b80;border-bottom-color:#60a5fa1f}html.dark-mode .dev-table-header span,[data-theme=dark] .dev-table-header span{color:#94a3b8}html.dark-mode .dev-table-row,[data-theme=dark] .dev-table-row{border-bottom-color:#ffffff0a}html.dark-mode .dev-table-row:hover,[data-theme=dark] .dev-table-row:hover{background:#60a5fa0d}html.dark-mode .dev-table-row.expanded,[data-theme=dark] .dev-table-row.expanded{background:#60a5fa14}html.dark-mode .dv-col-name,[data-theme=dark] .dv-col-name{color:#e2e8f0}html.dark-mode .dv-col-email,html.dark-mode .dv-col-role,[data-theme=dark] .dv-col-email,[data-theme=dark] .dv-col-role{color:#94a3b8}html.dark-mode .dv-col-rate,[data-theme=dark] .dv-col-rate{color:#60a5fa}html.dark-mode .dev-detail-grid .td-block span,[data-theme=dark] .dev-detail-grid .td-block span{color:#e2e8f0}html.dark-mode .dev-notes-section,[data-theme=dark] .dev-notes-section{background:#1e293b80;border-color:#60a5fa1a}html.dark-mode .dev-notes-section p,[data-theme=dark] .dev-notes-section p{color:#cbd5e1}@media (max-width: 1100px){.dev-table-header,.dev-table-row{grid-template-columns:28px 1.2fr 0 1fr .7fr .75fr .8fr}.dv-col-email{display:none}}@media (max-width: 768px){.dev-table-header,.dev-table-row{grid-template-columns:28px 1fr 0 0 0 0 .8fr}.dv-col-email,.dv-col-role,.dv-col-app-pw,.dv-col-rate{display:none}.dev-detail-grid{grid-template-columns:1fr 1fr;gap:12px}}.dev-ai-section{margin-top:16px;padding:16px;background:#0066cc08;border:1px solid rgba(0,102,204,.08);border-radius:10px}.dev-ai-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.dev-ai-header h4{margin:0;font-size:.95rem;font-weight:700;color:#1d1d1f}.dev-ai-actions{display:flex;align-items:center;gap:10px}.dev-ai-date{font-size:.75rem;color:#9ca3af}.dev-ai-scores{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.dev-ai-score-card{padding:12px;border-radius:10px;border:1px solid rgba(0,0,0,.05)}.dev-ai-score-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;color:#6b7280;margin-bottom:4px}.dev-ai-score-value{font-size:1.5rem;font-weight:800;line-height:1.2}.dev-ai-score-max{font-size:.7rem;font-weight:500;opacity:.5}.dev-ai-score-rationale{font-size:.75rem;color:#6b7280;margin-top:6px;line-height:1.4}.dev-ai-summary-text{font-size:.85rem;color:#374151;line-height:1.6;margin-bottom:10px;padding:8px 12px;background:#fff9;border-radius:8px;border:1px solid rgba(0,0,0,.04)}.dev-ai-details-toggle{font-size:.8rem;font-weight:600;color:#06c;cursor:pointer;padding:6px 0;-webkit-user-select:none;user-select:none}.dev-ai-details-toggle:hover{opacity:.8}.dev-ai-details{margin-top:8px}.dev-ai-block{margin-bottom:12px}.dev-ai-block-title{font-size:.82rem;font-weight:700;color:#374151;margin-bottom:6px}.dev-ai-list{margin:0;padding-left:18px;font-size:.82rem;color:#4b5563;line-height:1.7}.dev-ai-highlights{display:flex;flex-direction:column;gap:6px}.dev-ai-highlight{display:flex;gap:8px;font-size:.82rem;padding:6px 10px;background:#ffffff80;border-radius:6px;border:1px solid rgba(0,0,0,.04)}.dev-ai-highlight-client{font-weight:600;color:#06c;white-space:nowrap}.dev-ai-highlight-note{color:#4b5563}html.dark-mode .dev-table-header{background:#1e293b}html.dark-mode .dev-ai-section{background:#60a5fa0a;border-color:#60a5fa1a}html.dark-mode .dev-ai-header h4{color:#f0f0f2}html.dark-mode .dev-ai-summary-text{color:#d1d5db;background:#ffffff0a;border-color:#ffffff0f}html.dark-mode .dev-ai-block-title{color:#d1d5db}html.dark-mode .dev-ai-list{color:#9ca3af}html.dark-mode .dev-ai-highlight{background:#ffffff0a;border-color:#ffffff0f}html.dark-mode .dev-ai-highlight-client{color:#60a5fa}html.dark-mode .dev-ai-highlight-note{color:#9ca3af}html.dark-mode .dev-ai-details-toggle{color:#60a5fa}@media (max-width: 768px){.dev-ai-scores{grid-template-columns:1fr}}.esign-page{min-height:100vh;padding:24px 16px;display:flex;justify-content:center;align-items:flex-start}.esign-card{width:100%;max-width:900px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:20px}.esign-header h2{margin:0 0 6px}.esign-sub{color:#6b7280;font-size:13px}.esign-doc,.esign-sign{margin-top:16px;padding-top:16px;border-top:1px solid rgba(0,0,0,.08)}.esign-label{display:block;font-size:14px;margin-bottom:10px}.esign-input{width:100%;margin-top:6px;padding:10px 12px;border-radius:8px;border:1px solid rgba(0,0,0,.18)}.esign-checkbox{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#374151;margin:12px 0}.esign-btn{width:100%;padding:12px 14px;border-radius:10px;border:none;background:#2563eb;color:#fff;font-weight:700;cursor:pointer}.esign-btn:disabled{opacity:.6;cursor:not-allowed}.esign-error{color:#b91c1c}.esign-complete{margin-top:16px;padding-top:16px;border-top:1px solid rgba(0,0,0,.08)}.esign-badge{display:inline-block;background:#10b9811f;color:#065f46;padding:6px 10px;border-radius:999px;font-weight:700;margin-bottom:10px}.esign-footnote{margin-top:10px;color:#6b7280;font-size:12px}.dev-float-launch{position:fixed;right:20px;bottom:20px;z-index:1050;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.dev-float-btn{display:flex;align-items:center;gap:8px;padding:11px 18px;border-radius:999px;background:linear-gradient(135deg,#4f7cff,#7c4fff);color:#fff;font-size:.9rem;font-weight:600;border:none;cursor:pointer;box-shadow:0 4px 20px #4f7cff73;transition:transform .15s ease,box-shadow .15s ease;white-space:nowrap}.dev-float-btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px #4f7cff8c}.dev-float-chat{position:fixed;right:20px;bottom:20px;width:min(420px,calc(100vw - 40px));max-height:min(620px,calc(100vh - 40px));background:#16181f;border:1px solid #2e3140;border-radius:14px;display:flex;flex-direction:column;overflow:hidden;z-index:1060;box-shadow:0 16px 60px #0000008c}.dev-float-chat-header{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;background:#1e2028;border-bottom:1px solid #2e3140;flex-shrink:0}.dev-float-chat-close{background:transparent;border:1px solid #2e3140;color:#9ba3ba;border-radius:8px;padding:4px 9px;cursor:pointer;font-size:.9rem;line-height:1;transition:background .1s}.dev-float-chat-close:hover{background:#f8717126;color:#f87171;border-color:#f87171}.dev-float-chat-hint{font-size:.76rem;opacity:.6;padding:5px 14px 0;flex-shrink:0;color:#9ba3ba}.dev-float-chat-area{flex:1;overflow-y:auto;overflow-x:hidden;padding:12px 14px;display:flex;flex-direction:column;gap:0;scroll-behavior:smooth}.dev-float-chat-area::-webkit-scrollbar{width:4px}.dev-float-chat-area::-webkit-scrollbar-track{background:transparent}.dev-float-chat-area::-webkit-scrollbar-thumb{background:#2e3140;border-radius:4px}.dev-float-chat-form{display:flex;gap:8px;padding:10px 12px;background:#1e2028;border-top:1px solid #2e3140;flex-shrink:0}.dev-float-chat-input{flex:1;background:#0f1117;border:1px solid #2e3140;border-radius:8px;color:#e8eaf0;font-size:.88rem;padding:8px 11px;outline:none;transition:border-color .15s}.dev-float-chat-input:focus{border-color:#4f7cff}.dev-float-chat-input::placeholder{color:#6b7391}.dev-float-chat-input:disabled{opacity:.6}.dev-float-chat-send{background:#4f7cff;color:#fff;border:none;border-radius:8px;padding:8px 14px;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap}.dev-float-chat-send:hover:not(:disabled){background:#3d6bec}.dev-float-chat-send:disabled{opacity:.45;cursor:default}.dev-float-bubble{padding:8px 11px;border-radius:12px;font-size:.87rem;line-height:1.5;max-width:calc(88% - 34px);border:1px solid rgba(255,255,255,.08)}.dev-float-bubble.user{background:#4f7cff47;border-radius:12px 12px 4px}.dev-float-bubble.assistant{background:#ffffff0f;border-radius:12px 12px 12px 4px}@media (max-width: 480px){.dev-float-chat{right:10px;left:10px;width:auto;bottom:10px}.dev-float-launch{right:12px;bottom:12px}}.portal-login-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 80px);padding:20px}.portal-login-card{background:#ffffffbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.6);border-radius:20px;padding:48px 40px;max-width:420px;width:100%;text-align:center;box-shadow:0 8px 40px #003c781a}.portal-login-logo img{width:64px;height:64px;border-radius:14px;margin-bottom:16px}.portal-login-card h1{font-size:1.6rem;font-weight:700;color:#1a1a2e;margin:0 0 8px}.portal-login-subtitle{color:#6b7280;font-size:.9rem;margin:0 0 24px}.portal-error{background:#dc262614;color:#dc2626;border:1px solid rgba(220,38,38,.2);border-radius:10px;padding:10px 16px;font-size:.85rem;margin-bottom:16px}.portal-login-form{display:flex;flex-direction:column;gap:12px}.portal-email-input{width:100%;padding:14px 16px;border:1px solid rgba(0,102,204,.2);border-radius:12px;font-size:1rem;color:#1a1a2e;background:#fffc;outline:none;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}.portal-email-input:focus{border-color:#06c;box-shadow:0 0 0 4px #0066cc1a}.portal-login-btn{padding:14px;background:#06c;color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s}.portal-login-btn:hover{background:#003d7a}.portal-login-btn:disabled{opacity:.6;cursor:not-allowed}.portal-dashboard{max-width:1200px;margin:0 auto;padding:0 24px}.portal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 0 16px;border-bottom:1px solid rgba(0,102,204,.1);margin-bottom:20px}.portal-header h1{font-size:1.5rem;font-weight:700;color:#1a1a2e;margin:0}.portal-header-meta{display:flex;gap:8px;font-size:.85rem;color:#6b7280;margin-top:4px}.portal-header-actions{display:flex;gap:10px;align-items:center}.portal-logout-btn{padding:8px 16px;background:transparent;color:#6b7280;border:1px solid rgba(0,0,0,.1);border-radius:8px;font-size:.85rem;cursor:pointer;transition:color .15s,border-color .15s}.portal-logout-btn:hover{color:#dc2626;border-color:#dc26264d}.active-clock-banner{display:flex;align-items:center;gap:16px;padding:16px 24px;background:linear-gradient(135deg,#0066cc14,#00bcd40f);border:1px solid rgba(0,102,204,.2);border-radius:14px;margin-bottom:24px;animation:clockPulse 3s ease-in-out infinite}@keyframes clockPulse{0%,to{box-shadow:0 0 #0066cc1a}50%{box-shadow:0 0 20px 4px #0066cc26}}.clock-pulse{width:12px;height:12px;background:#00c853;border-radius:50%;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.clock-info{flex:1;display:flex;flex-direction:column;gap:2px}.clock-label{font-size:.72rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.clock-project{font-size:.95rem;font-weight:600;color:#1a1a2e}.clock-duration{font-size:1.3rem;font-weight:700;color:#06c;font-variant-numeric:tabular-nums}.clock-actions{display:flex;gap:10px;align-items:center}.clock-note-input{padding:8px 14px;border:1px solid rgba(0,102,204,.15);border-radius:8px;background:#fffc;font-size:.85rem;width:200px;outline:none;box-sizing:border-box}.clock-note-input:focus{border-color:#06c}.clock-out-btn{padding:10px 20px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.85rem;cursor:pointer;transition:background .15s}.clock-out-btn:hover{background:#b91c1c}.clock-in-btn{width:100%;padding:10px;background:#06c;color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.88rem;cursor:pointer;margin-top:10px;transition:background .15s}.clock-in-btn:hover{background:#003d7a}.active-session{display:flex;align-items:center;gap:24px;padding:20px 28px;background:linear-gradient(135deg,#0066cc0f,#00c8530a);border:1.5px solid rgba(0,102,204,.2);border-radius:16px;margin-bottom:24px;animation:clockPulse 3s ease-in-out infinite}.session-left{flex:1}.session-status{display:flex;align-items:center;gap:8px;margin-bottom:4px}.session-label{font-size:.68rem;font-weight:700;letter-spacing:1px;color:#00875a;text-transform:uppercase}.session-project{font-size:1.1rem;font-weight:700;color:#1a1a2e;line-height:1.3}.session-client{font-size:.82rem;color:#6b7280;margin-top:2px}.session-timer{text-align:center;min-width:160px}.timer-display{font-size:2rem;font-weight:800;color:#06c;font-variant-numeric:tabular-nums;font-family:SF Mono,Menlo,Monaco,monospace;letter-spacing:1px;line-height:1.2}.timer-earnings{display:none}.session-stop-btn{padding:12px 28px;background:#e67e22;color:#fff;border:none;border-radius:10px;font-weight:700;font-size:.95rem;cursor:pointer;transition:background .15s,transform .1s;white-space:nowrap}.session-stop-btn:hover{background:#cf6d17;transform:scale(1.02)}.session-stop-btn:disabled{opacity:.6;cursor:not-allowed}.project-cards{display:flex;flex-direction:column;gap:10px;margin-bottom:32px}.project-card{border-radius:14px;overflow:hidden;transition:all .15s ease}.project-card.project-active{border-color:#0066cc4d;box-shadow:0 0 0 2px #0066cc14,0 4px 16px #0066cc1a}.project-card-main{display:flex;align-items:center;gap:16px;padding:14px 18px;cursor:pointer}.project-card-info{flex:1;min-width:0}.project-card-title{font-size:.95rem;font-weight:600;color:#1a1a2e;display:flex;align-items:center;gap:8px;line-height:1.3}.active-dot{width:8px;height:8px;background:#00c853;border-radius:50%;flex-shrink:0;animation:pulse 1.5s ease-in-out infinite}.project-card-meta{display:flex;gap:10px;font-size:.78rem;color:#6b7280;margin-top:3px}.project-card-status{font-weight:600;text-transform:uppercase;font-size:.7rem;letter-spacing:.3px}.project-card-status[data-status=Development]{color:#06c}.project-card-status[data-status=Active]{color:#00875a}.project-card-status[data-status="Finishing: Client Walkthrough"]{color:#ffa726}.project-card-stats{display:flex;gap:20px;flex-shrink:0}.project-stat{display:flex;flex-direction:column;align-items:flex-end}.stat-num{font-size:.9rem;font-weight:700;color:#1a1a2e;font-variant-numeric:tabular-nums}.stat-num.earned{color:#059669}.stat-num.rate{color:#06c}.stat-lbl{font-size:.65rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px}.project-card-action{flex-shrink:0}.btn-start{padding:8px 20px;background:#06c;color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.82rem;cursor:pointer;transition:background .15s,transform .1s;white-space:nowrap}.btn-start:hover{background:#003d7a;transform:scale(1.03)}.btn-start:disabled{opacity:.5;cursor:not-allowed}.btn-stop{padding:8px 20px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.82rem;cursor:pointer;transition:background .15s;white-space:nowrap}.btn-stop:hover{background:#b91c1c}.btn-stop:disabled{opacity:.5;cursor:not-allowed}.project-card-detail{padding:12px 18px 14px;border-top:1px solid rgba(0,0,0,.05);margin-top:0}.project-detail-desc{font-size:.85rem;color:#374151;line-height:1.5;margin:0 0 8px}.project-detail-row{display:flex;flex-wrap:wrap;gap:16px;font-size:.82rem;color:#6b7280}.project-detail-earnings{font-size:.88rem;color:#00875a;margin-top:8px}.portal-content{display:flex;flex-direction:column;gap:32px;padding-bottom:40px}.portal-section h2{font-size:1.15rem;font-weight:700;color:#1a1a2e;margin:0 0 12px}.portal-projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.portal-project-card{cursor:pointer;transition:all .15s ease;padding:18px}.portal-project-card:hover{box-shadow:0 4px 20px #003c781f}.portal-project-card.selected{border-color:#0066cc4d;box-shadow:0 4px 24px #0066cc1f}.portal-project-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.portal-project-header h3{font-size:.95rem;font-weight:600;color:#1a1a2e;margin:0;line-height:1.3}.portal-project-status{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.portal-project-meta{display:flex;gap:12px;font-size:.82rem;color:#6b7280;margin-top:6px}.portal-project-detail{margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.06)}.portal-project-desc{font-size:.85rem;color:#374151;line-height:1.5;margin:0 0 8px}.portal-project-dates{display:flex;gap:16px;font-size:.82rem;color:#6b7280}.portal-project-comp{font-size:.9rem;font-weight:600;color:#00875a;margin-top:6px}.time-entries-list{display:flex;flex-direction:column;gap:8px}.time-entry-row{display:flex;align-items:center;gap:16px;padding:12px 16px}.time-entry-left{display:flex;flex-direction:column;gap:2px;min-width:200px}.time-entry-project{font-size:.88rem;font-weight:600;color:#1a1a2e}.time-entry-date{font-size:.78rem;color:#9ca3af;display:flex;align-items:center;gap:6px}.manual-badge{font-size:.68rem;background:#0066cc1a;color:#06c;padding:1px 6px;border-radius:4px;font-weight:600}.time-entry-center{flex:1}.time-entry-notes-input{width:100%;padding:6px 10px;border:1px solid transparent;border-radius:6px;background:transparent;font-size:.85rem;color:#374151;outline:none;transition:border-color .15s,background .15s;box-sizing:border-box}.time-entry-notes-input:hover{background:#0066cc0a;border-color:#0066cc1a}.time-entry-notes-input:focus{background:#fff;border-color:#06c}.time-entry-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:100px}.time-entry-hours{font-size:1rem;font-weight:700;color:#06c;font-variant-numeric:tabular-nums}.time-entry-times{font-size:.75rem;color:#9ca3af}.portal-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.portal-modal{background:#fff;border-radius:16px;padding:32px;width:100%;max-width:420px;box-shadow:0 20px 60px #0003}.portal-modal h2{margin:0 0 20px;font-size:1.2rem;color:#1a1a2e}.portal-form{display:flex;flex-direction:column;gap:14px}.portal-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}@media (max-width: 768px){.portal-header{flex-direction:column;gap:12px}.active-session{flex-direction:column;text-align:center;gap:16px}.session-timer{min-width:auto}.timer-display{font-size:1.6rem}.session-stop-btn{width:100%;min-height:44px;font-size:1rem!important}.project-card-main{flex-wrap:wrap}.project-card-stats{width:100%;justify-content:flex-start;gap:24px}.project-card-stats .project-stat{align-items:flex-start}.project-card-action{width:100%}.project-card-action .btn-start,.project-card-action .btn-stop{width:100%;min-height:44px}.clock-actions{width:100%}.clock-note-input{flex:1}.portal-projects-grid{grid-template-columns:1fr}.time-entry-row{flex-direction:column;align-items:flex-start}.time-entry-right{align-items:flex-start;flex-direction:row;gap:12px}.clock-event-row{flex-wrap:wrap;gap:6px}.clock-event-desc{width:100%}.card-session-bar{flex-direction:column;align-items:stretch;gap:10px;padding:12px}.card-session-left{justify-content:center}.card-session-right{flex-direction:column;align-items:stretch}.card-session-right .session-banner-notes{width:100%!important}.card-session-right .timer-display{text-align:center;font-size:1.5rem}.card-session-right .session-stop-btn{padding:12px 16px!important;font-size:1rem!important}}.session-clock-in-time{font-size:.8rem;color:#0066ccb3;margin-top:2px}.clock-events-section{margin-top:16px;border-top:1px solid rgba(0,0,0,.08);padding-top:12px}.clock-events-section h4{font-size:.85rem;font-weight:700;color:#1a1a2e;margin:0 0 10px;display:flex;align-items:center;gap:8px}.total-hours-badge{background:#0066cc1f;color:#06c;padding:2px 8px;border-radius:10px;font-size:.75rem;font-weight:600}.clock-events-list{display:flex;flex-direction:column;gap:6px}.clock-event-row{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:8px;font-size:.82rem;transition:background .15s}.clock-event-row:hover{background:#0000000a}.clock-event-row.editing{background:#0066cc0f;border:1px solid rgba(0,102,204,.15);padding:12px;flex-direction:column;align-items:stretch}.clock-event-date{min-width:80px;color:#6b7280;display:flex;align-items:center;gap:6px}.clock-event-times{display:flex;align-items:center;gap:6px;min-width:140px;font-family:SF Mono,Menlo,monospace;font-size:.8rem}.clock-in-time{color:#16a34a}.clock-arrow{color:#9ca3af;font-size:.75rem}.clock-out-time{color:#dc2626}.clock-out-time.pending{color:#9ca3af;font-style:italic}.clock-event-edit-btn{background:none;border:1px solid rgba(0,0,0,.12);color:#6b7280;cursor:pointer;font-size:1.05rem;padding:4px 10px;border-radius:6px;transition:all .15s;flex-shrink:0}.clock-event-edit-btn:hover{color:#06c;background:#0066cc14;border-color:#0066cc40}.clock-event-hours{min-width:55px;font-weight:600;color:#1a1a2e;text-align:right;font-family:SF Mono,Menlo,monospace;font-size:.8rem}.clock-event-desc{flex:1;min-width:120px}.clock-desc-text{color:#4b5563;font-size:.8rem}.clock-event-edit-form{display:flex;flex-direction:column;gap:10px;width:100%}.clock-edit-times-row{display:flex;gap:12px}.clock-edit-field{display:flex;flex-direction:column;gap:4px;flex:1}.clock-edit-field label{font-size:.7rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.clock-edit-input{background:#fffc;border:1px solid rgba(0,0,0,.15);border-radius:6px;color:#1a1a2e;padding:7px 10px;font-size:.82rem;font-family:Inter,sans-serif;transition:border-color .15s}.clock-edit-input:focus{outline:none;border-color:#0066cc80}.clock-edit-input.full-width{width:100%}.clock-edit-actions{display:flex;gap:8px;padding-top:4px}.btn-add-manual{width:100%;padding:10px;margin-top:12px;background:#6366f114;border:1.5px dashed rgba(99,102,241,.35);border-radius:10px;color:#6366f1;font-weight:600;font-size:.88rem;cursor:pointer;transition:all .2s}.btn-add-manual:hover{background:#6366f126;border-color:#6366f180}.inline-manual-entry{margin-top:12px;padding:14px;background:#6366f10d;border:1px solid rgba(99,102,241,.2);border-radius:10px}.inline-manual-entry h4{margin:0 0 10px;font-size:.88rem;font-weight:600;color:#4f46e5}.manual-entry-row{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.manual-entry-field{display:flex;flex-direction:column;gap:3px}.manual-entry-field label{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.manual-entry-field.flex-grow{flex:1;min-width:140px}.manual-entry-field .full-width{width:100%}.clock-edit-row{display:flex;align-items:center;gap:6px}.clock-desc-edit{flex:1;background:#fffc;border:1px solid rgba(0,0,0,.15);border-radius:6px;color:#1a1a2e;padding:7px 10px;font-size:.82rem;font-family:Inter,sans-serif;min-width:100px}.btn-save-small{padding:3px 10px;background:#06c;color:#fff;border:none;border-radius:5px;font-size:.75rem;font-weight:600;cursor:pointer;white-space:nowrap}.btn-save-small:hover{background:#0055b3}.btn-cancel-small{padding:3px 8px;background:transparent;color:#6b7280;border:1px solid rgba(0,0,0,.15);border-radius:5px;font-size:.75rem;cursor:pointer}.btn-cancel-small:hover{color:#1a1a2e;border-color:#0000004d}.btn-delete-small{padding:4px 10px;background:transparent;color:#dc2626;border:1px solid rgba(220,38,38,.25);border-radius:5px;font-size:.75rem;font-weight:600;cursor:pointer;margin-left:auto}.btn-delete-small:hover{background:#dc26261a;border-color:#dc262666}.active-badge{display:inline-block;padding:1px 7px;border-radius:8px;font-size:.7rem;font-weight:600;background:#00c85326;color:#00875a;margin-left:4px}.project-status-change{display:flex;align-items:center;gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06)}.project-status-change label{font-size:.8rem;font-weight:600;color:#fff9;white-space:nowrap}.status-select-small{flex:1;max-width:280px;padding:6px 10px!important;font-size:.8rem!important}.project-card-type{background:#0066cc1f;color:#4da3ff;padding:1px 7px;border-radius:8px;font-size:.7rem;font-weight:600}.clock-out-prompt-text{color:#ffffffb3;margin:0 0 16px;font-size:.9rem}.required{color:#dc2626;font-weight:700}.net-profit-display{font-size:1.2rem;font-weight:700;color:#00c853;padding:10px 0;font-family:SF Mono,Menlo,monospace}.toast-container{position:fixed;top:16px;right:16px;z-index:10000;display:flex;flex-direction:column;gap:8px;max-width:380px}.toast{display:flex;align-items:center;gap:10px;padding:12px 18px;border-radius:10px;color:#fff;font-size:.88rem;font-weight:500;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer;animation:toastSlideIn .3s ease-out;box-shadow:0 4px 20px #00000040;line-height:1.4}.toast-error{background:#dc2626eb}.toast-success{background:#00875aeb}.toast-info{background:#0066cceb}.toast-icon{font-size:1.05rem;flex-shrink:0}@keyframes toastSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.btn-complete-toggle{padding:8px 16px;border-radius:8px;font-weight:600;font-size:.82rem;cursor:pointer;transition:all .2s;border:1.5px solid rgba(0,102,204,.3);background:#0066cc14;color:#06c;white-space:nowrap}.btn-complete-toggle:hover{background:#0066cc26;border-color:#0066cc80}.btn-complete-toggle.is-complete{background:#00c85326;border-color:#00c85366;color:#00875a}.btn-complete-toggle.is-complete:hover{background:#00c85340}.fixed-action-group{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:140px}.progress-slider{width:120px;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#0000001a;border-radius:3px;outline:none;cursor:pointer}.progress-slider::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:#06c;border:2px solid white;box-shadow:0 1px 4px #0003;cursor:pointer;transition:transform .15s}.progress-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.progress-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#06c;border:2px solid white;box-shadow:0 1px 4px #0003;cursor:pointer}.session-right{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:200px}.session-banner-notes{width:100%;min-height:70px;padding:8px 12px;border:1px solid rgba(0,102,204,.2);border-radius:8px;background:#fff9;font-size:.82rem;color:#1a1a2e;outline:none;transition:border-color .2s;resize:vertical;font-family:inherit;line-height:1.4}.session-banner-notes:focus{border-color:#0066cc80}.session-banner-notes::placeholder{color:#9ca3af}.session-description-field{margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.06)}.session-description-field label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;display:block}.session-notes-input{width:100%;padding:8px 12px!important;font-size:.85rem!important;border:1px solid rgba(0,102,204,.2)!important;border-radius:8px!important;background:#fffc!important}.session-notes-input:focus{border-color:#0066cc80!important}.project-card-active{border-color:#0066cc4d!important;background:linear-gradient(135deg,#0066cc0a,#00c85305)!important}.card-session-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;background:linear-gradient(135deg,#00c85314,#0066cc0d);border-bottom:1px solid rgba(0,102,204,.1);border-radius:16px 16px 0 0}.card-session-left{display:flex;align-items:center;gap:8px}.card-session-left .session-label{font-size:.68rem;font-weight:700;letter-spacing:1px;color:#00875a;text-transform:uppercase}.notes-mode-badge{font-size:.68rem;color:#6b7280;background:#0000000d;padding:2px 6px;border-radius:4px}.dev-notes-toggle{display:flex;align-items:center;gap:8px;padding:6px 16px;background:#0066cc08;border-bottom:1px solid rgba(0,0,0,.04)}.dev-notes-toggle-label{font-size:.78rem;color:#4a5568;font-weight:500;-webkit-user-select:none;user-select:none}html.dark-mode .dev-notes-toggle{background:#60a5fa0a;border-bottom-color:#ffffff0a}html.dark-mode .dev-notes-toggle-label{color:#94a3b8}.project-wide-note-section{margin-bottom:12px;padding:10px;background:#3b82f60a;border-radius:8px;border:1px solid rgba(59,130,246,.1)}.project-wide-note-label{display:block;font-size:.78rem;font-weight:600;color:#4b5563;margin-bottom:6px}.project-wide-note-textarea{width:100%;min-height:60px;border:1px solid #d1d5db;border-radius:6px;padding:8px 10px;font-size:.85rem;font-family:inherit;resize:vertical;background:#fff;color:#1e293b;transition:border-color .2s;box-sizing:border-box}.project-wide-note-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61f}html.dark-mode .project-wide-note-section{background:#60a5fa0f;border-color:#ffffff0f}html.dark-mode .project-wide-note-label{color:#94a3b8}html.dark-mode .project-wide-note-textarea{background:#1e293b80;border-color:#ffffff1a;color:#e2e8f0}.notes-mode-select{background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:6px;padding:3px 8px;font-size:.72rem;cursor:pointer;color:#64748b;transition:all .15s;white-space:nowrap;outline:none;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.notes-mode-select:hover,.notes-mode-select:focus{border-color:#3b82f64d;color:#3b82f6}html.dark-mode .notes-mode-select{background:#1e293bcc;border-color:#ffffff1f;color:#94a3b8}html.dark-mode .notes-mode-select:hover,html.dark-mode .notes-mode-select:focus{border-color:#60a5fa4d;color:#60a5fa}.project-tasks-section{margin:4px 0}.task-list{display:flex;flex-direction:column;gap:2px;margin:4px 0}.task-item{display:flex;align-items:center;gap:8px;padding:4px 8px;border-radius:6px;background:#00000005;transition:background .15s}.task-item:hover{background:#0000000a}.task-item.task-completed .task-title{text-decoration:line-through;opacity:.5}.task-checkbox{display:flex;align-items:center;cursor:pointer}.task-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#3b82f6;cursor:pointer}.task-title{flex:1;font-size:.85rem;color:#334155}.task-delete-btn{background:none;border:none;color:#94a3b8;font-size:1rem;cursor:pointer;padding:0 4px;line-height:1;border-radius:4px;opacity:0;transition:all .15s}.task-item:hover .task-delete-btn{opacity:1}.task-delete-btn:hover{color:#ef4444;background:#ef444414}.task-add-row{display:flex;gap:4px;margin-top:4px}.task-add-input{flex:1;padding:5px 10px;border:1px solid rgba(0,0,0,.1);border-radius:6px;font-size:.82rem;background:#fff;outline:none;transition:border-color .15s}.task-add-input:focus{border-color:#3b82f6}.task-add-input::placeholder{color:#94a3b8}.task-add-btn{background:#3b82f6;color:#fff;border:none;border-radius:6px;width:30px;height:30px;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.task-add-btn:hover{background:#2563eb}.task-group{margin:4px 0}.task-group-nested{margin:4px 0 0;padding-left:8px;border-left:2px solid rgba(0,0,0,.06)}.task-group-header{display:flex;align-items:center;gap:6px;padding:4px 8px;cursor:pointer;font-size:.8rem;font-weight:600;color:#475569;border-radius:5px;-webkit-user-select:none;user-select:none;transition:background .15s}.task-group-header:hover{background:#0000000a}.task-group-header.completed{color:#16a34a}.task-group-header.invoiced{color:#7c3aed;font-size:.75rem}.task-group-arrow{display:inline-block;font-size:.7rem;transition:transform .15s}.task-group-arrow.collapsed{transform:rotate(-90deg)}.task-group-content{display:flex;flex-direction:column;gap:2px;margin:2px 0}.task-item.task-invoiced{opacity:.55}.task-item.task-invoiced .task-checkbox{pointer-events:none}html.dark-mode .task-group-header{color:#94a3b8}html.dark-mode .task-group-header:hover{background:#ffffff0a}html.dark-mode .task-group-header.completed{color:#4ade80}html.dark-mode .task-group-header.invoiced{color:#a78bfa}html.dark-mode .task-group-nested{border-left-color:#ffffff0f}html.dark-mode .task-item{background:#ffffff08}html.dark-mode .task-item:hover{background:#ffffff0f}html.dark-mode .task-title{color:#e2e8f0}html.dark-mode .task-delete-btn{color:#64748b}html.dark-mode .task-add-input{background:#1e293b80;border-color:#ffffff1a;color:#e2e8f0}html.dark-mode .task-add-input::placeholder{color:#64748b}.session-started{font-size:.75rem;color:#6b7280;margin-left:4px}.card-session-right{display:flex;align-items:center;gap:10px}.card-session-right .timer-display{font-size:1.3rem;font-weight:800;color:#06c;font-variant-numeric:tabular-nums;font-family:SF Mono,Menlo,Monaco,monospace;letter-spacing:1px;min-width:70px;text-align:center}.card-session-right .session-banner-notes{width:320px;min-height:60px;padding:8px 10px;border:1px solid rgba(0,102,204,.2);border-radius:8px;background:#ffffffb3;font-size:.8rem;color:#1a1a2e;outline:none;resize:vertical;font-family:inherit;line-height:1.4}.card-session-right .session-banner-notes:focus{border-color:#0066cc80}.card-session-right .session-stop-btn{padding:6px 16px;font-size:.82rem}@keyframes projectGlow{0%{box-shadow:0 0 #2ecc7100}20%{box-shadow:0 0 18px 4px #2ecc7173}50%{box-shadow:0 0 24px 6px #2ecc7199}80%{box-shadow:0 0 18px 4px #2ecc7173}to{box-shadow:0 0 #2ecc7100}}.project-glow{animation:projectGlow 3s ease-in-out;border-color:#2ecc7180!important}.project-locked{opacity:.85;border-left:4px solid #e74c3c!important}.lock-indicator-dev{display:flex;align-items:center;gap:8px;margin-top:4px;flex-wrap:wrap}.lock-badge-dev{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#e74c3c1f;color:#e74c3c;border-radius:6px;font-size:.72rem;font-weight:600;letter-spacing:.3px}.lock-reason-dev{font-size:.72rem;color:#999;font-style:italic}.locked-action-msg{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;background:#e74c3c1a;color:#e74c3c;border-radius:8px;font-size:.8rem;font-weight:600}.project-card-client{font-size:1.2rem;font-weight:800;color:#0f172a;letter-spacing:-.3px;line-height:1.2;margin-bottom:2px}.hourly-action-group{display:flex;flex-direction:column;align-items:center;gap:6px}.btn-manual-hint{padding:4px 12px;background:transparent;border:1px dashed rgba(99,102,241,.4);border-radius:6px;color:#6366f1;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.btn-manual-hint:hover{background:#6366f11a;border-color:#6366f199}.progress-group{display:flex;align-items:center;gap:8px;width:100%}.progress-label{font-size:.82rem;font-weight:700;color:#06c;min-width:36px;text-align:right;font-variant-numeric:tabular-nums}.status-select-compact{padding:6px 10px;border:1.5px solid rgba(0,102,204,.25);border-radius:8px;background:#0066cc0f;color:#0f172a;font-size:.78rem;font-weight:600;cursor:pointer;outline:none;width:100%;transition:border-color .15s}.status-select-compact:focus{border-color:#0066cc80}.entries-section-label{font-size:.72rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;padding:8px 4px 4px;border-bottom:1px solid rgba(0,0,0,.06);margin-bottom:4px}.older-entries{opacity:.7}.total-hours-badge.total-all{background:#6b72801f;color:#6b7280}html.dark-mode .portal-header{border-bottom-color:#ffffff14}html.dark-mode .portal-header h1{color:#f0f0f2}html.dark-mode .portal-header-meta{color:#b0b0b8}html.dark-mode .project-card-client{color:#f0f0f2}html.dark-mode .project-card-title{color:#e2e8f0}html.dark-mode .project-card-meta{color:#94a3b8}html.dark-mode .project-card-type{background:#60a5fa26;color:#93c5fd}html.dark-mode .stat-num{color:#f0f0f2}html.dark-mode .stat-num.earned{color:#6ee7b7}html.dark-mode .stat-num.rate{color:#93c5fd}html.dark-mode .stat-lbl{color:#94a3b8}html.dark-mode .card-session-bar{background:linear-gradient(135deg,#00c8531a,#60a5fa14);border-bottom-color:#ffffff14}html.dark-mode .card-session-left .session-label{color:#6ee7b7}html.dark-mode .session-started{color:#94a3b8}html.dark-mode .card-session-right .timer-display{color:#93c5fd}html.dark-mode .card-session-right .session-banner-notes{background:#1e1e2acc;border-color:#ffffff1a;color:#f0f0f2}html.dark-mode .project-card-active{background:linear-gradient(135deg,#60a5fa0f,#00c8530a)!important;border-color:#60a5fa40!important}html.dark-mode .portal-logout-btn{color:#94a3b8;border-color:#ffffff1a}html.dark-mode .project-card-detail{border-top-color:#ffffff0f}html.dark-mode .project-detail-desc{color:#cbd5e1}html.dark-mode .project-detail-row{color:#94a3b8}html.dark-mode .clock-events-section{border-top-color:#ffffff0f}html.dark-mode .clock-events-section h4{color:#e2e8f0}html.dark-mode .total-hours-badge{background:#60a5fa26;color:#93c5fd}html.dark-mode .total-hours-badge.total-all{background:#94a3b826;color:#94a3b8}html.dark-mode .entries-section-label{color:#94a3b8;border-bottom-color:#ffffff0f}html.dark-mode .clock-event-row:hover{background:#ffffff0a}html.dark-mode .clock-event-date{color:#94a3b8}html.dark-mode .clock-event-hours{color:#e2e8f0}html.dark-mode .clock-desc-text{color:#94a3b8}html.dark-mode .clock-arrow{color:#64748b}html.dark-mode .clock-in-time{color:#6ee7b7}html.dark-mode .clock-out-time{color:#fca5a5}html.dark-mode .clock-event-edit-btn{color:#94a3b8;border-color:#ffffff1a}html.dark-mode .clock-event-edit-btn:hover{color:#93c5fd;background:#60a5fa1a;border-color:#60a5fa40}html.dark-mode .clock-event-row.editing{background:#60a5fa14;border-color:#60a5fa26}html.dark-mode .clock-edit-input{background:#1e1e2acc;border-color:#ffffff1f;color:#f0f0f2}html.dark-mode .clock-edit-field label{color:#94a3b8}html.dark-mode .btn-add-manual{background:#6366f11f;border-color:#6366f14d;color:#a5b4fc}html.dark-mode .btn-add-manual:hover{background:#6366f133}html.dark-mode .btn-manual-hint{border-color:#6366f14d;color:#a5b4fc}html.dark-mode .btn-manual-hint:hover{background:#6366f126}html.dark-mode .inline-manual-entry{background:#6366f114;border-color:#6366f133}html.dark-mode .inline-manual-entry h4{color:#a5b4fc}html.dark-mode .manual-entry-field label,html.dark-mode .project-status-change label{color:#94a3b8}html.dark-mode .status-select-small,html.dark-mode .status-select-compact{background:#1e1e2acc;border-color:#ffffff1f;color:#f0f0f2}html.dark-mode .status-select-compact option,html.dark-mode .status-select-small option{background:#1a1a24;color:#f0f0f2}html.dark-mode .progress-label{color:#93c5fd}html.dark-mode .progress-slider{background:#ffffff1a}html.dark-mode .session-banner-notes{background:#1e1e2acc;border-color:#ffffff1a;color:#f0f0f2}html.dark-mode .session-banner-notes::placeholder{color:#64748b}html.dark-mode .portal-login-page{background:#0f0f14}html.dark-mode .portal-login-card{background:#1a1a24;border-color:#ffffff14}html.dark-mode .portal-login-card h1{color:#f0f0f2}html.dark-mode .portal-login-card p{color:#94a3b8}html.dark-mode .portal-section h2,html.dark-mode .portal-project-header h3{color:#f0f0f2}html.dark-mode .portal-project-meta{color:#94a3b8}html.dark-mode .portal-project-desc{color:#cbd5e1}html.dark-mode .portal-project-dates{color:#94a3b8}html.dark-mode .time-entry-project{color:#e2e8f0}html.dark-mode .time-entry-date{color:#64748b}html.dark-mode .time-entry-notes-input{color:#cbd5e1}html.dark-mode .time-entry-notes-input:hover{background:#60a5fa0f;border-color:#60a5fa26}html.dark-mode .time-entry-notes-input:focus{background:#1e1e2acc;border-color:#60a5fa}html.dark-mode .portal-modal{background:#1a1a24;color:#f0f0f2}html.dark-mode .lock-badge-dev{background:#e74c3c33}html.dark-mode .lock-reason-dev{color:#888}html.dark-mode .locked-action-msg{background:#e74c3c26}html.dark-mode .clock-note-input{background:#1e1e2acc;border-color:#ffffff1a;color:#f0f0f2}html.dark-mode .clock-project{color:#e2e8f0}html.dark-mode .clock-label{color:#94a3b8}html.dark-mode .manual-badge{background:#60a5fa26;color:#93c5fd}html.dark-mode .active-session,html.dark-mode .active-clock-banner{background:linear-gradient(135deg,#60a5fa14,#00c8530f);border-color:#60a5fa33}html.dark-mode .session-project{color:#e2e8f0}html.dark-mode .session-client{color:#94a3b8}html.dark-mode .timer-display,html.dark-mode .clock-duration{color:#93c5fd}html.dark-mode .clock-desc-edit{background:#1e1e2acc;border-color:#ffffff1f;color:#f0f0f2}.mp-view-switch{display:inline-flex;align-items:center;gap:0;padding:4px;border:1px solid rgba(0,102,204,.15);border-radius:12px;background:#fff9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color .2s}.mp-view-switch:hover{border-color:#0066cc59}.mp-view-label{padding:6px 14px;font-size:.82rem;font-weight:600;color:#9ca3af;border-radius:8px;transition:color .2s,background .2s;white-space:nowrap}.mp-view-label.active{color:#1a1a2e;background:#0066cc14}.mp-view-track{position:relative;width:32px;height:18px;background:#d1d5db;border-radius:9px;flex-shrink:0;transition:background .25s}.mp-view-switch:hover .mp-view-track{background:#b0b8c4}.mp-view-thumb{position:absolute;top:2px;left:2px;width:14px;height:14px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;transition:transform .25s cubic-bezier(.4,0,.2,1)}.mp-view-thumb.right{transform:translate(14px)}.mp-grid-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px;margin:16px 0 24px;align-items:start}.grid-tile{position:relative;width:100%;height:100%;border-radius:16px;padding:16px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;color:#e2e8f0;box-shadow:0 4px 20px #00000040;transition:box-shadow .2s}.grid-tile:hover{box-shadow:0 6px 28px #00000059}.grid-tile-active{box-shadow:0 0 0 2px #00c853,0 6px 24px #00c85340!important}.grid-tile-xs{padding:10px}.grid-tile-xs .grid-tile-title{font-size:.82rem;-webkit-line-clamp:2;margin-bottom:2px}.grid-tile-xs .grid-tile-client{font-size:.68rem}.grid-tile-xs .grid-tile-stats{gap:6px}.grid-tile-xs .grid-tile-stat{font-size:.72rem}.grid-tile-sm .grid-tile-title{font-size:.92rem}.grid-tile-lg{padding:20px}.grid-tile-lg .grid-tile-title{font-size:1.1rem}.grid-tile-color-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;border:none;border-radius:8px;background:#ffffff1a;color:#e2e8f0;font-size:.85rem;cursor:pointer;opacity:0;transition:opacity .2s,background .15s;z-index:5}.grid-tile:hover .grid-tile-color-btn{opacity:1}.grid-tile-color-btn:hover{background:#fff3}.grid-tile-color-picker{position:absolute;top:40px;right:8px;display:flex;flex-wrap:wrap;gap:4px;padding:8px;background:#1a1a2e;border:1px solid rgba(255,255,255,.15);border-radius:12px;box-shadow:0 8px 32px #00000080;z-index:20;max-width:180px}.color-swatch{width:24px;height:24px;border-radius:6px;border:2px solid transparent;cursor:pointer;transition:border-color .15s,transform .1s}.color-swatch:hover{transform:scale(1.15)}.color-swatch.active{border-color:#fff;box-shadow:0 0 0 1px #ffffff80}.grid-tile-active-badge{display:flex;align-items:center;gap:6px;position:absolute;top:10px;left:12px;font-size:.65rem;font-weight:700;letter-spacing:.08em;color:#00c853;text-transform:uppercase}.grid-tile-active-badge .clock-pulse{width:8px;height:8px}.grid-tile-content{flex:1;display:flex;flex-direction:column;cursor:pointer;min-height:0;overflow:hidden;padding-top:4px;gap:4px}.grid-tile-client{font-size:.78rem;color:#fff9;font-weight:600;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grid-tile-title{font-size:1rem;font-weight:700;line-height:1.3;color:#fff;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.grid-tile-stats{display:flex;gap:10px;flex-wrap:wrap}.grid-tile-stat{font-size:.82rem;font-weight:600;color:#ffffffd9}.grid-tile-stat.earned{color:#4ade80}.grid-tile-stat.rate{color:#ffffff8c;font-weight:500;font-size:.75rem}.grid-tile-note{margin-top:auto}.grid-tile-note-input{width:100%;background:#0003;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#e2e8f0;font-size:.78rem;padding:6px 8px;resize:none;outline:none;transition:border-color .2s}.grid-tile-note-input:focus{border-color:#ffffff4d}.grid-tile-note-input::placeholder{color:#ffffff4d}.grid-tile-slider{display:flex;align-items:center;gap:8px;margin-top:4px}.grid-tile-slider .progress-slider{flex:1;height:4px;accent-color:#4ade80}.progress-label-mini{font-size:.72rem;font-weight:600;color:#ffffffb3;min-width:28px}.grid-tile-meta{display:flex;gap:8px;font-size:.72rem}.grid-tile-type{background:#ffffff1f;padding:2px 8px;border-radius:6px;font-weight:600;text-transform:uppercase;font-size:.65rem;letter-spacing:.04em}.grid-tile-status{color:#ffffffb3;font-weight:500}.grid-tile-status[data-status=Development]{color:#60a5fa}.grid-tile-status[data-status=Active]{color:#4ade80}.grid-tile-status[data-status=Complete]{color:#a78bfa}.grid-tile-due{font-size:.72rem;color:#ffffff8c}.grid-tile-actions{display:flex;align-items:center;gap:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.08);min-height:36px;flex-shrink:0}.grid-tile-btn{height:30px;padding:0 10px;border-radius:8px;border:none;font-size:.78rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:all .15s;white-space:nowrap}.grid-tile-btn.clock-in,.grid-tile-btn:not(.stop):not(.manual){background:#00c85333;color:#4ade80}.grid-tile-btn.clock-in:hover,.grid-tile-btn:not(.stop):not(.manual):hover{background:#00c85359}.grid-tile-btn.stop{background:#ef444433;color:#f87171}.grid-tile-btn.stop:hover{background:#ef444459}.grid-tile-btn.manual{background:#ffffff14;color:#ffffffb3;width:30px;padding:0}.grid-tile-btn.manual:hover{background:#ffffff26}.grid-tile-timer{font-family:SF Mono,Fira Code,monospace;font-size:.85rem;font-weight:600;color:#4ade80}.mp-history-section{margin-top:32px;border-top:1px solid rgba(0,0,0,.06);padding-top:8px}.mp-history-header{display:flex;align-items:center;gap:10px;padding:14px 0;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .15s}.mp-history-header:hover{opacity:.85}.mp-history-header h2{font-size:1.1rem;font-weight:700;color:#374151;margin:0}.mp-history-chevron{font-size:.7rem;color:#9ca3af;transition:transform .2s;display:inline-block}.mp-history-chevron.open{transform:rotate(90deg)}.mp-history-count{background:#6b72801f;color:#6b7280;font-size:.75rem;font-weight:600;padding:2px 10px;border-radius:20px}.mp-history-content{padding-bottom:32px}.mp-history-week{margin-bottom:4px}.mp-history-week-header{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#ffffff80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.05);border-radius:10px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.mp-history-week-header:hover{background:#ffffffb8}.mp-history-week-label{font-weight:600;font-size:.88rem;color:#374151;flex:1}.mp-history-week-summary{display:flex;gap:14px;font-size:.8rem;color:#6b7280;font-weight:500}.mp-history-week-summary .earned{color:#059669;font-weight:600}.mp-history-week-projects{padding:6px 0 6px 28px}.mp-history-project-row{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:#fff6;border:1px solid rgba(0,0,0,.04);border-radius:8px;margin-bottom:4px;transition:background .15s}.mp-history-project-row:hover{background:#fff9}.mp-history-project-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.mp-history-project-title{font-weight:600;font-size:.88rem;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mp-history-project-client{font-size:.77rem;color:#6b7280}.mp-history-project-meta{display:flex;align-items:center;gap:12px;font-size:.8rem;color:#6b7280;font-weight:500;flex-shrink:0}.mp-history-project-meta .earned{color:#059669;font-weight:600}.mp-history-project-meta .project-card-type{font-size:.65rem;padding:2px 8px}.mp-history-date{font-size:.75rem;color:#9ca3af}.mp-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.mp-detail-modal{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.6);border-radius:20px;padding:28px 32px;max-width:700px;width:100%;max-height:85vh;overflow-y:auto;position:relative;box-shadow:0 16px 64px #0003}.mp-modal-close{position:absolute;top:16px;right:20px;width:32px;height:32px;border:none;border-radius:8px;background:#0000000f;color:#6b7280;font-size:1.3rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.mp-modal-close:hover{background:#0000001f}.mp-modal-header h2{font-size:1.3rem;font-weight:700;color:#1a1a2e;margin:0 0 4px;padding-right:40px}.mp-modal-client{font-size:.88rem;color:#6b7280;margin-bottom:8px}.mp-modal-badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.mp-modal-stats{display:flex;gap:20px;flex-wrap:wrap;padding:12px 0;border-top:1px solid rgba(0,0,0,.06);border-bottom:1px solid rgba(0,0,0,.06);margin-bottom:12px}.mp-modal-actions{display:flex;gap:12px;align-items:center}.mp-detail-modal .card-session-bar{flex-direction:column;align-items:stretch;gap:12px;padding:14px 16px;border-radius:12px;margin-bottom:12px}.mp-detail-modal .card-session-left{justify-content:flex-start;flex-wrap:wrap;gap:8px}.mp-detail-modal .card-session-right{flex-direction:column;align-items:stretch;gap:8px}.mp-detail-modal .card-session-right .session-banner-notes{width:100%!important;min-height:52px;box-sizing:border-box}.mp-detail-modal .card-session-right .timer-display{text-align:center;font-size:1.6rem}.mp-detail-modal .card-session-right .session-stop-btn{width:100%;padding:10px 16px!important;font-size:.9rem!important;text-align:center}.dark-mode .mp-view-switch{background:#ffffff0f;border-color:#ffffff1a}.dark-mode .mp-view-switch:hover{border-color:#fff3}.dark-mode .mp-view-label{color:#6b7280}.dark-mode .mp-view-label.active{color:#e5e7eb;background:#60a5fa1f}.dark-mode .mp-view-track{background:#4b5563}.dark-mode .mp-view-thumb{background:#e5e7eb}.dark-mode .mp-history-header h2{color:#e5e7eb}.dark-mode .mp-history-count{background:#ffffff14;color:#9ca3af}.dark-mode .mp-history-week-header{background:#ffffff0a;border-color:#ffffff0f}.dark-mode .mp-history-week-header:hover{background:#ffffff14}.dark-mode .mp-history-week-label{color:#e5e7eb}.dark-mode .mp-history-week-summary{color:#9ca3af}.dark-mode .mp-history-project-row{background:#ffffff08;border-color:#ffffff0a}.dark-mode .mp-history-project-row:hover{background:#ffffff0f}.dark-mode .mp-history-project-title{color:#e2e8f0}.dark-mode .mp-history-project-client{color:#9ca3af}.dark-mode .mp-history-section{border-color:#ffffff0f}.dark-mode .mp-detail-modal{background:#1a1a2efa;border-color:#ffffff14}.dark-mode .mp-modal-header h2{color:#f3f4f6}.dark-mode .mp-modal-client{color:#9ca3af}.dark-mode .mp-modal-close{background:#ffffff0f;color:#9ca3af}.dark-mode .mp-modal-close:hover{background:#ffffff1f}.dark-mode .mp-modal-stats{border-color:#ffffff0f}@media (max-width: 640px){.mp-history-project-row{flex-direction:column;align-items:flex-start;gap:6px}.mp-history-project-meta{flex-wrap:wrap}.mp-detail-modal{padding:20px 18px}.mp-modal-stats{gap:12px}.grid-tile{padding:12px}.grid-tile-title{font-size:.88rem}}.grid-card{position:relative;background:#334155;border-radius:16px;padding:18px 16px 14px;display:flex;flex-direction:column;gap:10px;cursor:pointer;color:#e2e8f0;box-shadow:0 4px 20px #0000004d;transition:transform .15s,box-shadow .15s;min-height:220px}.grid-card:hover{transform:translateY(-3px);box-shadow:0 8px 30px #0006}.grid-card-active{box-shadow:0 0 0 2px #00c853,0 6px 24px #00c85333!important}.grid-card-color-btn{position:absolute;top:10px;right:10px;width:28px;height:28px;border:none;border-radius:8px;background:#ffffff1a;color:#e2e8f0;font-size:.82rem;cursor:pointer;opacity:0;transition:opacity .18s,background .15s;z-index:5}.grid-card:hover .grid-card-color-btn{opacity:1}.grid-card-color-btn:hover{background:#ffffff38}.grid-card-color-picker{position:absolute;top:42px;right:8px;display:flex;flex-wrap:wrap;gap:5px;padding:10px;background:#141420;border:1px solid rgba(255,255,255,.12);border-radius:12px;box-shadow:0 8px 32px #0000008c;z-index:20;max-width:200px}.grid-card-header{display:flex;align-items:center;justify-content:space-between;gap:6px;padding-right:30px}.grid-card-client{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#ffffff8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grid-card-status-chip{font-size:.65rem;font-weight:700;padding:2px 8px;border-radius:20px;white-space:nowrap;background:#ffffff1a;color:#fffc;flex-shrink:0}.grid-card-status-chip.status-active{background:#4ade802e;color:#4ade80}.grid-card-status-chip.status-development{background:#60a5fa2e;color:#93c5fd}.grid-card-status-chip.status-finishing--client-walkthrough{background:#fbbf242e;color:#fbbf24}.grid-card-status-chip.status-complete{background:#a78bfa2e;color:#a78bfa}.grid-card-title{font-size:1.05rem;font-weight:700;line-height:1.3;color:#fff;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.grid-card-type-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.grid-card-type-badge{background:#ffffff1f;padding:2px 9px;border-radius:6px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#ffffffd9}.grid-card-rate{font-size:.78rem;font-weight:600;color:#ffffffa6}.grid-card-comp{font-size:.9rem;font-weight:700;color:#4ade80}.grid-card-stats{display:flex;gap:14px;flex-wrap:wrap}.grid-card-stat{display:flex;flex-direction:column;gap:1px}.grid-card-stat-val{font-size:1rem;font-weight:700;color:#fffffff2;line-height:1.1}.grid-card-stat-val.earned{color:#4ade80}.grid-card-stat-lbl{font-size:.65rem;font-weight:500;color:#ffffff73;text-transform:uppercase;letter-spacing:.04em}.grid-card-progress-bar{height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;margin-top:auto}.grid-card-progress-fill{height:100%;background:#a78bfab3;border-radius:2px;transition:width .4s ease}.grid-card-progress-fill.hourly{background:#4ade80a6}.grid-card-live-row{display:flex;align-items:center;gap:8px}.grid-card-live-badge{display:flex;align-items:center;gap:5px;font-size:.65rem;font-weight:700;letter-spacing:.08em;color:#00c853;text-transform:uppercase}.grid-card-timer{font-family:SF Mono,Fira Code,monospace;font-size:.88rem;font-weight:700;color:#4ade80;margin-left:auto}.grid-card-actions{display:flex;align-items:center;gap:8px;padding-top:6px;border-top:1px solid rgba(255,255,255,.07);flex-shrink:0}.grid-card-slider-row{display:flex;align-items:center;gap:6px;width:100%}.grid-card-pct{font-size:.72rem;font-weight:600;color:#fff9;min-width:28px}.progress-slider.grid-slider{flex:1;height:4px;accent-color:#a78bfa}@media (max-width: 480px){.mp-grid-container{grid-template-columns:1fr}}.stripe-mode-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;letter-spacing:.3px}.stripe-mode-badge.test{background:#fef3c7;color:#92400e;border:1px solid #f59e0b33}.stripe-mode-badge.live{background:#d1fae5;color:#065f46;border:1px solid #10b98133}.auto-billing-indicator{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.3px}.auto-billing-indicator.on{background:#10b9811f;color:#059669;border:1px solid rgba(16,185,129,.25)}.auto-billing-indicator.off{background:#6b72801a;color:#6b7280;border:1px solid rgba(107,114,128,.2)}.indicator-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.auto-billing-indicator.on .indicator-dot{background:#10b981;box-shadow:0 0 6px #10b98180;animation:pulse-dot 2s infinite}.auto-billing-indicator.off .indicator-dot{background:#9ca3af}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.billing-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.billing-stat-card{display:flex;align-items:center;gap:14px;padding:18px 20px;background:#fff9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.5);border-radius:14px;box-shadow:0 2px 8px #0000000a}.billing-stat-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0}.billing-stat-icon.paid{background:#d1fae5;color:#059669}.billing-stat-icon.pending{background:#fef3c7;color:#d97706}.billing-stat-icon.failed{background:#fee2e2;color:#dc2626}.billing-stat-icon.info{background:#e0e7ff;color:#4f46e5}.billing-stat-info{display:flex;flex-direction:column;gap:2px}.billing-stat-value{font-size:1.15rem;font-weight:700;color:var(--text-primary)}.billing-stat-label{font-size:.78rem;color:var(--text-muted)}.billing-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border-color, #e5e7eb);margin-bottom:20px}.billing-tab{padding:10px 20px;background:none;border:none;border-bottom:2px solid transparent;font-size:13px;font-weight:500;color:var(--text-muted, #6b7280);cursor:pointer;transition:all .15s ease}.billing-tab:hover{color:var(--text-primary)}.billing-tab.active{color:#06c;border-bottom-color:#06c;font-weight:600}.billing-tab-content{animation:fadeInTab .2s ease}@keyframes fadeInTab{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.billing-status{display:inline-block;padding:3px 10px;border-radius:6px;font-size:11px;font-weight:600;text-transform:capitalize}.billing-status.paid{background:#d1fae5;color:#059669}.billing-status.pending{background:#fef3c7;color:#d97706}.billing-status.failed{background:#fee2e2;color:#dc2626}.billing-status.draft{background:#f3f4f6;color:#6b7280}.billing-status.void{background:#f3f4f6;color:#9ca3af}.billing-last-run{padding:16px 20px;background:#0066cc0a;border:1px solid rgba(0,102,204,.12);border-radius:12px;margin-bottom:20px}.billing-last-run h3{margin:0 0 6px;font-size:13px;font-weight:600;color:var(--text-primary)}.last-run-details{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.last-run-time{font-size:13px;font-weight:500;color:#06c}.last-run-summary{font-size:13px;color:var(--text-secondary)}.billing-alert-card{padding:18px 22px;background:#f59e0b0f;border:1px solid rgba(245,158,11,.2);border-left:3px solid #f59e0b;border-radius:12px;margin-bottom:20px}.billing-alert-card h3{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--text-primary)}.alert-subtitle{margin:0 0 12px;font-size:12px;color:var(--text-muted)}.missing-clients-list{display:flex;flex-direction:column;gap:6px}.missing-client-row{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#fff9;border-radius:8px;font-size:13px}.missing-client-name{font-weight:600;color:var(--text-primary);min-width:140px}.missing-client-company{color:var(--text-secondary);min-width:120px}.missing-client-email{color:var(--text-muted);flex:1}.missing-client-badge{padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600}.missing-client-badge.auto{background:#d1fae5;color:#059669}.missing-client-badge.manual{background:#f3f4f6;color:#6b7280}.billing-section h3{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary)}.billing-runs-list{display:flex;flex-direction:column;gap:8px}.billing-run-card{padding:14px 18px;background:#fff9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.5);border-radius:12px;cursor:pointer;transition:all .15s ease}.billing-run-card:hover{background:#fffc;box-shadow:0 2px 8px #0000000f}.run-card-header{display:flex;justify-content:space-between;align-items:center}.run-card-left,.run-card-right{display:flex;align-items:center;gap:12px}.run-date{font-size:13px;font-weight:500;color:var(--text-primary)}.run-trigger{font-size:11px;color:var(--text-muted);text-transform:capitalize;background:#0000000a;padding:2px 8px;border-radius:4px}.run-stat{font-size:12px;color:var(--text-secondary)}.run-stat.success{color:#059669}.run-stat.fail{color:#dc2626}.run-amount{font-size:14px;font-weight:700;color:var(--text-primary)}.expand-icon{font-size:11px;color:var(--text-muted)}.run-card-details{margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.06);display:flex;flex-direction:column;gap:6px}.run-detail-row{display:flex;align-items:center;gap:12px;padding:6px 10px;border-radius:6px;font-size:13px}.run-detail-row.failed{background:#dc26260a}.detail-project{font-weight:500;color:var(--text-primary);flex:1}.detail-client{color:var(--text-secondary);min-width:120px}.stripe-invoice-link{color:inherit;text-decoration:underline;text-underline-offset:2px;font-weight:600}.stripe-invoice-link:hover{opacity:.85}.detail-amount{font-weight:600;min-width:80px;text-align:right}.detail-error{color:#dc2626;font-size:11px;font-style:italic}.billing-empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}.empty-icon{font-size:48px;margin-bottom:12px}.billing-empty-state h3{margin:0 0 8px;color:var(--text-primary);font-size:16px}.billing-empty-state p{font-size:13px;max-width:400px;margin:0 auto}.btn-small{padding:4px 10px;font-size:11px;font-weight:500;color:#06c;background:#0066cc0f;border:1px solid rgba(0,102,204,.15);border-radius:6px;text-decoration:none;transition:all .15s ease}.btn-small:hover{background:#0066cc1f}.btn-direct-transfer{background:#27ae601a!important;color:#27ae60!important;border-color:#27ae604d!important}.btn-direct-transfer:hover{background:#27ae6033!important}.billing-settings-card{display:flex;flex-direction:column;gap:28px}.settings-section{padding:24px;background:#fff9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.5);border-radius:14px;box-shadow:0 2px 8px #0000000a}.settings-section h3{margin:0 0 6px;font-size:15px;font-weight:700;color:var(--text-primary)}.settings-description{margin:0 0 20px;font-size:13px;color:var(--text-muted);line-height:1.5}.setting-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid rgba(0,0,0,.05)}.setting-row:last-of-type{border-bottom:none}.setting-info label{display:block;font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:2px}.setting-hint{font-size:12px;color:var(--text-muted)}.billing-settings-card .toggle-switch{position:relative;width:68px;height:34px;border-radius:17px;border:none;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;padding:0;flex-shrink:0}.billing-settings-card .toggle-switch.off{background:#d1d5db}.billing-settings-card .toggle-switch.on{background:#10b981}.billing-settings-card .toggle-knob{position:absolute;width:28px;height:28px;border-radius:14px;background:#fff;box-shadow:0 1px 4px #0003;transition:transform .3s ease;top:3px}.billing-settings-card .toggle-switch.off .toggle-knob{transform:translate(3px)}.billing-settings-card .toggle-switch.on .toggle-knob{transform:translate(37px)}.billing-settings-card .toggle-label{font-size:11px;font-weight:700;letter-spacing:.5px;color:#fff;position:absolute}.billing-settings-card .toggle-switch.on .toggle-label{left:9px}.billing-settings-card .toggle-switch.off .toggle-label{right:8px;color:#6b7280}.setting-select{padding:8px 12px;background:var(--bg-white, white);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;font-size:13px;color:var(--text-primary);cursor:pointer;min-width:140px}.setting-select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.save-schedule-btn{margin-top:16px;align-self:flex-start}.billing-flow-diagram{margin-top:16px}.flow-step{display:flex;gap:14px;align-items:flex-start}.flow-step-number{width:30px;height:30px;background:#0066cc1a;color:#06c;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0}.flow-step-content strong{display:block;font-size:13px;color:var(--text-primary);margin-bottom:2px}.flow-step-content p{margin:0;font-size:12px;color:var(--text-muted);line-height:1.4}.flow-connector{text-align:center;color:var(--text-muted);font-size:14px;padding:4px 0 4px 8px}.stripe-connection-info{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px;color:var(--text-secondary)}.stripe-status-dot{width:8px;height:8px;border-radius:50%}.stripe-status-dot.connected{background:#10b981}.stripe-status-dot.disconnected{background:#ef4444}.last-run-info{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:12px;color:var(--text-muted)}.last-run-info label{font-weight:600}@media (max-width: 768px){.billing-stats-row{grid-template-columns:repeat(2,1fr)}.missing-client-row{flex-wrap:wrap}.run-card-header{flex-direction:column;gap:8px;align-items:flex-start}.setting-row{flex-direction:column;align-items:flex-start;gap:10px}}.confirm-modal{text-align:center;max-width:400px!important}.confirm-icon{font-size:36px;margin-bottom:8px}.confirm-description{font-size:13px;color:var(--text-secondary, #6b7280);line-height:1.5;margin:0 0 20px}.test-section{border:1px solid rgba(245,158,11,.2)!important;background:#fef3c726!important}.test-actions{display:flex;gap:10px;margin-bottom:8px}.test-hint{font-size:11px;color:var(--text-muted);margin:0}.test-results{margin-top:16px;padding-top:16px;border-top:1px solid rgba(0,0,0,.06)}.test-results-header{display:flex;gap:12px;margin-bottom:10px}.test-result-stat{font-size:13px;font-weight:600;padding:3px 10px;border-radius:6px}.test-result-stat.success{background:#d1fae5;color:#059669}.test-result-stat.fail{background:#fee2e2;color:#dc2626}.test-results-list{display:flex;flex-direction:column;gap:4px;max-height:300px;overflow-y:auto}.test-result-row{display:flex;align-items:center;gap:12px;padding:6px 10px;border-radius:6px;font-size:12px}.test-result-row.failed{background:#dc26260a}.test-result-name{font-weight:500;color:var(--text-primary);flex:1;min-width:120px}.test-result-id{color:var(--text-muted);font-size:11px}.mono{font-family:SF Mono,Fira Code,monospace;font-size:11px}.sub-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.sub-header-row h3{margin:0;font-size:18px;color:var(--text-primary)}.sub-form-card{margin-bottom:24px;padding:24px}.sub-form-card h4{margin:0 0 16px;color:var(--text-primary);font-size:16px}.sub-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.sub-form-field{display:flex;flex-direction:column;gap:4px}.sub-form-field.full-width{grid-column:1 / -1}.sub-form-field label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.sub-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.sub-list{display:flex;flex-direction:column;gap:12px}.sub-card{padding:16px 20px;cursor:pointer;transition:all .2s;border:1px solid transparent}.sub-card:hover{border-color:#3b82f64d;transform:translateY(-1px)}.sub-card.selected{border-color:#3b82f680;box-shadow:0 0 20px #3b82f61a}.sub-card.inactive{opacity:.65}.sub-card-header{display:flex;justify-content:space-between;align-items:center;gap:16px}.sub-card-left{display:flex;flex-direction:column;gap:2px}.sub-name{font-size:15px;font-weight:600;color:var(--text-primary)}.sub-dev{font-size:13px;color:var(--text-secondary)}.sub-card-right{display:flex;align-items:center;gap:10px}.sub-amount{font-size:18px;font-weight:700;color:var(--accent)}.sub-freq{font-size:12px;font-weight:400;color:var(--text-muted)}.sub-skip-badge{background:#eab30833;color:#eab308;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600}.sub-status-badge{padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600}.sub-status-badge.active{background:#22c55e26;color:#22c55e}.sub-status-badge.paused{background:#94a3b826;color:#94a3b8}.sub-card-meta{display:flex;gap:16px;margin-top:8px;flex-wrap:wrap}.sub-meta-item{font-size:12px;color:var(--text-muted)}.sub-detail{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.06)}.sub-description{font-size:13px;color:var(--text-secondary);margin:0 0 8px}.sub-notes{font-size:12px;color:var(--text-muted);margin:0 0 12px;font-style:italic}.sub-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.btn-outline{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--text-secondary);padding:6px 14px;border-radius:8px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s}.btn-outline:hover{border-color:#3b82f666;color:var(--text-primary);background:#3b82f60d}.btn-danger-outline{background:transparent;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:6px 10px;border-radius:8px;cursor:pointer;font-size:12px;transition:all .2s}.btn-danger-outline:hover{background:#ef44441a;border-color:#ef444480}.sub-pay-notes-row{margin-bottom:16px}.sub-pay-notes-row .form-input{width:100%;box-sizing:border-box}.sub-payments-section h4{margin:0 0 10px;font-size:13px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.sub-payments-list{display:flex;flex-direction:column;gap:4px}.sub-payment-row{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:8px;background:#ffffff05;font-size:13px}.sub-payment-row.skipped{opacity:.6}.sub-pay-period{font-weight:500;color:var(--text-primary);min-width:100px}.sub-pay-amount{font-weight:600;color:var(--accent);min-width:80px}.sub-pay-status{padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;min-width:60px;text-align:center}.sub-pay-status.paid{background:#22c55e26;color:#22c55e}.sub-pay-status.skipped{background:#eab30826;color:#eab308}.sub-pay-status.failed{background:#ef444426;color:#ef4444}.sub-pay-date{color:var(--text-muted);font-size:12px}.sub-pay-notes{color:var(--text-muted);font-size:12px;font-style:italic}.tax-section{margin-top:0}.tax-metric{display:flex;flex-direction:column;gap:2px}.tax-metric-label{font-size:.72rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.tax-metric-value{font-size:1.05rem;font-weight:700;color:#1e293b}@media (max-width: 640px){.tax-section table{font-size:.75rem}.tax-section table th,.tax-section table td{padding:6px 2px!important}}.transfers-summary-bar{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:20px;padding:16px;background:linear-gradient(135deg,#2563eb0a,#2563eb14);border-radius:10px;border:1px solid rgba(37,99,235,.12)}.transfers-summary-item{flex:1;min-width:120px;text-align:center}.transfers-label{display:block;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#64748b;margin-bottom:4px}.transfers-value{display:block;font-size:1.25rem;font-weight:700}.transfers-section{margin-bottom:24px;padding:20px;background:#fff9;border-radius:10px;border:1px solid rgba(0,0,0,.06)}.transfers-section h3{margin:0 0 4px;font-size:1rem}.transfers-section-desc{margin:0 0 12px;font-size:.8rem;color:#64748b}.transfers-table{width:100%;border-collapse:collapse;font-size:.85rem}.transfers-table th{text-align:left;font-weight:600;color:#475569;padding:8px 10px;border-bottom:2px solid #e2e8f0;white-space:nowrap}.transfers-table td{padding:8px 10px;border-bottom:1px solid #f1f5f9}.transfers-table .amount-cell{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}.transfers-table tfoot td{border-top:2px solid #e2e8f0;border-bottom:none}.badge{display:inline-block;padding:2px 8px;border-radius:6px;font-size:.72rem;font-weight:600}.badge-skip{background:#fef3c7;color:#92400e}.badge-warn{background:#fee2e2;color:#991b1b}.empty-state{text-align:center;padding:40px 20px;color:#64748b}.empty-state .empty-icon{font-size:2.5rem;display:block;margin-bottom:8px}.dark-mode .transfers-summary-bar{background:linear-gradient(135deg,#2563eb14,#2563eb24);border-color:#2563eb33}.dark-mode .transfers-section{background:#ffffff08;border-color:#ffffff14}.dark-mode .transfers-table th{color:#94a3b8;border-bottom-color:#ffffff1a}.dark-mode .transfers-table td{border-bottom-color:#ffffff0d}.dark-mode .transfers-table tfoot td{border-top-color:#ffffff1a}.settings-layout{padding:24px 32px;max-width:1200px;margin:0 auto;min-height:calc(100vh - 80px)}.settings-header{margin-bottom:24px}.settings-header h1{font-size:1.75rem;font-weight:700;color:#1a1a2e;margin:0 0 4px}.settings-subtitle{font-size:.9rem;color:#6b7280}.settings-top-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;padding:4px 0;border-bottom:1px solid rgba(0,0,0,.08)}.settings-nav-btn{padding:8px 16px;border-radius:8px;border:1px solid transparent;background:transparent;color:#6b7280;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.settings-nav-btn:hover{background:#6366f114;color:#4f46e5;border-color:#6366f133}.settings-nav-btn.active{background:#6366f11f;color:#4f46e5;border-color:#6366f14d;font-weight:600}.settings-body{display:flex;gap:24px}.dark-mode .settings-header h1{color:#e5e7eb}.dark-mode .settings-subtitle{color:#9ca3af}.dark-mode .settings-top-nav{border-bottom-color:#ffffff14}.dark-mode .settings-nav-btn{color:#9ca3af}.dark-mode .settings-nav-btn:hover{background:#6366f129;color:#c7d2fe;border-color:#6366f14d}.dark-mode .settings-nav-btn.active{background:#6366f138;color:#c7d2fe;border-color:#6366f166}.settings-sync-section{margin-bottom:24px;padding:24px}.settings-sync-section h2{font-size:1.2rem;font-weight:700;color:#1a1a2e;margin:0 0 8px}.sync-description{font-size:.85rem;color:#6b7280;margin:0 0 16px}.sync-buttons,.cloud-links{display:flex;gap:10px;flex-wrap:wrap}.cloud-link{text-decoration:none!important;display:inline-flex;align-items:center;gap:6px}.btn-sync{padding:10px 20px;border:none;border-radius:8px;font-weight:600;font-size:.85rem;cursor:pointer;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;transition:all .2s}.btn-sync:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.btn-sync.secondary{background:linear-gradient(135deg,#ffffffd9,#fff9);color:#374151;border:1px solid rgba(0,0,0,.1)}.btn-sync.secondary:hover:not(:disabled){background:linear-gradient(135deg,#fffffff2,#fffc);box-shadow:0 4px 12px #0000001a}.btn-sync:disabled{opacity:.5;cursor:not-allowed}.sync-status{margin-top:12px;padding:10px 16px;background:#3b82f614;border-radius:8px;color:#2563eb;font-size:.85rem;font-weight:500;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.sync-results{margin-top:16px;padding:16px;background:#00000005;border-radius:8px;border:1px solid rgba(0,0,0,.06)}.sync-results h3{font-size:.9rem;font-weight:600;color:#374151;margin:0 0 8px}.sync-results pre{font-size:.78rem;color:#4b5563;white-space:pre-wrap;word-break:break-word;margin:0;max-height:400px;overflow-y:auto;font-family:SF Mono,Cascadia Code,Fira Code,monospace}.upwork-connected,.upwork-disconnected{margin-top:8px}.upwork-status-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:600;margin-bottom:16px}.upwork-status-badge.connected{background:#10b9811a;color:#059669;border:1px solid rgba(16,185,129,.2)}.upwork-status-badge.disconnected{background:#6b72801a;color:#6b7280;border:1px solid rgba(107,114,128,.2)}.upwork-status-badge .status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.upwork-status-badge.connected .status-dot{background:#10b981;box-shadow:0 0 6px #10b98180}.upwork-status-badge.disconnected .status-dot{background:#9ca3af}.upwork-details{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;padding:12px 16px;background:#00000005;border-radius:8px;border:1px solid rgba(0,0,0,.05)}.upwork-detail{display:flex;gap:12px;font-size:.85rem}.detail-label{color:#6b7280;font-weight:500;min-width:120px}.detail-value{color:#374151;font-weight:500}.detail-value.expired{color:#ef4444}.btn-sync.danger{background:linear-gradient(135deg,#ef4444,#dc2626)}.btn-sync.danger:hover:not(:disabled){box-shadow:0 4px 12px #ef444466}.upwork-connect-info{font-size:.85rem;color:#6b7280;margin:0 0 16px}.upwork-connect-btn{display:inline-flex;align-items:center;text-decoration:none;background:linear-gradient(135deg,#14a800,#108a00)!important}.upwork-connect-btn:hover{box-shadow:0 4px 12px #14a80066!important}.upwork-token-import{margin-top:16px;padding:16px;background:#00000005;border-radius:8px;border:1px solid rgba(0,0,0,.06)}.token-import-help{font-size:.82rem;color:#6b7280;margin:0 0 12px;line-height:1.5}.token-import-help code{background:#0000000f;padding:2px 6px;border-radius:4px;font-size:.8rem}.token-import-form{display:flex;gap:10px;align-items:center}.token-import-form .form-input{flex:1;font-family:SF Mono,Cascadia Code,Fira Code,monospace;font-size:.82rem}.settings-tabs{display:flex;flex-direction:column;gap:4px;min-width:220px;flex-shrink:0}.settings-tab{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border:1px solid transparent;border-radius:10px;background:transparent;font-size:.88rem;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease;text-align:left}.settings-tab:hover{background:#0066cc0a;border-color:#0066cc14}.settings-tab.active{background:#0066cc14;border-color:#06c3;color:#06c;font-weight:600}.tab-count{font-size:.75rem;font-weight:600;background:#0066cc14;color:#06c;padding:2px 8px;border-radius:10px}.settings-tab.active .tab-count{background:#0066cc26}.settings-content{flex:1;min-width:0}.settings-content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.settings-content-header h2{font-size:1.2rem;font-weight:700;color:#1a1a2e;margin:0}.settings-add-form{margin-bottom:16px;padding:16px 20px}.settings-form-row{display:flex;gap:12px;margin-bottom:12px}.settings-form-field{display:flex;flex-direction:column;gap:4px;flex:1}.settings-form-field.wide{flex:2}.settings-form-field label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.3px}.settings-form-actions{display:flex;gap:8px}.settings-options-list{display:flex;flex-direction:column;gap:2px;background:#ffffff8c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.6);border-radius:12px;overflow:hidden;box-shadow:0 2px 12px #003c780f}.settings-option-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(0,0,0,.04);transition:background .1s ease}.settings-option-row:last-child{border-bottom:none}.settings-option-row:hover{background:#0066cc05}.settings-option-row.editing{background:#0066cc0a;padding:14px 16px}.option-order{font-size:.75rem;font-weight:600;color:#9ca3af;min-width:24px;text-align:center}.option-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.option-value{font-size:.92rem;font-weight:600;color:#1a1a2e}.option-desc{font-size:.8rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.option-edit-fields{flex:1;display:flex;gap:8px}.option-edit-fields .form-input{font-size:.88rem}.option-edit-fields .desc-input{flex:2}.option-actions{display:flex;gap:4px;flex-shrink:0}.btn-edit,.btn-delete{background:none;border:none;padding:6px 8px;border-radius:6px;font-size:.85rem;cursor:pointer;transition:background .1s;opacity:.5}.settings-option-row:hover .btn-edit,.settings-option-row:hover .btn-delete{opacity:1}.btn-edit:hover{background:#0066cc14}.btn-delete:hover{background:#dc262614}.btn-save{background:#06c;color:#fff;border:none;padding:6px 14px;border-radius:6px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-save:hover{background:#003d7a}.btn-cancel{background:transparent;color:#6b7280;border:1px solid rgba(0,0,0,.1);padding:6px 14px;border-radius:6px;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-cancel:hover{background:#0000000a}.settings-empty{text-align:center;padding:40px 20px;color:#9ca3af;font-size:.9rem}@media (max-width: 768px){.settings-layout{padding:12px 8px}.settings-header h1{font-size:1.3rem}.settings-top-nav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:6px;padding-bottom:8px;scrollbar-width:none}.settings-top-nav::-webkit-scrollbar{display:none}.settings-nav-btn{padding:8px 12px;font-size:.78rem;flex-shrink:0;min-height:40px}.settings-body{flex-direction:column}.settings-tabs{flex-direction:row;overflow-x:auto;min-width:0;gap:8px;padding-bottom:8px}.settings-tab{white-space:nowrap;padding:8px 14px;font-size:.82rem}.settings-form-row,.option-edit-fields{flex-direction:column}.sync-buttons{flex-direction:column;gap:8px}.btn-sync{width:100%;min-height:44px;font-size:.85rem}.sync-results pre{font-size:.72rem;overflow-x:auto;white-space:pre-wrap;word-break:break-word}}.email-scan-log{margin-top:24px;padding:20px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.email-scan-log .log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.email-scan-log h3{font-size:1.1rem;font-weight:600;color:#1a1a2e;margin:0}.log-entries{display:flex;flex-direction:column;gap:12px;max-height:600px;overflow-y:auto;padding:4px}.log-entry{background:#fff;border-radius:6px;padding:12px;border-left:4px solid #cbd5e1}.log-entry.log-info{border-left-color:#3b82f6;background:#eff6ff}.log-entry.log-batch{border-left-color:#8b5cf6;background:#f5f3ff}.log-entry.log-ai_response{border-left-color:#10b981;background:#f0fdf4}.log-entry.log-subscriptions_found{border-left-color:#059669;background:#d1fae5}.log-entry.log-import_success{border-left-color:#22c55e;background:#dcfce7}.log-entry.log-import_skipped{border-left-color:#f59e0b;background:#fef3c7}.log-entry.log-duplicate{border-left-color:#f97316;background:#ffedd5}.log-entry.log-warning{border-left-color:#eab308;background:#fef9c3}.log-entry.log-error{border-left-color:#ef4444;background:#fee2e2}.log-entry.log-summary{border-left-color:#6366f1;background:#eef2ff;font-weight:500}.log-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.log-type{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#374151}.log-time{font-size:.75rem;color:#6b7280;font-family:Courier New,monospace}.log-message{font-size:.9rem;color:#1f2937;margin-bottom:8px}.log-emails{margin-top:12px;padding:12px;background:#ffffff80;border-radius:4px}.log-emails strong{display:block;margin-bottom:8px;font-size:.85rem;color:#374151}.email-item{padding:10px;margin:8px 0;background:#fff;border:1px solid #e5e7eb;border-radius:4px;font-size:.85rem}.email-item>div{margin:4px 0;color:#4b5563}.email-item strong{color:#1f2937;margin-right:8px}.email-item details{margin-top:8px}.email-item summary{cursor:pointer;color:#3b82f6;font-size:.8rem;padding:4px 0}.email-item summary:hover{color:#2563eb}.email-preview{margin-top:8px;padding:10px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;font-size:.75rem;line-height:1.4;max-height:200px;overflow-y:auto;white-space:pre-wrap;word-wrap:break-word}.ai-response{margin-top:8px;padding:12px;background:#1f2937;color:#10b981;border-radius:4px;font-size:.75rem;line-height:1.5;max-height:300px;overflow-y:auto;white-space:pre-wrap;word-wrap:break-word;font-family:Courier New,monospace}.log-subscriptions{margin-top:12px;display:flex;flex-direction:column;gap:8px}.subscription-item{padding:10px;background:#ffffffb3;border:1px solid #d1d5db;border-radius:4px;font-size:.85rem}.subscription-item strong{color:#059669;font-size:.9rem}.subscription-item .sub-description{margin-top:4px;font-size:.8rem;color:#6b7280;font-style:italic}.ai-settings-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-top:12px}.ai-setting-item{display:flex;flex-direction:column;gap:6px}.ai-setting-label{font-size:.8rem;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.5px}.ai-toggle-row{display:flex;align-items:center;gap:10px;height:38px}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#ffffff26;border-radius:24px;transition:.3s}.toggle-slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.3s}.toggle-switch input:checked+.toggle-slider{background:#16a34a}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.ai-model-costs{margin-top:8px}.ai-cost-table{border:1px solid rgba(255,255,255,.1);border-radius:8px;overflow:hidden}.ai-cost-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:8px;padding:8px 12px;background:#ffffff14;font-size:.75rem;font-weight:600;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}.ai-cost-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:8px;padding:8px 12px;font-size:.82rem;color:#ffffffb3;border-top:1px solid rgba(255,255,255,.06);transition:background .2s}.ai-cost-row.active{background:#6366f11f;color:#c7d2fe;font-weight:500}.ai-tier-badge{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:10px;text-align:center;display:inline-block}.ai-tier-cheapest,.ai-tier-budget{background:#22c55e26;color:#4ade80}.ai-tier-balanced,.ai-tier-standard{background:#3b82f626;color:#60a5fa}.ai-tier-premium{background:#a855f726;color:#c084fc}.ai-run-section{margin-top:16px}.ai-run-btn{background:linear-gradient(135deg,#4f46e5,#7c3aed)!important;border:none!important;font-weight:600!important}.ai-run-btn:hover:not(:disabled){opacity:.9}.ai-progress-bar-wrap{height:6px;background:#ffffff1a;border-radius:4px;margin-top:8px;overflow:hidden}.ai-progress-bar{height:100%;background:linear-gradient(90deg,#4f46e5,#7c3aed);border-radius:4px;transition:width .5s}.ai-job-log{margin-top:16px;border:1px solid rgba(255,255,255,.1);border-radius:8px;overflow:hidden}.ai-job-log .log-header{padding:10px 14px;background:#ffffff0d;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}.ai-job-log .log-header h3{margin:0;font-size:.9rem;color:#ffffffd9}.ai-job-stats{display:flex;gap:12px;flex-wrap:wrap}.ai-stat{font-size:.78rem;color:#ffffff80}.ai-stat-ok{color:#4ade80}.ai-stat-err{color:#f87171}.ai-job-log-entries{max-height:360px;overflow-y:auto;padding:6px 0}.ai-job-log-entries .log-entry{display:grid;grid-template-columns:80px 60px 1fr;gap:8px;padding:4px 14px;font-size:.78rem;color:#fff9;border-bottom:1px solid rgba(255,255,255,.03)}.ai-job-log-entries .log-time{color:#ffffff59}.ai-job-log-entries .log-type{font-weight:600;text-transform:uppercase;font-size:.7rem}.ai-job-log-entries .log-start .log-type{color:#60a5fa}.ai-job-log-entries .log-success .log-type{color:#4ade80}.ai-job-log-entries .log-failed .log-type,.ai-job-log-entries .log-error .log-type{color:#f87171}.ai-job-log-entries .log-complete .log-type{color:#c084fc}.ai-job-log-entries .log-complete .log-message{color:#c084fc;font-weight:500}@media (prefers-color-scheme: light){.ai-setting-label{color:#6b7280}.toggle-slider{background:#d1d5db}.ai-cost-header{background:#0000000a;color:#6b7280}.ai-cost-row{color:#374151;border-top-color:#e5e7eb}.ai-cost-row.active{background:#6366f114;color:#4338ca}.ai-cost-table,.ai-job-log{border-color:#e5e7eb}.ai-job-log .log-header{background:#f9fafb}.ai-job-log .log-header h3{color:#1f2937}.ai-stat{color:#6b7280}.ai-job-log-entries .log-entry{color:#374151;border-bottom-color:#f3f4f6}.ai-job-log-entries .log-time{color:#9ca3af}}.settings-page{padding:24px 32px;max-width:900px;margin:0 auto;min-height:calc(100vh - 80px)}.settings-section{background:var(--card, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:24px;margin-bottom:24px}.settings-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.settings-section-header h2{margin:0;font-size:1.1rem}.settings-section-desc{font-size:.85rem;color:#6b7280;margin:0 0 20px}.settings-field{margin-bottom:16px}.settings-field label{display:block;font-size:.85rem;font-weight:600;margin-bottom:6px;color:#374151}.settings-field .required{color:#ef4444}.settings-input{width:100%;padding:8px 12px;border:1px solid var(--border, #d1d5db);border-radius:8px;font-size:14px;font-family:inherit;background:var(--input-bg, #fff);color:var(--text, #111);box-sizing:border-box;transition:border-color .15s}.settings-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.settings-textarea{resize:vertical;min-height:80px}.settings-hint{display:block;font-size:11px;color:#9ca3af;margin-top:4px}.settings-row{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}.settings-checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}.settings-form{background:var(--bg2, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:20px;margin-bottom:20px}.settings-form h3{margin:0 0 16px;font-size:1rem}.settings-loading{text-align:center;color:#9ca3af;padding:32px 0;font-size:14px}.settings-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;border-radius:8px;padding:10px 14px;margin-bottom:16px;font-size:14px}.settings-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a;border-radius:8px;padding:10px 14px;margin-bottom:16px;font-size:14px}.settings-info-box{background:var(--bg2, #f9fafb);border-left:4px solid #6366f1;border-radius:0 8px 8px 0;padding:16px 18px;font-size:14px;line-height:1.6;color:#374151}.settings-info-box p{margin:0 0 10px}.settings-info-box p:last-child{margin:0}.service-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.service-card{background:var(--bg, #fff);border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:16px 18px;transition:box-shadow .15s}.service-card:hover{box-shadow:0 2px 10px #00000014}.service-inactive{opacity:.6}.service-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;flex-wrap:wrap;gap:8px}.service-card-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.service-name{font-weight:700;font-size:15px}.service-badge-inactive{background:#fef3c7;color:#92400e;border:1px solid #fde68a;border-radius:20px;padding:1px 8px;font-size:11px;font-weight:600}.service-order{color:#9ca3af;font-size:12px}.service-card-actions{display:flex;gap:8px;flex-wrap:wrap}.service-desc{color:#374151;font-size:13px;line-height:1.55;margin:0 0 6px}.service-examples{color:#6b7280;font-size:12px;margin:0}.btn-sync.danger{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.btn-sync.danger:hover{background:#fee2e2}@media (prefers-color-scheme: dark){.settings-page{--card: #1e2030}.settings-section{background:#1e2030;border-color:#2d3148}.settings-form{background:#161827;border-color:#2d3148}.settings-input{background:#1a1d2e;border-color:#2d3148;color:#e5e7ef}.settings-info-box{background:#161827;color:#c5c8d8}.service-card{background:#1a1d2e;border-color:#2d3148}.service-desc{color:#c5c8d8}.service-examples{color:#7b83a6}.settings-field label{color:#b4bacc}.settings-hint{color:#7b83a6}}.dark-mode .settings-page{--card: #1e2030}.dark-mode .settings-section{background:#1e2030;border-color:#2d3148}.dark-mode .settings-form{background:#161827;border-color:#2d3148}.dark-mode .settings-input{background:#1a1d2e;border-color:#2d3148;color:#e5e7ef}.dark-mode .settings-info-box{background:#161827;color:#c5c8d8}.dark-mode .service-card{background:#1a1d2e;border-color:#2d3148}.dark-mode .service-desc{color:#c5c8d8}.dark-mode .service-examples{color:#7b83a6}.dark-mode .settings-field label{color:#b4bacc}.dark-mode .settings-hint{color:#7b83a6}.settings-layout .settings-page{max-width:100%;padding:0;min-height:auto}@media (max-width: 640px){.settings-top-nav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:8px}.settings-nav-btn{padding:8px 12px;font-size:.82rem}.settings-section{padding:16px}.service-card{padding:14px}}.stripe-mode-section{margin-bottom:24px}.stripe-mode-section h3,.stripe-key-section h3,.stripe-status-section h3,.stripe-env-section h3{font-size:1rem;margin:0 0 10px;color:#333}.dark-mode .stripe-mode-section h3,.dark-mode .stripe-key-section h3,.dark-mode .stripe-status-section h3,.dark-mode .stripe-env-section h3{color:#e0e0e0}.stripe-mode-toggle{display:flex;gap:12px;margin-bottom:12px}.stripe-mode-btn{flex:1;padding:14px 20px;border:2px solid #ddd;border-radius:10px;background:#f8f8f8;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;opacity:.6}.stripe-mode-btn:hover{opacity:.85}.stripe-mode-btn.active{opacity:1}.stripe-mode-btn.active.test{border-color:#22c55e;background:#f0fdf4;color:#166534;box-shadow:0 0 0 3px #22c55e26}.stripe-mode-btn.active.live{border-color:#ef4444;background:#fef2f2;color:#991b1b;box-shadow:0 0 0 3px #ef444426}.dark-mode .stripe-mode-btn{background:#1e293b;border-color:#475569;color:#94a3b8}.dark-mode .stripe-mode-btn.active.test{border-color:#22c55e;background:#052e16;color:#86efac}.dark-mode .stripe-mode-btn.active.live{border-color:#ef4444;background:#450a0a;color:#fca5a5}.stripe-live-warning{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:12px 16px;color:#991b1b;font-weight:500;margin-bottom:16px}.dark-mode .stripe-live-warning{background:#450a0a;border-color:#7f1d1d;color:#fca5a5}.stripe-test-info{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:12px 16px;color:#166534;font-weight:500;margin-bottom:16px}.dark-mode .stripe-test-info{background:#052e16;border-color:#166534;color:#86efac}.stripe-status-section{margin-bottom:24px}.stripe-status-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.stripe-status-item{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:8px;background:#f9fafb;border:1px solid #e5e7eb}.dark-mode .stripe-status-item{background:#1e293b;border-color:#334155}.stripe-status-label{font-size:.8rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.dark-mode .stripe-status-label{color:#9ca3af}.stripe-status-value{font-weight:600;font-family:SF Mono,monospace;font-size:.9rem}.stripe-status-badge{font-weight:600;font-size:.85rem}.stripe-status-badge.connected{color:#22c55e}.stripe-status-badge.disconnected{color:#ef4444}.stripe-status-badge.test{color:#22c55e}.stripe-status-badge.live{color:#ef4444}.stripe-key-section{margin-bottom:24px;padding:16px;border-radius:10px;background:#f9fafb;border:1px solid #e5e7eb}.dark-mode .stripe-key-section{background:#1e293b;border-color:#334155}.stripe-key-current{font-size:.85rem;color:#6b7280;margin:0 0 10px}.stripe-key-current code{background:#e5e7eb;padding:2px 6px;border-radius:4px;font-family:SF Mono,monospace;font-size:.85rem}.dark-mode .stripe-key-current{color:#9ca3af}.dark-mode .stripe-key-current code{background:#334155;color:#e2e8f0}.stripe-key-input-row{display:flex;gap:10px;align-items:center}.stripe-key-input{flex:1;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-family:SF Mono,monospace;font-size:.9rem;background:#fff}.dark-mode .stripe-key-input{background:#0f172a;border-color:#475569;color:#e2e8f0}.stripe-key-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.key-set-badge{font-size:.8rem;color:#22c55e;font-weight:500}.key-not-set-badge{font-size:.8rem;color:#9ca3af;font-weight:500}.stripe-env-section{margin-bottom:8px;padding:14px;border-radius:8px;background:#f0f4ff;border:1px solid #c7d2fe}.dark-mode .stripe-env-section{background:#1e1b4b;border-color:#3730a3}.stripe-env-info{font-size:.88rem;margin:0;color:#4338ca}.dark-mode .stripe-env-info{color:#a5b4fc}.stripe-env-info code{background:#e0e7ff;padding:1px 5px;border-radius:3px;font-size:.85rem}.dark-mode .stripe-env-info code{background:#312e81}@media (max-width: 640px){.stripe-mode-toggle,.stripe-key-input-row{flex-direction:column}.stripe-key-input-row .btn-sync{width:100%}.stripe-status-grid{grid-template-columns:1fr}}.audit-layout{display:flex;flex-direction:column;gap:16px}.audit-header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.audit-header h1{margin:0 0 4px;font-size:1.4rem;color:#1a1a2e}.audit-subtitle{margin:0;font-size:.85rem;color:#6b7280}.audit-actions{display:flex;gap:8px;align-items:center}.audit-search{min-width:260px;padding:8px 12px;border-radius:10px;border:1px solid rgba(0,0,0,.08);background:#ffffffb3}.audit-summary{display:flex;gap:16px;font-size:.82rem;color:#6b7280}.audit-table{border:1px solid rgba(0,102,204,.1);border-radius:12px;overflow:hidden;background:#fff9}.audit-row{display:grid;grid-template-columns:170px 160px 170px 180px 1fr;gap:8px;padding:10px 12px;border-bottom:1px solid rgba(0,0,0,.05);font-size:.82rem;color:#374151}.audit-header-row{background:#0066cc0f;font-weight:600;text-transform:uppercase;letter-spacing:.3px;font-size:.7rem;color:#6b7280}.audit-details{font-family:Consolas,Courier New,monospace;font-size:.74rem;color:#4b5563;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audit-empty{padding:16px;text-align:center;color:#9ca3af;font-size:.85rem}[data-theme=dark] .audit-header h1{color:#e2e8f0}[data-theme=dark] .audit-subtitle,[data-theme=dark] .audit-summary{color:#94a3b8}[data-theme=dark] .audit-search{background:#0f172a99;border-color:#94a3b833;color:#e2e8f0}[data-theme=dark] .audit-table{background:#0f172a80;border-color:#60a5fa26}[data-theme=dark] .audit-row{border-bottom-color:#ffffff0d;color:#cbd5e1}[data-theme=dark] .audit-header-row{background:#60a5fa14;color:#94a3b8}@media (max-width: 1100px){.audit-row{grid-template-columns:140px 140px 140px 1fr}.audit-row span:nth-child(4){display:none}}@media (max-width: 768px){.audit-header{flex-direction:column;align-items:flex-start}.audit-actions{width:100%}.audit-search{flex:1;min-width:0}.audit-row{grid-template-columns:140px 1fr}.audit-row span:nth-child(3),.audit-row span:nth-child(4),.audit-row span:nth-child(5){display:none}}.activity-layout{padding:24px 32px;max-width:1200px;margin:0 auto}.activity-tabs{display:flex;gap:4px;margin-bottom:24px;border-bottom:2px solid var(--border, #e5e7eb);padding-bottom:0}.activity-tab{padding:10px 20px;border:none;background:none;font-size:.92rem;font-weight:500;color:var(--text-muted, #6b7280);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s}.activity-tab:hover{color:var(--text-primary, #111)}.activity-tab.active{color:#2563eb;border-bottom-color:#2563eb;font-weight:600}.activity-section{margin-bottom:32px}.activity-section-title{font-size:1.25rem;font-weight:600;display:flex;align-items:center;gap:8px;margin-bottom:12px}.pulse-dot{width:10px;height:10px;border-radius:50%;background:#22c55e;display:inline-block;animation:pulse-ring 1.5s ease-in-out infinite}@keyframes pulse-ring{0%{box-shadow:0 0 #22c55e80}70%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}.online-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.online-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--card-bg, #fff);border:1px solid var(--border, #e5e7eb);border-radius:10px;transition:box-shadow .2s,border-color .2s,background .2s;position:relative;-webkit-user-select:none;user-select:none}.online-card:hover{box-shadow:0 2px 12px #00000014;cursor:pointer}.online-card-selected{border-color:#3b82f6;background:#3b82f60f;box-shadow:0 0 0 2px #3b82f633}.online-check{position:absolute;top:6px;right:8px;font-size:.75rem;color:#3b82f6;font-weight:700}.dev-filter-clear{margin-left:12px;font-size:.75rem;padding:2px 10px;border:1px solid #3b82f6;border-radius:12px;background:transparent;color:#3b82f6;cursor:pointer;font-weight:500}.dev-filter-clear:hover{background:#3b82f6;color:#fff}.online-avatar{width:40px;height:40px;border-radius:50%;border:2.5px solid;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;background:var(--bg-subtle, #f3f4f6);flex-shrink:0}.online-info{display:flex;flex-direction:column;min-width:0}.online-name{font-weight:600;font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.online-role{font-size:.75rem;text-transform:capitalize;font-weight:500}.online-meta{margin-left:auto;text-align:right;display:flex;flex-direction:column;gap:2px;flex-shrink:0}.online-page{font-size:.8rem;color:var(--text-muted, #6b7280);font-weight:500}.online-time{font-size:.72rem;color:var(--text-dimmed, #9ca3af)}.activity-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:8px}.activity-filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.activity-filter{padding:6px 10px;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.85rem;background:var(--card-bg, #fff);color:inherit;min-width:120px}.activity-filter:focus{outline:2px solid #3b82f6;outline-offset:-1px}.activity-refresh{width:34px;height:34px;border-radius:6px;border:1px solid var(--border, #d1d5db);background:var(--card-bg, #fff);font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.activity-refresh:hover{background:var(--bg-subtle, #f3f4f6)}.activity-summary{display:flex;gap:16px;font-size:.82rem;color:var(--text-muted, #6b7280);margin-bottom:8px}.activity-table{border:1px solid var(--border, #e5e7eb);border-radius:10px;overflow:hidden}.activity-row{display:grid;grid-template-columns:100px 160px 130px 120px 1fr;padding:10px 16px;align-items:center;gap:8px;border-bottom:1px solid var(--border, #f0f0f0);font-size:.85rem}.activity-row:last-child{border-bottom:none}.activity-header-row{background:var(--bg-subtle, #f9fafb);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.3px;color:var(--text-muted, #6b7280)}.col-time{display:flex;flex-direction:column}.time-date{font-size:.72rem;color:var(--text-dimmed, #9ca3af)}.time-clock{font-size:.85rem;font-variant-numeric:tabular-nums}.col-user{display:flex;flex-direction:column;min-width:0}.user-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:.72rem;text-transform:capitalize;font-weight:500}.col-details{color:var(--text-muted, #6b7280);font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.78rem;font-weight:500;background:var(--bg-subtle, #f3f4f6)}.action-session-started{background:#dbeafe;color:#1d4ed8}.action-navigated{background:#f3f4f6;color:#6b7280}.action-clocked-in{background:#dcfce7;color:#16a34a}.action-clocked-out{background:#fef3c7;color:#d97706}.action-created{background:#dbeafe;color:#2563eb}.action-updated{background:#e0e7ff;color:#4338ca}.action-deleted{background:#fee2e2;color:#dc2626}.activity-empty{color:var(--text-muted, #6b7280);font-size:.9rem;padding:16px 0}.activity-empty-row{text-align:center;padding:24px;color:var(--text-muted, #9ca3af)}.dark-mode .online-card{background:var(--card-bg, #1f2937);border-color:var(--border, #374151)}.dark-mode .online-card-selected{border-color:#3b82f6;background:#3b82f61f}.dark-mode .activity-table{border-color:var(--border, #374151)}.dark-mode .activity-header-row{background:var(--bg-subtle, #1e293b)}.dark-mode .activity-row{border-bottom-color:var(--border, #374151)}.dark-mode .activity-filter,.dark-mode .activity-refresh{background:var(--card-bg, #1f2937);border-color:var(--border, #374151)}.dark-mode .activity-tab{color:var(--text-muted, #9ca3af)}.dark-mode .activity-tab.active{color:#60a5fa;border-bottom-color:#60a5fa}.dark-mode .syslog-card{background:var(--card-bg, #1f2937);border-color:var(--border, #374151)}.dark-mode .syslog-card:hover{border-color:#4b5563}.dark-mode .syslog-details{background:#111827;border-color:var(--border, #374151)}.syslog-list{display:flex;flex-direction:column;gap:6px}.syslog-card{background:var(--card-bg, #fff);border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:12px 16px;cursor:pointer;transition:border-color .15s,box-shadow .15s}.syslog-card:hover{border-color:#93c5fd;box-shadow:0 1px 6px #2563eb0f}.syslog-card.expanded{border-color:#3b82f6}.syslog-row{display:flex;align-items:flex-start;gap:12px}.syslog-icon{font-size:1.3rem;flex-shrink:0;margin-top:1px}.syslog-main{flex:1;min-width:0}.syslog-title-row{display:flex;align-items:center;gap:8px;margin-bottom:2px}.syslog-event{font-weight:600;font-size:.9rem}.syslog-status{display:inline-block;padding:1px 8px;border-radius:4px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.syslog-status-success{background:#dcfce7;color:#16a34a}.syslog-status-error{background:#fee2e2;color:#dc2626}.syslog-status-partial{background:#fef3c7;color:#d97706}.syslog-status-skipped{background:#f3f4f6;color:#6b7280}.syslog-status-pending{background:#dbeafe;color:#2563eb}.syslog-status-default{background:#f3f4f6;color:#6b7280}.syslog-summary{font-size:.82rem;color:var(--text-muted, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.syslog-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0;min-width:90px}.syslog-source{font-size:.72rem;color:var(--text-dimmed, #9ca3af);font-weight:500;text-transform:uppercase;letter-spacing:.3px}.syslog-time{display:flex;flex-direction:column;align-items:flex-end}.syslog-details{margin-top:10px;padding:10px 12px;background:var(--bg-subtle, #f9fafb);border-radius:6px;border:1px solid var(--border, #e5e7eb);overflow:auto;max-height:300px}.syslog-details pre{font-size:.78rem;font-family:Menlo,Consolas,Monaco,monospace;margin:0;white-space:pre-wrap;word-break:break-word;color:var(--text-primary, #111)}.syslog-no-details{font-size:.82rem;color:var(--text-muted, #9ca3af);font-style:italic}@media (max-width: 768px){.activity-layout{padding:16px 12px}.activity-tabs{gap:0}.activity-tab{flex:1;text-align:center;font-size:.82rem;padding:8px 10px}.activity-header{flex-direction:column;align-items:stretch}.activity-filters{flex-wrap:wrap;gap:6px}.activity-filter{min-width:0;flex:1 1 100px;font-size:.8rem;padding:5px 8px}.activity-row{grid-template-columns:70px 1fr auto;font-size:.8rem;padding:8px 10px;gap:6px}.activity-header-row{font-size:.7rem}.col-details,.col-page{display:none}.online-grid{grid-template-columns:1fr}.activity-section-title{font-size:1.05rem}.syslog-row{flex-wrap:wrap;gap:8px}.syslog-meta{flex-direction:row;align-items:center;gap:8px;width:100%;min-width:0;justify-content:space-between;margin-top:4px}.syslog-summary{white-space:normal}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f1117;--bg1: #16181f;--bg2: #1e2028;--bg3: #252830;--border: #2e3140;--border-light: #383d50;--text: #e8eaf0;--text2: #9ba3ba;--text3: #6b7391;--accent: #4f7cff;--accent-hover: #3d6bec;--accent-dim: rgba(79,124,255,.15);--green: #34d399;--green-dim: rgba(52,211,153,.15);--amber: #fbbf24;--amber-dim: rgba(251,191,36,.15);--red: #f87171;--red-dim: rgba(248,113,113,.15);--purple: #a78bfa;--purple-dim: rgba(167,139,250,.15);--sidebar-w: 220px;--topbar-h: 56px;--radius: 8px;--radius-lg: 12px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.p-root{min-height:100vh;background:var(--bg);color:var(--text)}.p-login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(ellipse at 50% 0%,rgba(79,124,255,.12) 0%,transparent 70%),var(--bg)}.p-login-box{width:100%;max-width:420px;background:var(--bg1);border:1px solid var(--border);border-radius:var(--radius-lg);padding:40px;box-shadow:0 24px 64px #00000080}.p-login-brand{display:flex;align-items:center;gap:12px;margin-bottom:32px}.p-login-brand img{width:40px;height:40px;border-radius:8px}.p-login-brand-name{font-size:15px;font-weight:700;color:var(--text)}.p-login-brand-sub{font-size:12px;color:var(--text3);margin-top:1px}.p-login-heading{font-size:22px;font-weight:700;margin-bottom:8px}.p-login-sub{font-size:14px;color:var(--text2);margin-bottom:24px;line-height:1.5}.p-em{color:var(--text)}.p-form{display:flex;flex-direction:column;gap:16px}.p-field{display:flex;flex-direction:column;gap:6px}.p-field label{font-size:13px;font-weight:500;color:var(--text2)}.p-input{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:14px;padding:10px 12px;width:100%;outline:none;transition:border-color .15s}.p-input:focus{border-color:var(--accent)}.p-input::placeholder{color:var(--text3)}.p-otp-input{font-size:28px;font-weight:700;letter-spacing:8px;text-align:center;padding:12px}.p-google-btn-wrap{display:flex;justify-content:center;margin:20px 0 12px;min-height:44px}.p-btn-primary{background:var(--accent);color:#fff;border:none;border-radius:var(--radius);font-size:14px;font-weight:600;padding:11px 20px;cursor:pointer;width:100%;transition:background .15s,opacity .15s}.p-btn-primary:hover:not(:disabled){background:var(--accent-hover)}.p-btn-primary:disabled{opacity:.5;cursor:not-allowed}.p-btn-ghost{background:none;border:none;color:var(--text3);font-size:13px;cursor:pointer;padding:6px 0;margin-top:4px;text-align:left;transition:color .15s}.p-btn-ghost:hover{color:var(--text)}.p-error{background:var(--red-dim);border:1px solid rgba(248,113,113,.3);border-radius:var(--radius);color:var(--red);font-size:13px;padding:10px 12px}.p-success{background:var(--green-dim);border:1px solid rgba(52,211,153,.3);border-radius:var(--radius);color:var(--green);font-size:13px;padding:10px 12px;margin-bottom:16px}.p-admin-banner{display:flex;align-items:center;gap:12px;padding:8px 20px;background:#1e3a8a;color:#fff;font-size:13px;flex-wrap:wrap}.p-admin-banner-label{font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:11px;background:#fff;color:#1e3a8a;padding:2px 8px;border-radius:4px;white-space:nowrap}.p-admin-select{flex:1;min-width:220px;max-width:480px;padding:5px 10px;border-radius:6px;border:none;background:#ffffff26;color:#fff;font-size:13px;cursor:pointer}.p-admin-select option{color:#111;background:#fff}.p-admin-banner-viewing{color:#bfdbfe;font-size:12px;white-space:nowrap}.p-admin-banner-viewing strong{color:#fff}.p-topbar{position:sticky;top:0;z-index:100;background:var(--bg1);border-bottom:1px solid var(--border);height:var(--topbar-h)}.p-topbar-inner{display:flex;align-items:center;height:var(--topbar-h);padding:0 20px;gap:16px;max-width:900px;margin:0 auto;width:100%}.p-topbar-brand{display:flex;align-items:center;gap:8px;flex-shrink:0}.p-topbar-brand img{width:26px;height:26px;border-radius:5px}.p-topbar-brand span{font-size:14px;font-weight:700;white-space:nowrap;color:var(--text)}.p-topnav{display:flex;align-items:center;justify-content:center;gap:2px;flex:1;overflow-x:auto;scrollbar-width:none}.p-topnav::-webkit-scrollbar{display:none}.p-topnav-btn{background:none;border:none;color:var(--text2);font-size:13px;font-weight:500;padding:6px 12px;border-radius:6px;cursor:pointer;white-space:nowrap;transition:color .15s,background .15s}.p-topnav-btn:hover{color:var(--text);background:var(--bg2)}.p-topnav-btn.active{color:var(--accent);background:var(--accent-dim)}.p-topbar-right{display:flex;align-items:center;gap:12px;flex-shrink:0;margin-left:auto}.p-topbar-user{font-size:13px;color:var(--text2);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.p-logout{background:none;border:1px solid var(--border);border-radius:6px;color:var(--text2);font-size:12px;padding:5px 10px;cursor:pointer;transition:color .15s,border-color .15s;white-space:nowrap}.p-logout:hover{color:var(--text);border-color:var(--border-light)}.p-hamburger{display:none;background:none;border:1px solid var(--border);border-radius:6px;color:var(--text2);font-size:16px;padding:4px 8px;cursor:pointer}.p-mobile-nav{display:flex;flex-direction:column;background:var(--bg1);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:8px 0}.p-mobile-nav-btn{display:flex;align-items:center;gap:10px;background:none;border:none;color:var(--text2);font-size:14px;padding:10px 20px;cursor:pointer;text-align:left;transition:color .15s,background .15s}.p-mobile-nav-btn:hover{color:var(--text);background:var(--bg2)}.p-mobile-nav-btn.active{color:var(--accent)}.p-body{display:flex;min-height:calc(100vh - var(--topbar-h))}.p-sidebar{display:none!important}.p-main{flex:1;min-width:0;padding:32px;overflow-y:auto;display:flex;flex-direction:column;align-items:center}.p-sidebar-client{display:flex;align-items:center;gap:10px;padding:0 16px 20px;border-bottom:1px solid var(--border);margin-bottom:12px}.p-sidebar-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#fff;flex-shrink:0}.p-sidebar-name{font-size:13px;font-weight:600;color:var(--text);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.p-sidebar-email{font-size:11px;color:var(--text3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.p-sidenav{display:flex;flex-direction:column;padding:0 8px;flex:1;gap:2px}.p-sidenav-btn{display:flex;align-items:center;gap:10px;background:none;border:none;color:var(--text2);font-size:13px;font-weight:500;padding:8px 12px;border-radius:var(--radius);cursor:pointer;text-align:left;transition:color .15s,background .15s;width:100%}.p-sidenav-btn:hover{color:var(--text);background:var(--bg2)}.p-sidenav-btn.active{color:var(--accent);background:var(--accent-dim)}.p-sidenav-icon{font-size:15px;flex-shrink:0}.p-badge{margin-left:auto;background:var(--amber);color:#000;font-size:10px;font-weight:700;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.p-sidebar-footer{padding:12px 8px;border-top:1px solid var(--border);margin-top:auto}.p-section{max-width:900px;width:100%}.p-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px;flex-wrap:wrap}.p-section-head h2{font-size:22px;font-weight:700;margin-bottom:4px}.p-section-head p{font-size:14px;color:var(--text2)}.p-stats-row{display:flex;gap:12px;flex-shrink:0}.p-stat{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:10px 16px;text-align:center;min-width:72px}.p-stat-warn .p-stat-num{color:var(--amber)}.p-stat-num{font-size:20px;font-weight:700;line-height:1;color:var(--text)}.p-stat-lbl{font-size:11px;color:var(--text3);margin-top:3px;text-transform:uppercase;letter-spacing:.5px}.p-table-section{margin-bottom:28px}.p-table-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--text3);margin-bottom:8px}.p-table{background:var(--bg1);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.p-table-head{display:grid;grid-template-columns:3fr 1fr 1.2fr 1fr;gap:0;padding:10px 16px;background:var(--bg2);border-bottom:1px solid var(--border);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:var(--text3)}.p-table-section:has(.p-invoice-amount) .p-table-head,.p-table-section:has(.p-invoice-amount) .p-table-row{grid-template-columns:1fr 3fr 1fr 1fr .5fr}.p-table-row{display:grid;grid-template-columns:3fr 1fr 1.2fr 1fr;gap:0;padding:13px 16px;align-items:center;border-bottom:1px solid var(--border);transition:background .12s}.p-table-row:last-child{border-bottom:none}.p-table-row:hover{background:var(--bg2)}.p-row-dim{opacity:.65}.p-row-dim:hover{opacity:1}.p-table-main{display:flex;flex-direction:column;gap:3px;min-width:0}.p-project-name{font-size:14px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.p-project-desc{font-size:12px;color:var(--text3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.p-muted{font-size:13px;color:var(--text3)}.p-invoice-amount{font-size:14px;font-weight:600;color:var(--text)}.p-status{display:inline-block;font-size:11px;font-weight:600;padding:3px 8px;border-radius:20px;text-transform:capitalize;white-space:nowrap}.status-active{background:var(--green-dim);color:var(--green)}.status-done{background:#3b82f626;color:#60a5fa}.status-paused,.status-pending{background:var(--amber-dim);color:var(--amber)}.status-overdue{background:var(--red-dim);color:var(--red)}.status-other{background:var(--bg3);color:var(--text2)}.p-link-btn{font-size:12px;color:var(--accent);text-decoration:none;font-weight:500;padding:4px 8px;border-radius:5px;background:var(--accent-dim);transition:background .15s;white-space:nowrap}.p-link-btn:hover{background:#4f7cff40}.p-inline-link{color:var(--accent);text-decoration:underline}.p-card{background:var(--bg1);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px 28px;margin-bottom:20px}.p-card-icon{font-size:28px;margin-bottom:12px}.p-card h3{font-size:16px;font-weight:700;margin-bottom:8px}.p-card-body{font-size:14px;color:var(--text2);line-height:1.6;margin-bottom:16px}.p-card-note{font-size:12px;color:var(--text3);margin-top:10px}.p-tax-content{font-size:14px;color:var(--text2);line-height:1.7}.p-tax-content p{margin-bottom:12px}.p-tax-content strong{color:var(--text)}.p-callout{background:var(--accent-dim);border:1px solid rgba(79,124,255,.25);border-radius:var(--radius);padding:14px 16px;margin:16px 0;color:var(--text2);line-height:1.6}.p-callout strong{color:var(--text)}.p-tax-link{display:inline-flex;align-items:center;gap:6px;color:var(--accent);text-decoration:none;font-weight:600;font-size:14px;padding:10px 16px;background:var(--accent-dim);border-radius:var(--radius);transition:background .15s}.p-tax-link:hover{background:#4f7cff40}.p-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.p-profile-field{display:flex;flex-direction:column;gap:6px}.p-profile-field label{font-size:12px;font-weight:500;color:var(--text3);text-transform:uppercase;letter-spacing:.4px}.p-profile-val{font-size:14px;color:var(--text);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.p-profile-val.muted{color:var(--text3)}.p-locked-badge{font-size:10px;background:var(--bg3);color:var(--text3);padding:2px 7px;border-radius:10px}.p-form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.p-loading{display:flex;align-items:center;gap:10px;color:var(--text3);font-size:14px;padding:40px 0}.p-spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.p-empty{text-align:center;padding:60px 20px;color:var(--text3)}.p-empty-icon{font-size:36px;margin-bottom:12px}.p-empty p{font-size:14px}@media (max-width: 900px){.p-topnav,.p-hamburger,.p-mobile-nav,.p-topbar-user,.p-logout{display:none}.p-topbar{height:auto}.p-topbar-inner{flex-wrap:wrap}.p-main{padding:20px 16px 84px}.p-profile-grid{grid-template-columns:1fr}.p-stats-row{flex-direction:row;flex-wrap:wrap}.p-stat{min-width:64px}.p-table-head,.p-table-row{grid-template-columns:2fr 1fr 1fr}.p-table-head span:nth-child(3),.p-table-row>div:nth-child(3){display:none}.p-bottom-tabs{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--bg1);border-top:1px solid var(--border);z-index:200;padding-bottom:env(safe-area-inset-bottom,0px)}.p-bottom-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px;background:none;border:none;color:var(--text3);font-size:10px;font-weight:500;cursor:pointer;transition:color .15s;position:relative}.p-bottom-tab .p-bottom-tab-icon{font-size:20px;line-height:1}.p-bottom-tab.active{color:var(--accent)}.p-bottom-tab .p-bottom-badge{position:absolute;top:6px;right:calc(50% - 16px);background:var(--amber);color:#000;font-size:9px;font-weight:700;padding:1px 4px;border-radius:8px;min-width:15px;text-align:center}}.p-bottom-tabs{display:none}@media (max-width: 560px){.p-login-box{padding:28px 20px}.p-table-head{display:none}.p-table-row{grid-template-columns:1fr!important;gap:6px}.p-table-row>div:nth-child(n){display:block!important}.p-section-head{flex-direction:column}}.p-project-card{background:var(--bg2);border:1px solid var(--border);border-radius:10px;margin-bottom:10px;overflow:hidden;transition:box-shadow .15s}.p-project-card:hover{box-shadow:0 2px 12px #0000002e}.p-row-dim .p-project-card{opacity:.72}.p-project-card-header{display:flex;align-items:center;gap:14px;padding:14px 16px;cursor:pointer;-webkit-user-select:none;user-select:none}.p-project-card-header:hover{background:var(--bg3)}.p-dev-photo{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid var(--border)}.p-dev-photo-placeholder{width:40px;height:40px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0}.p-project-card-info{flex:1;min-width:0}.p-project-card-name{font-weight:600;font-size:14px;margin-bottom:2px}.p-project-card-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:4px}.p-email-badge{display:inline-block;background:#4f7cff26;color:var(--accent);border:1px solid rgba(79,124,255,.3);border-radius:20px;padding:1px 9px;font-size:11px;font-weight:600;cursor:default}.p-project-card-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.p-chevron{color:var(--muted);font-size:14px;transition:transform .2s;display:inline-block}.p-chevron.open{transform:rotate(-180deg)}.p-project-expanded{border-top:1px solid var(--border);padding:16px 18px 18px;background:var(--bg)}.p-activity-section{margin-bottom:20px}.p-activity-section:last-child{margin-bottom:0}.p-activity-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);margin-bottom:10px}.p-activity-row{display:grid;grid-template-columns:160px 80px 1fr;gap:8px;align-items:start;padding:8px 0;border-bottom:1px solid var(--border);font-size:13px}.p-activity-row:last-child{border-bottom:none}.p-activity-week{color:var(--text)}.p-activity-hours{font-weight:600;color:var(--accent)}.p-activity-note{color:var(--muted);font-size:12px;line-height:1.5;margin-bottom:2px}.p-empty-sm{color:var(--muted);font-size:13px;font-style:italic;padding:8px 0}.p-meeting-row{padding:10px 0;border-bottom:1px solid var(--border);font-size:13px}.p-meeting-row:last-child{border-bottom:none}.p-meeting-header{display:flex;align-items:center;gap:12px;margin-bottom:4px}.p-meeting-title{font-weight:600}.p-meeting-summary{color:var(--muted);font-size:12px;line-height:1.55}.p-discussions{margin-bottom:14px}.p-discussion-item{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:10px 12px;margin-bottom:8px;font-size:13px}.p-discussion-author{font-weight:600;font-size:12px;margin-bottom:4px}.p-discussion-content{line-height:1.55}.p-discussion-textarea{width:100%;resize:vertical;font-family:inherit;font-size:13px}.p-ai-block{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:20px}.p-ai-block-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.p-ai-block-header h3{margin:0;font-size:16px}.p-ai-sub{font-size:13px;color:var(--muted);margin-bottom:16px}.p-rec-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.p-rec-card{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:10px;overflow:hidden}.p-rec-priority-bar{width:5px;flex-shrink:0}.p-rec-body{padding:14px;flex:1}.p-rec-priority-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px}.p-rec-title{font-weight:700;font-size:14px;margin-bottom:4px}.p-rec-service{font-size:11px;color:var(--muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.p-rec-desc{font-size:13px;color:var(--muted);line-height:1.55}.p-chat-area{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:14px;min-height:220px;max-height:420px;overflow-y:auto;margin-bottom:12px;display:flex;flex-direction:column;gap:10px}.p-chat-empty{color:var(--muted);font-size:13px;font-style:italic;margin:auto;text-align:center;padding:20px}.p-chat-msg{display:flex}.p-chat-msg.user{justify-content:flex-end}.p-chat-msg.model{justify-content:flex-start}.p-chat-bubble{max-width:78%;padding:9px 13px;border-radius:16px;font-size:13px;line-height:1.55;white-space:pre-wrap}.p-chat-msg.user .p-chat-bubble{background:var(--accent);color:#fff;border-bottom-right-radius:4px}.p-chat-msg.model .p-chat-bubble{background:var(--bg2);border:1px solid var(--border);border-bottom-left-radius:4px}.p-chat-typing{display:flex;align-items:center;gap:5px;padding:12px 16px}.p-chat-typing span{width:8px;height:8px;border-radius:50%;background:var(--muted);display:inline-block;animation:dot-bounce 1.2s infinite ease-in-out}.p-chat-typing span:nth-child(2){animation-delay:.2s}.p-chat-typing span:nth-child(3){animation-delay:.4s}@keyframes dot-bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}.p-chat-form{display:flex;gap:10px}.p-chat-input{flex:1}.p-chat-send{flex-shrink:0;width:auto!important;padding:0 20px}.p-float-chat-launch{position:fixed;right:16px;bottom:16px;z-index:50}.p-float-chat-btn{border-radius:999px;border:1px solid var(--border);background:var(--bg2);color:var(--text);display:inline-flex;align-items:center;gap:10px;padding:12px 16px;font-size:14px;font-weight:700;cursor:pointer}.p-float-chat-btn-icon{font-size:18px;line-height:1}.p-float-chat-btn-text{line-height:1}.p-float-chat-btn:hover{opacity:.9}.p-float-attn{animation:p-wobble .75s ease-in-out 3}@keyframes p-wobble{0%{transform:translate(0) rotate(0)}20%{transform:translate(-2px) rotate(-2deg)}40%{transform:translate(3px) rotate(2deg)}60%{transform:translate(-3px) rotate(-2deg)}80%{transform:translate(2px) rotate(1deg)}to{transform:translate(0) rotate(0)}}.p-float-joke{max-width:260px;margin-bottom:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:12.5px;line-height:1.35;box-shadow:0 4px 16px #0000001a}.p-float-chat{position:fixed;right:16px;bottom:16px;width:min(420px,calc(100vw - 32px));max-height:min(640px,calc(100vh - 32px));background:var(--bg);border:1px solid var(--border);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;z-index:60}.p-float-chat-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--bg2);border-bottom:1px solid var(--border)}.p-float-chat-title{font-size:13px;font-weight:700;color:var(--text)}.p-float-chat-close{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;padding:6px 10px;cursor:pointer}.p-float-chat-area{min-height:220px;max-height:420px}.p-float-chat-form{padding:10px 12px;border-top:1px solid var(--border);background:var(--bg)}@media (max-width: 640px){.p-float-chat{right:10px;left:10px;width:auto;bottom:10px;max-height:calc(100vh - 20px)}.p-float-chat-btn{padding:12px 14px}.p-float-chat-launch{right:12px;bottom:12px}}.p-photo-card{display:flex!important;align-items:center!important;gap:20px!important;flex-wrap:wrap!important}.p-profile-photo{width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid var(--border);flex-shrink:0}.p-profile-photo-placeholder{width:80px;height:80px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;flex-shrink:0}.p-photo-info{flex:1}.p-photo-label{font-weight:600;margin-bottom:4px}.p-btn-danger{color:#ef4444!important}.p-btn-danger:hover{background:#ef444414!important;border-color:#ef44444d!important}.p-sidebar-avatar-img{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid var(--border)}@media (max-width: 640px){.p-activity-row{grid-template-columns:1fr 60px}.p-activity-row .p-activity-notes{grid-column:1 / -1}.p-rec-grid{grid-template-columns:1fr}.p-chat-bubble{max-width:90%}}.p-project-billing{display:flex;flex-direction:column;align-items:flex-end;gap:2px;margin-right:8px}.p-project-hours{font-size:.78rem;color:var(--text-muted);white-space:nowrap}.p-project-cost{font-size:.82rem;font-weight:600;color:#16a34a;white-space:nowrap}.p-project-cost.no-bill{color:var(--text-muted);font-weight:400;font-style:italic}.p-tax-year-list{margin-top:16px}.p-tax-year-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--border)}.p-tax-year-row:last-of-type{border-bottom:none}.p-tax-year-label{flex:1;display:flex;align-items:center;gap:10px}.p-tax-year-num{font-size:1rem;font-weight:700;color:var(--text-primary)}.p-tax-year-total{font-size:1rem;font-weight:700;color:#16a34a;min-width:100px;text-align:right}.p-tax-download-all{margin-top:12px;text-align:right}.p-inline-link-btn{background:none;border:none;padding:0;color:var(--primary);text-decoration:underline;cursor:pointer;font-size:inherit;font-family:inherit}.p-inline-link-btn:hover{opacity:.75}.p-chat-input input,.p-chat-input textarea,.p-chat-form input,.p-chat-form textarea,.p-ai-block input,.p-ai-block textarea{background:var(--bg2)!important;color:var(--text)!important;border-color:var(--border)!important}.p-chat-input input::placeholder,.p-chat-form input::placeholder,.p-ai-block input::placeholder{color:var(--muted)!important;opacity:1}.p-chat-md{font-size:.9rem;line-height:1.55}.p-chat-md p{margin:4px 0}.p-chat-md strong{font-weight:700}.p-chat-md em{font-style:italic}.p-chat-md code{background:#00000014;border-radius:3px;padding:1px 4px;font-size:.85em;font-family:monospace}.p-chat-md ul{padding-left:18px;margin:6px 0}.p-chat-md li{margin-bottom:2px}.p-chat-md h2,.p-chat-md h3,.p-chat-md h4{font-weight:700;margin:8px 0 4px}.intake-form-container{max-width:600px;margin:0 auto;padding:32px 24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1f2937}.intake-header{text-align:center;margin-bottom:28px}.intake-logo{width:56px;height:56px;border-radius:12px;margin-bottom:12px}.intake-header h1{font-size:1.6rem;font-weight:800;margin:0 0 6px;color:#111827}.intake-header p{font-size:.92rem;color:#6b7280;margin:0}.intake-form{display:flex;flex-direction:column;gap:16px}.intake-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 500px){.intake-row{grid-template-columns:1fr}}.intake-field{display:flex;flex-direction:column;gap:4px}.intake-field.full{width:100%}.intake-field label{font-size:.82rem;font-weight:600;color:#374151}.intake-field .req{color:#ef4444}.intake-field input,.intake-field select,.intake-field textarea{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;background:#fff;color:#1f2937;transition:border-color .15s,box-shadow .15s;font-family:inherit}.intake-field input:focus,.intake-field select:focus,.intake-field textarea:focus{outline:none;border-color:#f97316;box-shadow:0 0 0 3px #f973161f}.intake-field textarea{resize:vertical;min-height:80px}.intake-error{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b;padding:10px 14px;border-radius:8px;font-size:.85rem;font-weight:500}.intake-submit{padding:14px;background:#f97316;color:#fff;font-size:1rem;font-weight:700;border:none;border-radius:10px;cursor:pointer;transition:background .15s,transform .1s;margin-top:4px}.intake-submit:hover{background:#ea580c}.intake-submit:active{transform:scale(.98)}.intake-submit:disabled{opacity:.6;cursor:not-allowed}.intake-privacy{font-size:.72rem;color:#9ca3af;text-align:center;margin-top:8px}.intake-privacy a{color:#9ca3af;text-decoration:underline}.intake-success{text-align:center;padding:60px 24px}.intake-success-icon{width:64px;height:64px;border-radius:50%;background:#d1fae5;color:#059669;font-size:2rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.intake-success h2{font-size:1.5rem;font-weight:800;margin:0 0 8px;color:#111827}.intake-success p{color:#6b7280;font-size:.95rem;margin:0}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;min-height:-webkit-fill-available;cursor:default;padding-top:env(safe-area-inset-top,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}*{cursor:default}input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input[type=url],input[type=tel],input[type=date],textarea,[contenteditable=true]{cursor:text}a,button,select,label[class*=toggle],label[class*=checkbox],input[type=checkbox],input[type=radio],[role=button],.clickable-row,.project-list-item,.gel-action-button,.gel-wip-item,.btn-primary,.btn-secondary,.btn-danger,.filter-select,.status-dropdown,.client-link,.quote-link,.clock-alert-link,.archive-toggle,.nav-links li a,.nav-brand,.nav-signout{cursor:pointer}#root{width:100%;min-height:100vh}
