@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap);:root{--bg:#f8f9fb;--surface:#fff;--surface2:#f3f5f8;--surface3:#e9edf2;--border:#e0e4ea;--border-strong:#c6cdd6;--accent:#e36d32;--accent-dark:#bd4f20;--accent-soft:#fff0e7;--accent-secondary:#268795;--accent-glow:#0000;--success:#167a55;--success-soft:#e8f7f0;--danger:#c23d35;--danger-soft:#fff0ef;--warning:#96620c;--warning-soft:#fff6df;--warning-border:#fff6df;--critical:#b42323;--text:#111318;--text-soft:#303640;--text-muted:#68717d;--radius:10px;--radius-sm:6px;--radius-pill:4px;--shadow-sm:none;--shadow-md:none;--transition:0.16s ease;--nav-bg:#fffffff5}:root[data-theme=dark]{--bg:#0f1115;--surface:#171a20;--surface2:#20242c;--surface3:#292e38;--border:#22262e;--border-strong:#303640;--accent:#c46f41;--accent-dark:#d28a61;--accent-soft:#2b211c;--accent-secondary:#67bac5;--accent-glow:#0000;--success:#72ad8d;--success-soft:#19241e;--danger:#d47b74;--danger-soft:#291d1e;--warning:#b99a5e;--warning-soft:#282319;--warning-border:#282319;--critical:#d8847d;--text:#e2e5e9;--text-soft:#b9c0ca;--text-muted:#8e97a5;--shadow-sm:none;--shadow-md:none;--nav-bg:#171a20f5}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{max-width:100%;overflow-x:clip}body{-webkit-font-smoothing:antialiased;background:#f8f9fb;background:var(--bg);color:#111318;color:var(--text);font-family:Inter,sans-serif;min-height:100vh}body.no-scroll{overflow:hidden;touch-action:none}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#e0e4ea;background:var(--border);border-radius:0}::-webkit-scrollbar-thumb:hover{background:#c6cdd6;background:var(--border-strong)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:8px}.gap-2{gap:16px}.gap-3{gap:24px}.w-full{width:100%}.text-muted{color:#68717d;color:var(--text-muted)}.text-sm{font-size:13px}.font-bold{font-weight:700}.card{background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);box-shadow:none;box-shadow:var(--shadow-sm);padding:20px;width:100%}.btn{align-items:center;border:1px solid #0000;border-radius:6px;border-radius:var(--radius-sm);display:inline-flex;font-size:13px;font-weight:600;gap:8px;justify-content:center;line-height:1.2;padding:9px 16px;transition:background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease;transition:background var(--transition),color var(--transition),border-color var(--transition),box-shadow var(--transition);white-space:nowrap}.btn:focus-visible{outline:2px solid #e36d32;outline:2px solid var(--accent);outline-offset:1px}.btn-primary{background:#e36d32;background:var(--accent);border-color:#e36d32;border-color:var(--accent);box-shadow:none;color:#fff}.btn-primary:hover{background:#bd4f20;background:var(--accent-dark)}.btn-danger{background:#fff0ef;background:var(--danger-soft);border-color:#f1c2bd;color:#c23d35;color:var(--danger)}.btn-danger:hover{background:#f5cfc9;border-color:#ea9d97}.btn-ghost{background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);color:#303640;color:var(--text-soft)}.btn-ghost:hover{background:#f3f5f8;background:var(--surface2);border-color:#c6cdd6;border-color:var(--border-strong);color:#111318;color:var(--text)}.btn-sm{font-size:12px;gap:6px;padding:5px 10px}.btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none!important}.input{background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#111318;color:var(--text);font-family:inherit;font-size:14px;outline:none;padding:10px 12px;transition:border-color .16s ease,box-shadow .16s ease;transition:border-color var(--transition),box-shadow var(--transition);width:100%}.input:hover{border-color:#c6cdd6;border-color:var(--border-strong)}.input:focus{border-color:#e36d32;border-color:var(--accent);box-shadow:none}.input::placeholder,label.field-label{color:#68717d;color:var(--text-muted)}label.field-label{display:block;letter-spacing:.06em;margin-bottom:6px;text-transform:uppercase}.badge,label.field-label{font-size:11px;font-weight:600}.badge{align-items:center;border:1px solid #0000;border-radius:4px;border-radius:var(--radius-pill);display:inline-flex;gap:4px;letter-spacing:.02em;line-height:1.4;padding:3px 9px}.badge-low{background:#e8f7f0;background:var(--success-soft);border-color:#0000;color:#167a55;color:var(--success)}.badge-medium{background:#fff6df;background:var(--warning-soft);border-color:#0000;color:#96620c;color:var(--warning)}.badge-high{background:#fff0e7;background:var(--accent-soft);border-color:#0000;color:#bd4f20;color:var(--accent-dark)}.badge-critical{background:#fff0ef;background:var(--danger-soft);border-color:#0000;color:#c23d35;color:var(--danger)}.page{min-height:100vh}.container{margin:0 auto;max-width:1100px;padding:0 24px}.layout{display:block;min-height:100vh}.sidebar{align-self:start;background:#fff;background:var(--surface);border-right:1px solid #e0e4ea;border-right:1px solid var(--border);display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden;padding:0;position:sticky;top:0;width:248px}.sidebar-logo{align-items:center;border-bottom:1px solid #e0e4ea;border-bottom:1px solid var(--border);color:#111318;color:var(--text);display:flex;flex-shrink:0;font-size:14px;font-weight:700;gap:10px;letter-spacing:-.01em;padding:18px 16px}.sidebar-logo img{border-radius:6px;height:44px;object-fit:contain;width:44px}.sidebar-logo .logo-text{display:flex;flex-direction:column;line-height:1.15}.sidebar-logo .logo-text small{color:#68717d;color:var(--text-muted);font-size:11px;font-weight:500;letter-spacing:.02em}.sidebar-nav{display:flex;flex-direction:column;gap:2px;min-height:0;overflow-x:hidden;overflow-y:auto;padding:12px 10px}.sidebar-section-label{color:#68717d;color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.08em;padding:10px 10px 6px;text-transform:uppercase}.nav-item{align-items:center;background:none;border:none;border-radius:6px;border-radius:var(--radius-sm);color:#303640;color:var(--text-soft);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:10px;padding:8px 10px;position:relative;text-align:left;transition:background .16s ease,color .16s ease;transition:background var(--transition),color var(--transition);width:100%}.nav-item .nav-icon{align-items:center;color:#68717d;color:var(--text-muted);display:inline-flex;flex-shrink:0;justify-content:center;transition:color .16s ease;transition:color var(--transition)}.nav-item:hover{background:#f3f5f8;background:var(--surface2);color:#111318;color:var(--text)}.nav-item:hover .nav-icon{color:#303640;color:var(--text-soft)}.nav-item.active{background:#f3f5f8;background:var(--surface2);color:#111318;color:var(--text);font-weight:600}.nav-item.active .nav-icon{color:#e36d32;color:var(--accent)}.sidebar-footer{background:#fff;background:var(--surface);border-top:1px solid #e0e4ea;border-top:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;gap:2px;padding:10px}.sidebar-status{align-items:center;background:#0000;border:none;border-radius:6px;border-radius:var(--radius-sm);color:#303640;color:var(--text-soft);cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:8px;padding:8px 10px;text-align:left;transition:background .16s ease;transition:background var(--transition);width:100%}.sidebar-status:hover{background:#f3f5f8;background:var(--surface2)}.sidebar-status .status-dot{background:#68717d;background:var(--text-muted);border-radius:999px;flex-shrink:0;height:7px;width:7px}.sidebar-status .status-dot.connected{background:#167a55;background:var(--success)}.sidebar-status .status-dot.disconnected{background:#c23d35;background:var(--danger)}.sidebar-user{align-items:center;background:#f3f5f8;background:var(--surface2);border-radius:6px;border-radius:var(--radius-sm);display:flex;gap:10px;margin-top:4px;padding:8px 10px}.sidebar-user .avatar{align-items:center;background:#e36d32;background:var(--accent);border-radius:999px;color:#fff;display:inline-flex;flex-shrink:0;font-size:12px;font-weight:700;height:28px;justify-content:center;width:28px}.sidebar-user .user-meta{display:flex;flex:1 1;flex-direction:column;line-height:1.2;min-width:0}.sidebar-user .user-meta .user-name{color:#111318;color:var(--text);font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user .user-meta .user-role{color:#68717d;color:var(--text-muted);font-size:10px;letter-spacing:.04em;text-transform:uppercase}.sidebar-user .signout-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#68717d;color:var(--text-muted);cursor:pointer;display:inline-flex;justify-content:center;padding:4px;transition:color .16s ease,background .16s ease;transition:color var(--transition),background var(--transition)}.sidebar-user .signout-btn:hover{background:#fff0ef;background:var(--danger-soft);color:#c23d35;color:var(--danger)}.main-content{background:#f8f9fb;background:var(--bg);margin-inline:auto;max-width:1064px;min-height:100vh;min-width:0;overflow-x:hidden;padding:28px 32px 96px;width:100%}.admin-bottom-bar{align-items:center;background:#fffffff5;background:var(--nav-bg);border-top:1px solid #e0e4ea;border-top:1px solid var(--border);box-shadow:none;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);inset:auto 0 0 0;min-height:62px;padding:8px 16px max(8px,env(safe-area-inset-bottom));position:fixed;width:100%;z-index:1000}.bottom-bar-nav{display:flex;gap:4px;grid-column:2}.bottom-bar-nav,.bottom-nav-item{align-items:center;justify-content:center}.bottom-nav-item{background:#0000;border:1px solid #0000;border-radius:6px;border-radius:var(--radius-sm);color:#68717d;color:var(--text-muted);display:inline-flex;font-size:13px;font-weight:500;gap:7px;min-width:104px;padding:8px 13px;transition:color .16s ease,background .16s ease,border-color .16s ease;transition:color var(--transition),background var(--transition),border-color var(--transition)}.bottom-nav-item:hover{background:#f3f5f8;background:var(--surface2);color:#111318;color:var(--text)}.bottom-nav-item.active{background:#fff0e7;background:var(--accent-soft);border-color:#e374342e;color:#bd4f20;color:var(--accent-dark);font-weight:600}.bottom-nav-icon{display:inline-flex}.bottom-bar-actions,.bottom-bar-connections,.bottom-bar-user{align-items:center;display:flex}.bottom-bar-actions{gap:7px;grid-column:3;justify-self:end}.bottom-bar-user{gap:7px;padding:0 5px}.bottom-bar-user .avatar{align-items:center;background:#e36d32;background:var(--accent);border-radius:999px;color:#fff;display:inline-flex;flex-shrink:0;font-size:12px;font-weight:700;height:28px;justify-content:center;width:28px}.bottom-bar-user .user-meta{display:flex;flex-direction:column;line-height:1.15;max-width:110px}.bottom-bar-user .user-name{color:#111318;color:var(--text);font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bottom-bar-user .user-role{color:#68717d;color:var(--text-muted);font-size:10px;letter-spacing:.04em;text-transform:uppercase}.bottom-signout-button{align-items:center;background:#0000;border:none;border-radius:4px;color:#68717d;color:var(--text-muted);display:inline-flex;justify-content:center;padding:7px;transition:color .16s ease,background .16s ease;transition:color var(--transition),background var(--transition)}.bottom-signout-button:hover{background:#fff0ef;background:var(--danger-soft);color:#c23d35;color:var(--danger)}.page-header{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:28px}.page-title{color:#111318;color:var(--text);font-size:22px;font-weight:700;letter-spacing:-.015em}.page-subtitle{color:#68717d;color:var(--text-muted);font-size:13px;margin-top:4px}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .3s ease forwards}.bento-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(4,1fr);margin-bottom:28px}.bento-tile{background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);display:flex;flex-direction:column;gap:10px;min-width:0;overflow:hidden;padding:18px 20px 16px;position:relative;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease;transition:border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.bento-tile:hover{border-color:#c6cdd6;border-color:var(--border-strong);box-shadow:none}.bento-tile.span-2{grid-column:span 2}.bento-tile.span-4{grid-column:span 4}.bento-tile .tile-head{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.bento-tile .tile-label{color:#68717d;color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.bento-tile .tile-icon{align-items:center;background:#fff0e7;background:var(--accent-soft);border-radius:8px;color:#e36d32;color:var(--accent);display:inline-flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.bento-tile .tile-value{color:#111318;color:var(--text);font-size:28px;font-weight:800;letter-spacing:-.02em;line-height:1.1;word-break:break-word}.bento-tile.span-2 .tile-value{font-size:34px}.bento-tile .tile-hint{color:#68717d;color:var(--text-muted);font-size:12px;margin-top:-2px}.bento-tile.accent-success .tile-icon{background:#e8f7f0;background:var(--success-soft);color:#167a55;color:var(--success)}.bento-tile.accent-info .tile-icon{background:#e4eff2;color:#268795;color:var(--accent-secondary)}.bento-tile.accent-danger .tile-icon{background:#fff0ef;background:var(--danger-soft);color:#c23d35;color:var(--danger)}.bento-tile.accent-warning .tile-icon{background:#fff6df;background:var(--warning-soft);color:#96620c;color:var(--warning)}.bento-tile.accent-muted .tile-icon{background:#f3f5f8;background:var(--surface2);color:#68717d;color:var(--text-muted)}.seg-tabs{background:#f3f5f8;background:var(--surface2);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:999px;display:inline-flex;gap:2px;margin-bottom:22px;max-width:100%;overflow-x:auto;padding:4px}.seg-tabs::-webkit-scrollbar{display:none}.seg-tabs button{background:#0000;border:0;border-radius:999px;color:#68717d;color:var(--text-muted);cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;text-transform:capitalize;transition:background .16s ease,color .16s ease;transition:background var(--transition),color var(--transition);white-space:nowrap}.seg-tabs button.active,.seg-tabs button:hover{color:#111318;color:var(--text)}.seg-tabs button.active{background:#fff;background:var(--surface);box-shadow:none;box-shadow:var(--shadow-sm)}.overview-row{align-items:center;border-bottom:1px solid #e0e4ea;border-bottom:1px solid var(--border);display:flex;gap:12px;justify-content:space-between;padding:12px 0}.overview-row:last-child{border-bottom:0}.overview-row .row-main{flex:1 1;min-width:0}.overview-row .row-title{color:#111318;color:var(--text);font-weight:600}.overview-row .row-sub{color:#68717d;color:var(--text-muted);font-size:12px;margin-top:2px}.overview-row .row-amt{color:#111318;color:var(--text);font-weight:700;text-align:right;white-space:nowrap}.overview-row .row-amt small{color:#68717d;color:var(--text-muted);display:block;font-size:11px;font-weight:500;margin-top:2px}.card-title{align-items:center;color:#68717d;color:var(--text-muted);display:flex;font-size:13px;font-weight:700;justify-content:space-between;letter-spacing:.06em;margin-bottom:6px;text-transform:uppercase}.monthly-income-card{margin-bottom:16px;padding:20px 22px 18px}.monthly-income-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.monthly-income-eyebrow{color:#e36d32;color:var(--accent);display:block;font-size:9px;font-weight:750;letter-spacing:.1em;margin-bottom:3px;text-transform:uppercase}.monthly-income-header h2{color:#111318;color:var(--text);font-size:17px;letter-spacing:-.02em}.monthly-income-header p{color:#68717d;color:var(--text-muted);font-size:11px;margin-top:3px}.monthly-income-actions{align-items:center;display:flex;gap:8px}.monthly-income-picker{align-items:stretch;background:#f3f5f8;background:var(--surface2);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:9px;display:inline-flex;margin-top:16px;overflow:hidden}.monthly-income-picker>button{align-items:center;background:#0000;border:0;color:#68717d;color:var(--text-muted);display:inline-flex;justify-content:center;width:36px}.monthly-income-picker>button:hover:not(:disabled){background:#e9edf2;background:var(--surface3);color:#111318;color:var(--text)}.monthly-income-picker>button:disabled{cursor:not-allowed;opacity:.35}.monthly-income-picker label{align-items:center;border-left:1px solid #e0e4ea;border-left:1px solid var(--border);border-right:1px solid #e0e4ea;border-right:1px solid var(--border);color:#68717d;color:var(--text-muted);display:flex;gap:7px;min-height:36px;padding:0 10px}.monthly-income-picker label>span{color:#68717d;color:var(--text-muted);font-size:10px;font-weight:650}.monthly-income-picker input{background:#0000;border:0;color:#111318;color:var(--text);color-scheme:light;font:inherit;font-size:12px;font-weight:650;outline:0;width:122px}:root[data-theme=dark] .monthly-income-picker input{color-scheme:dark}.monthly-income-summary{border-bottom:1px solid #e0e4ea;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:28px;margin:18px 0 12px;padding-bottom:14px}.monthly-income-summary>div{display:flex;flex-direction:column;gap:3px}.monthly-income-summary span{color:#68717d;color:var(--text-muted);font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.monthly-income-summary strong{color:#111318;color:var(--text);font-size:16px}.monthly-income-scroll{overflow-x:auto}.monthly-income-chart{grid-gap:8px;align-items:end;display:grid;gap:8px;grid-template-columns:repeat(12,minmax(64px,1fr));min-width:820px;padding-top:7px}.monthly-income-month{grid-gap:4px;background:#0000;border:0;border-radius:7px;color:#68717d;color:var(--text-muted);cursor:pointer;display:grid;gap:4px;grid-template-rows:18px 112px auto auto;min-width:0;padding:4px 3px 5px;text-align:center}.monthly-income-month:hover{background:#f3f5f8;background:var(--surface2)}.monthly-income-amount{color:#303640;color:var(--text-soft);font-size:10px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monthly-income-track{align-items:flex-end;background:#f3f5f8;background:var(--surface2);border-bottom:1px solid #e0e4ea;border-bottom:1px solid var(--border);display:flex;justify-content:center}.monthly-income-track>span{background:#e36d32;background:var(--accent);min-height:2px;width:52%}.monthly-income-month strong{color:#303640;color:var(--text-soft);font-size:11px}.monthly-income-month small{color:#68717d;color:var(--text-muted);font-size:9px}.monthly-income-month.current strong{color:#e36d32;color:var(--accent)}.monthly-income-month.selected{background:#fff0e7;background:var(--accent-soft)}.monthly-income-month.selected .monthly-income-track{background:#fff;background:var(--surface);border-bottom-color:#e36d32;border-bottom-color:var(--accent)}.monthly-income-month.selected .monthly-income-amount,.monthly-income-month.selected strong{color:#bd4f20;color:var(--accent-dark)}@media (max-width:600px){.monthly-income-card{padding:17px 16px 15px}.monthly-income-header{align-items:center}.monthly-income-header p{max-width:190px}.monthly-income-picker{display:flex;width:100%}.monthly-income-picker label{flex:1 1;justify-content:center;min-width:0}.monthly-income-picker label>span{display:none}.monthly-income-picker input{font-size:16px;width:122px}.monthly-income-summary{grid-gap:14px 20px;display:grid;gap:14px 20px;grid-template-columns:1fr 1fr;margin-top:16px}.monthly-income-summary strong{font-size:14px}.monthly-income-scroll{margin-right:-16px;padding-right:16px}}@media (max-width:1024px){.bento-grid{grid-template-columns:repeat(2,1fr)}.bento-tile.span-2,.bento-tile.span-4{grid-column:span 2}}@media (max-width:600px){.bento-grid{grid-template-columns:1fr}.bento-tile.span-2,.bento-tile.span-4{grid-column:span 1}.bento-tile .tile-value{font-size:24px}.bento-tile.span-2 .tile-value{font-size:26px}}.tile-toggle-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.mini-toggle{background:#f3f5f8;background:var(--surface2);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:999px;display:inline-flex;gap:2px;padding:3px}.mini-toggle button{background:#0000;border:0;border-radius:999px;color:#68717d;color:var(--text-muted);cursor:pointer;font-size:12px;font-weight:600;padding:5px 12px;transition:background .16s ease,color .16s ease;transition:background var(--transition),color var(--transition);white-space:nowrap}.mini-toggle button.active,.mini-toggle button:hover{color:#111318;color:var(--text)}.mini-toggle button.active{background:#fff;background:var(--surface);box-shadow:none;box-shadow:var(--shadow-sm)}@keyframes spin{to{transform:rotate(1turn)}}.spinner{animation:spin .8s linear infinite;border:2px solid #e0e4ea;border-top-color:#e36d32;border:2px solid var(--border);border-radius:50%;border-top-color:var(--accent);height:20px;width:20px}.modal-overlay{align-items:center!important;background:#0f121980!important;display:flex!important;height:100vh!important;justify-content:center!important;left:0!important;padding:16px;position:fixed!important;top:0!important;width:100vw!important;z-index:9999!important}.modal{animation:fadeUp .18s ease forwards;background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);box-shadow:none;flex-shrink:0;max-width:480px;padding:28px;width:100%}.modal-title{color:#111318;color:var(--text);font-size:17px;font-weight:700;letter-spacing:-.01em;margin-bottom:18px}.modal-footer{border-top:1px solid #e0e4ea;border-top:1px solid var(--border);display:flex;gap:10px;justify-content:flex-end;margin-top:22px;padding-top:18px}.modal.milestone-editor-modal{border-radius:14px;display:flex;flex-direction:column;max-height:min(88dvh,820px);max-width:680px;overflow:hidden;padding:0;width:min(680px,calc(100vw - 32px))}.milestone-editor-header{align-items:flex-start;border-bottom:1px solid #e0e4ea;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:20px;justify-content:space-between;padding:20px 24px 18px}.milestone-editor-eyebrow{color:#e36d32;color:var(--accent);display:block;font-size:9px;font-weight:750;letter-spacing:.09em;margin-bottom:4px;text-transform:uppercase}.milestone-editor-header h2{color:#111318;color:var(--text);font-size:19px;letter-spacing:-.025em}.milestone-editor-header p{color:#68717d;color:var(--text-muted);font-size:11px;margin-top:4px}.milestone-editor-header>button{align-items:center;background:#f3f5f8;background:var(--surface2);border:0;border-radius:7px;color:#68717d;color:var(--text-muted);display:inline-flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.milestone-editor-header>button:hover{color:#111318;color:var(--text)}.milestone-editor-body{flex:1 1;min-height:0;overflow-y:auto;padding:20px 24px 8px}.milestone-editor-section{padding-bottom:22px}.milestone-editor-section+.milestone-editor-section{border-top:1px solid #e0e4ea;border-top:1px solid var(--border);padding-top:20px}.milestone-editor-section-heading{align-items:center;display:flex;gap:10px;margin-bottom:16px}.milestone-editor-section-heading>span{align-items:center;background:#fff0e7;background:var(--accent-soft);border-radius:7px;color:#bd4f20;color:var(--accent-dark);display:inline-flex;font-size:9px;font-weight:750;height:27px;justify-content:center;width:27px}.milestone-editor-section-heading>div{display:flex;flex-direction:column;line-height:1.3}.milestone-editor-section-heading strong{color:#111318;color:var(--text);font-size:12px}.milestone-editor-section-heading small{color:#68717d;color:var(--text-muted);font-size:10px}.milestone-editor-fields{grid-gap:12px;display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}.milestone-editor-field{min-width:0}.milestone-editor-field .input{background:#f3f5f8;background:var(--surface2)}.milestone-editor-field textarea{line-height:1.45;min-height:72px;resize:vertical}.milestone-client-message{margin-bottom:16px}.milestone-status-fieldset{border:0;margin-top:15px}.milestone-status-options{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.milestone-status-option{align-items:center;background:#f3f5f8;background:var(--surface2);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:8px;color:#303640;color:var(--text-soft);display:flex;gap:8px;min-width:0;padding:10px;text-align:left}.milestone-status-option:hover{border-color:#c6cdd6;border-color:var(--border-strong)}.milestone-status-option.active{background:#fff;background:var(--surface);border-color:currentColor}.milestone-status-option.warning{color:#96620c;color:var(--warning)}.milestone-status-option.success{color:#167a55;color:var(--success)}.milestone-status-option.danger{color:#c23d35;color:var(--danger)}.milestone-status-dot{background:currentColor;border-radius:50%;flex-shrink:0;height:8px;width:8px}.milestone-status-option>span:last-child{display:flex;flex-direction:column;min-width:0}.milestone-status-option strong{color:#111318;color:var(--text);font-size:11px}.milestone-status-option small{color:#68717d;color:var(--text-muted);font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.milestone-editor-approvals,.milestone-editor-files{margin:16px 0}.milestone-editor-subheading{align-items:center;color:#303640;color:var(--text-soft);display:flex;font-size:11px;font-weight:700;gap:8px;justify-content:space-between;margin-bottom:7px}.milestone-editor-subheading>span{align-items:center;display:inline-flex;gap:6px}.milestone-editor-subheading>small{background:#f3f5f8;background:var(--surface2);border-radius:5px;color:#68717d;color:var(--text-muted);font-size:9px;min-width:20px;padding:2px 6px;text-align:center}.milestone-editor-file-list{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr));max-height:122px;overflow-y:auto}.milestone-editor-file-row{align-items:center;background:#f3f5f8;background:var(--surface2);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:7px;display:flex;justify-content:space-between;min-width:0;padding:7px 8px}.milestone-editor-approval-list{grid-gap:7px;display:grid;gap:7px;grid-template-columns:repeat(2,minmax(0,1fr))}.milestone-editor-approval{background:#e8f7f0;background:var(--success-soft);border:1px solid #0000;border-radius:7px;min-width:0;padding:9px 10px}.milestone-upload-section{margin-top:18px}.milestone-upload-heading{align-items:center;color:#303640;color:var(--text-soft);display:flex;gap:6px;margin-bottom:8px}.milestone-upload-heading span{font-size:11px;font-weight:700}.milestone-upload-heading small{color:#68717d;color:var(--text-muted);font-size:9px;margin-left:auto}.milestone-upload-queue{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.milestone-upload-entry{background:#f3f5f8;background:var(--surface2);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:7px;padding:7px 9px}.milestone-upload-entry.error{border-color:#c23d35;border-color:var(--danger)}.milestone-upload-dropzone{align-items:center;background:#f3f5f8;background:var(--surface2);border:1px dashed #c6cdd6;border:1px dashed var(--border-strong);border-radius:9px;color:#e36d32;color:var(--accent);cursor:pointer;display:flex;gap:10px;justify-content:center;min-height:68px;padding:12px}.milestone-upload-dropzone:hover{background:#fff0e7;background:var(--accent-soft);border-color:#e36d32;border-color:var(--accent)}.milestone-upload-dropzone>span{display:flex;flex-direction:column;line-height:1.35}.milestone-upload-dropzone strong{color:#111318;color:var(--text);font-size:11px}.milestone-upload-dropzone small{color:#68717d;color:var(--text-muted);font-size:9px}.milestone-upload-dropzone input{display:none}.milestone-drive-note{color:#68717d;color:var(--text-muted);font-size:9px;margin-top:7px;text-align:center}.milestone-drive-note a{color:#e36d32;color:var(--accent)}.milestone-editor-error{background:#fff0ef;background:var(--danger-soft);border-radius:7px;color:#c23d35;color:var(--danger);font-size:11px;margin-bottom:12px;padding:9px 11px}.modal-footer.milestone-editor-footer{background:#fff;background:var(--surface);border-top:1px solid #e0e4ea;border-top:1px solid var(--border);flex-shrink:0;flex-wrap:wrap;margin:0;padding:14px 24px}@media (max-width:640px){.modal.milestone-editor-modal{border-radius:14px 14px 0 0;max-height:92dvh;max-width:100%;width:100%}.milestone-editor-body,.milestone-editor-header,.modal-footer.milestone-editor-footer{padding-left:16px;padding-right:16px}.milestone-editor-approval-list,.milestone-editor-fields,.milestone-editor-file-list,.milestone-status-options{grid-template-columns:1fr}}.scroll-hidden{-ms-overflow-style:none;scrollbar-width:none}.scroll-hidden::-webkit-scrollbar{display:none}.table-wrap{background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);box-shadow:none;box-shadow:var(--shadow-sm);overflow-x:auto}table{border-collapse:collapse;width:100%}th{background:#f3f5f8;background:var(--surface2);color:#68717d;color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.06em;padding:11px 14px;text-align:left;text-transform:uppercase}td,th{border-bottom:1px solid #e0e4ea;border-bottom:1px solid var(--border)}td{color:#111318;color:var(--text);font-size:13px;padding:13px 14px}tr:last-child td{border-bottom:none}tr:hover td{background:#f3f5f8;background:var(--surface2)}.empty{align-items:center;color:#68717d;color:var(--text-muted);display:flex;flex-direction:column;gap:12px;justify-content:center;padding:64px 24px;text-align:center;width:100%}.empty-icon{font-size:48px;opacity:.5}select.input{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m19 9-7 7-7-7'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}.alert-banner{align-items:flex-start;border:1px solid;border-radius:6px;border-radius:var(--radius-sm);box-shadow:none;box-shadow:var(--shadow-sm);display:flex;font-size:13px;gap:12px;line-height:1.5;margin-bottom:20px;padding:14px 16px}.alert-banner-danger{background:#fff0ef;background:var(--danger-soft);border-color:#f1c2bd;color:#c23d35;color:var(--danger)}.alert-banner-warning{background:#fff6df;background:var(--warning-soft);border-color:#ecd9a3;color:#96620c;color:var(--warning)}.alert-banner .alert-banner-title{font-weight:700;letter-spacing:-.005em;margin-bottom:2px}.alert-banner-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.milestone-card{align-items:flex-start;background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);display:flex;gap:12px;justify-content:space-between;padding:14px 16px;transition:border-color .16s ease,box-shadow .16s ease;transition:border-color var(--transition),box-shadow var(--transition)}.milestone-card:hover{border-color:#c6cdd6;border-color:var(--border-strong);box-shadow:none;box-shadow:var(--shadow-sm)}.mobile-nav-toggle{align-items:center;background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);box-shadow:none;cursor:pointer;display:none;justify-content:center;left:10px;padding:8px 10px;position:fixed;top:10px;z-index:200}.sidebar-overlay{background:#0006;display:none;inset:0;position:fixed;z-index:150}@media (max-width:768px){.layout{grid-template-columns:1fr;position:relative}.sidebar{bottom:0;box-shadow:none;display:flex;flex-direction:column;height:100vh;height:100dvh;left:-270px;overflow-y:auto;position:fixed;top:0;transition:left .25s ease;width:248px;z-index:160}.sidebar.open{left:0}.sidebar-overlay.open{display:block}.mobile-nav-toggle{display:flex}.mobile-nav-toggle.hidden{display:none}.main-content{padding:56px 16px 16px}.page-header{align-items:flex-start;flex-direction:column;gap:12px}.table-wrap{overflow-x:auto}table{min-width:540px}.card{padding:16px}.modal{border-bottom:none;border-left:none;border-radius:0;border-right:none;margin:0;max-height:85dvh;max-width:100%}.modal-overlay{align-items:flex-end;padding:0}div[style*="grid-template-columns: 1fr 1.5fr"],div[style*="grid-template-columns: 1fr 1fr"],div[style*="gridTemplateColumns: '1fr 1.5fr'"],div[style*="gridTemplateColumns: '1fr 1fr'"],div[style*="gridTemplateColumns: '1fr 2fr'"]{grid-template-columns:1fr!important}div[style*="display: 'flex'"][style*="gap: 32"]{flex-direction:column;gap:16px}.milestone-card{flex-wrap:wrap}.page-title{font-size:20px}.page-subtitle{font-size:13px}div[style*="max-width: 400px"],div[style*="maxWidth: '400px'"]{max-width:100%!important}.finance-tabs-bar{-webkit-overflow-scrolling:touch;flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none}.finance-tabs-bar::-webkit-scrollbar{display:none}.finance-tabs-bar>button{flex-shrink:0;font-size:13px;padding:10px 14px!important;white-space:nowrap}.finance-big-stats{grid-template-columns:1fr!important}.section-panel-header{align-items:flex-start!important;flex-wrap:wrap!important;gap:8px!important}.section-panel-header>div{flex-wrap:wrap;gap:6px}.client-detail-grid{grid-template-columns:1fr!important}.table-wrap{-webkit-overflow-scrolling:touch}table{min-width:460px}.clients-table-wrap{background:#0000;border:none;border-radius:0;overflow-x:visible}.clients-table-wrap table{display:block;min-width:0;width:100%}.clients-table-wrap thead{display:none}.clients-table-wrap tbody{display:block}.clients-table-wrap tr{background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);display:block;margin-bottom:12px;padding:12px 14px}.clients-table-wrap tr:hover td{background:#0000}.clients-table-wrap td{align-items:center;border-bottom:none;display:flex;font-size:13px;gap:12px;justify-content:space-between;padding:6px 0;text-align:right;word-break:break-word}.clients-table-wrap td:before{color:#68717d;color:var(--text-muted);content:attr(data-label);flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.06em;text-align:left;text-transform:uppercase}.clients-table-wrap td[data-label=Actions]{border-top:1px solid #e0e4ea;border-top:1px solid var(--border);justify-content:flex-end;margin-top:6px;padding-top:10px}.clients-table-wrap td[data-label=Actions]:before{display:none}.finance-big-stats,.finance-mini-stats,.finance-overview-grid{grid-template-columns:1fr!important}.card,.finance-big-stats>.card,.finance-mini-stats>.card{min-width:0}.card{overflow-wrap:anywhere}}@media (max-width:480px){.btn{font-size:13px;padding:8px 14px}.btn-sm{font-size:11px;padding:5px 10px}.input{font-size:16px}.modal{padding:20px 16px}.card{padding:14px}.main-content{padding:52px 12px 12px}.finance-big-stats,.finance-mini-stats{grid-template-columns:1fr!important}table{min-width:420px}.clients-table-wrap table{min-width:0}.finance-big-stats .card>div>div>div:nth-child(2),.finance-mini-stats .card>div>div>div:nth-child(2){font-size:22px!important}}@media (max-width:860px){.project-grid{grid-template-columns:1fr!important}.project-grid>div[style*=sticky]{position:static!important}}@media (max-width:1100px){.bottom-bar-user .user-meta{display:none}.bottom-nav-item{min-width:96px}}@media (max-width:768px){.layout{display:block}.main-content{padding:16px 16px 92px}.admin-bottom-bar{padding-inline:10px}.bottom-bar-nav{justify-content:flex-start;min-width:0}.bottom-nav-item{flex:1 1;min-width:0;padding-inline:9px}.bottom-bar-user{display:none}}@media (max-width:600px){.admin-bottom-bar{min-height:60px;padding:6px 8px max(6px,env(safe-area-inset-bottom))}.bottom-bar-actions{gap:3px}.bottom-nav-item{font-size:11px;gap:5px;padding:8px 6px}}@media (max-width:480px){.main-content{padding:12px 12px 86px}.bottom-nav-item>span:last-child{display:none}.bottom-nav-item{min-width:38px}}.bottom-nav-item:focus-visible,.bottom-signout-button:focus-visible{outline:2px solid #e36d32;outline:2px solid var(--accent);outline-offset:1px}.clients-table-wrap{background:#0000;border:none;border-radius:0;box-shadow:none;margin:0 auto;max-width:800px;overflow:visible}.clients-table-wrap table,.clients-table-wrap tbody{display:block;min-width:0;width:100%}.clients-table-wrap thead{display:none}.clients-table-wrap tbody{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.clients-table-wrap tr{border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;margin:0;min-width:0;padding:18px 20px;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition)}.clients-table-wrap tr:hover{box-shadow:var(--shadow-md)}.clients-table-wrap tr:hover td{background:#0000}.clients-table-wrap td{align-items:center;border-bottom:1px solid #e0e4ea;border-bottom:1px solid var(--border);color:#303640;color:var(--text-soft);display:flex;font-size:13px;gap:14px;justify-content:space-between;padding:8px 0;text-align:right;word-break:break-word}.clients-table-wrap td:before{content:attr(data-label);flex-shrink:0;font-weight:700;letter-spacing:.06em;text-align:left;text-transform:uppercase}.clients-table-wrap td:first-child{border-bottom:none;padding-bottom:3px;padding-top:0;text-align:left}.clients-table-wrap td:first-child:before,.clients-table-wrap td:nth-child(2):before,.clients-table-wrap td[data-label=Actions]:before{display:none}.clients-table-wrap td:nth-child(2){padding-top:0;text-align:left}.clients-table-wrap td[data-label=Actions]{border-bottom:none;justify-content:flex-end;margin-top:auto;padding-top:14px}@media (max-width:768px){.clients-table-wrap{max-width:none}.clients-table-wrap tbody{gap:12px;grid-template-columns:1fr}.clients-table-wrap tr{margin:0;padding:16px}}.clients-table-wrap tr{background:#fff;background:var(--surface);border-color:#e7e1dd;box-shadow:none;cursor:pointer;min-height:202px;overflow:hidden;padding:16px 18px;position:relative}.clients-table-wrap tr:hover{border-color:#e3743461;box-shadow:none}.clients-table-wrap td{border:none;padding:7px 0;position:relative;z-index:1}.clients-table-wrap td:first-child{color:#111318;color:var(--text);font-size:16px;font-weight:700!important;letter-spacing:-.02em;max-width:calc(100% - 122px);padding-top:1px}.clients-table-wrap td:nth-child(2){color:#68717d;color:var(--text-muted);font-size:12px;max-width:calc(100% - 122px);padding-bottom:10px}.clients-table-wrap td:nth-child(3){padding-top:12px}.clients-table-wrap td:before{color:#8a919b;font-size:10px;letter-spacing:.08em}.clients-table-wrap td[data-label=Projects]{border:none;padding:0;position:absolute;right:50px;top:18px}.clients-table-wrap td[data-label=Projects]:before{display:none}.clients-table-wrap td[data-label=Projects] .badge{border-color:#cde6d8}.clients-table-wrap td[data-label=Actions]{border:none;margin:0;padding:0;position:absolute;right:11px;top:11px;width:auto}.clients-table-wrap td[data-label=Actions] .btn-danger{background:#0000;border-color:#0000;color:#68717d;color:var(--text-muted);height:31px;padding:0;width:31px}.clients-table-wrap td[data-label=Actions] .btn-danger:hover{border-color:#f1c2bd;color:#c23d35;color:var(--danger)}@media (max-width:768px){.clients-table-wrap tr{min-height:198px;padding:16px}.clients-table-wrap td[data-label=Projects]{right:50px}}.clients-table-wrap tr{grid-column-gap:14px;grid-row-gap:2px;border-color:#e0e4ea;border-color:var(--border);column-gap:14px;display:grid;grid-template-areas:"name projects actions" "email projects actions" "manager sales sales" "active joined joined";grid-template-columns:minmax(0,1fr) auto auto;min-height:0;padding:16px;row-gap:2px}.clients-table-wrap tr:hover{background:#fff;background:var(--surface);border-color:#c6cdd6;border-color:var(--border-strong)}.clients-table-wrap td,.clients-table-wrap td:first-child,.clients-table-wrap td:nth-child(2),.clients-table-wrap td:nth-child(3),.clients-table-wrap td[data-label=Actions],.clients-table-wrap td[data-label=Projects]{border:0;margin:0;max-width:none;padding:0;position:static;width:auto}.clients-table-wrap td:first-child{align-self:end;font-size:15px;grid-area:name;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clients-table-wrap td:nth-child(2){display:block;grid-area:email;line-height:1.35;overflow:hidden;padding-top:2px;text-overflow:ellipsis;white-space:nowrap}.clients-table-wrap td:nth-child(3){grid-area:manager}.clients-table-wrap td[data-label=Projects]{align-self:start;grid-area:projects}.clients-table-wrap td[data-label=Sales]{grid-area:sales}.clients-table-wrap td[data-label="Last Active"]{grid-area:active}.clients-table-wrap td[data-label=Joined]{grid-area:joined}.clients-table-wrap td[data-label=Actions]{align-self:start;grid-area:actions}.clients-table-wrap td:nth-child(3),.clients-table-wrap td[data-label="Last Active"],.clients-table-wrap td[data-label=Joined],.clients-table-wrap td[data-label=Sales]{align-items:flex-start;color:#303640;color:var(--text-soft);display:flex;flex-direction:column;font-size:12px;gap:5px;justify-content:flex-start;min-width:0;padding-top:20px;text-align:left;white-space:nowrap}.clients-table-wrap td[data-label="Last Active"],.clients-table-wrap td[data-label=Joined]{padding-top:10px}.clients-table-wrap td[data-label=Joined],.clients-table-wrap td[data-label=Sales]{align-items:flex-end;text-align:right}.clients-table-wrap td.client-sales-value{color:#111318;color:var(--text);font-size:13px;font-weight:700}.clients-table-wrap td:before{color:#68717d;color:var(--text-muted);font-size:9px;letter-spacing:.07em}.clients-table-wrap td[data-label=Projects] .badge{background:#e8f7f0;background:var(--success-soft);border-color:#0000;border-radius:5px;color:#167a55;color:var(--success);letter-spacing:0;padding:4px 8px}.clients-table-wrap td[data-label=Actions] .btn-danger{height:28px;width:28px}.clients-table-wrap td[data-label=Actions] .btn-danger:hover{background:#fff0ef;background:var(--danger-soft);border-color:#0000}.client-activity{align-items:center;display:inline-flex;font-size:12px;gap:6px;min-width:0}@media (max-width:768px){.clients-table-wrap tr{grid-template-columns:minmax(0,1fr) auto auto;min-height:0;padding:16px}.clients-table-wrap td[data-label=Projects]{right:auto}}@media (max-width:420px){.clients-table-wrap tr{grid-template-areas:"name actions" "email actions" "projects sales" "manager active" "joined joined";grid-template-columns:minmax(0,1fr) auto}.clients-table-wrap td[data-label=Projects],.clients-table-wrap td[data-label=Sales]{padding-top:12px}.clients-table-wrap td:nth-child(3),.clients-table-wrap td[data-label="Last Active"]{padding-top:16px}.clients-table-wrap td[data-label=Joined]{padding-top:12px}}.client-workspace{padding-top:4px}.workspace-back{align-items:center;background:#0000;border:none;color:#68717d;color:var(--text-muted);display:inline-flex;font-size:13px;font-weight:600;gap:6px;margin-bottom:16px;padding:4px 0}.workspace-back:hover{color:#111318;color:var(--text)}.workspace-client-header{background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-bottom:none;border-radius:12px 12px 0 0;margin-bottom:0!important;padding:21px 22px 18px}.workspace-client-header .page-title{font-size:24px}.workspace-client-header .page-subtitle{margin-top:6px}.workspace-eyebrow{color:#68717d;color:var(--text-muted);display:block;font-size:10px;font-weight:700;letter-spacing:.1em;margin-bottom:5px;text-transform:uppercase}.workspace-nav{align-items:center;background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:0 0 12px 12px;display:flex;gap:4px;margin-bottom:30px;overflow-x:auto;padding:8px}.workspace-nav-item{align-items:center;border-radius:7px;color:#68717d;color:var(--text-muted);display:inline-flex;font-size:13px;font-weight:600;gap:7px;padding:8px 11px;transition:color .16s ease,background .16s ease;transition:color var(--transition),background var(--transition);white-space:nowrap}.workspace-nav-item:hover{background:#f3f5f8;background:var(--surface2);color:#111318;color:var(--text)}.workspace-nav-item.active{background:#fff0e7;background:var(--accent-soft);color:#bd4f20;color:var(--accent-dark)}.workspace-nav-item .badge{margin-left:2px}.workspace-files-header,.workspace-section-header{align-items:flex-end;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.workspace-section-title{color:#111318;color:var(--text);font-size:18px;font-weight:700;letter-spacing:-.015em}.workspace-files-header .workspace-eyebrow,.workspace-section-header .workspace-eyebrow{margin-bottom:3px}.workspace-project-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-project-card{border-radius:12px;box-shadow:none;min-height:170px;padding:18px!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;transition:transform var(--transition),border-color var(--transition),box-shadow var(--transition)}.workspace-project-card:hover{border-color:#e3743461;box-shadow:none}.workspace-project-card>div:first-child{margin-bottom:14px!important}.workspace-project-card>div:nth-child(2){font-size:15px!important;letter-spacing:-.01em;min-height:19px}.workspace-project-card>div:nth-child(3){line-height:1.4;margin-bottom:12px!important;min-height:36px}.workspace-project-card .badge{padding:3px 8px}.workspace-files-section{margin-top:34px}.workspace-files-header{margin-bottom:12px}.workspace-files-header .workspace-section-title{font-size:16px}.workspace-files-panel{border-radius:12px;box-shadow:none;padding:18px 20px}.workspace-files-panel>div+div{border-top:1px solid #e0e4ea;border-top:1px solid var(--border);padding-top:18px}@media (max-width:680px){.workspace-client-header{padding:18px 16px 15px}.workspace-nav{margin-bottom:24px}.workspace-project-grid{grid-template-columns:1fr}.workspace-files-header,.workspace-section-header{align-items:flex-start}.workspace-files-panel{padding:16px}}.project-page{padding-top:4px}.project-back{align-items:center;background:#0000;border:none;color:#68717d;color:var(--text-muted);display:inline-flex;font-size:13px;font-weight:600;gap:6px;margin-bottom:16px;padding:4px 0}.project-back:hover{color:#111318;color:var(--text)}.project-page-header{align-items:flex-start;background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:12px;margin-bottom:22px!important;padding:20px 22px}.project-page-header .page-title{margin-top:0}.project-page-header .workspace-eyebrow{margin-bottom:4px}.project-client-context{align-items:center;color:#68717d;color:var(--text-muted);display:inline-flex;font-size:11px;font-weight:600;gap:5px;line-height:1.2;margin-bottom:5px}.project-client-context svg{color:#e36d32;color:var(--accent)}.project-client-context strong{color:#111318;color:var(--text);font-weight:700}.project-grid{gap:20px!important;grid-template-columns:minmax(0,1.06fr) minmax(320px,.94fr)!important}.project-work-column{min-width:0}.project-shared-section{margin-bottom:28px}.project-section-header{align-items:center;display:flex;gap:14px;justify-content:space-between;margin-bottom:10px}.project-discussion-heading h3,.project-section-header h3{align-items:center;color:#68717d;color:var(--text-muted);display:inline-flex;font-size:11px;font-weight:700;gap:7px;letter-spacing:.08em;text-transform:uppercase}.project-section-header h3 svg{color:#e36d32;color:var(--accent)}.project-shared-panel{border-radius:10px;box-shadow:none;display:flex;flex-direction:column;gap:4px;padding:8px}.project-shared-empty{color:#68717d;color:var(--text-muted);display:block;font-size:13px;padding:17px}.project-shared-panel>div{background:#0000!important;border:none!important;border-radius:6px;padding:8px 9px!important}.project-shared-panel>div+div{border-top:1px solid #e0e4ea!important;border-top:1px solid var(--border)!important}.project-shared-panel>div:hover{background:#f3f5f8!important;background:var(--surface2)!important}.project-shared-panel .btn-danger{background:#0000;border-color:#0000}.project-milestone-list{display:flex;flex-direction:column;gap:10px}.project-milestone-card{border-radius:10px;box-shadow:none;padding:15px 16px}.project-milestone-card:hover{border-color:#c6cdd6;border-color:var(--border-strong);box-shadow:none;box-shadow:var(--shadow-sm)}.project-milestone-card .badge{text-transform:capitalize}.project-milestone-card .btn-danger{padding-inline:8px}.milestone-content{min-width:0}.milestone-heading{margin-bottom:3px!important;min-height:28px;padding-right:4px}.milestone-heading>span:first-child{color:#111318;color:var(--text);font-size:15px!important;font-weight:700!important;letter-spacing:-.01em}.milestone-actions .btn{height:32px;padding:0;width:32px}.milestone-attachments{border-top:1px solid #e0e4ea;border-top:1px solid var(--border);margin-top:13px;padding-top:11px}.milestone-attachments-heading{align-items:center;color:#68717d;color:var(--text-muted);display:flex;font-size:10px;font-weight:700;gap:10px;justify-content:space-between;letter-spacing:.07em;margin-bottom:8px;text-transform:uppercase}.milestone-attachments-heading>span:first-child{align-items:center;display:inline-flex;gap:5px}.milestone-attachments-heading>span:last-child{align-items:center;background:#f3f5f8;background:var(--surface2);border-radius:999px;color:#303640;color:var(--text-soft);display:inline-flex;font-size:10px;height:20px;justify-content:center;letter-spacing:0;min-width:22px;padding:0 6px}.milestone-file-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}.milestone-file-item{background:#f3f5f8;background:var(--surface2);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:7px;color:#303640!important;color:var(--text-soft)!important;font-size:12px!important;font-weight:550;min-height:36px;min-width:0;padding:7px 7px 7px 9px;transition:background .16s ease,border-color .16s ease,color .16s ease;transition:background var(--transition),border-color var(--transition),color var(--transition);width:100%}.milestone-file-item:hover{background:#fff!important;background:var(--surface)!important;border-color:#c6cdd6;border-color:var(--border-strong);color:#bd4f20!important;color:var(--accent-dark)!important}.milestone-file-item .file-link-download{height:23px;margin-left:3px;width:23px}.milestone-files-toggle{align-items:center;background:#f3f5f8;background:var(--surface2);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:6px;color:#bd4f20;color:var(--accent-dark);display:inline-flex;font-size:12px;font-weight:650;gap:5px;margin-top:9px;padding:7px 10px}.milestone-files-toggle:hover{background:#fff;background:var(--surface);border-color:#c6cdd6;border-color:var(--border-strong);color:#e36d32;color:var(--accent)}.milestone-files-toggle svg{transition:transform .16s ease;transition:transform var(--transition)}.milestone-files-toggle svg.expanded{transform:rotate(180deg)}.milestone-approvals{border-top:1px solid #e0e4ea;border-top:1px solid var(--border);margin-top:11px!important;padding-top:10px}.milestone-approvals>span{border-radius:5px}.project-discussion-panel{background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:12px;box-shadow:none;box-shadow:var(--shadow-sm);padding:14px}.thread-composer-input{flex:1 1;min-width:0;position:relative}.mention-suggestions{background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:8px;bottom:calc(100% + 8px);left:0;max-height:220px;overflow-y:auto;padding:5px;position:absolute;right:0;z-index:30}.mention-suggestion{align-items:center;background:#0000;border:0;border-radius:6px;color:#111318;color:var(--text);display:flex;gap:9px;padding:8px;text-align:left;width:100%}.mention-suggestion.active,.mention-suggestion:hover{background:#f3f5f8;background:var(--surface2)}.mention-suggestion-avatar{align-items:center;background:#fff0e7;background:var(--accent-soft);border-radius:50%;color:#bd4f20;color:var(--accent-dark);display:inline-flex;flex-shrink:0;font-size:10px;font-weight:750;height:27px;justify-content:center;width:27px}.mention-suggestion-copy{display:flex;flex:1 1;flex-direction:column;line-height:1.25;min-width:0}.mention-suggestion-copy strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mention-suggestion-copy small{color:#68717d;color:var(--text-muted);font-size:10px}.mention-suggestion-role{color:#68717d;color:var(--text-muted);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.mention-suggestions-empty{color:#68717d;color:var(--text-muted);font-size:12px;padding:12px;text-align:center}.thread-mention{background:#fff0e7;background:var(--accent-soft);border-radius:4px;color:#bd4f20;color:var(--accent-dark);font-weight:700;padding:1px 3px}.thread-message-bubble.mine .thread-mention{background:#ffffff2e;color:#fff}.project-discussion-heading{margin-bottom:12px!important;padding:1px 3px}.project-discussion-panel>div:last-child{border-radius:9px!important;box-shadow:none}@media (max-width:860px){.project-page-header{padding:18px}.project-discussion-panel{position:static!important}}@media (min-width:861px){.main-content:has(.client-workspace--project){display:flex;flex-direction:column;height:100dvh;min-height:0;overflow:hidden;padding-bottom:76px}.main-content:has(.client-workspace--project)>.client-workspace--project{display:flex;flex:1 1;flex-direction:column;min-height:0}.client-workspace--project>.workspace-back,.client-workspace--project>.workspace-client-header{display:none}.client-workspace--project>.workspace-nav{border-radius:10px;flex-shrink:0;margin-bottom:14px}.client-workspace--project .project-page{display:flex;flex:1 1;flex-direction:column;min-height:0;padding-top:0}.client-workspace--project .project-page-header{flex-shrink:0;margin-bottom:14px!important;padding:14px 18px}.client-workspace--project .project-page-header .page-title{font-size:21px!important}.client-workspace--project .project-page-header .workspace-eyebrow{display:none}.client-workspace--project .project-back{flex-shrink:0;margin-bottom:9px}.client-workspace--project .project-grid{align-items:stretch!important;flex:1 1;min-height:0}.client-workspace--project .project-work-column{height:100%;overflow-y:auto;padding-right:4px;scrollbar-width:thin}.client-workspace--project .project-discussion-panel{display:flex;flex-direction:column;height:100%;min-height:0}.client-workspace--project .project-discussion-panel>div:last-child{display:flex;flex:1 1;height:auto!important;min-height:0}}.file-link-shell{align-items:center;display:inline-flex!important;max-width:100%;min-width:0;position:relative}.file-link-main{align-items:center;cursor:pointer;display:inline-flex;flex:1 1;gap:6px;min-width:0;outline:none}.file-link-main>svg{flex-shrink:0}.file-link-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-link-download{align-items:center;background:#0000;border:1px solid #0000;border-radius:5px;color:#68717d;color:var(--text-muted);display:inline-flex;flex-shrink:0;height:26px;justify-content:center;margin-left:5px;opacity:0;padding:0;pointer-events:none;transform:translateX(3px);transition:opacity .16s ease,transform .16s ease,color .16s ease,background .16s ease,border-color .16s ease;transition:opacity var(--transition),transform var(--transition),color var(--transition),background var(--transition),border-color var(--transition);width:26px}.file-link-shell:focus-within .file-link-download,.file-link-shell:hover .file-link-download{opacity:1;pointer-events:auto;transform:translateX(0)}.file-link-download:hover{background:#fff0e7;background:var(--accent-soft);border-color:#e3743433;color:#bd4f20;color:var(--accent-dark)}.file-link-download:disabled{cursor:wait;opacity:.5}.file-link-main:focus-visible{border-radius:3px;outline:2px solid #e36d32;outline:2px solid var(--accent);outline-offset:3px}.file-viewer-overlay{align-items:center;background:#121418d1;display:flex;inset:0;justify-content:center;padding:18px;position:fixed;z-index:12000}.file-viewer{border:1px solid #ffffff2e;border-radius:12px;box-shadow:none;flex-direction:column;height:min(900px,calc(100dvh - 36px));min-height:0;overflow:hidden;width:min(1120px,100%)}.file-viewer,.file-viewer-header{background:#fff;background:var(--surface);display:flex}.file-viewer-header{align-items:center;border-bottom:1px solid #e0e4ea;border-bottom:1px solid var(--border);flex-shrink:0;gap:18px;justify-content:space-between;min-height:58px;padding:10px 12px 10px 17px}.file-viewer-actions,.file-viewer-title{align-items:center;display:flex}.file-viewer-title{color:#111318;color:var(--text);font-size:14px;font-weight:650;gap:9px;min-width:0}.file-viewer-title svg{color:#e36d32;color:var(--accent);flex-shrink:0}.file-viewer-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-viewer-actions{flex-shrink:0;gap:7px}.file-viewer-close{align-items:center;background:#0000;border:1px solid #0000;border-radius:6px;color:#68717d;color:var(--text-muted);display:inline-flex;height:34px;justify-content:center;padding:0;width:34px}.file-viewer-close:hover{background:#f3f5f8;background:var(--surface2);border-color:#e0e4ea;border-color:var(--border);color:#111318;color:var(--text)}.file-viewer-content{align-items:center;background:#25282d;display:flex;flex:1 1;justify-content:center;min-height:0;overflow:auto}.file-viewer-content-pdf{background:#4a4d52}.file-viewer-content iframe{background:#fff;border:0;height:100%;width:100%}.file-viewer-content img{box-shadow:none;display:block;max-height:100%;max-width:100%;object-fit:contain}.file-viewer-state{align-items:center;color:#fffc;display:flex;flex-direction:column;font-size:13px;gap:12px;justify-content:center;padding:32px;text-align:center}.file-viewer-error span{color:#ffffff9e;line-height:1.5;max-width:420px}@media (hover:none){.file-link-download{opacity:1;pointer-events:auto;transform:none}}@media (max-width:600px){.file-viewer-overlay{padding:0}.file-viewer{border:none;border-radius:0;height:100dvh;width:100%}.file-viewer-header{min-height:56px;padding-left:13px}.file-viewer-actions .btn{padding-inline:9px}}.client-portal-shell{width:100%}.client-portal-content{max-width:1048px!important}.client-portal-nav{border-radius:10px}.client-project-page-header{margin-bottom:18px}.client-project-grid{align-items:start;display:grid}.client-shared-file{border-radius:6px;color:#303640!important;color:var(--text-soft)!important;font-size:12px!important;padding:8px 9px;width:100%}.client-shared-file:hover{color:#bd4f20!important;color:var(--accent-dark)!important}.client-milestone-card{align-items:flex-start}.client-milestone-number{align-items:center;background:#fff0e7;background:var(--accent-soft);border-radius:7px;color:#bd4f20;color:var(--accent-dark);display:inline-flex;flex-shrink:0;font-size:11px;font-weight:750;height:26px;justify-content:center;width:26px}.client-milestone-feedback{border-top:1px solid #e0e4ea;border-top:1px solid var(--border);padding-top:12px}.client-project-discussion{top:0!important}@media (min-width:861px){.client-portal-shell--project{display:flex;flex-direction:column;height:100dvh;min-height:0!important;overflow:hidden}.client-portal-shell--project>.client-portal-header{flex-shrink:0}.client-portal-shell--project>.client-portal-content{display:flex;flex:1 1;flex-direction:column;min-height:0;padding-bottom:18px!important;padding-top:18px!important}.client-portal-shell--project .client-portal-nav{flex-shrink:0;margin-bottom:13px}.client-portal-shell--project .client-project-page{display:flex;flex:1 1;flex-direction:column;min-height:0;padding-top:0}.client-portal-shell--project .project-back{flex-shrink:0;margin-bottom:9px}.client-portal-shell--project .client-project-page-header{flex-shrink:0;margin-bottom:13px;padding:13px 17px}.client-portal-shell--project .client-project-page-header .workspace-eyebrow{display:none}.client-portal-shell--project .client-project-page-header .page-title{font-size:21px!important}.client-portal-shell--project .client-project-grid{align-items:stretch;flex:1 1;min-height:0}.client-portal-shell--project .client-project-work-column{height:100%;min-height:0;overflow-y:auto;padding-right:4px;scrollbar-width:thin}.client-portal-shell--project .client-project-discussion{display:flex;flex-direction:column;height:100%;min-height:0;position:static!important}.client-portal-shell--project .client-project-discussion>div:last-child{display:flex;flex:1 1;height:auto!important;min-height:0}}@media (max-width:860px){.client-portal-content{padding:18px 16px 30px!important}.client-project-page-header{padding:17px}.client-project-grid{grid-template-columns:1fr!important}.client-project-discussion{position:static!important}}.settings-menu{flex-shrink:0;position:relative}.settings-trigger{align-items:center;background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#303640;color:var(--text-soft);display:inline-flex;height:38px;justify-content:center;padding:0;position:relative;transition:color .16s ease,background .16s ease,border-color .16s ease;transition:color var(--transition),background var(--transition),border-color var(--transition);width:38px}.settings-trigger.active,.settings-trigger:hover{background:#fff0e7;background:var(--accent-soft);border-color:#e3743447;color:#bd4f20;color:var(--accent-dark)}.settings-popover{background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:12px;box-shadow:none;max-width:calc(100vw - 20px);overflow:hidden;position:absolute;right:0;width:360px;z-index:4000}.settings-popover-bottom{bottom:calc(100% + 12px)}.settings-popover-top{top:calc(100% + 10px)}.settings-popover-header{background:#f3f5f8;background:var(--surface2);border-bottom:1px solid #e0e4ea;border-bottom:1px solid var(--border);padding:15px 16px}.settings-popover-header div{display:flex;flex-direction:column;gap:2px}.settings-popover-header strong{color:#111318;color:var(--text);font-size:14px}.settings-popover-header span{color:#68717d;color:var(--text-muted);font-size:11px}.settings-section{padding:13px 14px}.settings-section+.settings-section{border-top:1px solid #e0e4ea;border-top:1px solid var(--border)}.settings-section-label{color:#68717d;color:var(--text-muted);display:block;font-size:9px;font-weight:750;letter-spacing:.09em;margin-bottom:8px;text-transform:uppercase}.settings-row,.settings-service-row{align-items:center;display:flex;gap:10px;width:100%}.settings-row{background:#0000;border:none;color:inherit;padding:5px 0;text-align:left}.settings-row-icon{align-items:center;background:#f3f5f8;background:var(--surface2);border-radius:7px;color:#bd4f20;color:var(--accent-dark);display:inline-flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.settings-row-copy{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.settings-row-copy strong{color:#111318;color:var(--text);font-size:12px;font-weight:650}.settings-row-copy small{color:#68717d;color:var(--text-muted);font-size:10px;line-height:1.35}.settings-row-copy small.settings-success,.settings-row-copy small.settings-warning{align-items:center;display:inline-flex;gap:4px}.settings-row-copy small.settings-success{color:#167a55;color:var(--success)}.settings-row-copy small.settings-warning{color:#96620c;color:var(--warning)}.settings-switch{background:#e9edf2;background:var(--surface3);border:1px solid #c6cdd6;border:1px solid var(--border-strong);border-radius:999px;flex-shrink:0;height:22px;position:relative;transition:background .16s ease,border-color .16s ease;transition:background var(--transition),border-color var(--transition);width:38px}.settings-switch>span{background:#fff;background:var(--surface);border-radius:50%;box-shadow:none;box-shadow:var(--shadow-sm);height:14px;left:3px;position:absolute;top:3px;transition:transform .16s ease,background .16s ease;transition:transform var(--transition),background var(--transition);width:14px}.settings-switch.on{background:#e36d32;background:var(--accent);border-color:#e36d32;border-color:var(--accent)}.settings-switch.on>span{background:#fff;transform:translateX(16px)}.settings-storage-heading{align-items:center;display:flex;gap:8px;justify-content:space-between}.settings-storage-heading .settings-section-label{margin-bottom:8px}.settings-storage-heading button{align-items:center;background:#0000;border:none;color:#68717d;color:var(--text-muted);display:inline-flex;justify-content:center;margin-top:-5px;padding:3px}.settings-storage-heading button:hover{color:#bd4f20;color:var(--accent-dark)}.settings-storage-card{align-items:flex-start;background:#f3f5f8;background:var(--surface2);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:8px;display:flex;gap:10px;padding:10px}.settings-storage-content{flex:1 1;min-width:0}.settings-storage-values{align-items:center;display:flex;gap:8px;justify-content:space-between}.settings-storage-values strong{color:#111318;color:var(--text);font-size:12px}.settings-storage-values span{color:#68717d;color:var(--text-muted);font-size:10px}.settings-storage-track{background:#e9edf2;background:var(--surface3);border-radius:999px;height:5px;margin:8px 0 6px;overflow:hidden}.settings-storage-track span{background:#e36d32;background:var(--accent);border-radius:inherit;display:block;height:100%}.settings-storage-content small{color:#68717d;color:var(--text-muted);font-size:10px}.settings-storage-error,.settings-storage-loading{align-self:center;color:#68717d;color:var(--text-muted);font-size:11px;line-height:1.4}.settings-storage-error{color:#c23d35;color:var(--danger)}.spin-icon{animation:spin .8s linear infinite}.mobile-notification-trigger{display:inline-flex}.notification-rail{display:none}.client-portal-content{margin:0 auto;max-width:1100px;padding:28px 24px;width:100%}@media (min-width:1361px){.mobile-notification-trigger{display:none}.notification-rail{background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:12px;box-shadow:0 2px 8px #1118271f;display:flex;flex-direction:column;overflow:hidden;position:fixed;right:16px;width:310px;z-index:45}.notification-rail.admin{bottom:78px;top:16px}.notification-rail.client{bottom:16px;top:76px}.notification-rail-reopen{align-items:center;background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:10px;box-shadow:0 2px 8px #1118271f;color:#303640;color:var(--text-soft);display:inline-flex;height:42px;justify-content:center;position:fixed;right:16px;width:42px;z-index:45}.notification-rail-reopen.admin{top:16px}.notification-rail-reopen.client{top:76px}.notification-rail-reopen>span{align-items:center;background:#e36d32;background:var(--accent);border-radius:8px;color:#fff;display:inline-flex;font-size:9px;font-weight:750;height:17px;justify-content:center;min-width:17px;padding:0 4px;position:absolute;right:-5px;top:-5px}}.notification-rail-header{align-items:center;border-bottom:1px solid #e0e4ea;border-bottom:1px solid var(--border);display:flex;gap:12px;justify-content:space-between;min-height:82px;padding:18px 18px 14px}.notification-rail-eyebrow{color:#68717d;color:var(--text-muted);display:block;font-size:9px;font-weight:750;letter-spacing:.1em;margin-bottom:3px;text-transform:uppercase}.notification-rail-header h2{align-items:center;color:#111318;color:var(--text);display:flex;font-size:16px;gap:7px;letter-spacing:-.02em}.notification-rail-header h2 span{align-items:center;background:#e36d32;background:var(--accent);border-radius:5px;color:#fff;display:inline-flex;font-size:9px;height:19px;justify-content:center;min-width:19px;padding:0 5px}.notification-rail-header-actions{align-items:center;display:flex;gap:6px}.notification-rail-header-actions button{align-items:center;background:#f3f5f8;background:var(--surface2);border:0;border-radius:6px;color:#68717d;color:var(--text-muted);display:inline-flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.notification-rail-header-actions button:hover{color:#e36d32;color:var(--accent)}.notification-rail-search{align-items:center;background:#f3f5f8;background:var(--surface2);border-radius:6px;color:#68717d;color:var(--text-muted);display:flex;flex-shrink:0;gap:8px;margin:8px 12px 12px;padding:8px 10px}.notification-rail-search input{background:#0000;border:0;color:#111318;color:var(--text);font:inherit;font-size:11px;min-width:0;outline:0;width:100%}.notification-rail-search input::placeholder{color:#68717d;color:var(--text-muted)}.notification-rail-feed{flex:1 1;min-height:0;overflow-y:auto;padding:4px 10px 16px}.notification-rail-group{margin-top:8px}.notification-rail-group+.notification-rail-group{border-top:1px solid #e0e4ea;border-top:1px solid var(--border);margin-top:16px;padding-top:13px}.notification-rail-group-title{align-items:center;color:#68717d;color:var(--text-muted);display:flex;font-size:9px;font-weight:750;justify-content:space-between;letter-spacing:.08em;padding:0 4px 7px;text-transform:uppercase}.notification-rail-group-title button{background:#0000;border:0;color:#68717d;color:var(--text-muted);font-size:9px;text-transform:none}.notification-rail-group-title button:hover{color:#e36d32;color:var(--accent)}.notification-rail-item{align-items:flex-start;background:#0000;border:0;border-radius:7px;color:#111318;color:var(--text);display:flex;gap:9px;padding:10px 8px;position:relative;text-align:left;width:100%}.notification-rail-item:hover{background:#f3f5f8;background:var(--surface2)}.notification-rail-item.unread{background:#fff0e7;background:var(--accent-soft)}.notification-rail-item+.notification-rail-item{margin-top:3px}.notification-rail-icon{align-items:center;background:#e9edf2;background:var(--surface3);border-radius:50%;color:#68717d;color:var(--text-muted);display:inline-flex;flex-shrink:0;height:29px;justify-content:center;width:29px}.notification-rail-icon.mention{background:#fff0e7;background:var(--accent-soft);color:#bd4f20;color:var(--accent-dark)}.notification-rail-icon.message{background:#e9edf2;background:var(--surface3);color:#268795;color:var(--accent-secondary)}.notification-rail-icon.todo{background:#e8f7f0;background:var(--success-soft);color:#167a55;color:var(--success)}.notification-rail-icon.file{background:#e9edf2;background:var(--surface3);color:#268795;color:var(--accent-secondary)}.notification-rail-icon.project{background:#fff0e7;background:var(--accent-soft);color:#bd4f20;color:var(--accent-dark)}.notification-rail-icon.update{background:#e9edf2;background:var(--surface3);color:#303640;color:var(--text-soft)}.notification-rail-copy{flex:1 1;min-width:0}.notification-rail-meta{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:3px}.notification-rail-meta strong{color:#303640;color:var(--text-soft);font-size:10px}.notification-rail-meta time{color:#68717d;color:var(--text-muted);flex-shrink:0;font-size:9px;font-weight:500}.notification-rail-text{-webkit-box-orient:vertical;-webkit-line-clamp:3;color:#303640;color:var(--text-soft);display:-webkit-box;font-size:11px;line-height:1.42;overflow:hidden}.notification-unread-dot{background:#e36d32;background:var(--accent);border-radius:50%;flex-shrink:0;height:6px;margin-top:5px;width:6px}.notification-rail-state{align-items:center;color:#68717d;color:var(--text-muted);display:flex;flex-direction:column;gap:6px;justify-content:center;min-height:180px;padding:24px;text-align:center}.notification-rail-state strong{color:#303640;color:var(--text-soft);font-size:12px}.notification-rail-state span:not(.spinner){font-size:10px}@media (max-width:1360px){.mobile-notification-trigger{display:inline-flex}}@media (max-width:1100px){.client-portal-content{padding:22px 18px 84px}}:root[data-theme=dark] body{background:#f8f9fb;background:var(--bg)}:root[data-theme=dark] .btn-danger{border-color:#e0e4ea;border-color:var(--border)}:root[data-theme=dark] .btn-danger:hover{background:#fff0ef;background:var(--danger-soft);border-color:#c6cdd6;border-color:var(--border-strong)}:root[data-theme=dark] .bento-tile.accent-info .tile-icon{background:#e9edf2;background:var(--surface3)}:root[data-theme=dark] .clients-table-wrap tr{background:#fff;background:var(--surface);border-color:#e0e4ea;border-color:var(--border)}:root[data-theme=dark] .clients-table-wrap tr:hover{border-color:#c6cdd6;border-color:var(--border-strong);box-shadow:none}:root[data-theme=dark] .milestone-approvals>span{background:#e8f7f0!important;background:var(--success-soft)!important;border-color:#0000!important;color:#167a55!important;color:var(--success)!important}:root[data-theme=dark] .file-viewer{border-color:#c6cdd6;border-color:var(--border-strong)}:root[data-theme=dark] .modal-overlay{background:#000000b3!important}:root[data-theme=dark] .settings-popover{box-shadow:none}@media (max-width:600px){.settings-popover{width:min(360px,calc(100vw - 16px))}.settings-popover-bottom{bottom:74px;position:fixed;right:8px}.settings-popover-top{position:fixed;right:8px;top:66px}}@media (max-width:860px){.client-workspace--project>.workspace-back,.client-workspace--project>.workspace-client-header{display:none}.client-workspace--project>.workspace-nav{border-radius:10px;margin-bottom:12px}.client-project-grid,.project-grid{grid-gap:16px!important;display:grid!important;gap:16px!important;grid-template-columns:minmax(0,1fr)!important}.client-project-discussion,.client-project-work-column,.project-discussion-panel,.project-work-column{min-width:0;width:100%}.client-project-discussion,.project-discussion-panel{grid-row:1;position:static!important}.client-project-work-column,.project-work-column{grid-row:2}.thread-root{height:clamp(210px,38dvh,400px)!important;min-height:0}.thread-scroll{gap:12px!important;padding:14px 12px 8px!important}.thread-composer{gap:8px!important;padding:10px!important}.workspace-nav{-webkit-overflow-scrolling:touch;margin-bottom:22px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.workspace-nav::-webkit-scrollbar{display:none}.workspace-nav-item{min-height:42px;scroll-snap-align:start}.workspace-project-card{min-height:0;padding:16px!important}.workspace-project-card>div:first-child{margin-bottom:10px!important}.workspace-project-card>div:nth-child(3){margin-bottom:10px!important;min-height:0}.client-project-page-header,.project-page-header{padding:16px}.client-project-page-header .page-subtitle,.project-page-header .page-subtitle{line-height:1.45;max-width:100%}.project-shared-section{margin-bottom:22px}.client-milestone-card,.project-milestone-card{gap:10px;padding:14px}.project-milestone-card{display:block;position:relative}.project-milestone-card .milestone-content{width:100%}.project-milestone-card .milestone-heading{padding-right:88px}.project-milestone-card .milestone-actions{position:absolute;right:14px;top:14px}.milestone-actions .btn{height:40px;width:40px}.milestone-file-item{min-height:44px;padding-block:9px}.milestone-file-item .file-link-download{height:34px;width:34px}.btn{min-height:44px}.btn-sm{font-size:12px;min-height:40px;min-width:40px;padding:8px 12px}.input{min-height:44px}input[type=checkbox]{height:20px;width:20px}input[type=file]{min-height:44px;padding-block:3px}input[type=file]::file-selector-button{margin-right:8px;min-height:36px;padding:7px 11px}.mini-toggle button,.seg-tabs button{min-height:44px}.project-back,.workspace-back{margin-bottom:10px;min-height:40px}.file-link-download{height:36px;width:36px}.modal-footer .btn{flex:1 1}.milestone-editor-header>button{height:44px;width:44px}.milestone-status-option{min-height:48px}.notification-bell-trigger,.settings-trigger{height:44px!important;width:44px!important}.notification-dropdown{left:8px!important;max-height:calc(100dvh - 88px)!important;max-width:none!important;right:8px!important;width:auto!important}.notification-dropdown-bottomBar{bottom:calc(70px + env(safe-area-inset-bottom))!important;top:auto!important}.notification-dropdown-header{bottom:8px!important;top:68px!important}}@media (max-width:600px){.client-portal-header{height:60px!important;padding:0 12px!important}.client-portal-brand{min-width:0}.client-portal-brand-name{display:none}.client-portal-header-actions{gap:6px!important}.admin-bottom-bar{display:flex;justify-content:space-between;min-height:64px;padding:6px 8px max(6px,env(safe-area-inset-bottom))}.bottom-bar-nav{gap:3px}.bottom-nav-item{min-height:44px;min-width:44px;padding:8px}.bottom-bar-actions{gap:3px}.bottom-signout-button{height:44px;padding:0;width:44px}.main-content{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.workspace-client-header{padding:16px 15px 14px}.workspace-client-header .page-title{font-size:21px}.workspace-files-header,.workspace-section-header{gap:10px;margin-bottom:12px}.workspace-files-header .btn,.workspace-section-header .btn{flex-shrink:0}.workspace-files-panel{padding:14px}.clients-table-wrap tr{column-gap:10px;grid-template-areas:"name projects actions" "email projects actions" "manager sales sales" "active joined joined";grid-template-columns:minmax(0,1fr) auto auto;padding:14px;row-gap:2px}.clients-table-wrap td:nth-child(3),.clients-table-wrap td[data-label=Sales]{padding-top:16px}.clients-table-wrap td[data-label="Last Active"],.clients-table-wrap td[data-label=Joined]{padding-top:9px}.clients-table-wrap td[data-label=Actions] .btn-danger{height:40px;width:40px}.project-section-header{margin-bottom:9px}.project-discussion-panel{padding:10px}.milestone-file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-row,.settings-service-row{min-height:44px}.file-viewer-header{gap:8px;min-height:60px;padding:8px 10px}.file-viewer-actions{gap:4px}.file-viewer-close{height:44px;width:44px}.file-viewer-actions .btn{min-width:44px}}@media (max-width:380px){.main-content{padding-left:10px;padding-right:10px}.client-portal-content{padding-left:12px!important;padding-right:12px!important}.client-portal-signout{padding-inline:10px}.thread-composer .btn{padding:0;width:44px}.file-viewer-download-label,.thread-send-label{display:none}.project-page-header{grid-gap:8px;align-items:start;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) 44px;padding:14px}.project-page-header>div{min-width:0}.project-page-header .btn{padding:0;width:44px}.project-delete-label{display:none}}@media (max-width:380px) and (max-height:650px){.client-workspace--project .project-page-header .page-subtitle,.client-workspace--project .project-page-header .workspace-eyebrow{display:none}.client-workspace--project .thread-root{height:166px!important}}.modal.app-modal{background:#fff;background:var(--surface);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;max-height:min(88dvh,780px);max-width:520px;overflow:hidden;padding:0;width:min(520px,calc(100vw - 32px))}.modal.app-modal-sm{max-width:440px}.modal.app-modal-lg{max-width:620px}.app-modal-header{align-items:flex-start;background:#fff;background:var(--surface);border-bottom:1px solid #e0e4ea;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:13px;padding:20px 22px 18px}.app-modal-icon{align-items:center;background:#fff0e7;background:var(--accent-soft);border-radius:9px;color:#bd4f20;color:var(--accent-dark);display:inline-flex;flex-shrink:0;height:38px;justify-content:center;width:38px}.app-modal-tone-success .app-modal-icon{background:#e8f7f0;background:var(--success-soft);color:#167a55;color:var(--success)}.app-modal-tone-warning .app-modal-icon{background:#fff6df;background:var(--warning-soft);color:#96620c;color:var(--warning)}.app-modal-tone-danger .app-modal-icon{background:#fff0ef;background:var(--danger-soft);color:#c23d35;color:var(--danger)}.app-modal-heading{display:flex;flex:1 1;flex-direction:column;min-width:0}.app-modal-eyebrow{color:#68717d;color:var(--text-muted);font-size:9px;font-weight:750;letter-spacing:.09em;margin-bottom:3px;text-transform:uppercase}.app-modal-heading h2{color:#111318;color:var(--text);font-size:19px;font-weight:750;letter-spacing:-.025em;line-height:1.25}.app-modal-heading p{color:#68717d;color:var(--text-muted);font-size:12px;line-height:1.45;margin-top:5px;max-width:470px}.app-modal-close{align-items:center;background:#f3f5f8;background:var(--surface2);border:1px solid #0000;border-radius:8px;color:#68717d;color:var(--text-muted);display:inline-flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.app-modal-close:hover{border-color:#e0e4ea;border-color:var(--border);color:#111318;color:var(--text)}.app-modal-close:focus-visible{outline:2px solid #e36d32;outline:2px solid var(--accent);outline-offset:2px}.app-modal-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 22px 22px}.popup-form{display:flex;flex-direction:column}.popup-form-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.popup-field,.popup-form-grid{margin-bottom:14px}.popup-form-grid .popup-field,.popup-form-grid>div{margin-bottom:0;min-width:0}.popup-form .field-label{color:#303640;color:var(--text-soft);font-size:10px;font-weight:700;letter-spacing:.06em;margin-bottom:6px}.popup-form .input{background:#f3f5f8;background:var(--surface2);min-height:42px}.popup-form textarea.input{line-height:1.5;min-height:92px}.popup-field-help{color:#68717d;color:var(--text-muted);display:block;font-size:10px;line-height:1.4;margin-top:6px}.popup-error,.popup-notice{align-items:flex-start;border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:8px;display:flex;font-size:11px;gap:8px;line-height:1.45;margin-bottom:14px;padding:10px 11px}.popup-error{background:#fff0ef;background:var(--danger-soft);color:#c23d35;color:var(--danger)}.popup-notice-warning{background:#fff6df;background:var(--warning-soft);color:#96620c;color:var(--warning)}.popup-notice-success{background:#e8f7f0;background:var(--success-soft);color:#167a55;color:var(--success)}.popup-notice-danger{background:#fff0ef;background:var(--danger-soft);color:#c23d35;color:var(--danger)}.popup-error svg,.popup-notice svg{flex-shrink:0;margin-top:1px}.app-modal .modal-footer{background:#fff;background:var(--surface);border-top:1px solid #e0e4ea;border-top:1px solid var(--border);bottom:-22px;margin:6px -22px -22px;padding:16px 22px 18px;position:sticky;z-index:2}.app-modal .modal-footer .btn{min-height:40px}.popup-footer-single .btn{width:100%}.btn-danger-solid{align-items:center;background:#c23d35;background:var(--danger);border:1px solid #c23d35;border:1px solid var(--danger);border-radius:6px;border-radius:var(--radius-sm);color:#fff;display:inline-flex;font-size:13px;font-weight:650;gap:8px;justify-content:center;min-height:40px;padding:9px 16px}.btn-danger-solid:hover{filter:brightness(.94)}.popup-credential-card{align-items:flex-start;background:#f3f5f8;background:var(--surface2);border:1px solid #e0e4ea;border:1px solid var(--border);border-radius:9px;display:flex;gap:12px;margin-bottom:14px;padding:14px}.popup-credential-icon{align-items:center;background:#fff;background:var(--surface);border-radius:8px;color:#bd4f20;color:var(--accent-dark);display:inline-flex;flex-shrink:0;height:34px;justify-content:center;width:34px}.popup-credential-card>div{display:flex;flex:1 1;flex-direction:column;min-width:0}.popup-credential-card span{color:#68717d;color:var(--text-muted);font-size:10px;font-weight:650;letter-spacing:.05em;text-transform:uppercase}.popup-credential-card code{color:#111318;color:var(--text);font-size:18px;font-weight:750;letter-spacing:.08em;margin:4px 0;overflow-wrap:anywhere}.popup-credential-card small{color:#68717d;color:var(--text-muted);font-size:10px}.confirm-popup-body{padding-top:14px}.confirm-popup-footer{margin-top:0!important}@media (max-width:640px){.modal-overlay:has(.app-modal){align-items:flex-end!important;padding:0!important}.modal.app-modal,.modal.app-modal-lg,.modal.app-modal-sm{border-bottom:0;border-left:0;border-radius:16px 16px 0 0;border-right:0;max-height:calc(100dvh - 10px);max-width:100%;width:100%}.app-modal-header{gap:10px;padding:16px 15px 14px}.app-modal-icon{border-radius:8px;height:34px;width:34px}.app-modal-heading h2{font-size:18px}.app-modal-heading p{font-size:11px}.app-modal-close{height:44px;margin-top:-5px;width:44px}.app-modal-body{padding:16px 15px calc(16px + env(safe-area-inset-bottom))}.popup-form-grid{gap:14px;grid-template-columns:1fr}.popup-form .input{font-size:16px;min-height:46px}.app-modal .modal-footer{bottom:calc(-16px - env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:8px -15px calc(-16px - env(safe-area-inset-bottom));padding:14px 15px calc(14px + env(safe-area-inset-bottom))}.app-modal .modal-footer.popup-footer-single{grid-template-columns:1fr}.app-modal .modal-footer .btn,.app-modal .modal-footer .btn-danger-solid{min-height:46px;width:100%}}@media (max-width:360px){.app-modal-eyebrow{display:none}.app-modal-header{align-items:center}.app-modal-heading p{margin-top:3px}.popup-credential-card code{font-size:16px}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.6916d4d7.css.map*/