:root{color-scheme:light;--bg: #f4f7fa;--panel: #ffffff;--panel-soft: #f8fafc;--nav: #172131;--nav-soft: #263246;--text: #17202a;--muted: #65717f;--line: #d9e1ea;--accent: #4054d6;--accent-blue: #4054d6;--accent-soft: #eef2ff;--danger: #b42318;--success: #087443;--warning: #9a6100;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input{font:inherit}button{border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);cursor:pointer;min-height:36px;padding:0 12px}button:disabled{cursor:default;opacity:.65}.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);height:100vh;overflow:hidden;transition:grid-template-columns .22s ease}.app-shell--collapsed{grid-template-columns:64px minmax(0,1fr)}.sidebar{display:flex;flex-direction:column;background:var(--nav);border-right:1px solid #0f1724;color:#d7dde7;height:100vh;overflow:hidden}.brand{border-bottom:1px solid rgba(255,255,255,.08);padding:16px 14px;display:flex;align-items:center;gap:8px;min-height:72px}.brand-text{flex:1;min-width:0;overflow:hidden}.sidebar-toggle{flex-shrink:0;background:transparent;border:0;border-radius:6px;color:#8f9bad;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:6px}.sidebar-toggle:hover{background:var(--nav-soft);color:#fff}.sidebar--collapsed .brand{justify-content:center;padding:16px 0}.avatar{align-items:center;background:var(--accent);border-radius:8px;color:#fff;display:inline-flex;font-weight:800;height:42px;justify-content:center;width:42px}.brand strong,.profile strong{color:#fff;display:block}.brand span,.profile span{color:#8f9bad;display:block;font-size:12px;letter-spacing:0;text-transform:none}nav{display:grid;gap:6px;padding:18px 14px}.sidebar--collapsed nav{padding:18px 8px}.nav-item{align-items:center;background:transparent;border:0;color:#9ca8b8;display:grid;gap:12px;grid-template-columns:20px 1fr auto;justify-content:start;min-height:40px;padding:0 12px;text-align:left;width:100%}.nav-item--collapsed{grid-template-columns:20px;justify-content:center;padding:0;width:44px;margin:0 auto;border-radius:8px}.nav-item-icon{position:relative;display:flex;align-items:center;justify-content:center}.nav-badge-pip{position:absolute;top:-3px;right:-4px;width:7px;height:7px;border-radius:50%;background:#df5353;border:1.5px solid var(--nav)}.nav-badge-pip--pulse{background:var(--accent);animation:pip-pulse 1.2s ease-in-out infinite}@keyframes pip-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.nav-item:hover,.nav-item.active{background:var(--nav-soft);color:#fff}.nav-item.disabled,.nav-item.disabled:hover{background:transparent;color:#667386;opacity:.55}.nav-badge{align-items:center;border-radius:999px;color:#fff;display:inline-flex;font-size:12px;font-weight:700;height:22px;justify-content:center;min-width:22px;padding:0 7px}.nav-badge.alert{background:#df5353}.nav-badge.count{background:#4054d633;color:#d9defd}.presence-section{padding:12px 16px 8px;border-top:1px solid rgba(255,255,255,.08)}.presence-section--collapsed{padding:12px 0 8px;display:flex;justify-content:center}.presence-section--collapsed .presence-avatars{flex-direction:column;align-items:center}.presence-label{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff6;margin-bottom:8px}.presence-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;flex-shrink:0}.presence-count{color:#fff9}.presence-avatars{display:flex;gap:4px;flex-wrap:wrap}@keyframes bubbleIn{0%{transform:scale(0);opacity:0}55%{transform:scale(1.25);opacity:1}75%{transform:scale(.88)}90%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes bubbleOut{0%{transform:scale(1);opacity:1}20%{transform:scale(1.1) scaleY(.9)}60%{transform:scale(.6) scaleY(.4);opacity:.6}to{transform:scale(0);opacity:0}}.presence-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;cursor:default;border:2px solid #1e2433;flex-shrink:0;animation:bubbleIn .45s cubic-bezier(.34,1.56,.64,1) both}.presence-avatar--leaving{animation:bubbleOut .4s ease-in forwards}.profile{border-top:1px solid rgba(255,255,255,.08);margin-top:auto;padding:18px 22px;position:relative}.sidebar--collapsed .profile{padding:14px 0;display:flex;justify-content:center}.profile-trigger{align-items:center;background:transparent;border:0;color:inherit;cursor:pointer;display:flex;gap:10px;padding:0;text-align:left;width:100%}.sidebar--collapsed .profile-trigger{width:auto}.profile-trigger:hover .avatar{box-shadow:0 0 0 3px #4054d638}.profile-menu{background:#20242b;border:1px solid rgba(255,255,255,.13);border-radius:18px;bottom:74px;box-shadow:0 18px 50px #0000006b;display:grid;gap:4px;left:18px;padding:12px;position:absolute;width:248px;z-index:30}.sidebar--collapsed .profile-menu{left:72px;bottom:14px}.profile-menu-item{align-items:center;background:transparent;border:0;border-radius:12px;color:#f6f8fb;cursor:pointer;display:grid;font-size:15px;font-weight:750;gap:12px;grid-template-columns:22px 1fr auto;min-height:44px;padding:0 10px;text-align:left;width:100%}.profile-menu-item:hover{background:#ffffff12}.profile-menu-item svg{color:#aeb7c5}.profile-menu-bi-info{border-top:1px solid rgba(255,255,255,.08);color:#ffffff59;font-size:.7rem;letter-spacing:.01em;margin-top:4px;padding:8px 10px 2px}.profile-menu-dot{background:#7892ff;border-radius:999px;height:8px;width:8px}.profile-menu-chevron{justify-self:end}.avatar{border-radius:50%;height:36px;width:36px}.workspace{height:100vh;min-width:0;overflow:auto;padding-top:0}.topbar{align-items:center;display:flex;gap:20px;justify-content:flex-start;padding:26px 28px 18px}.topbar h1{font-size:28px;line-height:1.1;margin:0}.topbar p{color:var(--muted);margin:6px 0 0}.error-banner{background:#fff2f0;border:1px solid #ffccc7;border-radius:6px;color:var(--danger);margin:18px 28px 16px;padding:12px 14px}.email-layout{background:var(--panel);border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:390px minmax(0,1fr);height:calc(100vh - 36px);margin:18px 28px;min-height:520px;overflow:hidden}.settings-workspace{display:grid;gap:12px;grid-template-rows:auto minmax(0,1fr);height:100vh;min-height:0;padding:18px 28px}.settings-tabs{align-items:center;display:flex;gap:8px}.settings-tab{align-items:center;display:inline-flex;gap:7px}.settings-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.settings-workspace .email-layout{height:auto;margin:0;min-height:0}.settings-content{display:grid;min-height:0}.settings-content .placeholder{height:100%;margin:0;max-width:none}.system-settings-panel{align-content:start;display:grid;gap:16px;grid-template-rows:auto minmax(0,1fr);min-height:0}.system-settings-heading{align-items:center;display:flex;gap:12px}.system-settings-heading h2{font-size:26px;line-height:1.1;margin:0 0 4px}.system-settings-heading p{color:var(--muted);margin:0}.login-audit-panel .table-wrap{max-height:calc(100vh - 360px);min-height:240px;overflow:auto;overscroll-behavior:contain}.login-audit-panel thead th{position:sticky;top:0;z-index:1}.login-audit-table{min-width:860px}.login-audit-table th,.login-audit-table td{white-space:nowrap}.system-config-panel{max-width:720px}.system-config-grid{display:grid;gap:18px;padding:24px 28px}.system-config-field{color:var(--muted);display:grid;font-size:13px;font-weight:700;gap:8px;text-transform:uppercase}.system-config-field small{color:var(--muted);font-size:13px;font-weight:500;line-height:1.4;text-transform:none}.system-config-input-row{align-items:center;display:flex;gap:10px}.system-config-input-row input{background:#fff;border:1px solid var(--line);border-radius:6px;color:var(--text);font-size:16px;font-weight:700;min-height:40px;padding:8px 10px;width:96px}.system-config-wtr-years{display:flex;gap:24px;margin-top:4px}.system-config-wtr-year{display:grid;gap:6px}.system-config-wtr-year-label{color:var(--muted);font-size:12px;font-weight:600;text-transform:none}.system-config-wtr-year-readonly{color:var(--text);font-size:16px;font-weight:700;padding:8px 0}.system-config-actions{align-items:center;display:flex;gap:10px}.system-config-success{color:var(--success);font-weight:700}.system-config-error{color:var(--danger);font-weight:700}.mail-list{border-right:1px solid var(--line);display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0}.section-toolbar{border-bottom:1px solid var(--line);padding:26px 22px 20px}.section-toolbar h2,.mail-detail h2,.data-panel h2,.placeholder h2{margin:0}.section-toolbar p{color:var(--muted);margin:6px 0 0}.mail-items{display:grid;align-content:start;min-height:0;overflow-y:auto;overscroll-behavior:contain}.mail-item{align-items:center;background:transparent;border:0;border-bottom:1px solid #edf1f5;border-radius:0;display:grid;gap:10px;grid-template-columns:1fr auto;min-height:64px;padding:10px 18px;text-align:left}.mail-item:hover,.mail-item.active{background:var(--accent-soft);box-shadow:inset 4px 0 0 var(--accent)}.mail-copy,.mail-copy strong,.mail-copy small{display:block;min-width:0}.mail-item strong{line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-item small{align-items:center;color:var(--muted);display:flex;gap:8px;justify-content:space-between;margin-top:5px;min-width:0}.mail-item small span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status,.labels span{border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;line-height:1;padding:7px 10px;white-space:nowrap}.status.processed{background:#dff5e9;color:var(--success)}.status.failed{background:#fff0ee;color:var(--danger)}.mail-detail{min-height:0;overflow:hidden;padding:26px 28px}.detail-header{align-items:start;display:flex;gap:18px;justify-content:space-between}.detail-header p{color:var(--muted);line-height:1.45;margin:8px 0 0}.failure-text{color:var(--danger);margin-top:18px}.insight-grid{display:grid;gap:16px;margin-top:28px}.analysis-panel{border-radius:8px;padding:18px}.analysis-panel.warm{background:#fff4d8;border:1px solid #ffc76b}.analysis-panel.cool{background:#dff8f7;border:1px solid #76d8d2}.analysis-panel h3{font-size:14px;letter-spacing:.08em;margin:0 0 14px;text-transform:uppercase}dl{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}dt{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}dd{margin:5px 0 0}.data-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;margin:0 28px 28px;overflow:hidden}.assignments-workspace{display:grid;gap:18px;padding:28px 0 0}.available-consultants-empty .table-wrap{padding:12px 20px}.available-consultants-empty .empty-state{min-height:0;padding:6px 0}.assignments-table{min-width:0;table-layout:auto;text-align:left;width:max-content}.active-assignments-table{min-width:0;width:max-content}.assignments-table th,.assignments-table td{padding:8px 12px;text-align:left}.assignments-table th.col-num,.assignments-table td.col-num{text-align:right}.assignments-table:not(.active-assignments-table) td:nth-child(3){font-weight:400}.assignments-table:not(.active-assignments-table) th:nth-child(1),.assignments-table:not(.active-assignments-table) td:nth-child(1){width:200px}.assignments-table:not(.active-assignments-table) th:nth-child(2),.assignments-table:not(.active-assignments-table) td:nth-child(2){width:130px}.assignments-table:not(.active-assignments-table) th:nth-child(3),.assignments-table:not(.active-assignments-table) td:nth-child(3){width:150px}.assignments-table:not(.active-assignments-table) th:nth-child(4),.assignments-table:not(.active-assignments-table) td:nth-child(4){width:180px}.assignments-table:not(.active-assignments-table) th:nth-child(5),.assignments-table:not(.active-assignments-table) td:nth-child(5){width:560px}.active-assignments-table th,.active-assignments-table td{padding-left:10px;padding-right:10px;width:1%}.active-assignments-table th:first-child,.active-assignments-table td:first-child{padding-left:18px}.active-assignments-table th:last-child,.active-assignments-table td:last-child{padding-right:18px}.assignment-toolbar{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:20px;padding:8px 16px}.assignment-status-filters{align-items:center;display:flex;flex-wrap:wrap;gap:6px;overflow-x:auto}.assignment-status-filters button{align-items:center;background:transparent;border:1px solid transparent;border-radius:999px;color:var(--muted);display:inline-flex;font-size:13px;gap:6px;min-height:30px;padding:4px 10px;white-space:nowrap}.assignment-status-filters button:hover,.assignment-status-filters button.active{background:var(--accent-soft);border-color:#bfdbfe;color:var(--accent)}.assignment-status-filters span{color:inherit;font-size:12px;font-weight:800}.assignment-status-pill{align-items:center;background:#f1f5f9;border-radius:999px;color:var(--muted);display:inline-flex;font-size:12px;font-weight:700;padding:4px 8px;white-space:nowrap}.assignment-status-pill[data-status=Prospekt]{background:#fef9c3;color:#854d0e}.assignment-status-pill[data-status=Pågående]{background:#dcfce7;color:#16723b}.assignment-status-pill[data-status=Offererad]{background:#e0f2fe;color:#0369a1}.assignment-status-pill[data-status=Avböjd],.assignment-status-pill[data-status=Avslutat]{background:#fee2e2;color:#b91c1c}.inline-status-picker .assignment-status-pill{background:inherit;border:none;cursor:pointer;font:inherit;font-size:12px;font-weight:700}.inline-status-picker .assignment-status-pill:hover{filter:brightness(.93)}.assignment-type-pill{align-items:center;background:#e0f2fe;border:none;border-radius:999px;color:#0369a1;cursor:pointer;display:inline-flex;font-size:12px;font-weight:700;padding:4px 8px;white-space:nowrap}.assignment-type-pill[data-type=solution]{background:#f3e8ff;color:#7e22ce}.assignment-type-pill:hover{filter:brightness(.93)}.inline-status-menu{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 16px #0000001a;left:0;min-width:130px;padding:4px;position:absolute;top:calc(100% + 4px);z-index:50}.inline-status-option{background:none;border:none;border-radius:5px;cursor:pointer;display:flex;font-size:13px;padding:6px 10px;text-align:left;width:100%}.inline-status-option:hover{background:var(--accent-soft);color:var(--accent)}.inline-status-option.current{font-weight:600}.assignment-opportunity-label{display:inline-block;max-width:560px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.numeric-cell,.col-num{text-align:right}.col-name,.col-source{vertical-align:top;white-space:nowrap;width:1%}.row-cell-content{align-items:center;display:flex;min-height:38px}.col-uppdrag{text-align:left;width:auto}.active-assignments-table td.col-uppdrag{padding-left:10px}.col-num{text-align:right;white-space:nowrap;width:1%}.col-date,.col-role{text-align:left;white-space:nowrap;width:1%}.col-comment{text-align:left;width:1%}.consultant-inner-row td{border-top:none}.consultant-group-cell{border-top:1px solid var(--line);vertical-align:top}.assignment-cell{align-items:center;display:flex;gap:4px;width:max-content}.assignment-add-inline{background:none;border:1px solid var(--line);border-radius:4px;color:var(--muted);cursor:pointer;font-size:14px;line-height:1;opacity:0;padding:1px 6px;transition:opacity .1s}tr:hover .assignment-add-inline,.assignment-add-inline:focus-visible{opacity:1}.assignment-add-inline:hover{border-color:var(--accent);color:var(--accent)}.assignment-pills{display:flex;flex-direction:column;gap:4px}.assignment-pill{align-items:center;display:flex;gap:4px}.assignment-pill-wrap{align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:5px;display:inline-flex;gap:0}.assignment-pill-wrap:hover{border-color:var(--accent)}.assignment-pill-label{background:none;border:none;border-radius:5px 0 0 5px;color:var(--text);cursor:pointer;font-size:12px;padding:3px 7px;text-align:left;white-space:nowrap}.assignment-pill-wrap:hover .assignment-pill-label{color:var(--accent)}.assignment-pill-remove{background:none;border:none;border-radius:0 5px 5px 0;color:var(--muted);cursor:pointer;font-size:14px;line-height:1;opacity:0;padding:2px 5px 2px 2px;transition:opacity .1s}.assignment-pill-wrap:hover .assignment-pill-remove{opacity:1}.assignment-pill-remove:hover{color:var(--danger)}.assignment-add-btn{background:none;border:none;color:var(--muted);cursor:pointer;font-size:12px;padding:2px 0;text-align:left}.assignment-add-btn:hover{color:var(--accent)}.assignment-inline-value{background:transparent;border:1px solid transparent;border-radius:5px;color:var(--text);cursor:pointer;font:inherit;min-height:30px;max-width:100%;padding:3px 7px;text-align:left}.assignment-inline-value.numeric{text-align:right}.assignment-inline-value:hover,.assignment-inline-value:focus-visible{background:var(--bg);border-color:var(--line);outline:none}.assignment-inline-input{background:var(--panel);border:1px solid var(--accent);border-radius:5px;color:var(--text);font:inherit;min-height:30px;outline:none;padding:3px 7px}.assignment-inline-input-number{text-align:right;width:76px}.assignment-inline-input-date{width:142px}.assignment-inline-input-text{min-width:130px;width:100%}.col-comment .assignment-inline-value{max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignment-action-popover{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 30px #0f172a24;overflow:hidden}.assignment-action-item{background:transparent;border:none;border-radius:0;color:var(--text);display:block;font-size:14px;min-height:0;padding:10px 12px;text-align:left;width:100%}.assignment-action-item:hover{background:var(--accent-soft)}.assignment-action-item.danger{color:var(--danger)}.assignment-action-item.muted{color:var(--muted);font-size:13px}.assignment-reassign-list{display:flex;flex-direction:column;max-height:280px;overflow-y:auto}.assignment-reassign-header{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;padding:8px 12px 4px;text-transform:uppercase}.assignment-reassign-empty{color:var(--muted);font-size:13px;padding:8px 12px}.assignment-end-form{display:grid;gap:10px;padding:12px}.assignment-end-form label{display:grid;gap:6px}.assignment-end-form span{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.assignment-end-form input{border:1px solid var(--line);border-radius:6px;min-height:34px;padding:6px 8px}.assignment-end-form input:focus{border-color:var(--accent);outline:none}.assignment-end-actions{display:flex;gap:6px}.assignment-end-actions button{font-size:13px;min-height:0;padding:6px 10px}.assignment-end-actions button:first-child{background:var(--accent);border-color:var(--accent);color:#fff}.assignment-end-actions button:first-child:disabled{opacity:.5}.contacts-workspace{display:grid;gap:16px;grid-template-rows:auto auto minmax(0,1fr);height:100vh;min-height:0;overflow:hidden;padding:0}.contact-filter{align-items:center;display:flex;gap:12px;margin:0 28px}.mail-selected-button{align-items:center;background:var(--accent);border-color:var(--accent);color:#fff;display:inline-flex;gap:8px;justify-content:center;white-space:nowrap;width:fit-content}.mail-selected-button:disabled{background:#e8eef4;border-color:var(--line);color:var(--muted)}.mail-selected-button.danger-action{background:var(--danger);border-color:var(--danger);color:#fff!important}.filter-input-wrap{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;color:var(--muted);display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;min-height:42px;padding:0 10px 0 12px;width:min(520px,100%)}.filter-input-wrap input{border:0;min-width:0;outline:0;width:100%}.clear-filter{align-items:center;border:0;border-radius:50%;color:var(--muted);display:inline-flex;height:28px;justify-content:center;min-height:28px;padding:0;width:28px}.clear-filter:hover{background:#eef2f6;color:var(--text)}.filter-count{color:var(--muted);font-size:13px;font-weight:700}.contact-detail{background:var(--panel);border:1px solid var(--line);border-radius:8px;margin:0 28px;min-height:224px;padding:18px 22px}.contact-detail-empty{align-items:center;display:flex;justify-content:center}.contact-detail-empty .empty-state,.contact-detail-empty .loading-state{min-height:0}.companies-workspace{display:grid;gap:16px;grid-template-rows:auto auto minmax(0,1fr);height:100vh;min-height:0;overflow:hidden;padding:0}.company-filter{align-items:center;display:flex;gap:12px;margin:0 28px}.company-filter .filter-input-wrap{flex:0 0 minmax(260px,520px);max-width:520px;min-width:260px;width:100%}.company-filter .filter-count{margin-left:auto}.add-company-wrap{position:relative}.add-company-popover{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 16px #0000001f;display:flex;flex-direction:column;gap:8px;min-width:240px;padding:14px;position:absolute;right:0;top:calc(100% + 8px);z-index:30}.add-company-popover input{border:1px solid var(--line);border-radius:4px;font-size:14px;padding:6px 8px;width:100%}.add-company-suggestions{border:1px solid var(--line);border-radius:4px;overflow:hidden}.add-company-suggestion-row{cursor:pointer;font-size:13px;padding:6px 10px}.add-company-suggestion-row:hover{background:#f0f4ff}.company-delete-wrap{position:relative}.company-delete-popover{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 16px #0000001f;left:0;min-width:200px;padding:14px 16px;position:absolute;top:calc(100% + 8px);z-index:20}.company-delete-popover p{color:var(--text);font-size:13px;margin:0 0 12px}.company-delete-popover-actions{display:flex;gap:8px}.company-delete-btn{background:var(--danger);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:6px 14px;white-space:nowrap}.company-delete-btn:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 85%,#000)}.company-delete-btn:disabled{background:var(--line);color:var(--muted);cursor:default}.company-filter .ghost-action{background:transparent;border:1px solid var(--line);border-radius:6px;color:var(--muted);cursor:pointer;font-size:13px;padding:5px 12px}.company-detail{background:var(--panel);border:1px solid var(--line);border-radius:8px;margin:0 28px;padding:20px 24px}.company-detail-empty{align-items:center;display:flex;justify-content:center;min-height:180px}.company-detail-header{align-items:flex-start;display:flex;gap:24px;justify-content:space-between;margin-bottom:20px}.company-detail-fields{display:grid;gap:4px;min-width:0}.company-edit-trigger{cursor:pointer}.company-edit-trigger:hover{opacity:.75}.company-edit-name{font-size:20px;font-weight:700;border:1px solid var(--accent);border-radius:4px;outline:none;padding:2px 6px;width:100%}.company-detail-fields h2{font-size:20px;margin:0}.company-domain-trigger{color:var(--muted);font-size:13px}.company-edit-domain{border:1px solid var(--accent);border-radius:4px;font-size:13px;outline:none;padding:2px 6px;width:280px}.company-detail-right{display:grid;flex-shrink:0;gap:8px}.company-roles-editor{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.role-pill{background:#f0f3f7;border:1px solid var(--line);border-radius:20px;color:var(--muted);cursor:pointer;font-size:12px;font-weight:500;padding:3px 10px;transition:background .1s,color .1s}.role-pill:hover{background:#e4ebf5;color:var(--text)}.role-pill.active{background:#e8f4ff;border-color:#c5ddf4;color:#24577f}.company-labels-editor{align-items:center;display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}.company-label-pill{align-items:center;display:inline-flex;gap:4px;padding-right:4px}.company-label-pill button{background:none;border:none;color:inherit;cursor:pointer;display:flex;min-height:auto;opacity:.6;padding:0}.company-label-pill button:hover{opacity:1}.company-label-input{border:1px solid var(--accent);border-radius:20px;font-size:12px;outline:none;padding:3px 10px;width:110px}.company-label-add{background:none;border:1px dashed var(--line);border-radius:20px;color:var(--muted);cursor:pointer;font-size:12px;min-height:auto;padding:3px 10px}.company-label-add:hover{border-color:var(--accent);color:var(--accent)}.company-detail-sections{column-gap:20px;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:auto 1fr;max-height:40vh;overflow:hidden}.company-detail-section>:not(h3){overflow-y:auto}.company-detail-section{display:grid;grid-row:1 / 3;grid-template-rows:subgrid}.company-detail-section h3{align-items:center;border-bottom:1px solid var(--line);display:flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.04em;margin:0 0 10px;padding-bottom:8px;text-transform:uppercase}.add-contact-wrap{position:relative}.add-contact-btn{align-items:center;background:var(--accent);border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;justify-content:center;line-height:1;padding:2px 7px}.add-contact-btn:hover{background:color-mix(in srgb,var(--accent) 85%,#000)}.tp-row-actions{display:flex;gap:4px;margin-left:auto}.tp-icon-btn{align-items:center;background:transparent;border:1px solid var(--line);border-radius:4px;color:var(--muted);cursor:pointer;display:inline-flex;justify-content:center;padding:4px}.tp-icon-btn:hover{background:var(--bg);color:var(--text)}.tp-icon-btn--danger:hover{background:color-mix(in srgb,var(--danger) 12%,transparent);border-color:var(--danger);color:var(--danger)}.add-contact-popover{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 16px #0000001f;min-width:260px;padding:16px;position:absolute;left:0;top:calc(100% + 8px);z-index:30}.contact-filter-popover{left:auto;right:0;width:min(300px,calc(100vw - 32px))}.merge-contact-popover{background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 28px #0000001f;left:0;padding:14px 16px;position:absolute;top:calc(100% + 6px);width:min(340px,calc(100vw - 32px));z-index:25}.merge-contact-title{font-size:.8rem;font-weight:600;margin:0 0 10px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.merge-contact-option{align-items:flex-start;cursor:pointer;display:flex;gap:8px;margin-bottom:8px}.merge-contact-option input[type=radio]{margin-top:3px;flex-shrink:0}.merge-contact-option span{display:flex;flex-direction:column;font-size:.875rem;gap:2px}.merge-contact-hint{color:var(--muted);font-size:.75rem;margin:10px 0;line-height:1.4}.merge-contact-actions{display:flex;gap:8px;margin-top:12px}.merge-confirm-btn{background:var(--accent);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:6px 14px}.merge-confirm-btn:disabled{opacity:.5;cursor:not-allowed}.merge-confirm-btn.danger-action{background:var(--danger);color:#fff!important}.merge-cancel-btn{background:transparent;border:1px solid var(--line);border-radius:6px;color:var(--text);cursor:pointer;font-size:.875rem;padding:6px 14px}.add-contact-field{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.add-contact-field label{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.add-contact-field input{background:var(--bg);border:1px solid var(--line);border-radius:6px;color:var(--text);font-size:13px;padding:6px 10px;width:100%}.add-contact-field input:focus{border-color:var(--accent);outline:none}.add-contact-error{color:var(--danger);font-size:12px;margin:0 0 8px}.add-contact-actions{display:flex;gap:8px;margin-top:4px}.section-count{background:#e8eef5;border-radius:10px;color:var(--muted);font-size:11px;font-weight:700;padding:1px 7px}.company-detail-empty{color:var(--muted);font-size:13px;margin:0;min-height:0}.company-contacts-list{align-content:start;display:grid;gap:0}.company-contact-row{align-items:baseline;border-bottom:1px solid #f0f3f7;display:grid;gap:0 10px;grid-template-columns:auto auto 1fr auto;padding:7px 0}.company-contact-row:last-child{border-bottom:none}.company-contact-name{font-size:13px;font-weight:600}.company-contact-title{color:var(--muted);font-size:12px}.company-contact-email{color:var(--accent);font-size:12px;overflow:hidden;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.company-contact-email:hover{text-decoration:underline}.time-project-rate-control{justify-self:end;position:relative}.time-project-rate-badge{background:var(--bg);border:1px solid var(--line);border-radius:999px;color:var(--text);cursor:pointer;font-size:12px;padding:3px 10px}.time-project-rate-badge:hover{border-color:var(--accent)}.time-project-rate-popover{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 16px #0000001f;display:grid;gap:10px;max-height:340px;min-width:220px;overflow-y:auto;padding:14px 16px;position:fixed;z-index:200}.time-project-rate-history{color:var(--muted);font-size:12px;list-style:none;margin:0;max-height:100px;overflow-y:auto;padding:0}.time-project-rate-history li{align-items:center;display:flex;gap:6px;justify-content:space-between;padding:2px 0}.time-project-rate-history-remove{align-items:center;background:none;border:none;color:var(--muted);cursor:pointer;display:flex;flex-shrink:0;padding:2px}.time-project-rate-history-remove:hover{color:var(--danger)}.time-project-rate-history-remove:disabled{opacity:.5;pointer-events:none}.time-project-rate-popover-actions{display:flex;gap:8px;justify-content:flex-end}.company-contact-phone{color:var(--muted);font-size:12px;white-space:nowrap}.company-opportunities-list{display:grid;gap:0}.company-opportunity-row{align-items:baseline;border-bottom:1px solid #f0f3f7;display:flex;gap:10px;justify-content:space-between;padding:7px 0}.company-opportunity-row:last-child{border-bottom:none}.company-opportunity-title{font-size:13px;line-height:1.4}.company-opportunity-type-badge{background:#f0f3f7;border-radius:4px;color:var(--muted);font-size:11px;padding:1px 6px;white-space:nowrap}.company-opportunity-date{color:var(--muted);font-size:12px;white-space:nowrap}.companies-panel{display:grid;grid-template-rows:minmax(0,1fr);margin-bottom:18px;min-height:0}.companies-panel .table-wrap{min-height:0;overflow:auto;overscroll-behavior:contain}.companies-panel thead th{position:sticky;top:0;background:var(--panel);z-index:1}.companies-table{border-collapse:collapse;width:max-content}.bi-summary-cell{max-width:170px;overflow:hidden}.bi-summary-snippet{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.8rem;color:var(--text);line-height:1.4;cursor:default}.companies-table tbody tr{cursor:pointer}.companies-table tbody tr:hover td{background:#f6f9fc}.selected-row td{background:#eef4ff!important}.muted-cell{color:var(--muted)}.contact-detail-heading{align-items:start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.contact-detail-heading h2{margin:0}.contact-detail-heading p{color:var(--muted);margin:4px 0 0}.contact-detail-heading button{background:var(--accent);border-color:var(--accent);color:#fff;min-width:92px}.contact-form-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(150px,1fr))}.label-editor{margin-top:14px}.profile-files-section{border-top:1px solid var(--line);margin-top:20px;padding-top:14px}.profile-files-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.profile-files-title{color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.profile-files-upload-btn{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:6px;color:var(--text);cursor:pointer;display:inline-flex;font-size:12px;gap:4px;padding:4px 10px;transition:background .1s}.profile-files-upload-btn:hover{background:var(--bg)}.profile-files-upload-btn.uploading{color:var(--muted);cursor:default}.profile-files-empty{color:var(--muted);font-size:13px;margin:0}.profile-files-error{color:var(--danger);font-size:12px;line-height:1.4;margin:0 0 8px}.profile-files-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.profile-files-item{align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:6px;display:flex;gap:8px;justify-content:space-between;padding:8px 10px}.profile-files-item-info{display:flex;flex-direction:column;gap:2px;min-width:0}.profile-files-item-name{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-files-download-btn{background:none;border:none;color:var(--accent);cursor:pointer;padding:0;text-align:left}.profile-files-download-btn:hover{text-decoration:underline}.profile-files-item-meta{color:var(--muted);font-size:11px}.profile-files-delete-btn{align-items:center;background:none;border:none;border-radius:4px;color:var(--muted);cursor:pointer;display:flex;flex-shrink:0;height:24px;justify-content:center;padding:0;width:24px}.profile-files-delete-btn:hover{background:#fce8e8;color:var(--danger)}.delete-popover{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 16px #0000001f;min-width:200px;padding:12px 14px;position:absolute;right:0;top:calc(100% + 6px);z-index:20}.delete-popover p{color:var(--text);font-size:13px;margin:0 0 10px}.delete-popover-actions{display:flex;gap:8px}.btn-danger-sm{background:var(--danger);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;padding:5px 12px}.label-input-shell{align-items:center;border:1px solid var(--line);border-radius:6px;display:flex;flex-wrap:wrap;gap:6px;min-height:42px;padding:5px 8px}.label-input-shell input{border:0;flex:1 1 180px;height:28px;min-width:140px;outline:0;padding:0 4px}.editable-label{align-items:center;background:#e8eef4;border-radius:999px;color:#516174;display:inline-flex;font-size:12px;font-weight:700;gap:4px;line-height:1;padding:7px 9px;white-space:nowrap}.editable-label button{align-items:center;background:#5161741f;border:0;border-radius:50%;color:#516174;display:inline-flex;height:16px;justify-content:center;min-height:16px;opacity:0;padding:0;width:16px}.editable-label:hover button,.editable-label button:focus-visible{opacity:1}.label-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.label-suggestions button{background:var(--panel-soft);color:var(--muted);min-height:28px;padding:0 9px}.field{display:grid;gap:5px;min-width:0}.field span{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.field input{border:1px solid var(--line);border-radius:6px;height:38px;min-width:0;padding:0 10px;width:100%}.field.field-error input{border-color:var(--danger)}.field-error-msg{color:var(--danger)!important;font-size:11px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important}.panel-heading{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:18px 22px}.panel-heading span{color:var(--muted);font-weight:700}.table-wrap{overflow-x:auto}.contacts-panel{display:grid;grid-template-rows:minmax(0,1fr);margin-bottom:18px;min-height:0}.contacts-panel .table-wrap{min-height:0;overflow:auto;overscroll-behavior:contain}.contacts-panel thead th{position:sticky;top:0;z-index:1}table{border-collapse:collapse;min-width:600px;table-layout:fixed;width:100%}th,td{border-bottom:1px solid var(--line);padding:14px 18px;text-align:left;vertical-align:middle}th{background:#f1f5f9;color:var(--muted);font-size:13px;letter-spacing:.04em;text-transform:uppercase;position:relative}td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}td small{color:var(--muted);display:block;margin-top:4px}.contacts-table{min-width:1592px}.contacts-table .selection-column,.companies-table .selection-column{width:52px}.selection-cell{padding-left:18px;padding-right:8px;text-align:center}.selection-cell input{accent-color:var(--accent);cursor:pointer;height:16px;width:16px}.table-link{color:var(--accent-blue);font-weight:700;text-decoration:none}.table-link:hover{text-decoration:underline}.contact-table-link{color:inherit;text-decoration:none}@media (max-width: 768px){.contact-table-link{color:var(--accent);text-decoration:underline}}.contacts-table tbody tr{cursor:pointer}.contacts-table tbody tr:hover,.contacts-table tbody tr.selected-row{background:var(--accent-soft)}.sort-header{align-items:center;background:transparent;border:0;border-radius:0;color:inherit;display:inline-flex;font-size:inherit;font-weight:inherit;gap:6px;min-height:auto;padding:0;text-transform:inherit}.resize-handle{bottom:0;cursor:col-resize;position:absolute;right:0;top:0;width:8px}.resize-handle:hover{background:#0f766e24}.labels{display:flex;flex-wrap:nowrap;gap:6px;min-width:0;overflow:hidden;white-space:nowrap}.labels span{background:#e8eef4;color:#516174;flex:0 0 auto;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.muted{color:var(--muted)}.overview-workspace{display:grid;gap:24px;height:100vh;overflow:auto;padding:28px}.overview-hero{align-items:flex-end;display:flex;gap:22px;justify-content:space-between;margin-bottom:22px}.eyebrow{color:#a0a8b2;font-size:12px;font-weight:800;letter-spacing:.14em;margin:0 0 8px;text-transform:uppercase}.overview-hero h1{font-size:30px;line-height:1.08;margin:0}.overview-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.scope-toggle{background:#e9eef5;border:1px solid var(--line);border-radius:8px;display:inline-flex;padding:3px}.scope-toggle button{align-items:center;background:transparent;border:0;border-radius:6px;color:var(--muted);display:inline-flex;gap:6px;min-height:32px}.scope-toggle button.active{background:var(--panel);color:var(--text);box-shadow:0 1px 2px #0f172a14}.primary-action,.secondary-action{align-items:center;display:inline-flex;gap:7px;white-space:nowrap}.primary-action{background:var(--accent);border-color:var(--accent);color:#fff}.secondary-action{background:var(--panel)}.overview-summary,.metric-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 20px}.metric,.placeholder{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:22px}.metric span{color:var(--muted);display:block}.metric strong{display:block;font-size:34px;margin-top:8px}.priority-section{display:grid;gap:14px}.priority-heading{align-items:center;display:flex;gap:10px}.section-action{font-size:13px;margin-left:auto;min-height:30px;padding:4px 10px;white-space:nowrap}.priority-heading h2{font-size:18px;margin:0}.priority-heading small{background:#e8eef4;border:1px solid #cad5e1;border-radius:6px;color:var(--muted);font-weight:800;padding:4px 8px}.tm-request-grid{display:grid;align-items:stretch;gap:16px;grid-template-columns:repeat(2,minmax(0,calc((100% - 16px)/2)));justify-content:start}.tm-request-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;grid-column:auto;grid-template-rows:auto auto auto minmax(44px,auto) auto auto auto;min-height:286px;padding:16px 18px;position:relative}.tm-request-card:only-child,.tm-request-card:nth-child(odd):last-child{grid-column:auto}.tm-request-card.urgent{border-color:#ffaaa3;box-shadow:0 0 0 1px #e5484814}.tm-request-card.urgent:before{background:#e54848;border-radius:8px 8px 0 0;content:"";height:3px;left:16px;position:absolute;right:16px;top:0}.tm-card-top,.tm-actions,.tm-facts,.tm-skills{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.tm-card-top{align-items:flex-start;justify-content:space-between;min-height:34px}.tm-badges{display:flex;flex-wrap:wrap;gap:6px;min-width:0;padding-top:2px}.badge{border-radius:5px;font-size:12px;font-weight:800;line-height:1;padding:6px 8px;text-transform:uppercase}.badge.danger{background:#fff0ee;border:1px solid #ffb4ad;color:var(--danger)}.badge.neutral{background:#eef6ff;border:1px solid #b9dcff;color:#0f5d9a}.badge.positive{background:#eafaf1;border:1px solid #a6e6c3;color:var(--success)}.badge.soft{background:var(--accent-soft);border:1px solid #c7d2fe;color:var(--accent);text-transform:none}.deadline{color:var(--success);display:grid;flex:0 0 136px;gap:2px;justify-items:end;line-height:1.15}.deadline.urgent{color:var(--danger)}.deadline span{color:var(--muted);font-size:12px}.tm-title{color:var(--text);display:block;font-size:18px;font-weight:800;justify-self:start;line-height:1.25;margin:0;min-height:45px;padding:0;width:100%}.tm-title-input{border:1px solid var(--accent);border-radius:6px;color:var(--text);display:block;font-size:18px;font-weight:800;line-height:1.25;margin:0;outline:none;padding:4px 8px;width:100%}.tm-customer-wrapper{position:relative}.tm-customer,.tm-summary,.tm-owner{color:var(--muted);margin:0}.company-picker-field{position:relative}.company-picker-trigger{background:var(--bg);border:1px solid var(--line);border-radius:6px;color:var(--text);cursor:pointer;font-size:14px;height:36px;padding:0 10px;text-align:left;width:100%}.company-picker-trigger:hover{border-color:var(--accent)}.company-picker-trigger.empty{color:var(--muted)}.contact-picker{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 20px #0000001f;left:0;min-width:260px;position:absolute;top:calc(100% + 4px);z-index:20}.contact-picker-search{border:none;border-bottom:1px solid var(--line);border-radius:8px 8px 0 0;display:block;outline:none;padding:10px 12px;width:100%}.contact-picker-list{max-height:220px;overflow-y:auto;padding:4px 0}.contact-picker-none,.contact-picker-item{background:transparent;border:none;border-radius:0;display:block;min-height:0;padding:8px 12px;text-align:left;width:100%}.contact-picker-none{color:var(--muted);font-size:13px}.contact-picker-none:hover,.contact-picker-item:hover,.contact-picker-item.selected{background:var(--accent-soft)}.contact-picker-name{display:block;font-size:14px;font-weight:500}.contact-picker-company{color:var(--muted);display:block;font-size:12px}.contact-picker-empty{color:var(--muted);font-size:13px;margin:0;padding:8px 12px}.contact-picker-add{background:transparent;border:none;border-top:1px solid var(--line);border-radius:0 0 8px 8px;color:var(--accent);display:block;font-size:13px;min-height:0;padding:8px 12px;text-align:left;width:100%}.contact-picker-add:hover{background:var(--accent-soft)}.contact-picker-create-form{border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px;padding:10px 12px}.contact-picker-create-form input{border:1px solid var(--line);border-radius:6px;outline:none;padding:6px 8px;width:100%}.contact-picker-create-form input:focus{border-color:var(--accent)}.contact-picker-create-actions{display:flex;gap:6px;margin-top:2px}.contact-picker-create-actions button{font-size:13px;min-height:0;padding:5px 10px}.contact-picker-create-actions button:first-child{background:var(--accent);border-color:var(--accent);color:#fff}.contact-picker-create-actions button:first-child:disabled{opacity:.5}.assignment-create-company-list{border:1px solid var(--line);border-radius:6px;max-height:116px;overflow-y:auto}.assignment-create-company-list button{background:transparent;border:none;border-radius:0;display:block;font-size:13px;min-height:0;padding:6px 8px;text-align:left;width:100%}.assignment-create-company-list button:hover{background:var(--accent-soft)}.assignment-create-clear-company{align-self:flex-start;background:transparent;border:none;color:var(--accent);font-size:12px;min-height:0;padding:0}.tm-summary{line-height:1.35;min-height:44px}.tm-owner{font-size:13px;min-height:18px}.tm-facts{align-content:flex-start;border-top:1px solid #edf1f5;color:var(--muted);font-size:13px;min-height:64px;padding-top:11px}.tm-facts button{background:#f6f8fb;border:0;border-radius:999px;color:var(--muted);min-height:0;padding:5px 8px}.tm-facts button[data-filled]{background:#e8f4ff;border:1px solid #c5ddf4;color:#24577f}.inline-edit{background:transparent;border:0;border-radius:5px;cursor:pointer;text-align:left}.inline-edit:hover,.tm-facts button:hover{background:var(--accent-soft)}.deadline .inline-edit{color:inherit;display:grid;gap:2px;justify-items:end;min-height:0;padding:0;text-align:right;width:100%}.deadline .inline-edit strong,.deadline .inline-edit span{display:block;width:100%}.deadline-picker{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.deadline-picker input[type=date]{border:1px solid var(--line);border-radius:6px;font-size:13px;min-height:0;padding:4px 8px}.deadline-picker-actions{display:flex;gap:4px}.deadline-picker-actions button{font-size:12px;min-height:0;padding:4px 10px}.deadline-picker-actions button:first-child{background:var(--accent);border-color:var(--accent);color:#fff}.tm-skills span{background:#e8f4ff;border:1px solid #c5ddf4;border-radius:999px;color:#24577f;font-size:12px;font-weight:700;padding:5px 8px}.tm-skills{align-content:flex-start;min-height:30px}.tm-actions{align-self:end;align-items:center;min-height:38px;gap:12px}.tm-actions .ghost-action,.tm-actions .tm-assign-wrapper{opacity:0;transition:opacity .15s}.tm-request-card:hover .tm-actions .ghost-action,.tm-request-card:has(.tm-actions :focus-visible) .tm-actions .ghost-action,.tm-request-card:hover .tm-actions .tm-assign-wrapper,.tm-request-card:has(.tm-actions :focus-visible) .tm-actions .tm-assign-wrapper,.tm-actions .offered-action.active,.tm-actions .tm-assign-wrapper.assigned,.tm-actions .tm-assign-wrapper.assigned .assign-action{opacity:1}.tm-actions .ghost-action{min-height:36px}.tm-assign-wrapper{position:relative}.tm-assign-wrapper .contact-picker{bottom:calc(100% + 4px);left:0;top:auto;width:320px;z-index:30}.ghost-action{border-color:transparent;color:var(--muted)}.offered-action{align-items:center;display:inline-flex;gap:8px;justify-content:flex-start}.offered-check{opacity:0}.offered-action.active{color:#0f8a45}.offered-action.active .offered-check{opacity:1}.assign-action{align-items:center;display:inline-flex;gap:8px;justify-content:flex-start}.assign-check{opacity:0}.assign-action.active{color:#0f8a45}.assign-action.active .assign-check{opacity:1}.danger-action{color:var(--danger)!important}.card-menu{margin-left:auto;position:relative}.icon-action{align-items:center;display:inline-flex;justify-content:center;min-height:36px;padding:0;width:36px}.card-menu-popover{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 32px #0f172a2e;display:grid;min-width:150px;padding:6px;position:absolute;right:0;top:calc(100% + 6px);z-index:20}.card-menu-popover button{border:0;justify-content:start;text-align:left}.card-menu-popover button:hover{background:#f3f6fa}.card-menu-popover .danger-menu-item{color:var(--danger)}.tm-empty-state{background:#f8fafc;border:1px dashed #c9d5e2;border-radius:8px;display:grid;gap:12px;padding:24px}.tm-empty-state h3,.tm-empty-state p{margin:0}.tm-empty-state p{color:var(--muted);max-width:760px}.tm-empty-actions{display:flex;flex-wrap:wrap;gap:10px}.new-opportunity-backdrop{align-items:center;background:#0f172a66;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:100}.new-opportunity-dialog{background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 60px #0f172a33;display:grid;gap:20px;padding:28px;max-width:480px;max-height:82vh;overflow:auto;width:calc(100vw - 32px)}.new-opportunity-dialog h2{font-size:18px;margin:0}.new-opportunity-field{display:grid;gap:6px}.new-opportunity-field label{color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.new-opportunity-field input[type=text]{background:#f6f8fb;border:1px solid var(--line);border-radius:6px;font-size:14px;outline:none;padding:8px 10px;transition:border-color .1s;width:100%}.new-opportunity-field input[type=text]:focus{border-color:var(--accent)}.new-opportunity-selected-company{align-items:center;background:#e8f4ff;border:1px solid #c5ddf4;border-radius:6px;color:#24577f;display:flex;font-size:14px;gap:6px;padding:6px 10px}.new-opportunity-selected-company span{flex:1}.new-opportunity-selected-company button{background:none;border:none;color:inherit;cursor:pointer;line-height:1;min-height:auto;opacity:.6;padding:0}.new-opportunity-selected-company button:hover{opacity:1}.new-opportunity-new-company{background:#f0faf4;border-color:#9dd6b8;color:#0b7a50}.new-opportunity-company-picker{position:relative}.new-opportunity-company-list{background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px #0f172a1f;display:grid;margin-top:4px;max-height:200px;overflow-y:auto;padding:4px;position:absolute;width:100%;z-index:10}.new-opportunity-company-list button{border:none;border-radius:4px;font-size:13px;justify-content:start;padding:7px 10px;text-align:left}.new-opportunity-company-list button:hover{background:#f3f6fa}.new-opportunity-create-company{color:var(--accent)!important;font-style:italic}.new-opportunity-hint{color:var(--muted);font-size:12px;margin:0}.new-opportunity-required{color:var(--danger)}.new-opportunity-validation,.new-opportunity-submit-error{color:var(--danger);font-size:12px;margin:0}.new-opportunity-field input.input-error{border-color:var(--danger)}.new-opportunity-actions{display:flex;gap:8px}.relationship-section{display:grid;gap:14px}.relationship-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.relationship-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:112px 1fr;overflow:hidden}.relationship-card-header{align-items:flex-start;border-bottom:1px solid #edf1f5;display:flex;gap:12px;height:112px;padding:22px 22px 0}.relationship-card-header>div{flex:1}.relationship-card-header svg{color:var(--accent);flex:0 0 auto}.relationship-card-partner .relationship-card-header{background:#eef4ff;border-bottom-color:#cbd9f8}.relationship-card-partner .relationship-card-header svg{color:#4054d6}.relationship-card-partner .section-action{background:#d4e2fc;border-color:#96aef0;color:#3048c4}.relationship-card-partner .section-action:hover{background:#c2d3f8}.relationship-card-solution .relationship-card-header{background:#fff6df;border-bottom-color:#f2d79d}.relationship-card-solution .relationship-card-header svg{color:#b57900}.relationship-card-solution .section-action{background:#fce8b0;border-color:#e8c56a;color:#9a6600}.relationship-card-solution .section-action:hover{background:#f9dd94}.relationship-card-strategic .relationship-card-header{background:#eaf8f0;border-bottom-color:#bfe6d1}.relationship-card-strategic .relationship-card-header svg{color:#0b8f65}.relationship-card-strategic .section-action{background:#c2edda;border-color:#7fcfaa;color:#0a7a57}.relationship-card-strategic .section-action:hover{background:#aee5cc}.rel-company-picker{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #0000001f;display:flex;flex-direction:column;gap:6px;max-height:320px;min-width:260px;overflow:hidden;padding:12px;z-index:60}.rel-picker-label{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.06em}.rel-picker-title,.rel-picker-search{background:var(--bg);border:1.5px solid var(--accent);border-radius:6px;font-size:14px;outline:none;padding:7px 10px;width:100%}.rel-picker-title--required{border-color:var(--line)}.rel-picker-list{display:flex;flex-direction:column;overflow-y:auto}.rel-picker-list button{background:none;border:none;border-radius:5px;cursor:pointer;font-size:14px;padding:8px 10px;text-align:left}.rel-picker-list button:hover{background:var(--bg)}.rel-picker-create{color:var(--accent);font-style:italic}.rel-picker-empty{color:var(--muted);font-size:13px;padding:8px 10px}.relationship-card-header h3,.relationship-card-header p{margin:0}.relationship-card-header h3{font-size:18px;line-height:1.2}.relationship-card-header p,.relationship-meta,.relationship-item-top span,.relationship-goal{color:var(--muted)}.relationship-items{align-content:start;display:grid;padding:0 18px 4px}.relationship-item{display:grid;gap:8px;padding:20px 0}.relationship-item:not(:last-child){box-shadow:0 1px #bfccd7,0 2px #ffffffd9,0 4px 6px -3px #00000017}.relationship-item-top{align-items:center;display:flex;gap:12px;justify-content:space-between}.relationship-item-top div{display:grid;gap:2px;min-width:0}.relationship-item-top strong{font-size:16px}.relationship-badge,.relationship-health{align-items:center;border-radius:6px;display:inline-flex;flex:0 0 auto;font-size:12px;font-weight:800;line-height:1;padding:6px 8px}.relationship-health:before{border-radius:999px;content:"";height:8px;margin-right:7px;width:8px}.relationship-badge.good,.relationship-badge.warm{background:#e8f4ff;border:1px solid #b9dcff;color:#0f5d9a}.relationship-badge.risk{background:#e5fbfa;border:1px solid #9de6df;color:#08756d}.relationship-health.good:before{background:var(--success)}.relationship-health.warm:before{background:#c47a00}.relationship-health.risk:before{background:var(--danger)}.relationship-meta,.relationship-action{margin:0}.relationship-action{color:var(--text);line-height:1.35}.relationship-progress{background:#eef1f4;border-radius:999px;height:4px;overflow:hidden}.relationship-progress span{background:#b77900;display:block;height:100%}.relationship-footer{align-items:center;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto}.relationship-due{font-weight:800}.relationship-due.good{color:var(--success)}.relationship-due.warm{color:#b77900}.relationship-due.risk{color:var(--danger)}.relationship-goal{background:#f8fafc;border-radius:5px;grid-column:1 / -1;justify-self:start;padding:4px 6px}.compact-action{min-height:34px;padding:7px 12px}.relationship-health{cursor:pointer}.partner-item{align-self:start;gap:10px}.bi-summary{margin:0}.bi-summary-text{color:var(--text);font-size:12px;line-height:1.5;margin:0 0 2px}.bi-summary-date{color:var(--muted);font-size:11px}.bi-summary-date--fresh{color:#1a7a3a;font-weight:500}.bi-source-link{color:var(--accent);text-decoration:underline;text-underline-offset:2px;word-break:break-word}.bi-summary--empty{color:var(--muted);font-size:12px;font-style:italic;line-height:1.5;opacity:.7}.partner-note{border:1px solid var(--line);border-radius:6px;color:var(--text);font-family:inherit;font-size:14px;line-height:1.4;min-height:52px;padding:7px 10px;resize:vertical;width:100%}.partner-note:focus{border-color:var(--accent);outline:none}.partner-note::placeholder{color:var(--muted)}.partner-followup{display:flex;justify-content:flex-end}.partner-date-trigger{align-items:center;border:0;cursor:pointer;display:inline-flex;gap:5px;min-height:unset;padding:4px 8px}.partner-followup-menu{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 16px #0000001f;min-width:180px;padding:4px;z-index:50}.partner-followup-menu button{border:0;border-radius:6px;color:var(--text);display:block;font-size:14px;min-height:34px;padding:6px 10px;text-align:left;width:100%}.partner-followup-menu button:hover{background:var(--bg)}.partner-clear-date{border-top:1px solid var(--line)!important;color:var(--muted)!important;font-size:13px!important;margin-top:2px}.partner-date-pill{border-radius:6px;font-size:12px;font-weight:700;padding:4px 8px;white-space:nowrap}.partner-date-pill.upcoming{background:#dcfce7;color:#166534}.partner-date-pill.overdue{background:#fee2e2;color:#991b1b}.partner-date-pill.empty{background:transparent;border:1px dashed var(--line);color:var(--muted);font-weight:600}.relationship-empty{color:var(--muted);font-size:14px;padding:24px 0;text-align:center}.strategic-potential{align-items:center;border:1px solid;border-radius:6px;cursor:pointer;display:inline-flex;font-size:12px;font-weight:800;padding:5px 9px}.potential-high{background:#dcfce7;border-color:#86efac;color:#166534}.potential-medium{background:#fef9c3;border-color:#fde047;color:#854d0e}.potential-low{background:#f1f5f9;border-color:#cbd5e1;color:#64748b}.strategic-goal-input{border:1px solid var(--line);border-radius:6px;color:var(--text);font-family:inherit;font-size:14px;min-height:36px;padding:6px 10px;width:100%}.strategic-goal-input:focus{border-color:var(--accent);outline:none}.strategic-goal-input::placeholder{color:var(--muted)}.solution-secondary-row{align-items:center;display:flex;justify-content:space-between}.solution-company-name{color:var(--muted);font-size:12px}.solution-phase-badge{align-items:center;background:#e8f0fe;border:1px solid #b6ccfa;border-radius:6px;color:#2d4faa;cursor:pointer;display:inline-flex;font-size:12px;font-weight:800;gap:4px;padding:5px 9px}.solution-phase-badge:hover{background:#d4e4fd}.solution-phase-badge[data-phase="Avtalat uppdrag"]{background:#e6f4ea;border-color:#a8d5b5;color:#1e6e3a}.solution-phase-badge[data-phase="Inget uppdrag"]{background:#f5f5f5;border-color:#ccc;color:#888}.partner-followup-menu button[data-phase="Avtalat uppdrag"]{color:#1e6e3a}.partner-followup-menu button[data-phase="Inget uppdrag"]{color:#888}.active-phase{font-weight:800!important;color:var(--accent)!important}.solution-metrics{align-items:center;display:flex;gap:8px;justify-content:space-between}.solution-metric-input{border:1px solid var(--line);border-radius:6px;color:var(--text);font-family:inherit;font-size:14px;min-height:36px;padding:6px 10px}.solution-metric-input:focus{border-color:var(--accent);outline:none}.solution-metric-input::placeholder{color:var(--muted)}.solution-chance-wrap{align-items:center;display:flex;flex-shrink:0;gap:4px}.solution-chance-input{text-align:right;width:58px}.solution-chance-unit{color:var(--muted);font-size:14px;font-weight:600}.solution-value-input{flex:1;text-align:right}.solution-value-display{background:none;border:none;border-radius:4px;color:var(--text);cursor:pointer;flex:1;font-size:14px;font-weight:500;padding:4px 6px;text-align:right}.solution-value-display:hover{background:var(--bg)}.solution-value-empty{color:var(--muted);font-weight:400}.solution-chance-display{background:none;border:none;border-radius:4px;color:var(--text);cursor:pointer;font-size:14px;font-weight:600;padding:4px 6px;text-align:right}.solution-chance-display:hover{background:var(--bg)}.placeholder{margin:0 28px;max-width:720px}.placeholder p{color:var(--muted)}.empty-state{align-items:center;color:var(--muted);display:flex;min-height:360px;justify-content:center}.loading-state{align-items:center;color:var(--muted);display:flex;gap:10px;min-height:180px;justify-content:center}.loading-icon{animation:spin .85s linear infinite}.table-state-cell{padding:0;white-space:normal}.table-state-cell .empty-state,.table-state-cell .loading-state,.mail-items .empty-state,.mail-items .loading-state{min-height:180px}@media (max-width: 1040px){.sidebar{min-height:auto}.profile{display:none}.email-layout{grid-template-columns:1fr}.mail-list{border-right:0}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.relationship-grid{grid-template-columns:1fr}.contact-form-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.contact-filter{align-items:stretch;grid-template-columns:1fr}.filter-input-wrap{width:100%}.filter-count{justify-self:start}}@media (max-width: 720px){.topbar,.detail-header{align-items:stretch;flex-direction:column}nav{grid-template-columns:1fr 1fr}dl,.metric-grid,.contact-form-grid{grid-template-columns:1fr}}.mobile-topbar,.mobile-nav{display:none}@media (max-width: 768px){.app-shell{grid-template-columns:1fr;grid-template-rows:52px minmax(0,1fr);padding-bottom:64px}.sidebar{display:none}.mobile-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--nav);border-bottom:1px solid rgba(255,255,255,.08);height:52px;position:sticky;top:0;z-index:40;color:#d7dde7}.mobile-topbar-title{font-weight:700;font-size:15px;color:#fff}.mobile-topbar .profile{display:block;padding:0;border:0;margin:0}.mobile-topbar .profile-trigger{gap:0}.mobile-topbar .profile-trigger strong{display:none}.mobile-topbar-menu{bottom:auto!important;top:calc(100% + 8px)!important;left:auto!important;right:0!important}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:64px;background:var(--nav);border-top:1px solid rgba(255,255,255,.08);z-index:40;padding-bottom:env(safe-area-inset-bottom)}.mobile-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:transparent;border:0;color:#8f9bad;cursor:pointer;font-size:10px;font-weight:600;padding:0;min-height:44px}.mobile-nav-item.active{color:#fff}.mobile-nav-item span{letter-spacing:0;text-transform:none}table{min-width:unset}.email-layout{margin:12px;height:calc(100vh - 140px)}.assignment-status-filters{display:grid;grid-template-columns:1fr 1fr;overflow-x:unset}.contacts-panel table{table-layout:auto;min-width:unset;width:100%}.contacts-workspace{grid-template-rows:auto minmax(0,1fr);gap:8px}.contact-detail,.contact-detail-empty{display:none}.contact-filter{margin:0 12px;flex-wrap:wrap}.contact-filter>button,.contact-filter>.merge-contact-wrap,.contact-filter>.delete-contact-wrap,.contact-filter>.add-contact-wrap,.contact-filter .filter-count,.contact-filter .company-filter-wrap{display:none}.contact-filter .filter-input-wrap{width:100%}.contacts-panel table colgroup col:nth-child(1),.contacts-panel table colgroup col:nth-child(5),.contacts-panel table colgroup col:nth-child(8),.contacts-panel table colgroup col:nth-child(9){display:none}.contacts-panel thead th:nth-child(1),.contacts-panel thead th:nth-child(5),.contacts-panel thead th:nth-child(8),.contacts-panel thead th:nth-child(9),.contacts-panel tbody td:nth-child(1),.contacts-panel tbody td:nth-child(5),.contacts-panel tbody td:nth-child(8),.contacts-panel tbody td:nth-child(9){display:none}.companies-workspace{height:auto;overflow:visible;grid-template-rows:auto auto auto;padding-bottom:16px}.companies-panel{display:block;min-height:0;margin-bottom:0}.companies-panel .table-wrap{height:40vh;min-height:180px;overflow:auto}.company-filter{margin:0 12px}.company-detail{margin:0 12px;padding:14px 16px;overflow-x:auto}.company-detail-sections{grid-template-columns:1fr;grid-template-rows:auto auto auto auto;row-gap:16px}.company-detail-section{display:block;grid-row:auto}.company-detail-header{flex-direction:column;gap:12px}.company-roles-editor{justify-content:flex-start}.competency-view{padding:16px 12px}thead .competency-person-col{left:unset!important;z-index:1!important}.competency-matrix-wrap{padding-right:0}.competency-top-row{flex-direction:column}.competency-left-col,.top-competencies-panel{width:100%;max-width:100%;box-sizing:border-box;flex-shrink:1}.competency-matrix-section{width:100%;max-width:100%;box-sizing:border-box}.workspace{height:calc(100vh - 116px)}.overview-workspace{padding:16px 12px;height:auto;overflow-y:auto}.overview-hero{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:14px}.overview-actions{justify-content:flex-start;width:100%}.tm-request-grid{grid-template-columns:1fr}}.tm-fact-picker{position:relative}.tm-select-picker{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 14px #0000001a;display:flex;flex-direction:column;left:0;position:absolute;top:calc(100% + 4px);z-index:10}.tm-select-picker button{background:transparent;border:0;border-radius:0;color:var(--text);font-size:13px;min-height:0;padding:7px 14px;text-align:left;white-space:nowrap}.tm-select-picker button:first-child{border-radius:7px 7px 0 0}.tm-select-picker button:last-child{border-radius:0 0 7px 7px}.tm-select-picker button:hover{background:var(--accent-soft)}.tm-select-picker button.selected{color:var(--accent);font-weight:600}.tm-field-input{background:#fff;border:1px solid var(--accent);border-radius:999px;color:var(--text);font-size:13px;min-height:0;outline:none;padding:4px 10px;width:90px}.tm-field-input[type=number]{width:72px}.tm-people-row{align-items:flex-start;display:flex;gap:8px;justify-content:space-between}.tm-people-row .tm-customer-wrapper{flex:1;min-width:0}.tm-responsible-wrapper{flex-shrink:0;position:relative;text-align:right}.tm-responsible{color:var(--muted);font-size:13px;text-align:right}.tm-responsible-wrapper .contact-picker{left:auto;right:0}.tm-summary{cursor:text;padding:2px 4px;text-align:left;white-space:pre-wrap;word-break:break-word}.tm-summary.inline-edit{border-radius:5px;display:block;width:100%}.tm-summary-editor{display:flex;flex-direction:column;gap:6px}.tm-summary-editor textarea{border:1px solid var(--accent);border-radius:6px;font-family:inherit;font-size:13px;line-height:1.5;outline:none;padding:6px 8px;resize:vertical;width:100%}.tm-summary-editor-actions{display:flex;gap:6px}.tm-summary-editor-actions button{font-size:12px;min-height:0;padding:4px 12px}.tm-skills-wrapper{position:relative}.tm-skills{cursor:pointer}.tm-skills .tm-skills-hint{background:#f6f8fb;border:0;color:var(--muted);font-style:normal;font-weight:400}.skills-editor{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 4px 16px #0000001a;display:flex;flex-direction:column;gap:8px;left:0;padding:10px;position:absolute;right:0;top:0;z-index:10}.skills-editor-pills{display:flex;flex-wrap:wrap;gap:4px;min-height:28px}.skills-editor-pill{background:var(--accent-soft);border:0;border-radius:999px;color:var(--accent);font-size:12px;min-height:0;padding:3px 10px}.skills-editor-pill:hover{background:#fde8e8;color:#b91c1c}.skills-editor-empty{color:var(--muted);font-size:12px;font-style:italic}.skills-editor-input-row{display:flex;gap:4px}.skills-editor-input-row input{border:1px solid var(--line);border-radius:6px;flex:1;font-size:13px;min-height:0;outline:none;padding:4px 8px}.skills-editor-input-row input:focus{border-color:var(--accent)}.skills-editor-input-row button{background:var(--accent);border:0;border-radius:6px;color:#fff;font-size:16px;font-weight:700;min-height:0;padding:2px 10px}.skills-editor-input-row button:disabled{background:var(--muted);cursor:not-allowed}.skills-editor-actions{display:flex;justify-content:flex-end}.skills-editor-actions button{font-size:12px;min-height:0;padding:4px 14px}.competency-view{display:flex;flex-direction:column;gap:24px;padding:28px 32px;overflow-y:auto}.competency-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:200px;color:var(--muted)}.competency-loading-hint{font-size:12px;max-width:340px;text-align:center;line-height:1.5;opacity:.8}.competency-refresh-banner{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:6px 12px;margin-bottom:4px;width:fit-content}.competency-search-bar{display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px 14px;max-width:480px}.competency-search-bar input{border:0;flex:1;font-size:14px;outline:none;background:transparent;color:var(--text)}.competency-search-bar button{background:none;border:0;color:var(--muted);cursor:pointer;padding:0;line-height:1}.competency-summary-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:1;padding:14px 10px;border-right:1px solid var(--line);text-align:center;min-width:80px;position:relative;cursor:default}.competency-summary-tooltip{display:none;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--text);color:#fff;border-radius:6px;padding:8px 12px;font-size:12px;white-space:nowrap;z-index:30;flex-direction:column;gap:4px;box-shadow:0 4px 12px #0000002e}.competency-summary-item:hover .competency-summary-tooltip{display:flex}.competency-summary-item--total{background:#f5f7ff}.competency-summary-number{font-size:22px;font-weight:700;color:var(--text);line-height:1}.competency-summary-item--total .competency-summary-number{color:var(--accent)}.competency-summary-label{font-size:11px;font-weight:600;color:var(--text)}.competency-summary-years{font-size:10px;color:var(--muted)}.competency-matrix-section{display:flex;flex-direction:column;gap:6px}.competency-matrix-label{color:#4f46e5;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:0}.competency-matrix-heading{font-size:26px;font-weight:800;margin:0}.competency-matrix-sub{color:var(--muted);font-size:14px;margin:0 0 12px}.competency-matrix-wrap{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow-x:auto;padding-right:120px}.competency-matrix{border-collapse:collapse;width:max-content;min-width:100%;font-size:13px}.competency-matrix-wrap--filtered{padding-right:0}.competency-matrix-wrap--filtered .competency-matrix{min-width:unset}.competency-matrix thead th{background:var(--panel);border-bottom:1px solid var(--line);padding:10px 12px;position:sticky;text-align:left;top:0;white-space:nowrap;z-index:1}.competency-matrix thead tr{height:190px}.competency-matrix tbody tr:hover{background:var(--bg)}.competency-matrix tbody td{border-bottom:1px solid var(--line);padding:4px 12px;vertical-align:middle}.competency-matrix tbody tr:last-child td{border-bottom:0}.competency-person-col{left:0;min-width:260px;position:sticky!important;background:var(--panel)!important;z-index:2!important}thead .competency-person-col{z-index:3!important}.competency-skill-col{min-width:36px;max-width:52px;text-align:center!important;vertical-align:bottom!important;height:190px;padding:0 2px 14px!important;position:relative;overflow:visible}.competency-skill-header-wrap{height:180px;position:relative}.competency-skill-header{display:inline-block;transform:rotate(-90deg);transform-origin:left bottom;white-space:nowrap;font-size:11px;font-weight:600;position:absolute;bottom:0;left:18px}.competency-person-name-cell{left:0;min-width:260px;position:sticky;background:var(--panel);z-index:1;display:flex;flex-direction:column;justify-content:center;padding:5px 12px!important}.competency-person-title{color:var(--muted);font-size:11px}.competency-cell{text-align:center}.competency-dash{color:var(--muted)}.competency-name-btn{background:none;border:0;color:var(--accent);cursor:pointer;font-size:13px;font-weight:600;padding:0;text-align:left;border-radius:4px}.competency-name-btn:hover{text-decoration:underline}.competency-stars{display:inline-flex;gap:1px}.star{font-size:13px}.star.filled{color:#f59e0b}.star.empty{color:#d1d5db}.competency-strength-badge{border-radius:20px;font-size:11px;font-weight:700;padding:3px 10px;white-space:nowrap}.strength-expert{background:#4f46e5;color:#fff}.strength-extremt-stark{background:#059669;color:#fff}.strength-mycket-stark{background:#0d9488;color:#fff}.strength-stark{background:#2563eb;color:#fff}.strength-god{background:#64748b;color:#fff}.competency-matrix-legend{color:var(--muted);font-size:12px;margin:4px 0 0}.competency-refresh-btn{background:none;border:0;color:var(--muted);cursor:pointer;font-size:12px;padding:0;text-decoration:underline}.competency-refresh-btn:hover{color:var(--text)}.competency-refresh-btn:disabled{opacity:.4;cursor:not-allowed;text-decoration:none;pointer-events:none}.competency-search-status{font-size:13px;color:var(--muted);background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;padding:8px 14px}.competency-search-status--empty{background:#fff7ed;border-color:#fed7aa}.competency-top-row{display:flex;gap:12px;align-items:flex-start}.competency-left-col{display:flex;flex-direction:column;gap:8px;width:380px;flex-shrink:0}.competency-profile-count{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#f5f7ff;border:1px solid var(--line);border-radius:10px;padding:32px 12px;text-align:center}.competency-profile-count .competency-summary-number{color:var(--accent);font-size:44px}.competency-seniority-row{display:flex;align-items:stretch;background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:visible}.competency-seniority-row .competency-summary-item:first-child{border-radius:10px 0 0 10px}.competency-seniority-row .competency-summary-item:last-child{border-radius:0 10px 10px 0;border-right:0}.top-competencies-panel{flex:1;display:flex;flex-direction:column;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:12px 14px}.top-competencies-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.top-competency-item{display:flex;flex-direction:column;gap:2px;counter-increment:top-item}.top-competency-name{font-size:13px;font-weight:700;color:var(--text)}.top-competency-name:before{content:counter(top-item) ". ";color:var(--accent)}.top-competencies-list{counter-reset:top-item}.top-competency-desc{font-size:12px;color:var(--muted);line-height:1.4}.top-competency-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.top-competency-chip{font-size:11px;background:#eef2ff;color:#4338ca;border-radius:20px;padding:2px 8px;font-weight:500}.top-competencies-empty{font-size:13px;color:var(--muted);margin:0}.ranking-prompt-bar{display:flex;flex-direction:column;gap:8px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:12px 14px;max-width:640px}.ranking-prompt-label{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.06em}.ranking-prompt-input-row{display:flex;gap:8px;align-items:center}.ranking-prompt-input{flex:1;border:1px solid var(--line);border-radius:6px;padding:7px 12px;font-size:14px;background:var(--bg);color:var(--text);outline:none}.ranking-prompt-input:focus{border-color:var(--accent)}.ranking-prompt-input:disabled{opacity:.6}.ranking-prompt-btn{display:flex;align-items:center;gap:6px;background:var(--accent);color:#fff;border:0;border-radius:6px;padding:7px 16px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.ranking-prompt-btn:hover:not(:disabled){opacity:.88}.ranking-prompt-btn:disabled{opacity:.55;cursor:default}.ranking-show-btn{background:none;border:1px solid var(--accent);color:var(--accent);border-radius:6px;padding:7px 12px;font-size:13px;cursor:pointer;white-space:nowrap}.ranking-show-btn:hover{background:#f0f4ff}.ranking-error{font-size:13px;color:var(--danger);margin:0}.ranking-modal{position:relative;background:var(--panel);border-radius:14px;box-shadow:0 8px 40px #00000038;width:560px;max-width:95vw;max-height:85vh;overflow-y:auto;padding:28px 28px 24px;display:flex;flex-direction:column;gap:20px}.ranking-modal-header{padding-right:32px}.ranking-modal-header h2{font-size:18px;font-weight:700;margin:0 0 4px}.ranking-modal-query{font-size:13px;color:var(--muted);margin:0;font-style:italic}.ranking-cards{display:flex;flex-direction:column;gap:12px}.ranking-card{border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);position:relative}.ranking-copy-btn{position:absolute;top:10px;right:10px;background:none;border:1px solid transparent;border-radius:5px;color:var(--muted);cursor:pointer;padding:3px 5px;line-height:1;transition:color .1s,border-color .1s}.ranking-copy-btn:hover{color:var(--text);border-color:var(--line)}.ranking-card-top{display:flex;align-items:flex-start}.ranking-card-identity{display:flex;flex-direction:column;gap:4px;flex:1}.ranking-card-name-row{display:flex;align-items:center;gap:10px}.ranking-card-name{font-size:15px;font-weight:700;color:var(--text)}.ranking-dots{display:flex;gap:4px;flex-shrink:0}.ranking-dot{width:9px;height:9px;border-radius:50%}.ranking-dot--filled{background:#22c55e}.ranking-dot--empty{background:#e2e8f0}.ranking-card-title{font-size:12px;color:var(--muted)}.ranking-motivation{font-size:13px;color:var(--text);margin:0;line-height:1.5}.ranking-tags{display:flex;flex-wrap:wrap;gap:6px}.ranking-tag{font-size:11px;padding:3px 8px;border-radius:20px;font-weight:500}.ranking-tag--strength{background:#d1fae5;color:#065f46}.ranking-tag--gap{background:#fee2e2;color:#991b1b}.competency-matrix-header{display:flex;flex-direction:column;gap:6px}.competency-reextract-btn{align-self:flex-start}.competency-matrix-updated{font-size:12px;color:var(--muted)}.competency-filter-row{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:start;column-gap:8px}.competency-filter-label{align-items:center;color:var(--muted);display:flex;font-size:11px;font-weight:700;height:34px;text-transform:uppercase}.competency-filter-pills{display:flex;flex-wrap:wrap;gap:6px}.competency-domain-pill{border-style:dashed}.competency-cat-pill{background:var(--bg);border:1px solid var(--line);border-radius:20px;color:var(--muted);cursor:pointer;font-size:12px;font-weight:500;padding:4px 12px;transition:all .1s}.competency-cat-pill:hover{border-color:var(--accent);color:var(--accent)}.competency-cat-pill--active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.competency-domain-list{display:flex;flex-direction:column;gap:8px}.competency-domain-item{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.competency-tag.domain{background:#eef2ff;color:#3730a3}.competency-tag.domain.source-manual{background:#ecfdf5;color:#047857}.competency-domain-evidence{color:var(--muted);font-size:12px}.competency-skill-sorted .competency-skill-header{color:var(--accent)}.competency-row-dimmed{opacity:.18}.competency-row-empty td.competency-person-name-cell{opacity:.45}.competency-heatmap-legend{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:4px}.competency-legend-item{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted)}.competency-legend-swatch{border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;height:20px;width:20px}.competency-tag-list{display:flex;flex-wrap:wrap;gap:6px}.competency-tag{border-radius:20px;font-size:12px;font-weight:600;padding:3px 10px}.competency-tag.strength{background:#f0fdf4;color:#166534}.competency-tag.industry{background:#f0f9ff;color:#0369a1}.competency-tag.role{background:#faf5ff;color:#7e22ce}.competency-tag.leadership{background:#fff7ed;color:#c2410c}.competency-tag.skill-match{background:#eef2ff;color:#4338ca}.competency-modal-backdrop{align-items:flex-start;background:#00000059;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:48px 16px;position:fixed;right:0;top:0;z-index:100}.competency-modal{background:var(--panel);border-radius:12px;box-shadow:0 20px 60px #0000002e;display:flex;flex-direction:column;gap:0;max-width:600px;padding:28px;position:relative;width:100%}.competency-modal-close{background:none;border:0;color:var(--muted);cursor:pointer;padding:4px;position:absolute;right:16px;top:16px}.competency-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.competency-modal-header h2{font-size:22px;margin:0 0 4px}.competency-modal-title{color:var(--muted);font-size:14px}.competency-modal-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;padding-top:26px}.competency-seniority-badge{background:#eef2ff;border-radius:20px;color:#4338ca;font-size:12px;font-weight:700;padding:4px 12px;white-space:nowrap}.competency-years{color:var(--muted);font-size:12px}.competency-modal-section{border-top:1px solid var(--line);padding:16px 0}.competency-modal-section h3{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.07em;margin:0 0 10px;text-transform:uppercase}.competency-modal-section p{font-size:14px;margin:0;line-height:1.6}.competency-modal-category{margin-bottom:12px}.competency-modal-cat-label{color:var(--muted);display:block;font-size:11px;font-weight:700;margin-bottom:6px;text-transform:uppercase}.competency-modal-skill-row{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:3px 0}.competency-modal-skill-name{font-size:13px}.depth-label{color:var(--muted);font-size:11px}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}.workspace-header{align-items:center;display:flex;gap:16px;justify-content:space-between;padding:26px 28px 18px}.workspace-header-left{align-items:center;display:flex;gap:20px}.workspace-header h1{font-size:28px;line-height:1.1;margin:0}.tab-toggle{border:1px solid var(--line);border-radius:6px;display:flex;overflow:hidden}.tab-toggle button{align-items:center;background:none;border:none;color:var(--muted);cursor:pointer;display:flex;font-size:13px;gap:6px;padding:6px 14px}.tab-toggle button.active{background:var(--accent);color:#fff}.tab-toggle button:hover:not(.active){background:var(--bg)}.tab-count{background:#0000001f;border-radius:10px;font-size:11px;padding:1px 6px}.tab-toggle button.active .tab-count{background:#ffffff40}.btn-primary{align-items:center;background:var(--accent);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:7px 14px}.btn-primary:hover{opacity:.88}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{align-items:center;background:#fff2f0;border:1px solid #fca5a5;border-radius:6px;color:var(--danger);cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;margin-right:auto;padding:7px 14px}.btn-danger:hover{background:#fee2e2}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:minmax(0,1fr);margin:0 28px 28px;min-height:0;overflow:hidden}.data-table{border-collapse:collapse;width:100%}.data-table th{background:var(--bg);border-bottom:1px solid var(--line);color:var(--muted);font-size:11px;font-weight:600;padding:8px 14px;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:1}.data-table td{border-bottom:1px solid var(--line);font-size:13px;padding:10px 14px;vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--bg)}.project-source-badge{background:#eef4ff;border-radius:4px;color:#4054d6;font-size:11px;font-weight:600;margin-left:8px;padding:2px 6px}.project-status-badge{border-radius:4px;font-size:11px;font-weight:600;padding:2px 8px}.project-status-badge--aktiv,.project-status-badge--vunnen{background:#e6f4ea;color:#1a7f37}.project-status-badge--arkiverad{background:#f3f4f6;color:var(--muted)}.project-status-badge--förlorad{background:#fff2f0;color:var(--danger)}.icon-btn{align-items:center;background:none;border:none;border-radius:4px;cursor:pointer;display:flex;padding:4px}.icon-btn.muted{color:var(--muted)}.icon-btn:hover{background:var(--bg);color:var(--danger)}.delete-inline-confirm{align-items:center;display:flex;gap:6px}.btn-danger-small{background:var(--danger);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:3px 8px}.empty-state-projects{align-items:center;color:var(--muted);display:flex;font-size:13px;justify-content:center;padding:48px 28px}.new-project-dialog{max-width:480px}.new-project-ai-hint{align-items:flex-start;background:#faf5ff;border:1px solid #d8b4fe;border-radius:8px;color:#5b21b6;display:flex;font-size:12px;gap:8px;line-height:1.5;margin-bottom:4px;padding:10px 12px}.new-project-ai-hint-icon{flex-shrink:0;font-size:13px}.new-project-mode-tabs{border:1px solid var(--line);border-radius:6px;display:flex;margin-bottom:20px;overflow:hidden}.new-project-mode-tabs button{background:none;border:none;color:var(--muted);cursor:pointer;flex:1;font-size:13px;padding:8px 14px}.new-project-mode-tabs button.active{background:var(--accent);color:#fff;font-weight:600}.new-project-mode-tabs button:hover:not(.active){background:var(--bg)}.prospect-prefill-summary{background:#f0f7ff;border-radius:6px;display:flex;font-size:12px;gap:16px;margin-top:10px;padding:8px 12px}.prospect-phase-badge{background:#eef4ff;border-radius:3px;color:#4054d6;font-size:11px;padding:1px 5px}.new-opportunity-no-results{color:var(--muted);display:block;font-size:12px;padding:8px 12px}.new-opportunity-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}@keyframes thinking-dot{0%,80%,to{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.thinking-dots{display:inline-flex;align-items:center;gap:3px}.thinking-dots span{width:5px;height:5px;border-radius:50%;background:currentColor;animation:thinking-dot 1.2s ease-in-out infinite}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}.clickable-row{cursor:pointer}.clickable-row:hover td{background:var(--accent-soft)}.project-title{font-weight:500}.project-source-badge{background:#eef4ff;border-radius:3px;color:var(--accent);font-size:11px;margin-left:6px;padding:1px 5px}.project-status-badge{border-radius:4px;font-size:12px;padding:2px 7px}.project-status-badge--planering{background:#f0f4ff;color:#3b54d0}.project-status-badge--aktiv{background:#ecfdf5;color:#087443}.project-status-badge--pausad{background:#fffbeb;color:#9a6100}.project-status-badge--klar{background:#f0fdf4;color:#166534}.project-status-badge--arkiverad{background:#f3f4f6;color:#6b7280}.project-detail-topbar{align-items:center;background:var(--panel);border-bottom:1px solid var(--line);display:flex;gap:12px;padding:12px 20px}.project-back-btn{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px;min-height:auto;padding:0;white-space:nowrap}.project-back-btn:hover{text-decoration:underline}.project-detail-title-row{align-items:center;display:flex;gap:10px;overflow:hidden}.project-detail-title-row h1{font-size:17px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-loading{color:var(--muted);font-size:14px;padding:32px 24px}.project-tabs{background:var(--panel);border-bottom:1px solid var(--line);display:flex;gap:0;padding:0 20px}.project-tab{align-items:center;background:none;border:none;border-bottom:2px solid transparent;border-radius:0;color:var(--muted);display:flex;font-size:13px;gap:6px;min-height:auto;padding:10px 14px;white-space:nowrap}.project-tab:hover{color:var(--text)}.project-tab.active{border-bottom-color:var(--accent);color:var(--accent);font-weight:500}.project-tab-risk-badge{background:#fef3c7;border-radius:10px;color:#92400e;font-size:11px;font-weight:600;min-width:18px;padding:1px 5px;text-align:center}.project-tab-content{flex:1;min-height:0;overflow:auto;padding:24px}.tr-grid-wrap,.tr-quick-wrap{display:flex;flex-direction:column;gap:16px}.tr-quick-days{display:flex;flex-direction:column;gap:10px}.tr-quick-day{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:12px 14px}.tr-quick-day--missing{background:#fffaf0;border-color:#f4d78a}.tr-quick-day-header{align-items:baseline;display:flex;gap:8px;justify-content:space-between}.tr-quick-day-name{font-weight:600}.tr-quick-day-name--red{color:var(--danger)}.tr-quick-day-missing{color:var(--warning);flex:1;font-size:11px;font-weight:700;text-transform:uppercase}.tr-quick-day-total{color:var(--accent);font-size:13px;font-weight:600}.tr-quick-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.tr-quick-chip{background:var(--bg);border:1px solid var(--line);border-radius:999px;color:var(--muted);cursor:pointer;font-size:13px;font-weight:500;max-width:220px;min-width:120px;overflow:hidden;padding:7px 14px;text-overflow:ellipsis;white-space:nowrap}.tr-quick-chip:hover{border-color:var(--accent)}.tr-quick-chip--filled{animation:bar-pop-in .3s cubic-bezier(.34,1.56,.64,1) both;background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.tr-quick-chip-input{border:1px solid var(--accent);border-radius:999px;font-size:13px;min-width:120px;padding:7px 14px;width:120px}.tr-requests-wrap{display:flex;flex-direction:column;gap:24px}.tr-section-card{background:#fff;border:1px solid oklch(91% .005 90);border-radius:12px;padding:20px 22px}.tr-requests-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.tr-requests-header h2{font-size:16.5px;font-weight:650;margin:0}.tr-report-controls{align-items:center;display:flex;gap:8px}.tr-report-controls input[type=month]{border:1px solid var(--line);border-radius:6px;font-size:13px;padding:6px 8px}.tr-report-controls .btn-primary{align-items:center;display:inline-flex;gap:6px}.tr-report-summary{align-items:center;color:var(--text);display:flex;font-size:13px;gap:12px;margin-bottom:16px}.tr-report-summary strong{font-weight:700}.tr-report-summary-divider{background:var(--line);height:14px;width:1px}.data-table th.tr-col-num,.data-table td.tr-col-num{font-variant-numeric:tabular-nums;text-align:right}.tr-cell-strong{font-weight:600}.tr-cell-action{text-align:right;white-space:nowrap}.table-wrap--compact{max-width:fit-content}.table-wrap--compact .data-table{width:auto}.table-wrap--compact .data-table th,.table-wrap--compact .data-table td{padding-left:18px;padding-right:18px}.table-wrap--compact .data-table th:first-child,.table-wrap--compact .data-table td:first-child{padding-left:14px}.tr-comment-input{border:1px solid var(--line);border-radius:6px;font-size:13px;padding:5px 8px;width:100%}.tr-approval-actions{display:flex;gap:6px;justify-content:flex-end}.invoice-report-groups{display:flex;flex-direction:column;gap:16px}.invoice-report-company{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:14px 16px}.invoice-report-company-header{align-items:center;color:var(--muted);display:flex;gap:8px;margin-bottom:12px}.invoice-report-company-name{color:var(--text);flex:1;font-size:15px;font-weight:600}.invoice-report-header-metrics{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.invoice-report-project{margin-bottom:12px}.invoice-report-project:last-child{margin-bottom:0}.invoice-report-project-name{border-bottom:1px solid var(--line);color:var(--muted);display:flex;font-size:12px;font-weight:600;justify-content:space-between;padding-bottom:4px;margin-bottom:6px;text-transform:uppercase}.invoice-report-contacts{display:flex;flex-direction:column;gap:2px}.invoice-report-contact-row{align-items:baseline;display:grid;font-size:13px;gap:20px;grid-template-columns:minmax(0,1fr) max-content max-content;padding:4px 0}.invoice-report-metric{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.invoice-line-table{table-layout:auto;width:100%}.invoice-line-table th,.invoice-line-table td{padding-left:10px;padding-right:10px}.invoice-line-table .invoice-col-date{min-width:11.5rem;white-space:nowrap;width:1%}.invoice-line-table .invoice-col-name,.invoice-line-table .invoice-col-num{white-space:nowrap;width:1%}.invoice-line-table .invoice-col-note{min-width:7rem;width:auto}.invoice-line-table .invoice-col-actions{padding-right:4px;white-space:nowrap;width:1%}.tr-calendar-wrap{display:flex;flex-direction:column;gap:16px}.tr-calendar-wrap .tr-week-header input[type=month]{border:1px solid var(--line);border-radius:6px;font-size:13px;padding:6px 8px}.tr-calendar-grid{display:grid;gap:1px;grid-template-columns:repeat(7,1fr)}.tr-calendar-headercell{color:var(--muted);font-size:12px;font-weight:600;padding:4px 0;text-align:center}.tr-calendar-cell{background:var(--panel);border:1px solid var(--line);border-radius:6px;min-height:72px;padding:6px}.tr-calendar-cell--outside{opacity:.4}.tr-calendar-cell--red .tr-calendar-cell-date{color:var(--danger)}.tr-calendar-cell-date{font-size:13px;font-weight:500}.tr-calendar-cell-holiday{color:#9d3533;font-size:10.5px;font-weight:600;line-height:1.2;margin-top:3px}.tr-calendar-cell-hours{color:var(--accent);font-size:12px;margin-top:4px}.tr-calendar-cell-leave{background:var(--bg);border-radius:4px;color:var(--muted);font-size:11px;margin-top:4px;padding:2px 4px}.tr-status-filters{display:flex;gap:8px;margin-bottom:16px}.tr-status-filter{background:#f2f2ef;border:none;border-radius:20px;color:#50565e;cursor:pointer;font-size:12.5px;font-weight:600;padding:7px 14px}.tr-status-filter:hover{background:#e9e8e3}.tr-status-filter.active,.tr-status-filter.active:hover{background:#5862e1;color:#fff}.tr-year-group{border-top:1px solid var(--line);padding-top:12px}.tr-year-group:first-of-type{border-top:none;padding-top:0}.tr-year-group+.tr-year-group{margin-top:12px}.tr-year-group-header{align-items:center;background:none;border:none;color:var(--text);cursor:pointer;display:flex;gap:6px;padding:4px 0;width:100%}.tr-year-group-title{flex:1;font-size:14px;font-weight:600;text-align:left}.tr-requests-admin-section{display:flex;flex-direction:column;gap:12px}.tr-requests-admin-section h3{font-size:14px;margin:0}.tr-requests-admin-section .company-contact-row input[type=text]{border:1px solid var(--line);border-radius:6px;font-size:13px;padding:5px 8px}.tr-week-header{align-items:center;display:flex;justify-content:space-between}.tr-week-header h2{color:#151b24;font-size:22px;font-weight:650;margin:0}.tr-week-nav{display:flex;gap:8px}.tr-week-nav button{background:#fff;border:1px solid oklch(88% .005 90);border-radius:8px;color:#343b45;cursor:pointer;font-size:13px;font-weight:500;padding:8px 14px}.tr-week-nav button:hover{background:#f9f8f5}.tr-summary-cards{display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.tr-summary-cards--pair{grid-template-columns:repeat(2,1fr)}@media (max-width: 900px){.tr-summary-cards--pair{grid-template-columns:1fr}}.tr-summary-cards--quad{grid-template-columns:repeat(4,1fr)}.tr-summary-cards--quad .tr-summary-card-value{font-size:21px}@media (max-width: 1100px){.tr-summary-cards--quad{grid-template-columns:repeat(2,1fr)}}.tr-summary-card{background:#fff;border:1px solid oklch(91% .005 90);border-radius:10px;padding:16px 20px;position:relative;transition:border-color .15s}.tr-summary-card:hover{border-color:#c6cad8}.tr-summary-card-icon{color:var(--muted);opacity:.55;position:absolute;right:16px;top:16px}.tr-summary-card-label{color:#626975;font-size:12.5px;font-weight:500;padding-right:24px}.tr-summary-card-value{color:#151b24;font-size:26px;font-weight:650;letter-spacing:-.01em;line-height:1.2;margin:4px 0 2px}.tr-summary-card-value--warn{color:#9f5100;color:oklch(52% .16 55)}.tr-summary-card-value--danger{color:#a5292b}.tr-summary-card-hint{color:#757b83;font-size:12px}.tr-flex-cell--warn{color:#8f4800;color:oklch(48% .15 55);font-weight:650}.tr-flex-cell--danger{color:#9b1e22;font-weight:700}.tr-grid-hint{color:#7b8189;font-size:11.5px;margin:0 0 8px}.tr-grid{background:#fff;border:1px solid oklch(91% .005 90);border-radius:12px;overflow:hidden}.tr-grid-header,.tr-grid-row{align-items:center;border-bottom:1px solid oklch(93% .005 90);display:flex}.tr-grid-header{background:#f6f5f2;border-bottom-color:#e2e1de;padding:10px 16px}.tr-grid-row{min-height:64px;padding:12px 16px}.tr-grid-row:last-child{border-bottom:none}.tr-grid-row:hover{background:#fbfaf8}.tr-grid-row--dragging,.tr-grid-row--dragging:hover{background:#f2f5ff;background:oklch(97% .02 275)}.tr-grid-daylabel{flex-shrink:0;width:100px}.tr-grid-daylabel--header{align-items:center;color:#626975;display:flex;font-size:11.5px;font-weight:600;gap:6px;justify-content:space-between;letter-spacing:.03em;text-transform:uppercase}.tr-grid-daylabel-name{color:#1c222b;font-size:14px;font-weight:600}.tr-grid-daylabel-name--red{color:#b14e49}.tr-grid-daylabel-date{color:#757b83;font-size:12px;margin:1px 0 4px}.tr-grid-daylabel-leave{border-radius:5px;display:inline-block;font-size:10.5px;font-weight:600;max-width:100%;overflow:hidden;padding:2px 7px;text-overflow:ellipsis;white-space:nowrap}.tr-grid-daylabel-missing{background:#f7e6c3;border-radius:5px;color:#624800;color:oklch(42% .1 85);display:inline-block;font-size:10.5px;font-weight:600;letter-spacing:.02em;margin-top:4px;padding:2px 7px;text-transform:uppercase}.tr-grid-daylabel-holiday{-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#9d3533;display:-webkit-box;font-size:10.5px;font-weight:600;line-height:1.25;margin-top:3px;overflow:hidden}.tr-hour-expand{align-items:center;background:#fff;border:1px solid oklch(85% .01 260);border-radius:50%;color:#5d646f;cursor:pointer;display:flex;flex-shrink:0;font-size:11px;height:18px;justify-content:center;line-height:1;min-height:0;opacity:.65;padding:0;width:18px}.tr-hour-expand:hover:not(:disabled){opacity:1}.tr-hour-expand:disabled{cursor:default;opacity:.25}.tr-quickfill-button{align-items:center;background:#fff;border:1px dashed oklch(85% .01 260);border-radius:6px;color:#5d646f;cursor:pointer;display:inline-flex;font-size:11px;left:0;opacity:0;padding:4px 10px;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .15s;white-space:nowrap}.tr-grid-row:hover .tr-quickfill-button{opacity:1}.tr-quickfill-button:hover{border-color:#5862e1;color:#4048a6}.tr-quickfill-button--missing{border-color:#d0bb92;color:#6d5000;color:oklch(45% .11 85)}.tr-grid-hourlabels{flex:1;height:16px;min-width:0;position:relative}.tr-grid-hourlabel{color:#626975;font-size:12.5px;position:absolute;top:0;white-space:nowrap}.tr-grid-total{color:#282e38;flex-shrink:0;font-size:14px;font-weight:600;text-align:right;width:70px}.tr-grid-total--header{align-items:center;color:#626975;display:flex;font-size:11.5px;gap:6px;justify-content:space-between;letter-spacing:.03em;text-transform:uppercase}.tr-grid-hours{align-self:stretch;cursor:crosshair;flex:1;margin:-12px 0;min-width:0;position:relative;-webkit-user-select:none;user-select:none}@keyframes bar-pop-in{0%{transform:scale(.7);opacity:0}60%{transform:scale(1.08);opacity:1}to{transform:scale(1)}}.tr-bar{align-items:center;animation:bar-pop-in .3s cubic-bezier(.34,1.56,.64,1) both;border-radius:7px;cursor:pointer;display:flex;font-size:13px;font-weight:500;height:40px;justify-content:center;overflow:hidden;padding:0 8px;position:absolute;text-align:center;text-overflow:ellipsis;top:calc(50% - 20px);white-space:nowrap}.tr-bar:hover{filter:brightness(.97)}@keyframes bar-pop-out{0%{transform:scale(1);opacity:1}to{transform:scale(.5);opacity:0}}.tr-bar--leaving{animation:bar-pop-out .3s ease-in forwards;pointer-events:none}.tr-bar--preview{animation:none;background:#5862e12e;border:1.5px dashed oklch(56% .19 275);color:#4048a6;font-size:12.5px;font-weight:600;pointer-events:none}.tr-timeline-legend{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:16px}.tr-timeline-legend-item{align-items:center;color:#50565e;display:inline-flex;font-size:12.5px;gap:6px}.tr-timeline-legend-swatch{border-radius:2px;display:inline-block;height:9px;width:9px}.tr-type-dot{border-radius:50%;display:inline-block;flex-shrink:0;height:8px;margin-right:8px;vertical-align:middle;width:8px}.tr-timeline-controls{align-items:center;display:flex;gap:14px}.tr-year-nav{align-items:center;display:flex;gap:8px}.tr-year-nav button{align-items:center;background:#fff;border:1px solid oklch(88% .005 90);border-radius:50%;color:#4f5661;cursor:pointer;display:flex;font-size:13px;height:26px;justify-content:center;line-height:1;min-height:0;padding:0;width:26px}.tr-year-nav button:hover{border-color:#5862e1;color:#4048a6}.tr-year-nav-value{font-size:13.5px;font-weight:600;min-width:36px;text-align:center}.tr-view-toggle{background:#f2f2ef;border-radius:9px;display:flex;gap:6px;padding:3px}.tr-view-toggle button{background:transparent;border:none;border-radius:7px;color:#626975;cursor:pointer;font-size:12.5px;font-weight:600;padding:7px 14px;white-space:nowrap}.tr-view-toggle button.active{background:#fff;box-shadow:0 1px 3px #11161f1f;color:#29278b}.tr-view-toggle button:disabled{color:#aaaeb4;cursor:not-allowed}.tr-timeline{display:flex;flex-direction:column}.tr-timeline-header,.tr-timeline-row{align-items:stretch;display:flex}.tr-timeline-namecol{color:var(--text);flex:0 0 140px;font-size:13px;font-weight:500;overflow:hidden;padding-right:8px;text-overflow:ellipsis;white-space:nowrap}.tr-timeline-axis,.tr-timeline-track{flex:1 1 auto;position:relative}.tr-timeline-axis{height:20px}.tr-timeline-tick{color:var(--muted);font-size:12px;font-weight:600;padding-left:4px;position:absolute;text-transform:capitalize;top:0}@keyframes today-label-pulse{0%,to{transform:translate(-50%) scale(1)}50%{transform:translate(-50%) scale(1.12)}}.tr-timeline-today-label{animation:today-label-pulse 2s ease-in-out infinite;background:var(--accent);border-radius:3px;color:#fff;font-size:10px;font-weight:700;padding:1px 5px;position:absolute;top:0;white-space:nowrap;z-index:2}.tr-timeline-row{border-top:1px solid var(--line);min-height:36px}.tr-timeline-row:hover{background:#0f172a0a}.tr-timeline-gridline{background:var(--line);bottom:0;opacity:.6;position:absolute;top:0;width:1px}.tr-timeline-today{background:var(--accent);bottom:0;position:absolute;top:0;width:2px;z-index:2}.tr-timeline-bar{border-radius:4px;bottom:8px;cursor:default;min-width:4px;position:absolute;top:8px;transition:box-shadow .15s ease,transform .15s ease;z-index:1}.tr-timeline-bar:hover{box-shadow:0 2px 6px #00000040;transform:scale(1.06);z-index:2}.tr-timeline-bar-tooltip{background:var(--text);border-radius:6px;bottom:calc(100% + 6px);box-shadow:0 4px 12px #0000002e;color:#fff;font-size:12px;left:50%;opacity:0;padding:6px 10px;pointer-events:none;position:absolute;transform:translate(-50%);transition:opacity .1s ease;white-space:nowrap;z-index:30}.tr-timeline-bar:hover .tr-timeline-bar-tooltip{opacity:1;transition-delay:.15s}.tr-entry-dialog{border:none;border-radius:14px;box-shadow:0 20px 60px #11161f40;max-height:82vh;max-width:560px;overflow:auto;padding:28px 30px;width:560px}.tr-entry-dialog h2{color:#151b24;font-size:18px;font-weight:650;margin:0 0 20px}.tr-entry-dialog .new-opportunity-field{margin-bottom:14px}.tr-entry-dialog .new-opportunity-field label{color:#626975;display:block;font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.tr-entry-dialog input,.tr-entry-dialog select,.tr-entry-dialog textarea{background:#fff;border:1px solid oklch(88% .005 90);border-radius:8px;color:#1c222b;font-family:inherit;font-size:13.5px;margin-top:6px;padding:9px 12px;width:100%}.tr-entry-dialog textarea{min-height:60px;resize:vertical}.tr-entry-dialog input:focus,.tr-entry-dialog select:focus,.tr-entry-dialog textarea:focus{border-color:#5862e1;outline:none}.tr-entry-dialog input:disabled{background:#f6f5f2;color:#50565e}.tr-entry-row{display:flex;gap:12px}.tr-entry-row .new-opportunity-field{flex:1;min-width:0}.tr-day-override-list{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow-y:auto;padding:2px}.tr-day-override-row{background:#fbfaf8;border:1px solid oklch(93% .005 90);border-radius:9px;display:flex;flex-direction:column;gap:8px;padding:12px 14px}.tr-day-override-date{color:#282e38;font-size:12.5px;font-weight:600}.tr-day-override-times{align-items:center;display:flex;gap:8px}.tr-day-override-types{display:flex;flex-wrap:wrap;gap:8px}.tr-entry-dialog .tr-day-override-row input,.tr-entry-dialog .tr-day-override-row select{border-radius:6px;font-size:12.5px;margin-top:0;padding:7px 9px;width:auto}.tr-entry-dialog .tr-day-override-types select{flex:1 1 140px;min-width:140px}.tr-day-override-time{flex-shrink:0;width:96px}.tr-day-override-time-sep{color:#7b8189;flex-shrink:0}.tr-entry-dialog .new-opportunity-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.tr-entry-dialog .new-opportunity-actions button{border-radius:8px;cursor:pointer;font-size:13.5px;font-weight:500;padding:10px 18px}.tr-entry-dialog .new-opportunity-actions .btn-primary{background:#5862e1;border:none;color:#fff;font-weight:600;padding:10px 20px}.tr-entry-dialog .new-opportunity-actions .btn-primary:hover:not(:disabled){background:#4c52d0}.project-placeholder{color:var(--muted);font-size:14px;padding:32px 0}.overview-tab-grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));max-width:900px}.overview-tab-section{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px 20px 20px}.overview-tab-section h3{font-size:13px;font-weight:600;margin:0 0 14px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em}.overview-field{align-items:center;display:grid;gap:8px;grid-template-columns:110px 1fr;margin-bottom:10px}.overview-field:last-child{margin-bottom:0}.overview-label{color:var(--muted);font-size:13px}.overview-inline-input{background:var(--panel);border:1px solid var(--accent);border-radius:5px;color:var(--text);font-size:14px;outline:none;padding:4px 8px;width:100%}.overview-inline-edit{background:none;border:1px solid transparent;border-radius:5px;color:var(--text);cursor:pointer;font-size:14px;min-height:auto;overflow:hidden;padding:4px 8px;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}.overview-inline-edit:hover{background:var(--bg);border-color:var(--line)}.overview-inline-select{background:var(--panel);border:1px solid var(--line);border-radius:5px;color:var(--text);font-size:14px;padding:4px 8px;width:100%}.overview-inline-select:focus{border-color:var(--accent);outline:none}.overview-company-picker-wrap{width:100%}.overview-dropdown{background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 4px 12px #0000001a;left:0;max-height:200px;overflow-y:auto;position:absolute;top:calc(100% + 4px);width:100%;z-index:30}.overview-dropdown button{background:none;border:none;border-radius:0;color:var(--text);display:block;font-size:13px;min-height:auto;padding:8px 12px;text-align:left;width:100%}.overview-dropdown button:hover{background:var(--bg)}.overview-dropdown-none{color:var(--muted)!important}.krav-analys-wrap{max-width:800px}.risk-summary{background:var(--panel);border:1px solid var(--line);border-radius:8px;margin-bottom:20px;padding:16px 20px}.risk-summary h3{font-size:13px;font-weight:600;margin:0 0 12px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em}.risk-summary-scores{display:flex;gap:20px;margin-bottom:14px}.risk-score{align-items:center;display:flex;flex-direction:column;gap:2px}.risk-score-value{font-size:22px;font-weight:700}.risk-score-label{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.risk-score--answered .risk-score-value{color:var(--success)}.risk-score--unknown .risk-score-value{color:#b45309}.risk-score--na .risk-score-value{color:var(--muted)}.risk-unknown-list{list-style:none;margin:0;padding:0}.risk-unknown-list li{border-left:3px solid #f59e0b;color:var(--text);font-size:13px;margin-bottom:4px;padding:4px 8px}.risk-all-clear{align-items:center;color:var(--success);display:flex;font-size:13px;font-weight:500;gap:6px}.krav-filter{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;color:var(--muted);display:flex;gap:8px;margin:-8px 0 16px;padding:9px 12px}.krav-filter--active{border-color:#c7d2fe;box-shadow:0 0 0 3px #4f46e514}.krav-filter input{background:transparent;border:none;color:var(--text);flex:1;font-size:14px;min-width:120px;outline:none}.krav-filter-count{background:#eef2ff;border:1px solid #c7d2fe;border-radius:999px;color:var(--accent);font-size:12px;font-weight:600;padding:3px 8px;white-space:nowrap}.krav-filter-clear{align-items:center;border:1px solid var(--line);border-radius:6px;color:var(--muted);display:inline-flex;font-size:12px;gap:4px;min-height:auto;padding:4px 8px;white-space:nowrap}.krav-filter-clear:hover{border-color:var(--accent);color:var(--accent)}.krav-filter-empty{align-items:center;background:var(--panel);border:1px dashed var(--line);border-radius:8px;color:var(--muted);display:flex;justify-content:space-between;padding:14px 16px}.krav-filter-empty p{margin:0}.krav-filter-empty button{color:var(--accent);font-size:13px;font-weight:600;min-height:auto;padding:4px 8px}.krav-categories{display:flex;flex-direction:column;gap:12px}.krav-category{background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow:hidden}.krav-category-header{align-items:center;background:#eef2ff;border:none;border-radius:0;cursor:pointer;display:flex;gap:8px;justify-content:space-between;min-height:auto;padding:12px 16px;text-align:left;width:100%}.krav-category-header:hover{background:#e0e7ff}.krav-category-name{align-items:center;color:#334155;display:inline-flex;font-size:14px;font-weight:700;gap:8px;letter-spacing:.02em}.krav-category-name svg{background:#dbeafe;border-radius:4px;color:var(--accent);min-height:20px;min-width:20px;padding:3px}.krav-category-progress{align-items:center;display:inline-flex;gap:6px}.krav-category-title{font-size:14px;font-weight:600}.krav-category-meta{align-items:center;display:flex;gap:8px}.krav-badge{border-radius:10px;font-size:11px;font-weight:600;padding:2px 7px}.krav-badge--answered{background:#dcfce7;color:#166534}.krav-badge--unknown{background:#fef3c7;color:#92400e}.krav-badge--na{background:#f3f4f6;color:#6b7280}.krav-questions{border-top:1px solid var(--line);display:flex;flex-direction:column}.krav-question{border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:6px;padding:10px 16px}.krav-question:last-child{border-bottom:none}.krav-question-top{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.krav-question-text{color:var(--text);flex:1;font-size:13px;line-height:1.5}.krav-answer-text{background:var(--bg);border:1px solid var(--line);border-radius:5px;color:var(--text);field-sizing:content;font:inherit;font-size:13px;min-height:32px;outline:none;padding:5px 8px;resize:none;width:100%}.krav-answer-text:focus{background:var(--panel);border-color:var(--accent)}.krav-answer-text::placeholder{color:#9aa4b2;font-style:italic}.krav-answer-buttons{display:flex;flex-shrink:0;gap:4px}.krav-answer-btn{border:1px solid var(--line);border-radius:5px;color:var(--muted);font-size:12px;min-height:auto;padding:3px 8px;white-space:nowrap}.krav-answer-btn:hover{border-color:var(--text);color:var(--text)}.krav-answer-btn--answered.active{background:#dcfce7;border-color:#86efac;color:#166534}.krav-answer-btn--unknown.active{background:#fef3c7;border-color:#fcd34d;color:#92400e}.krav-answer-btn--na.active{background:#f3f4f6;border-color:#d1d5db;color:#6b7280}.estimate-wrap{max-width:1060px}.estimate-table{border-collapse:collapse;font-size:14px;margin-bottom:12px;width:100%}.estimate-table thead th{background:var(--panel);border-bottom:2px solid var(--line);color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.04em;padding:8px 10px;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:1}.estimate-table thead th.estimate-num-col,.estimate-table td.estimate-num-col{text-align:right}.estimate-table tbody tr:hover{background:var(--bg)}.estimate-table tbody td{border-bottom:1px solid var(--line);padding:2px 4px;vertical-align:middle}.estimate-num-col{width:130px}.estimate-sum-col{color:var(--muted)}.estimate-comment-col{width:240px}.estimate-cell-btn{background:none;border:1px solid transparent;border-radius:4px;color:var(--text);cursor:pointer;font-size:14px;min-height:auto;padding:5px 6px;text-align:left;width:100%}.estimate-cell-btn:hover{background:var(--accent-soft);border-color:var(--line)}.estimate-num-col .estimate-cell-btn{text-align:right}.estimate-comment-btn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.estimate-cell-input{background:var(--panel);border:1px solid var(--accent);border-radius:4px;color:var(--text);font-size:14px;outline:none;padding:5px 6px;width:100%}.estimate-num-col .estimate-cell-input{text-align:right}.estimate-table tfoot .estimate-total-row{background:var(--bg);border-top:2px solid var(--line);font-weight:600}.estimate-table tfoot td{padding:8px 10px}.estimate-add-row-btn{align-items:center;background:none;border:1px dashed var(--line);border-radius:6px;color:var(--muted);display:inline-flex;font-size:13px;gap:6px;min-height:auto;padding:6px 12px}.estimate-add-row-btn:hover{border-color:var(--accent);color:var(--accent)}.project-cards-area{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));overflow-y:auto;padding:16px 20px 24px}.project-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;cursor:pointer;display:flex;flex-direction:column;gap:6px;min-height:130px;padding:14px 16px 12px;transition:border-color .15s,box-shadow .15s}.project-card:hover{border-color:var(--accent);box-shadow:0 2px 10px #00000012}.project-card--archived{opacity:.65}.project-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2px}.project-card-header-actions{align-items:center;display:inline-flex;gap:8px;margin-left:12px}.project-card-menu-wrap{position:relative}.project-card-menu-btn{color:var(--muted)}.project-card-menu{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 16px #0000001f;display:flex;flex-direction:column;min-width:140px;padding:4px;position:absolute;right:0;top:calc(100% + 4px);z-index:30}.project-card-menu button{border-radius:5px;color:var(--text);font-size:13px;min-height:auto;padding:7px 10px;text-align:left;width:100%}.project-card-menu button:hover{background:var(--bg)}.project-card-menu button.danger{color:var(--danger)}.project-card-title{font-size:14px;font-weight:600;line-height:1.35;margin:0}.project-card-company{color:var(--muted);font-size:12px;margin:0}.project-card-meta{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;font-size:12px;gap:8px;margin-top:2px}.project-card-footer{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:8px}.project-card-date{color:var(--muted);font-size:11px;line-height:1;white-space:nowrap}.krav-chip{background:var(--bg);border:1px solid var(--line);border-radius:4px;color:var(--muted);font-size:11px;padding:2px 7px}.krav-chip--progress{background:#f0f4ff;border-color:#c7d2fe;color:#4338ca}.project-card-file-count{background:var(--bg);border:1px solid var(--line);border-radius:4px;color:var(--muted);font-size:11px;padding:2px 7px}.ai-chip,.ai-badge{background:#f3e8ff;border:1px solid #d8b4fe;border-radius:4px;color:#7c3aed;font-size:11px;padding:2px 7px}.project-status-badge--tidig-dialog{background:#f0f4ff;color:#3b54d0}.project-status-badge--behovsanalys{background:#fff7ed;color:#c2410c}.project-status-badge--kvalificering{background:#fefce8;color:#a16207}.project-status-badge--offert{background:#f0fdf4;color:#166534}.project-status-badge--pagaende{background:#ecfdf5;color:#087443}.recruiting-workspace{display:grid;gap:16px;grid-template-rows:auto auto auto minmax(0,1fr);height:100vh;min-height:0;overflow:hidden;padding:0}.workspace-kicker{color:var(--muted);font-size:13px;font-weight:700;letter-spacing:.16em;margin:0 0 8px;text-transform:uppercase}.recruiting-header{padding:28px 28px 2px}.recruiting-header .workspace-header-left{display:block}.recruiting-detail{background:var(--panel);border:1px solid var(--line);border-radius:8px;display:grid;gap:18px;grid-template-columns:2fr 3fr 2fr 2fr;margin:0 28px;padding:18px}.recruiting-detail-empty{align-items:center;display:flex;justify-content:center}.recruiting-col-fields{display:grid;gap:10px;grid-template-rows:auto auto minmax(0,1fr);min-height:0}.recruiting-col-fields .recruiting-name-input{background:transparent;border:0;font-size:20px;font-weight:800;padding:2px 4px}.recruiting-col-fields .recruiting-name-input:focus{background:var(--bg);outline:1px solid var(--accent)}.recruiting-col-meta{border-left:1px solid var(--line);display:grid;gap:10px;min-height:0;padding-left:18px}.recruiting-meta-pair{display:grid;gap:10px;grid-template-columns:1fr 1fr}.recruiting-col-notes{border-left:1px solid var(--line);grid-template-rows:auto minmax(0,1fr);min-height:0;padding-left:18px}.recruiting-col-notes textarea{height:100%;resize:none}.recruiting-address-field{grid-template-rows:auto minmax(0,1fr);min-height:0}.recruiting-detail label{color:var(--muted);display:grid;font-size:12px;font-weight:700;gap:5px;text-transform:uppercase}.recruiting-detail input,.recruiting-detail select,.recruiting-detail textarea{background:#fff;border:1px solid var(--line);border-radius:6px;color:var(--text);font-size:14px;min-width:0;padding:9px 10px;text-transform:none}.recruiting-address-field textarea{height:100%;min-height:50px;resize:none}.recruiting-detail-side{border-left:1px solid var(--line);display:grid;gap:14px;grid-template-rows:auto minmax(0,1fr);padding-left:18px}.recruiting-side-head,.recruiting-files-head,.recruiting-toolbar{align-items:center;display:flex;gap:12px}.recruiting-side-head{border-radius:6px;justify-content:center;padding:6px 10px}.recruiting-side-head.flow-green{background:#d1fae5;color:#065f46}.recruiting-side-head.flow-yellow{background:#fef9c3;color:#854d0e}.recruiting-side-head.flow-red{background:#fee2e2;color:#991b1b}.recruiting-side-head span{font-size:13px;font-weight:700}.recruiting-files{min-height:0;overflow:auto}.recruiting-files h3{font-size:14px;margin:0}.recruiting-files p{color:var(--muted);font-size:13px}.recruiting-upload-btn{align-items:center;border:1px solid var(--line);border-radius:6px;color:var(--accent)!important;cursor:pointer;display:inline-flex!important;flex-direction:row;font-size:12px;gap:5px!important;margin-left:auto;padding:6px 8px;text-transform:none!important}.recruiting-upload-btn input{display:none}.recruiting-file-row{align-items:center;border-top:1px solid var(--line);display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;padding:10px 0}.recruiting-file-link{color:var(--text);display:block;font-size:13px;font-weight:700;overflow:hidden;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.recruiting-file-link:hover{color:var(--accent);text-decoration:underline}.recruiting-file-row small{color:var(--muted);display:block;font-size:12px;margin-top:3px}.recruiting-toolbar{align-items:center;display:flex;gap:12px;margin:0 28px}.recruiting-closed-toggle{align-items:center;color:var(--text);display:inline-flex;font-size:14px;gap:7px;white-space:nowrap}.recruiting-search{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;color:var(--muted);display:grid;flex:1;gap:10px;grid-template-columns:auto minmax(0,1fr);max-width:520px;min-height:42px;padding:0 12px}.recruiting-search input{background:transparent;border:0;color:var(--text);font-size:14px;min-width:0;outline:0;padding:0;width:100%}.recruiting-search input::placeholder{color:var(--muted)}.recruiting-list-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px 8px 0 0;margin:0 28px;min-height:0;overflow:hidden}.recruiting-list-panel .table-wrap{height:100%;overflow:auto}.recruiting-list-panel thead th{position:sticky;top:0;z-index:1}.recruiting-table{min-width:1070px}.recruiting-table .selection-cell{text-align:center;width:48px}.recruiting-table tbody tr{cursor:pointer}.recruiting-table tbody tr:hover td,.recruiting-table tbody tr.selected-row td{background:var(--accent-soft)}.recruiting-candidate-name{color:var(--text);font-weight:700}.recruiting-inline-select{background:#fff;border:1px solid transparent;border-radius:6px;color:var(--text);cursor:pointer;font:inherit;max-width:100%;min-height:32px;min-width:140px;padding:4px 28px 4px 8px}.recruiting-inline-select:hover,.recruiting-inline-select:focus{border-color:var(--line);outline:none}.recruiting-status-select{font-size:12px;font-weight:700;min-width:132px}.recruiting-status-select--tillagd{background:#eef2ff;color:#3451d1}.recruiting-status-select--ny-ansokan{background:#eff6ff;color:#1d4ed8}.recruiting-status-select--bedomd{background:#f5f3ff;color:#6d28d9}.recruiting-status-select--avtal-skickat{background:#fef3c7;color:#9a6100}.recruiting-status-select--anstalld{background:#dcfce7;color:#166534}.recruiting-status-select--avslag{background:#fee2e2;color:#991b1b}.recruiting-status{border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;padding:6px 9px;white-space:nowrap}.recruiting-status--tillagd{background:#eef2ff;color:#3451d1}.recruiting-status--ny-ansokan{background:#eff6ff;color:#1d4ed8}.recruiting-status--bedomd{background:#f5f3ff;color:#6d28d9}.recruiting-status--avtal-skickat{background:#fef3c7;color:#9a6100}.recruiting-status--anstalld{background:#dcfce7;color:#166534}.recruiting-status--avslag{background:#fee2e2;color:#991b1b}.recruiting-hired-popover{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-lg);left:50%;max-width:360px;padding:14px;position:fixed;top:92px;transform:translate(-50%);z-index:40}.recruiting-dialog{max-width:440px}.overview-2x2{display:grid;gap:16px;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;overflow-y:auto;padding:16px 20px 24px}@media (max-width: 900px){.overview-2x2{grid-template-columns:1fr}}.overview-panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;gap:0;min-height:180px;overflow:hidden;padding:16px}.overview-panel-header{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:12px}.overview-panel-header h3{font-size:13px;font-weight:600;letter-spacing:.03em;margin:0;text-transform:uppercase}.overview-summary-input{background:var(--bg);border:1px solid var(--line);border-radius:6px;color:var(--text);flex:1;font-family:inherit;font-size:13px;line-height:1.5;outline:none;padding:8px 10px;resize:vertical;width:100%}.overview-summary-input:focus{border-color:var(--accent)}.overview-summary-display{background:none;border:1px solid transparent;border-radius:6px;color:var(--text);cursor:text;font-size:13px;line-height:1.5;min-height:80px;min-height:auto;padding:4px 6px;text-align:left;white-space:pre-wrap;width:100%}.overview-summary-display:hover{background:var(--bg);border-color:var(--line)}.btn-small{background:var(--bg);border:1px solid var(--line);border-radius:5px;color:var(--text);font-size:12px;min-height:auto;padding:4px 10px}.btn-small:hover{border-color:var(--accent);color:var(--accent)}.btn-small--ai{background:#f3e8ff;border-color:#d8b4fe;color:#7c3aed}.btn-small--ai:hover{background:#ede9fe;border-color:#a78bfa;color:#5b21b6}.btn-small--ai:disabled{opacity:.6}.overview-analyse-error{font-size:12px;color:var(--danger);margin-left:4px}.btn-danger-small{background:#fff2f0;border:1px solid #fca5a5;border-radius:5px;color:var(--danger);font-size:12px;min-height:auto;padding:3px 8px}.overview-files-empty{color:var(--muted);font-size:13px;padding:8px 0}.overview-files-empty p{margin:0}.overview-file-list{display:flex;flex-direction:column;gap:4px;list-style:none;margin:0;padding:0}.overview-file-item{align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:6px;display:flex;gap:6px;padding:6px 10px}.overview-file-name{flex:1;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-file-status{border-radius:4px;color:var(--muted);flex-shrink:0;font-size:11px;padding:1px 6px}.overview-file-status--done{color:#166534}.overview-file-delete-confirm{align-items:center;display:flex;gap:4px}.overview-risk-scores{display:flex;gap:16px;margin-bottom:14px}.overview-cat-risk-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.overview-cat-risk-item{align-items:center;display:flex;font-size:12px;gap:8px}.overview-cat-risk-name{color:var(--muted);flex:0 0 140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-cat-risk-bar-wrap{background:var(--line);border-radius:3px;flex:1;height:6px;overflow:hidden}.overview-cat-risk-bar{background:var(--success, #22c55e);border-radius:3px;height:100%;transition:width .3s}.overview-cat-risk-pct{color:var(--muted);flex:0 0 36px;font-size:11px;text-align:right}.overview-cat-risk-pct.risk-high{color:var(--danger);font-weight:600}.overview-cat-risk-pct.risk-mid{color:#b45309}.estimate-summary-bar{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px;padding:10px 14px}.estimate-summary-stats{display:flex;gap:20px}.estimate-summary-stat{align-items:baseline;display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:1px}.estimate-summary-label{color:var(--muted);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.04em}.estimate-generate-hint{color:var(--muted);font-size:12px;margin:0 0 10px}.estimate-table--sections{table-layout:fixed;width:100%}.estimate-table--sections th:first-child{width:auto}.estimate-table--sections th:nth-child(2){width:130px}.estimate-table--sections th.estimate-comment-col{width:240px}.estimate-section-header{cursor:pointer;-webkit-user-select:none;user-select:none}.estimate-section-header td{background:#eef2ff;border-bottom:1px solid #c7d2fe;border-top:2px solid #c7d2fe;color:#334155;font-size:12px;font-weight:700;letter-spacing:.04em;padding:10px 12px;text-transform:uppercase}.estimate-section-header:first-of-type td{border-top:none}.estimate-section-toggle{align-items:center;background:#dbeafe;border-radius:4px;color:var(--accent);display:inline-flex;justify-content:center;margin-right:8px;min-height:20px;min-width:20px;vertical-align:middle}.estimate-section-summary{color:var(--muted);font-size:11px;font-weight:400;margin-left:10px;text-transform:none}.estimate-section-header:hover td{background:#e0e7ff}.estimate-row{transition:background .1s}.estimate-row:hover{background:var(--bg)}.estimate-task-col{width:300px}.estimate-role-col{width:150px}.estimate-resizable-col{overflow:hidden;position:relative}.col-resize-handle{bottom:0;cursor:col-resize;position:absolute;right:0;top:0;width:6px}.col-resize-handle:after{background:var(--line);content:"";display:block;height:60%;margin:auto;position:absolute;right:1px;top:20%;width:2px}.col-resize-handle:hover:after{background:var(--accent)}.estimate-conf-col{text-align:center!important;width:90px}.estimate-conf-btn{border-radius:4px;font-size:11px;min-height:auto;padding:2px 8px}.conf-none{background:transparent;border:1px solid var(--line);color:var(--muted)}.conf-lag{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}.conf-medel{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.conf-hog{background:#dcfce7;border:1px solid #86efac;color:#166534}.estimate-add-row-tr td{padding:4px 10px 8px}.krav-question--na .krav-question-text{opacity:.5}.krav-ai-suggestion{background:#faf5ff;border:1px solid #d8b4fe;border-radius:8px;margin:8px 0 4px;padding:10px 12px}.krav-ai-suggestion-header{align-items:center;display:flex;gap:8px;margin-bottom:6px}.krav-ai-badge{background:#ede9fe;border-radius:4px;color:#6d28d9;font-size:11px;font-weight:600;padding:2px 7px}.krav-ai-source{color:#7c3aed;font-size:11px;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.krav-ai-text{color:var(--text);font-size:13px;line-height:1.5;margin:0 0 10px;white-space:pre-wrap}.krav-ai-actions{display:flex;gap:6px}.krav-ai-btn{border-radius:5px;font-size:12px;min-height:auto;padding:4px 12px}.krav-ai-btn--accept{background:#dcfce7;border:1px solid #86efac;color:#166534}.krav-ai-btn--accept:hover{background:#bbf7d0}.krav-ai-btn--edit{background:#ede9fe;border:1px solid #c4b5fd;color:#5b21b6}.krav-ai-btn--edit:hover{background:#ddd6fe}.krav-ai-btn--dismiss{background:var(--bg);border:1px solid var(--line);color:var(--muted)}.krav-ai-btn--dismiss:hover{border-color:var(--text);color:var(--text)}.krav-badge--progress{background:#f0f4ff;color:#3b54d0}.krav-ai-accepted-badge{background:#faf5ff;border:1px solid #d8b4fe;border-radius:4px;color:#6d28d9;display:inline-block;font-size:11px;margin-top:4px;max-width:100%;overflow:hidden;padding:2px 8px;text-overflow:ellipsis;white-space:nowrap}.planering-wrap{max-width:1100px;padding:4px 0 24px}.plan-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.plan-header h3{font-size:18px;margin:0 0 4px}.plan-sub{color:var(--muted);font-size:13px;margin:0;max-width:620px}.plan-initial{padding:12px 0}.plan-hint{color:var(--muted);font-size:13px;margin:4px 0}.plan-est-summary{color:var(--muted);font-size:12px;margin-top:8px}.plan-summary-bar{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;display:flex;gap:12px;justify-content:space-between;margin:8px 0 12px;padding:8px 12px}.plan-summary-stats{display:flex;flex-wrap:wrap;gap:10px}.plan-summary-stat{align-items:baseline;background:var(--bg);border:1px solid var(--line);border-radius:6px;display:inline-flex;font-size:13px;gap:6px;padding:4px 10px}.plan-summary-label{color:var(--muted);font-size:11px}.plan-actions{display:flex;gap:8px}.plan-persons-section{margin:8px 0 10px}.plan-persons-label{font-size:12px;font-weight:600;margin-bottom:6px}.plan-persons{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.plan-person-pill{align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:999px;display:inline-flex;font-size:12px;gap:4px;padding:2px 4px 2px 10px}.plan-skill-select{background:transparent;border:0;font-size:11px;margin-left:4px;padding:0 2px}.plan-pill-x{background:transparent;border:0;color:var(--muted);cursor:pointer;font-size:14px;line-height:1;padding:0 4px}.plan-pill-x:hover{color:var(--danger)}.plan-freelance-form{display:inline-flex;gap:6px;align-items:center}.plan-freelance-form input{width:160px}.plan-freelance-form select,.plan-freelance-form button{font-size:12px}.plan-person-popover{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 6px 20px #0000001f;margin-top:4px;min-width:260px;padding:6px;position:absolute;z-index:40}.plan-person-list{max-height:220px;overflow:auto}.plan-person-item{background:transparent;border:0;border-radius:5px;display:flex;font-size:13px;gap:8px;padding:6px 8px;text-align:left;width:100%}.plan-person-item:hover{background:var(--bg)}.plan-person-item.selected{opacity:.6}.plan-person-item .plan-person-company{color:var(--muted);font-size:11px;margin-left:auto}.plan-person-empty{color:var(--muted);font-size:12px;padding:6px 8px}.plan-person-actions{border-top:1px solid var(--line);margin-top:4px;padding-top:6px;text-align:right}.plan-person-actions button{font-size:12px;padding:3px 10px}.plan-deps-panel{background:#faf5ff;border:1px solid #d8b4fe;border-radius:8px;margin:10px 0;padding:10px 12px}.plan-deps-header{align-items:center;display:flex;font-weight:600;gap:8px;margin-bottom:6px}.plan-deps-acceptall{background:#ede9fe;border:1px solid #c4b5fd;border-radius:4px;color:#5b21b6;font-size:11px;padding:2px 8px}.plan-deps-list{display:flex;flex-direction:column;gap:4px}.plan-dep-item{align-items:center;background:#fff;border:1px solid #e9d5ff;border-radius:6px;display:flex;font-size:12px;gap:8px;justify-content:space-between;padding:6px 8px}.plan-dep-item.accepted{background:#f0fdf4;border-color:#86efac}.plan-dep-text{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px}.plan-dep-reason{color:#6b7280;font-size:11px}.plan-dep-detail{font-size:10px;margin-left:4px}.plan-dep-actions{display:flex;gap:4px}.plan-dep-btn{border-radius:4px;font-size:11px;min-height:auto;padding:2px 8px}.plan-dep-btn--accept{background:#dcfce7;border:1px solid #86efac;color:#166534}.plan-deps-note{font-size:11px;margin:6px 0 0}.plan-timeline{margin-top:8px}.plan-timeline-head{color:var(--muted);font-size:12px;margin-bottom:6px}.plan-gantt{border:1px solid var(--line);border-radius:6px;display:grid;grid-template-columns:260px 1fr;overflow:hidden}.gantt-labels{background:var(--bg);border-right:1px solid var(--line)}.gantt-labels-header{align-items:center;background:var(--bg);border-bottom:1px solid var(--line);display:flex;font-size:10px;padding:0 8px;color:var(--muted)}.gantt-label-row{align-items:center;border-bottom:1px solid var(--line);display:flex;font-size:11px;gap:6px;overflow:hidden;padding:0 8px;white-space:nowrap}.gantt-label-row:last-child{border-bottom:0}.gantt-sec{font-weight:600;font-size:10px}.gantt-task{flex:1;overflow:hidden;text-overflow:ellipsis}.gantt-assigned{font-size:10px}.gantt-meta{color:var(--muted);font-size:10px;margin-left:4px}.gantt-label-row.overhead{background:#f8fafc;font-style:italic;color:#475569}.gantt-label-row.overhead .gantt-sec{opacity:.7}.gantt-tracks{background:#fff}.gantt-headers{display:flex;border-bottom:1px solid var(--line);height:22px}.gantt-week{border-right:1px solid #f1f5f9;color:var(--muted);font-size:9px;display:flex;align-items:center;justify-content:center;padding:0 2px;text-align:center}.gantt-week.year-change{border-left:2px solid #64748b;font-weight:600}.plan-inline-edit{background:none;border:none;color:inherit;cursor:pointer;padding:0;text-align:left}.plan-inline-date{font-size:10px;padding:1px 3px}.gantt-track-row{border-bottom:1px solid #f1f5f9;position:relative}.gantt-track-row:last-child{border-bottom:0}.gantt-bar{align-items:center;font-weight:500;position:relative;transition:box-shadow .1s}.gantt-bar:hover{box-shadow:0 2px 6px #0003}.gantt-bar.overhead-bar{pointer-events:none}.gantt-handle{background:#ffffffe6;border:1px solid rgba(0,0,0,.25);border-radius:2px;height:14px;position:absolute;top:4px;width:5px;z-index:2}.gantt-handle-l{left:1px;cursor:ew-resize}.gantt-handle-r{right:1px;cursor:ew-resize}.plan-gantt-hint{font-size:11px;margin-top:6px}.plan-warning{background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;color:#92400e;font-size:12px;margin-top:8px;padding:6px 10px}.plan-generating{margin-top:8px;border:1px solid var(--line);border-radius:6px;background:var(--bg);padding:16px}.plan-generating-content{display:flex;flex-direction:column;gap:12px}.plan-generating-header{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:14px;font-weight:500}.plan-gantt-skeleton{border:1px solid #e5e7eb;border-radius:4px;padding:8px;background:#fff;display:flex;flex-direction:column;gap:4px}.skeleton-row{display:flex;align-items:center;height:28px;gap:8px}.skeleton-label{height:10px;background:#f1f5f9;border-radius:2px;flex-shrink:0;animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton-track{flex:1;height:18px;background:#f8fafc;border-radius:3px;position:relative;overflow:hidden}.skeleton-bar{position:absolute;height:10px;top:4px;background:#3b82f6;opacity:.15;border-radius:2px;animation:skeleton-bar 1.8s ease-in-out infinite}.plan-generating-note{font-size:11px;margin:0}.plan-project-timeline{border:1px solid var(--line);border-radius:4px;padding:4px 6px;background:#f8fafc}@keyframes skeleton-shimmer{0%{opacity:1}50%{opacity:.5}to{opacity:1}}@keyframes skeleton-bar{0%{left:10%;width:12%}50%{left:25%;width:35%}to{left:70%;width:15%}}.tr-view-mode-tabs{background:var(--panel);border-bottom:1px solid var(--line);display:flex;gap:0;padding:8px 20px 0}.tr-sheet-view{display:flex;flex-direction:column;gap:16px}.tr-sheet-period-header{align-items:center;display:flex;gap:16px;justify-content:space-between}.tr-sheet-period-header h2{font-size:20px;margin:0}.tr-sheet-hint{color:var(--muted);font-size:12.5px;margin:-8px 0 0}.tr-sheet-mileage-heading{font-size:16px;margin:8px 0 0}.tr-sheet-frame{border:1px solid var(--line);border-radius:8px;display:flex;overflow:hidden}.tr-sheet-label-table{border-collapse:separate;border-right:1px solid var(--line);border-spacing:0;flex-shrink:0;font-size:13px;min-width:0;table-layout:fixed;width:180px}.tr-sheet-wrap{flex:1;min-width:0;overflow-x:auto}.tr-sheet-table{border-collapse:separate;border-spacing:0;font-size:13px;width:max-content}.tr-sheet-label-table thead tr:first-child th,.tr-sheet-table thead tr:first-child th{height:24px}.tr-sheet-label-table thead tr:last-child th,.tr-sheet-table thead tr:last-child th{height:43px}.tr-sheet-label-table tbody tr:not(.tr-sheet-total-row) td,.tr-sheet-table tbody tr:not(.tr-sheet-total-row) td{height:43px}.tr-sheet-total-row td{height:28px}.tr-sheet-corner{background:var(--panel);border-bottom:1px solid var(--line);padding:8px 12px;text-align:left}.tr-sheet-week-header{background:#eef2f9;border-left:1px solid var(--line);color:var(--muted);font-size:11px;font-weight:600;padding:4px 0;text-align:center;text-transform:uppercase}.tr-sheet-day-header{border-bottom:1px solid var(--line);color:var(--muted);font-size:11px;min-width:40px;padding:6px 4px;text-align:center;text-transform:none}.tr-sheet-day-header div:last-child{color:var(--text);font-size:13px;font-weight:600}.tr-sheet-day-header--spillover{opacity:.45}.tr-sheet-day-header--today div:last-child{align-items:center;background:var(--panel);border-radius:999px;color:var(--accent);display:inline-flex;height:22px;justify-content:center;margin-top:1px;position:relative;width:22px}.tr-sheet-day-header--today div:last-child:before{animation:tr-today-ring-orbit 3.5s linear infinite;background:conic-gradient(from 0deg,transparent 0deg,transparent 250deg,var(--accent) 300deg,oklch(88% .16 250) 332deg,var(--accent) 360deg);border-radius:999px;content:"";top:-2px;right:-2px;bottom:-2px;left:-2px;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;-webkit-mask-composite:xor;padding:2px;position:absolute}@keyframes tr-today-ring-orbit{0%{opacity:.7;transform:rotate(0)}50%{opacity:1}to{opacity:.7;transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.tr-sheet-day-header--today div:last-child:before{animation:none;opacity:1}}.tr-sheet-col--weekend{background:#eef0f4}.tr-sheet-col--red{background:#fff1ef;background:oklch(97% .025 25)}.tr-sheet-col--current-week{background:#fbf7e8}.tr-sheet-day-header.tr-sheet-col--red{color:var(--danger)}.tr-sheet-day-header.tr-sheet-col--red div:last-child{color:var(--danger)}.tr-sheet-vacation--confirmed{background:#154fac}.tr-sheet-vacation--pending{background:#a0bff2}.tr-sheet-vacation-clickable{cursor:pointer}.tr-sheet-row-label{background:var(--panel);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;padding:6px 12px;position:relative}.tr-sheet-row-name{font-size:13px;font-weight:600}.tr-sheet-row-subname{color:var(--muted);font-size:11.5px}.tr-sheet-row-remove{align-items:center;background:none;border:none;color:var(--muted);cursor:pointer;display:flex;font-size:13px;height:18px;justify-content:center;line-height:1;padding:0;position:absolute;right:8px;top:50%;transform:translateY(-50%);width:18px}.tr-sheet-row-remove:hover{color:var(--danger)}.tr-sheet-cell-td{border-bottom:1px solid var(--line);padding:0;position:relative;text-align:center}.tr-sheet-cell{background:none;border:none;color:var(--muted);cursor:pointer;font-size:13px;height:42px;width:100%}.tr-sheet-cell:hover{background:#f3f5f9}.tr-sheet-cell--filled{color:var(--text);font-weight:600}.tr-sheet-cell--readonly{cursor:default;opacity:.5}.tr-sheet-cell--readonly:hover{background:none}.tr-sheet-cell-input{border:1.5px solid var(--accent);border-radius:4px;font-size:13px;height:24px;outline:none;padding:0;text-align:center;width:34px}.tr-sheet-cell-input::-webkit-outer-spin-button,.tr-sheet-cell-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tr-sheet-cell-input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.tr-sheet-note-badge{background:var(--line);border:none;border-radius:50%;cursor:pointer;height:7px;padding:0;position:absolute;right:3px;top:3px;width:7px}.tr-sheet-note-badge:hover{background:var(--muted)}.tr-sheet-note-badge--filled{background:var(--accent)}.tr-sheet-note-badge--filled:hover{background:var(--accent);opacity:.85}.tr-sheet-note-popover{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 16px #0000001f;display:grid;gap:8px;padding:10px;width:220px;z-index:21}.tr-sheet-note-popover textarea{border:1px solid var(--line);border-radius:6px;font-family:inherit;font-size:13px;padding:6px 8px;resize:vertical;width:100%}.tr-sheet-note-popover .btn-primary{justify-self:end}.tr-sheet-total-row{background:var(--panel);font-weight:600}.tr-sheet-total-cell{padding:6px 4px;text-align:center}.tr-sheet-day-header:nth-child(7n+1),.tr-sheet-cell-td:nth-child(7n+1),.tr-sheet-total-cell:nth-child(7n+1){border-left:2px solid var(--muted)}.tr-sheet-add-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.tr-sheet-add-row span{color:var(--muted);font-size:12.5px}.tr-sheet-add-chip{background:var(--bg);border:1px dashed var(--line);border-radius:999px;color:var(--muted);cursor:pointer;font-size:12.5px;padding:5px 12px}.tr-sheet-add-chip:hover{border-color:var(--accent);color:var(--accent)}.tr-sheet-add-chip--has-data{border:1px solid var(--accent);color:var(--text)}.tr-sheet-add-chip--has-data:hover{background:#e9f3ff;background:oklch(96% .03 255)}.tr-sheet-add-chip-sum{color:var(--accent);font-weight:650;margin-left:6px}
