@font-face{font-family:Arkitekt;src:url(/fonts/Arkitekt-Regular.woff2)format("woff2"),url(/fonts/Arkitekt-Regular.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Arkitekt;src:url(/fonts/Arkitekt-Medium.woff2)format("woff2"),url(/fonts/Arkitekt-Medium.woff)format("woff");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Arkitekt;src:url(/fonts/Arkitekt-Medium.woff2)format("woff2"),url(/fonts/Arkitekt-Medium.woff)format("woff");font-weight:700;font-style:normal;font-display:swap}:root{--font-primary:"Arkitekt", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}body{font-family:var(--font-primary);color:#111;background:#faf9f8;margin:0}h1,h2,h3,h4,h5,h6,button,a{font-family:var(--font-primary)}html,body,#root{min-height:100%;margin:0;padding:0}:root{--primary:#f86718;--primary-hover:#d95610;--success:#2a854e;--success-hover:#226f40;--bg-light:#fdf9f5;--sidebar-bg:#fcf4eb;--text-main:#111;--text-muted:#666;--border-color:#e2ded9;--font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}body{margin:0}.portal-app{height:100vh;font-family:var(--font-family);color:var(--text-main);background:#fff;display:flex}.sidebar{background:var(--sidebar-bg);border-right:1px solid var(--border-color);flex-direction:column;width:220px;padding:16px 0;display:flex}.logo-area{padding:0 16px}.logo{align-items:center;margin-bottom:24px;display:flex}.btn-primary{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:600;transition:background-color .2s,color .2s}.btn-primary:hover{background:var(--primary-hover)}.btn-success{background:var(--success);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:600;transition:background-color .2s,color .2s}.btn-success:hover{background:var(--success-hover)}.btn-secondary{color:#333;cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:600;transition:background-color .2s,color .2s,border-color .2s}.btn-secondary:hover{background:#f5f5f5}.btn-small{cursor:pointer;color:#555;background:#fff;border:1px solid #ddd;border-radius:4px;padding:4px 8px;font-size:12px}.nav-menu{flex:1;overflow-y:auto}.nav-group{margin-bottom:16px}.nav-group-title{text-transform:uppercase;color:#888;letter-spacing:.5px;margin-bottom:8px;padding:0 16px;font-size:11px;font-weight:600}.nav-item{cursor:pointer;color:#111;border-left:4px solid #0000;align-items:center;gap:10px;padding:8px 16px 8px 12px;font-size:15px;font-weight:500;transition:background-color .2s,color .2s,border-left-color .2s;display:flex}.nav-item:hover{background:#00000008}.nav-item.active{color:var(--primary);border-left-color:var(--primary);background:#fff3eb;font-weight:600}.nav-icon{width:18px;color:inherit;justify-content:center;align-items:center;display:flex}.sidebar-footer{border-top:1px solid var(--border-color);padding:16px}.btn-upgrade-full{color:#fff;cursor:pointer;background:#d95610;border:none;border-radius:6px;width:100%;margin-bottom:16px;padding:10px;font-weight:700}.user-profile{align-items:center;gap:12px;display:flex}.avatar{color:#fff;background:#111;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:flex}.avatar.small{width:24px;height:24px;font-size:10px}.user-name{font-size:13px;font-weight:700}.user-company{color:#888;font-size:12px}.main-container{background:var(--bg-light);flex-direction:column;flex:1;display:flex;overflow:hidden}.top-banner{color:#fff;background:#222;border-radius:6px;justify-content:center;align-items:center;gap:16px;margin:16px 24px 0;padding:12px 24px;font-size:13px;display:flex}.trial-days{background:#b33a3a;border-radius:12px;align-items:center;gap:6px;padding:4px 8px;font-weight:700;display:inline-flex}.btn-upgrade-banner{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:6px 12px;font-size:12px;font-weight:700}.content-area{flex:1;padding:24px;overflow-y:auto}.view-container{max-width:1000px;margin:0 auto;animation:.6s ease-out forwards fade-in-calm}@keyframes fade-in-calm{0%{opacity:0}to{opacity:1}}.view-header{align-items:center;margin-bottom:24px;display:flex}.view-header h1{margin:0 24px 0 0;font-size:20px}.header-tabs{border:1px solid var(--border-color);background:#fff;border-radius:6px;display:flex;overflow:hidden}.tab-btn{border:none;border-right:1px solid var(--border-color);cursor:pointer;color:#555;background:#fff;padding:6px 16px;font-weight:500;transition:background-color .2s,color .2s}.tab-btn:last-child{border-right:none}.tab-btn.active{color:var(--primary);background:#fce1d1}.sub-tabs{border-bottom:1px solid var(--border-color);margin-bottom:20px;display:flex}.sub-tab{color:#666;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-size:14px;font-weight:600}.sub-tab.active{color:var(--text-main);border-bottom-color:var(--primary)}.timesheet-controls{align-items:center;gap:16px;margin-bottom:20px;display:flex}.btn-add{background:var(--success);color:#fff;cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;font-size:20px;display:flex}.date-picker{border:1px solid var(--border-color);color:#555;cursor:pointer;background:#fff;border-radius:6px;padding:6px 16px;font-size:14px}.ai-input-wrapper{margin-bottom:24px}.input-hint{color:#666;margin:0 0 8px;font-size:13px}.ai-input{border:1px solid var(--border-color);background:#fff;border-radius:20px;align-items:center;padding:4px 4px 4px 16px;display:flex}.ai-input input{border:none;outline:none;flex:1;padding:8px;font-size:14px}.btn-ai-submit{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.ai-icon{align-items:center;display:flex}.week-summary{border-bottom:1px solid var(--primary);margin-bottom:24px;display:flex}.day-col{text-align:center;color:#666;border-bottom:2px solid #0000;flex:1;margin-bottom:-1px;padding:12px 0}.day-col.active-day{color:var(--text-main);border-bottom-color:var(--primary);font-weight:600}.week-total-col{text-align:right;width:100px;padding:12px 0}.day-name{margin-bottom:4px;font-size:13px}.day-total{font-size:13px}.empty-state{text-align:center;background:#f3ebe1;border-radius:8px;flex-direction:column;align-items:center;padding:60px 20px;display:flex}.empty-icon-wrapper{margin-bottom:16px}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:12px;width:600px;max-width:90vw;box-shadow:0 10px 30px #0000001a}.modal-header{border-bottom:1px solid var(--border-color);padding:20px}.modal-header h3{margin:0;font-size:16px}.modal-body{padding:20px}.form-group{margin-bottom:16px}.form-group label{color:#222;margin-bottom:6px;font-size:13px;font-weight:700;display:block}.form-control{border:1px solid #ccc;border-radius:6px;width:100%;padding:10px;font-family:inherit;font-size:14px}.form-control:focus{border-color:var(--primary);outline:none}.form-row{gap:16px;display:flex}.field-hint{color:#666;margin-top:6px;font-size:12px;line-height:1.4}.toggle-group{display:flex}.toggle-btn{color:#333;cursor:pointer;text-align:center;background:#fff;border:1px solid #ccc;flex:1;padding:8px 16px;font-size:14px}.toggle-btn:first-child{border-right:none;border-radius:6px 0 0 6px}.toggle-btn:last-child{border-radius:0 6px 6px 0}.toggle-btn.active{color:var(--primary);border-color:var(--primary);border-right:1px solid var(--primary);z-index:1;background:#fce1d1;position:relative}.row{flex-wrap:wrap;margin-bottom:24px;display:flex}.col-4{flex:0 0 33.3333%;align-self:flex-start;max-width:33.3333%;padding-right:16px}.col-8{flex:0 0 66.6667%;max-width:66.6667%}.timer-input .time-field{text-align:center;height:100%;font-size:24px}.modal-footer{border-top:1px solid var(--border-color);align-items:center;gap:12px;padding:20px;display:flex}.calendar-link{color:#06c;margin-left:auto;font-size:13px;text-decoration:none}.expense-form-card{border:1px solid var(--primary);background:#fdf9f5;border-radius:8px;margin-bottom:24px;padding:24px}.amount-input{background:#fff;border:1px solid #ccc;border-radius:6px;align-items:center;padding:0 10px;display:flex}.amount-input input{border:none;outline:none;flex:1;padding:10px;font-size:18px}.file-upload{flex-direction:column;display:flex}.file-input-wrapper{background:#fff;border:1px solid #ccc;border-radius:6px;align-items:center;gap:12px;padding:8px;display:flex}.file-name{color:#666;font-size:13px}.checkbox-group label{align-items:center;gap:8px;margin-bottom:4px;font-size:14px;font-weight:400;display:flex}.help-text{color:#888;margin-top:4px;margin-left:24px;font-size:12px}.form-actions{gap:12px;margin-top:24px;display:flex}.categories-view{max-width:600px}.category-form{border:1px solid var(--primary);background:#fdf9f5;border-radius:8px;margin-bottom:24px;padding:20px}.assignment-tabs{border-bottom:1px solid #eee;gap:24px;margin-bottom:24px;display:flex}.assignment-tab{color:#666;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 0;font-size:14px;font-weight:500}.assignment-tab.active{color:#111;border-bottom-color:#111;font-weight:600}.assignment-form{border:1px solid var(--primary);background:#fdf9f5;border-radius:8px;max-width:600px;margin-bottom:24px;padding:24px}.user-checkbox-list{background:#fff;border:1px solid #ccc;border-radius:6px;padding:12px}.user-checkbox{cursor:pointer;align-items:center;gap:12px;margin:0;font-size:14px;display:flex}.permissions-group{border-top:1px solid #eee;padding:12px 0}.permissions-header{align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.expand-icon{color:#888;font-size:10px}.perm-count{color:#888;margin-left:auto;font-size:12px}.permissions-list{flex-direction:column;gap:12px;padding-top:12px;padding-left:18px;display:flex}.perm-item{color:#333;cursor:pointer;align-items:center;gap:8px;margin:0;font-size:13px;display:flex}.perm-item.checked{color:#f86718}.perm-item.checked input[type=checkbox]{accent-color:#f86718}.assign-users-toolbar{gap:12px;margin-bottom:16px;display:flex}.assign-users-table{border-collapse:collapse;width:100%;font-size:13px}.assign-users-table th{text-align:left;color:#666;border-bottom:1px solid #eee;padding:12px 8px;font-weight:600}.assign-users-table td{border-bottom:1px solid #eee;padding:12px 8px}.group-row td{background:#fafafa;padding:8px;font-size:12px;font-weight:600}.banner-alert{background:#e8f5e9;border:1px solid #a5d6a7;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px 20px;display:flex}.banner-content{align-items:flex-start;gap:16px;display:flex}.banner-content h4{margin:0 0 4px;font-size:15px}.banner-content p{color:#555;margin:0;font-size:13px}.banner-icon{font-size:24px}.team-stats-bar{border-bottom:1px solid #eee;margin-bottom:20px;padding-bottom:20px}.date-nav{margin-bottom:16px;font-size:14px;font-weight:600}.stats-row{align-items:flex-end;gap:32px;display:flex}.stat-box{flex-direction:column;display:flex}.stat-label{color:#666;margin-bottom:4px;font-size:12px;font-weight:700}.stat-value{font-size:24px;font-weight:700}.stat-legend{flex-direction:column;gap:4px;margin-bottom:4px;font-size:12px;display:flex}.dot{border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.dot.billable{background:#4285f4}.dot.non-billable{background:#90caf9}.stat-progress-bar{flex:1;padding-bottom:6px}.bar-bg{background:#eee;border-radius:4px;height:8px;position:relative}.bar-markers{color:#aaa;justify-content:space-between;margin-top:12px;margin-left:20%;font-size:10px;display:flex}.team-table-controls{gap:12px;margin-bottom:16px;display:flex}.search-box{border:1px solid #ccc;border-radius:6px;flex:1;align-items:center;max-width:300px;padding:4px 12px;display:flex}.search-box input{border:none;outline:none;flex:1;padding:4px;font-size:14px}.team-table{border-collapse:collapse;text-align:left;width:100%}.team-table th{color:#666;border-bottom:1px solid #eee;padding:12px 8px;font-size:12px;font-weight:700}.team-table td{border-bottom:1px solid #eee;padding:16px 8px;font-size:14px}.project-row{transition:background-color .2s}.project-row:hover{background-color:#e6f0fa!important}.employee-info{align-items:center;gap:12px;display:flex}.badge{color:#555;background:#eee;border-radius:10px;padding:2px 6px;font-size:11px}.mini-progress{background:#eee;border-radius:2px;width:100px;height:4px;margin-top:8px}.progress-fill{background:#ddd;border-radius:2px;width:0%;height:100%}.caret{vertical-align:middle;border-top:5px solid;border-left:5px solid #0000;border-right:5px solid #0000;width:0;height:0;margin-left:4px;display:inline-block}.split-btn-group{border-radius:6px;display:inline-flex}.split-btn-main{cursor:pointer;color:#333;background:#f9f9f9;border:1px solid #ccc;border-right:none;border-radius:6px 0 0 6px;padding:8px 16px;font-size:14px;font-weight:600}.split-btn-main:hover{background:#f0f0f0}.split-btn-caret{cursor:pointer;color:#666;background:#f9f9f9;border:1px solid #ccc;border-radius:0 6px 6px 0;align-items:center;padding:8px 12px;display:flex}.split-btn-caret:hover{background:#f0f0f0}.split-btn-option{text-align:left;cursor:pointer;color:#333;background:0 0;border:none;width:100%;padding:8px 16px;font-size:14px;display:block}.split-btn-option:hover:not(.disabled){color:#fff;background:#111}.split-btn-option.danger:hover:not(.disabled){color:#fff;background:#d32f2f}.split-btn-tooltip{color:#fff;white-space:normal;z-index:1000;background:#222;border-radius:4px;width:200px;margin-right:10px;padding:12px;font-size:13px;line-height:1.4;display:none;position:absolute;top:50%;right:100%;transform:translateY(-50%);box-shadow:0 4px 12px #00000026}.split-btn-option-wrapper:hover .split-btn-tooltip{display:block}.tooltip-arrow{border-top:6px solid #0000;border-bottom:6px solid #0000;border-left:6px solid #222;width:0;height:0;position:absolute;top:50%;right:-6px;transform:translateY(-50%)}.team-row{transition:background-color .2s}.team-row:hover{background-color:#e6f0fa!important}.task-row:hover{background-color:#faf9f8}.mobile-header{color:#fff;background-color:#f35d00;justify-content:space-between;align-items:center;padding:12px 16px;display:none}.hamburger-btn{color:#fff;cursor:pointer;background:0 0;border:none;padding:4px;font-size:24px}.mobile-overlay{z-index:1500;background:#00000080;display:none;position:fixed;inset:0}@media (width<=768px){.sidebar{z-index:2000;width:280px;height:100vh;transition:transform .3s;position:fixed;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.mobile-overlay.open{display:block}.mobile-header{display:flex}.main-container{width:100vw}.content-area{padding:16px}table{white-space:nowrap;-webkit-overflow-scrolling:touch;width:100%;display:block;overflow-x:auto}.table-responsive{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.modal-content{width:90%!important;max-width:none!important}.flex-responsive{flex-direction:column!important;align-items:flex-start!important;gap:12px!important}.flex-responsive>*{width:100%!important}}
