*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.block{display:block}.inline{display:inline}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.border{border-width:1px}.italic{font-style:italic}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--color-background: #f5f7f4;--color-background-primary: #ffffff;--color-background-secondary: #f7f9f6;--color-background-muted: #fbf8f1;--color-background-info: #edf7f5;--color-surface: #ffffff;--color-surface-overlay: rgba(250, 252, 249, .98);--color-border: #d9e1d8;--color-border-strong: #cfd8ce;--color-border-tertiary: #e2e9e0;--color-text: #1e2a2a;--color-text-secondary: #66757a;--color-text-muted: #66757a;--color-text-tertiary: #8b989d;--color-text-info: #1f6b6b;--color-primary: #1f6b6b;--color-primary-strong: #184f4f;--color-secondary: #355c7d;--color-success-bg: #e5f2eb;--color-success-text: #2e7d5a;--color-readonly-bg: #e8edf0;--color-readonly-text: #51656a;--color-warning-bg: #f7f0e4;--color-warning-border: #ecd9b8;--color-warning-text: #8a5c1d;--color-overlay: rgba(30, 42, 42, .14);--shadow-soft: 0 12px 28px rgba(24, 42, 42, .08);--border-radius-sm: .9rem;--border-radius-md: 1rem;--border-radius-lg: 1.2rem;color:var(--color-text);background:radial-gradient(circle at top left,rgba(31,107,107,.06),transparent 24%),radial-gradient(circle at bottom right,rgba(201,139,46,.08),transparent 22%),var(--color-background);font-family:Inter,Segoe UI,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;line-height:1.45;font-weight:500}[data-theme=dark]{--color-background: #0f1a1a;--color-background-primary: #162020;--color-background-secondary: #1a2828;--color-background-muted: #1e2e2a;--color-background-info: #0f2a28;--color-surface: #1a2828;--color-surface-overlay: rgba(22, 32, 32, .98);--color-border: #2a3d3d;--color-border-strong: #344d4d;--color-border-tertiary: #243535;--color-text: #e8f0ee;--color-text-secondary: #8aada8;--color-text-muted: #8aada8;--color-text-tertiary: #5e7e7a;--color-text-info: #4db8a8;--color-primary: #2ab89a;--color-primary-strong: #1f9980;--color-secondary: #5a8ab0;--color-success-bg: #0f2a1e;--color-success-text: #4db884;--color-readonly-bg: #1a2a2e;--color-readonly-text: #6a9098;--color-warning-bg: #2a1e0f;--color-warning-border: #4a3318;--color-warning-text: #c89840;--color-overlay: rgba(0, 0, 0, .5);--shadow-soft: 0 12px 28px rgba(0, 0, 0, .3);color-scheme:dark;background:radial-gradient(circle at top left,rgba(42,184,154,.04),transparent 24%),radial-gradient(circle at bottom right,rgba(90,138,176,.06),transparent 22%),var(--color-background)}[data-theme=dark] .sidebar{background:#0f1a1af2}[data-theme=dark] .sidebar-link.is-active{background:#1f3030;color:#c8e8e0}[data-theme=dark] .sidebar-link{color:#8aada8}[data-theme=dark] .sidebar-link:hover{background:#1a2e2e;color:#c8e8e0}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px;color:var(--color-text)}button,input,textarea,select{font:inherit}button{cursor:pointer}.page-shell{min-height:100vh;display:grid;grid-template-columns:236px minmax(0,1fr);color:var(--color-text)}.sidebar-backdrop,.shell-menu-button,.mobile-org-switcher,.mobile-bottom-nav,.mobile-more-backdrop,.mobile-more-sheet{display:none}.sidebar{padding:1.25rem 1rem;border-right:1px solid var(--color-border);background:#fafcf9eb;display:flex;flex-direction:column;gap:1rem}.sidebar-brand,.sidebar-user,.lane-identity,.topbar,.topbar-actions,.week-control,.panel-header,.billing-summary,.drawer-header,.drawer-actions,.inline-actions,.grid-toolbar{display:flex;align-items:center;gap:.85rem}.sidebar-brand h1,.topbar h2,.panel-header h3,.drawer-header h3,.auth-card h1,.empty-state-panel h3{margin:0}.panel-header h3{font-size:1rem;font-weight:800;letter-spacing:-.01em;line-height:1.2}.topbar h2{font-size:1rem;font-weight:700;letter-spacing:-.01em}.topbar-title-group,.topbar-heading{display:flex;min-width:0}.topbar-title-group{align-items:center;gap:.75rem}.topbar-heading{flex-direction:column;gap:.12rem}.topbar-workspace-label{display:none}.brand-badge,.avatar-chip,.empty-state-icon{display:grid;place-items:center;color:var(--color-surface);font-weight:800}.brand-badge,.avatar-chip{width:2.7rem;height:2.7rem;border-radius:var(--border-radius-md);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary))}.avatar-chip.small{width:2.25rem;height:2.25rem;border-radius:.8rem;font-size:.86rem}.empty-state-icon{width:4rem;height:4rem;border-radius:1.25rem;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));font-size:1.3rem}.eyebrow,.field-label{display:block;margin:0 0 .28rem;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.09em;font-size:.68rem;font-weight:700}.sidebar-nav,.lane-stack,.billing-lines,.drawer-form,.auth-form,.main-column,.billing-table,.sidebar-org-switcher{display:grid;gap:.75rem}.sidebar-link{border:0;background:transparent;border-radius:var(--border-radius-md);padding:.8rem .9rem;display:flex;align-items:center;gap:.7rem;color:#435558;text-align:left}.sidebar-link.is-active{background:#e2ecea;color:#163535;font-weight:700}.sidebar-link-mark{width:.55rem;height:.55rem;border-radius:999px;background:currentColor;opacity:.8}.sidebar-user,.panel,.hero-panel,.auth-card{border:1px solid var(--color-border);border-radius:var(--border-radius-lg);background:var(--color-surface)}.sidebar-user{padding:1rem;margin-top:auto;display:grid;gap:.55rem;text-align:center;justify-items:center}.sidebar-org-switcher{padding:0 .2rem}.sidebar-org-select{min-width:0;padding:.5rem .65rem;font-size:.88rem}.mobile-org-select{min-width:0}.signout-confirm{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.78rem;color:var(--color-text-secondary)}.sidebar-user p,.hero-copy,.panel-copy,.project-card p,.lane-card p,.metric-panel p,.billing-row p,.auth-copy{margin:0;color:var(--color-text-muted)}.sidebar-user .avatar-chip{width:2.4rem;height:2.4rem}.sidebar-user-name{font-size:clamp(.78rem,1.8vw,.95rem);font-weight:700;line-height:1.2;color:var(--color-text);overflow-wrap:break-word;word-break:break-word;max-width:100%}.sidebar-user-meta{font-size:.72rem;color:var(--color-text-secondary);line-height:1.3}.sidebar-signout{justify-self:center}.content-area{padding:.85rem 1.1rem;display:flex;flex-direction:column;gap:.65rem;height:100vh;overflow:hidden;overflow-x:hidden}.toast-notice{position:fixed;right:1.25rem;bottom:1.25rem;z-index:40;max-width:min(360px,calc(100vw - 2rem));padding:.85rem 1rem;border:1px solid var(--color-border-strong);border-radius:var(--border-radius-md);background:var(--color-surface-overlay);color:var(--color-text);font-size:.9rem;line-height:1.45;box-shadow:var(--shadow-soft);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:toast-slide-in .18s ease}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.workspace-invite-banner{display:grid;gap:.75rem;padding:.95rem 1rem;border-color:var(--color-primary);background:var(--color-background-info)}.workspace-invite-banner-header h3{margin:0}.workspace-invite-list{display:grid;gap:.65rem}.workspace-invite-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.65rem;border-top:.5px solid var(--color-border-tertiary)}.workspace-invite-row:first-child{padding-top:0;border-top:none}.workspace-invite-row strong{display:block}.workspace-invite-row p{margin:.15rem 0 0;color:var(--color-text-secondary);font-size:.82rem}.onboarding-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:var(--color-overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:onboarding-fade-in .2s ease}.onboarding-modal{position:relative;width:min(100% - 2rem,440px);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:1.4rem;padding:2rem 2rem 1.75rem;display:grid;gap:1.1rem;box-shadow:0 32px 72px #0000002e,0 0 0 1px var(--color-border),inset 0 1px #fff9;overflow:hidden;animation:onboarding-slide-up .28s cubic-bezier(.16,1,.3,1)}.onboarding-modal:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,var(--color-primary) 0%,rgba(53,92,125,.5) 60%,transparent 100%);border-radius:1.4rem 1.4rem 0 0}.onboarding-glow{position:absolute;top:-40px;left:50%;transform:translate(-50%);width:200px;height:120px;background:radial-gradient(ellipse,rgba(31,107,107,.18),transparent 70%);pointer-events:none}[data-theme=dark] .onboarding-glow{background:radial-gradient(ellipse,rgba(42,184,154,.14),transparent 70%)}.onboarding-header{display:flex;align-items:flex-start;gap:.85rem}.onboarding-icon{width:2.6rem;height:2.6rem;border-radius:.85rem;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));display:grid;place-items:center;color:#fff;flex-shrink:0;box-shadow:0 6px 16px #1f6b6b47}.onboarding-eyebrow{margin:0 0 .15rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--color-primary)}.onboarding-title{margin:0;font-size:1.2rem;font-weight:800;color:var(--color-text);line-height:1.18;letter-spacing:-.02em}.onboarding-copy{margin:0;font-size:.88rem;color:var(--color-text-secondary);line-height:1.55;padding-bottom:.15rem;border-bottom:.5px solid var(--color-border-tertiary)}.onboarding-form{display:grid;gap:.85rem}.onboarding-field{display:grid;gap:.38rem}.onboarding-label{font-size:.72rem;font-weight:700;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.09em}.onboarding-input,.onboarding-select{width:100%;border:1px solid var(--color-border);border-radius:.85rem;background:var(--color-background-secondary);color:var(--color-text);padding:.72rem .9rem;font:inherit;font-size:.92rem;transition:border-color .15s ease,box-shadow .15s ease}.onboarding-input:focus,.onboarding-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1f6b6b1a;background:var(--color-surface)}[data-theme=dark] .onboarding-input,[data-theme=dark] .onboarding-select{color-scheme:dark}.onboarding-submit{width:100%;padding:.82rem 1rem;border:0;border-radius:.85rem;background:var(--color-primary);color:#fff;font:inherit;font-size:.92rem;font-weight:700;cursor:pointer;transition:background .15s ease,transform .1s ease,box-shadow .15s ease;box-shadow:0 8px 20px #1f6b6b38,0 2px 4px #1f6b6b1f;margin-top:0;line-height:1.25;text-align:center}.onboarding-actions{display:grid;grid-template-columns:1fr 1.6fr;gap:.65rem;align-items:stretch;margin-top:.1rem}.onboarding-actions:has(.onboarding-submit:only-child){grid-template-columns:1fr}.onboarding-actions .onboarding-submit{margin-top:0}.onboarding-skip{padding:.82rem 1rem;font-size:.88rem;font-weight:600;color:var(--color-text-secondary);border-color:var(--color-border);text-align:center;border-radius:.85rem;white-space:normal;line-height:1.25}.onboarding-skip:hover{background:var(--color-background-secondary);color:var(--color-text)}.onboarding-submit:hover:not(:disabled){background:var(--color-primary-strong);transform:translateY(-1px);box-shadow:0 12px 28px #1f6b6b47,0 3px 6px #1f6b6b24}.onboarding-submit:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 12px #1f6b6b2e}.onboarding-submit:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}[data-theme=dark] .onboarding-modal{box-shadow:0 32px 72px #0000006b,0 0 0 1px var(--color-border-strong),inset 0 1px #ffffff0a}[data-theme=dark] .onboarding-modal:before{background:linear-gradient(90deg,var(--color-primary) 0%,rgba(90,138,176,.4) 60%,transparent 100%)}@keyframes onboarding-fade-in{0%{opacity:0}to{opacity:1}}@keyframes onboarding-slide-up{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.topbar{justify-content:space-between;flex-shrink:0}.content-area>.secondary-layout,.content-area>.clients-layout{flex:1 1 0;min-height:0;overflow:hidden}.content-area>.settings-layout{flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden}.content-area>.timesheet-section-wrapper{flex:1 1 0;min-height:0;overflow:hidden}.content-area>.insights-layout{overflow-y:auto;overflow-x:hidden}.topbar-actions{justify-content:flex-end}.mobile-bottom-link,.mobile-more-link{border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background:var(--color-surface);color:var(--color-text);min-height:44px;padding:.72rem .85rem;text-align:center;font-weight:700;transition:.14s ease}.mobile-bottom-link.is-active,.mobile-more-link.is-active{border-color:var(--color-primary);background:var(--color-background-info)}.mobile-more-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.mobile-more-sheet-header h3{margin:0}.mobile-more-list{display:grid;gap:.55rem}.week-control{padding:.45rem .7rem;border-radius:var(--border-radius-md);border:1px solid var(--color-border);background:var(--color-surface)}.section-control{min-width:250px}.icon-button,.secondary-button,.primary-button,.text-button,.time-cell{border-radius:var(--border-radius-sm);transition:.14s ease}.icon-button,.secondary-button{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.icon-button{width:2.35rem;height:2.35rem}.secondary-button,.primary-button{padding:.78rem .95rem}.primary-button{border:0;color:var(--color-surface);background:var(--color-primary);box-shadow:0 10px 20px #1f6b6b24}.text-button{border:0;background:transparent;color:var(--color-primary);padding:0;font-weight:700}.secondary-button:hover,.icon-button:hover,.time-cell:hover,.sidebar-link:hover{background:var(--color-background-secondary)}.primary-button:hover{background:var(--color-primary-strong)}.secondary-button.danger{color:#9a3e3e}.hero-panel,.panel{padding:1.1rem 1.25rem}.hero-panel.compact{display:flex;flex-direction:column;gap:.65rem;background:linear-gradient(140deg,#1f6b6b0d,#355c7d0a),var(--color-surface);padding:.85rem 1.1rem}.hero-panel h3,.metric-panel h3{margin:0 0 .25rem}.hero-filters.compact{display:flex;flex-wrap:wrap;gap:.55rem;align-items:stretch}.hero-filters.compact .hero-chip{flex:1 1 140px;min-width:120px}.hero-chip,.metric-panel,.lane-card,.drawer-meta,.drawer-empty{border-radius:var(--border-radius-md);background:var(--color-background-secondary);border:1px solid var(--color-border-tertiary)}.hero-chip,.drawer-empty{padding:.75rem .9rem}.hero-chip-select{align-content:start}.hero-panel.compact>div:first-child h3{margin:0 0 .15rem;font-size:1rem}.hero-panel.compact>div:first-child .eyebrow{margin-bottom:.1rem}.hero-panel.compact .hero-copy{font-size:.82rem;color:var(--color-text-secondary);margin:0;line-height:1.4}.view-select{width:100%;border:0;background:transparent;color:var(--color-text);font-weight:700;padding:0;color-scheme:light}.view-select option,.settings-select option,.drawer-input option,select option{background:var(--color-surface);color:var(--color-text)}[data-theme=dark] .view-select,[data-theme=dark] .settings-select,[data-theme=dark] .drawer-input,[data-theme=dark] select{color-scheme:dark;background:var(--color-surface);color:var(--color-text)}[data-theme=dark] .view-select option,[data-theme=dark] .settings-select option,[data-theme=dark] .drawer-input option,[data-theme=dark] select option{background:var(--color-surface);color:var(--color-text)}.metric-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.timesheet-section-wrapper{display:flex;flex-direction:column;gap:.65rem;flex:1 1 0;min-height:0;overflow:hidden}.metric-panel{padding:.75rem 1.1rem;display:flex;align-items:flex-start;gap:.8rem}.metric-panel h3{font-size:26px;font-weight:700;line-height:1.1;letter-spacing:-.02em}.metric-kicker{width:.65rem;min-height:3.5rem;border-radius:999px}.metric-delta{margin-top:.15rem;color:var(--color-text-secondary);font-size:.82rem}.metric-panel>div>p:last-child{color:var(--color-text-tertiary);font-size:12px}.timesheet-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.82fr);gap:.7rem;align-items:start;min-height:0;flex:1 1 0;overflow:hidden}.timesheet-layout-wide{grid-template-columns:1fr}.timesheet-section-wrapper.is-ready{animation:timesheetSectionFadeIn .18s ease}.timesheet-skeleton-row,.timesheet-skeleton-layout{pointer-events:none}.timesheet-skeleton-panel{overflow:hidden}.timesheet-skeleton-block{display:grid;gap:.35rem;min-width:0}.timesheet-skeleton-line{display:block;border-radius:999px;background:linear-gradient(90deg,#75a0b61f,#75a0b63d,#75a0b61f);background-size:200% 100%;animation:timesheetSkeletonPulse 1.35s ease-in-out infinite}.timesheet-skeleton-project-bar{background:#75a0b638}.timesheet-skeleton-avatar{background:#75a0b633;border-radius:999px}.timesheet-skeleton-card{align-items:center}.timesheet-skeleton-cell,.timesheet-skeleton-total,.timesheet-skeleton-chip{display:flex;align-items:center;justify-content:center}.skeleton-label{width:4.5rem;height:.55rem}.skeleton-metric{width:5.5rem;height:1.45rem}.skeleton-copy{width:8rem;height:.7rem}.skeleton-project{width:8.5rem;height:1rem}.skeleton-client{width:4rem;height:.7rem}.skeleton-cell{width:2.1rem;height:.85rem}.skeleton-total{width:2.8rem;height:1rem}.skeleton-billing{width:5.75rem;height:1.05rem}.skeleton-chip{width:2.7rem;height:1.45rem}.timesheet-section-wrapper .main-column{overflow-y:auto;min-height:0}.main-grid-panel,.team-panel,.billing-panel{display:grid;gap:.6rem}.panel-header{justify-content:space-between;align-items:start}.grid-toolbar,.inline-actions{flex-wrap:wrap;justify-content:flex-end}.mobile-project-list,.mobile-week-nav,.client-detail-backdrop,.client-detail-close,.project-create-backdrop,.project-create-close{display:none}.grid-table{display:grid;gap:.4rem}.grid-row{display:grid;grid-template-columns:2.2fr repeat(7,minmax(52px,1fr)) minmax(72px,.82fr);gap:.48rem;align-items:center}.grid-head{color:var(--color-text-muted);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.project-card{min-width:0;display:flex;align-items:center;gap:.75rem;padding:.8rem .9rem;border-radius:var(--border-radius-md);background:var(--color-background-secondary);border:1px solid var(--color-border-tertiary)}.project-card.is-clickable{cursor:pointer}.project-card.is-clickable:hover{background:var(--color-background-info);border-color:var(--color-border-strong)}.project-card.is-clickable:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.project-bar{width:.36rem;align-self:stretch;border-radius:999px}.time-cell,.row-total{position:relative;min-height:3rem;padding:.78rem .5rem;text-align:center;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.time-cell:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@keyframes timesheetSkeletonPulse{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes timesheetSectionFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.time-cell.is-selected{background:var(--color-background-info);border-color:var(--color-primary);color:var(--color-primary-strong)}.time-cell.is-empty{background:var(--color-background-primary)}.cell-value{display:inline-block}.time-cell.is-empty .cell-value{color:var(--color-text-tertiary)}.time-cell.is-empty:hover,.time-cell.is-empty:focus-visible{background:var(--color-background-info);cursor:pointer}.time-cell.is-empty:hover .cell-value:after,.time-cell.is-empty:focus-visible .cell-value:after{content:" +";color:var(--color-text-info)}.row-total{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning-text);font-weight:700}.team-column{display:grid;gap:.9rem;height:100%;min-height:0;align-content:start}.team-panel{min-height:0;overflow:hidden;max-height:calc(100vh - 220px)}.lane-card{padding:.72rem .78rem;display:grid;gap:.55rem;border-radius:var(--border-radius-md);background:var(--color-background-secondary);border:1px solid var(--color-border-tertiary)}.lane-stack{overflow-y:auto;min-height:0;scrollbar-width:thin;padding-bottom:.25rem}.lane-card .lane-identity{gap:.6rem}.lane-card .avatar-chip.small{width:2rem;height:2rem;border-radius:.7rem;font-size:.8rem}.lane-card .lane-identity strong{font-size:.96rem;line-height:1.1}.lane-card .lane-identity p{font-size:.9rem}.lane-card strong,.project-card strong,.billing-row strong{font-weight:800}.lane-stats{display:flex;gap:.9rem;flex-wrap:wrap;color:var(--color-secondary);font-weight:700;align-items:center}.lane-week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.28rem;flex:1 1 100%}.lane-day-chip{display:grid;gap:.08rem;min-width:0;padding:.34rem .38rem;border-radius:var(--border-radius-sm);border:1px solid var(--color-border-tertiary);background:var(--color-background-primary);color:var(--color-text-tertiary)}.lane-day-chip.has-hours{border-color:color-mix(in srgb,var(--color-secondary) 45%,var(--color-border-tertiary));background:color-mix(in srgb,var(--color-secondary) 12%,var(--color-background-secondary));color:var(--color-secondary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-secondary) 18%,transparent)}.lane-day-label{font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.lane-day-hours{font-size:.78rem;font-weight:800;line-height:1;letter-spacing:-.01em}.status-badge{justify-self:start;padding:.28rem .58rem;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.02em}.status-badge-editable{background:var(--color-success-bg);color:var(--color-success-text)}.status-badge-readonly{background:var(--color-readonly-bg);color:var(--color-readonly-text)}.status-badge-draft{background:var(--color-warning-bg);color:var(--color-warning-text)}.status-badge-archived{background:var(--color-readonly-bg);color:var(--color-readonly-text)}.billing-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;padding:.85rem 1rem;border-radius:var(--border-radius-md);background:var(--color-background-secondary);border:1px solid var(--color-border-tertiary)}.billing-summary strong{display:block;font-size:1.05rem;font-weight:800;letter-spacing:-.01em;color:var(--color-text);margin-top:.12rem}.secondary-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.9fr);gap:.9rem}.billing-layout{min-height:calc(100vh - 140px);max-height:calc(100vh - 140px);align-items:stretch}.secondary-layout.single{grid-template-columns:1fr}.clients-layout{display:grid;grid-template-columns:248px minmax(0,1fr);gap:1rem;height:100%;overflow:hidden;align-items:start;min-height:0}.team-layout{display:grid;grid-template-columns:minmax(260px,300px) minmax(0,1fr);gap:.85rem;align-items:start;height:100%;overflow:hidden}.team-directory-panel,.team-detail-panel,.team-subpanel{display:grid;gap:.9rem}.team-detail-backdrop,.team-detail-close,.team-member-open-hint{display:none}.team-directory-panel{align-content:start;gap:.75rem;overflow-x:hidden;overflow-y:auto;min-width:0;height:100%;min-height:0}.team-directory-panel .panel-header{flex-direction:column;align-items:flex-start;gap:.5rem;flex-wrap:nowrap;min-width:0}.team-directory-panel .panel-header>div:first-child{min-width:0;flex:1 1 0}.team-directory-badge{flex-shrink:1;margin-left:0;white-space:nowrap;min-width:0}.team-detail-panel{display:flex;flex-direction:column;height:100%;overflow-y:auto;min-height:0;gap:.85rem}.team-directory-list{display:grid;gap:.6rem}.team-directory-card{width:100%;min-width:0;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-surface);padding:.7rem .85rem;text-align:left;display:grid;gap:.45rem;transition:background .1s ease,border-color .1s ease;box-sizing:border-box}.team-directory-card:hover,.team-directory-card.is-active{background:var(--color-background-secondary);border-color:var(--color-border-strong)}.team-directory-card .lane-identity{min-width:0;flex:1 1 0}.team-directory-card .lane-identity>div{min-width:0;overflow:hidden}.team-directory-card .lane-identity strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-directory-card .lane-identity p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.74rem}.team-directory-meta{display:flex;align-items:center;justify-content:space-between;gap:.25rem .55rem;flex-wrap:wrap}.team-week-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.65rem;flex-wrap:wrap}.team-week-toolbar .week-control{flex:0 0 auto}.team-week-toolbar .week-control>div{min-width:11rem}.team-week-toolbar .week-control strong{display:block;font-size:.98rem;font-weight:800;letter-spacing:-.01em;color:var(--color-text);white-space:nowrap}.team-member-hours{color:var(--color-text);font-size:.86rem;flex-shrink:0;white-space:nowrap}.team-member-open-hint{font-size:.74rem;font-weight:700;color:var(--color-text-tertiary)}.team-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.team-stat-card{border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-background-secondary);padding:.7rem .8rem;display:grid;gap:.18rem}.team-stat-card strong{font-size:1.05rem}.team-stat-card p,.team-copy-block p{margin:0;color:var(--color-text-secondary)}.team-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;align-items:start}.team-access-rows,.team-project-list{display:grid;gap:0}.team-access-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem 0;border-bottom:.5px solid var(--color-border);font-size:.84rem}.team-access-row:last-child{border-bottom:none}.team-access-row span{color:var(--color-text-secondary)}.team-access-row strong{color:var(--color-text);text-align:right}.team-member-role-editor{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;flex-wrap:wrap}.team-project-row{width:100%;border:0;background:transparent;color:var(--color-text);display:flex;align-items:center;justify-content:space-between;padding:.55rem 0;border-bottom:.5px solid var(--color-border);gap:.6rem;text-align:left;transition:color .14s ease,transform .14s ease}.team-project-row:last-child{border-bottom:none}.team-project-row:hover{color:var(--color-primary)}.team-project-row:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px;border-radius:var(--border-radius-sm)}.team-project-main{display:flex;align-items:center;gap:.65rem;min-width:0}.team-project-meta{display:grid;justify-items:end;gap:.18rem;flex-shrink:0}.team-project-open-hint{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary)}.team-project-main strong{display:block;font-size:.86rem}.team-project-main p{margin:2px 0 0;font-size:.76rem;color:var(--color-text-secondary)}.team-project-hours{font-size:.84rem;font-weight:700;color:var(--color-text);flex-shrink:0}.team-directory-header-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap;width:100%;min-width:0}.team-invite-trigger{margin-left:auto;padding:3px 8px;font-size:.8rem;height:auto;line-height:1.4;white-space:nowrap;flex-shrink:0}.team-invite-inline{display:grid;gap:.55rem;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-background-secondary);animation:fade-in .15s ease}.team-invite-inline-fields{display:grid;gap:.45rem}.team-invite-inline .drawer-input{padding:.55rem .75rem;font-size:.88rem}.team-invite-inline .primary-button{width:100%;padding:.6rem .95rem;font-size:.88rem}.team-invite-role-select{padding:.55rem .75rem;font-size:.88rem}.team-pending-list{padding-top:.5rem;border-top:.5px solid var(--color-border-tertiary);display:grid;gap:.35rem}.team-pending-list .eyebrow{margin-bottom:.35rem}.team-pending-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.45rem .5rem;border-radius:var(--border-radius-sm);background:var(--color-background-secondary);min-width:0}.team-pending-info{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1 1 0}.team-pending-info strong{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-pending-info .status-badge{font-size:.7rem;padding:.2rem .5rem;flex-shrink:0}.team-pending-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.team-pending-actions .text-button{font-size:.75rem}.team-pending-revoke{color:var(--color-warning-text)}@keyframes fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.team-summary-card{grid-column:1 / -1}.team-summary-text{margin:.35rem 0 0;font-size:.86rem;color:var(--color-text-secondary);line-height:1.4}.team-summary-text strong{color:var(--color-text)}.projects-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.9fr);gap:1rem;align-items:start;height:100%;min-height:0;overflow:hidden}.settings-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-content:start;overflow-y:auto;height:100%;min-height:0}.settings-card{display:grid;gap:.9rem;align-content:start;min-width:0}.settings-card-wide{grid-column:1 / -1}.settings-rows{display:grid;gap:0}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:.7rem 0;border-bottom:.5px solid var(--color-border);font-size:.9rem;gap:1rem}.settings-row:last-child{border-bottom:none}.settings-row span{color:var(--color-text-secondary);flex-shrink:0}.settings-row strong{color:var(--color-text);text-align:right;font-weight:700;font-size:.9rem}.settings-row-danger,.settings-row-select{align-items:flex-start}.settings-select{border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background:var(--color-surface);color:var(--color-text);padding:.4rem .65rem;font-size:.88rem;font-weight:600;cursor:pointer;min-width:180px;text-align:right}.settings-select:focus{outline:none;border-color:var(--color-primary)}.settings-save-row{display:flex;justify-content:flex-end;gap:.65rem;padding-top:.5rem;border-top:.5px solid var(--color-border-tertiary)}.settings-subsection{display:grid;gap:.75rem;padding-top:.75rem;border-top:.5px solid var(--color-border-tertiary)}.settings-inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem}.settings-workspace-list{display:grid;gap:.6rem}.settings-workspace-row{display:flex;align-items:center;justify-content:space-between;gap:.9rem;padding:.75rem .85rem;border:1px solid var(--color-border-tertiary);border-radius:var(--border-radius-md);background:var(--color-background-secondary)}.settings-workspace-main{min-width:0;flex:1 1 0}.settings-workspace-main strong{display:block}.settings-workspace-row p{margin:.2rem 0 0;font-size:.82rem;color:var(--color-text-secondary)}.settings-workspace-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap;flex-shrink:0}.settings-theme-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.settings-theme-option{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.9rem .75rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-surface);cursor:pointer;transition:border-color .12s ease,background .12s ease;text-align:center}.settings-theme-option:hover{background:var(--color-background-secondary);border-color:var(--color-border-strong)}.settings-theme-option.is-active{border-color:var(--color-primary);background:var(--color-background-info)}.settings-theme-icon{display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);height:1.5rem}.settings-theme-label{font-size:.88rem;font-weight:700;color:var(--color-text)}.settings-theme-option.is-active .settings-theme-icon{color:var(--color-primary)}.settings-theme-hint{font-size:.74rem;color:var(--color-text-tertiary)}.settings-toggle{position:relative;width:2.75rem;height:1.5rem;border-radius:999px;border:1px solid var(--color-border);background:var(--color-background-secondary);cursor:pointer;transition:background .15s ease,border-color .15s ease;flex-shrink:0;padding:0;min-width:2.75rem}.settings-toggle.is-on{background:var(--color-primary);border-color:var(--color-primary)}.settings-toggle-thumb{position:absolute;top:2px;left:2px;width:1.1rem;height:1.1rem;border-radius:999px;background:var(--color-surface);transition:transform .15s ease;box-shadow:0 1px 3px #00000026}.settings-toggle.is-on .settings-toggle-thumb{transform:translate(1.25rem)}.settings-danger-card{grid-column:1 / -1;border-color:var(--color-warning-border)}.settings-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:var(--color-overlay);padding:1rem}.settings-modal{width:min(100%,460px);display:grid;gap:1rem;padding:1.25rem;border:1px solid var(--color-border-strong);border-radius:var(--border-radius-lg);background:var(--color-surface-overlay);box-shadow:var(--shadow-soft)}.settings-modal-field{display:grid;gap:.35rem}.settings-modal-input{min-width:0;text-align:left}.settings-modal-actions{display:flex;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}.projects-list-panel,.project-create-panel{display:grid;gap:.9rem}.projects-list-panel{align-content:start;min-height:0;max-height:calc(100vh - 220px);overflow-y:auto;overflow-x:hidden;padding-right:.25rem;padding-bottom:0;scrollbar-width:thin;display:flex;flex-direction:column}.projects-list-panel>*{flex-shrink:0}.projects-directory-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;flex-shrink:0}.projects-list-panel .panel-header{align-items:flex-start;gap:.6rem;flex-wrap:wrap}.projects-list-panel .panel-header>div:first-child{flex:1 1 0;min-width:0}.projects-list-panel .panel-header .secondary-button{padding:4px 10px;font-size:.88rem;height:auto;line-height:1.4;white-space:nowrap}.project-create-panel{align-content:start;min-height:0;max-height:calc(100vh - 220px);overflow-y:auto;overflow-x:hidden;padding-right:.25rem;padding-bottom:0;scrollbar-width:thin;display:flex;flex-direction:column}.project-create-panel>*:not(.drawer-actions){flex-shrink:0}.project-create-panel .panel-header{gap:.75rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border);margin-bottom:.5rem;align-items:flex-start;flex-wrap:wrap}.project-create-panel .panel-header h3{font-size:1.05rem;font-weight:800;line-height:1.25;margin:0 0 .18rem}.project-create-panel .panel-header .panel-copy{font-size:.82rem;color:var(--color-text-secondary);margin:0;line-height:1.45}.project-create-panel .panel-header .inline-actions{flex-wrap:wrap;gap:.45rem;justify-content:flex-start;align-items:center;flex-basis:100%}.project-create-panel .panel-header .inline-actions .secondary-button,.project-create-panel .panel-header .inline-actions .text-button{padding:.45rem .85rem;font-size:.84rem;line-height:1.4;white-space:nowrap}.project-create-panel .panel-header .inline-actions .status-badge{align-self:center;font-size:.76rem}.project-create-panel .panel-header .secondary-button.danger{padding:.45rem .85rem;font-size:.84rem}.projects-list{display:grid;gap:.75rem}.project-list-card{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.85rem .9rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-surface);text-align:left;width:100%;transition:background .1s ease,border-color .1s ease}.project-list-card:hover,.project-list-card.is-active{background:var(--color-background-secondary);border-color:var(--color-border-strong)}.project-list-card.is-archived{opacity:.6}.project-list-main{display:flex;align-items:flex-start;gap:.55rem}.project-list-main strong{display:block}.project-list-accent{width:.36rem;align-self:stretch;border-radius:999px}.project-card-client{margin:.16rem 0 0;font-size:.84rem;color:var(--color-text-secondary)}.project-list-metrics{display:flex;flex-direction:column;align-items:flex-end;gap:.18rem;font-size:.88rem;color:var(--color-text-secondary)}.project-list-metrics strong{color:var(--color-text);font-size:1rem;font-weight:800;letter-spacing:-.01em}.project-row-rate{font-weight:600;color:var(--color-success-text)}.project-form{display:grid;gap:.9rem}.project-empty-callout{display:grid;gap:.35rem;padding:.9rem 1rem;border-radius:var(--border-radius-md);border:1px solid var(--color-warning-border);background:var(--color-background-muted)}.project-empty-callout p{margin:0;color:var(--color-text-secondary)}.project-preview-card{display:flex;align-items:stretch;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-background-secondary);overflow:hidden;min-height:68px;margin-top:.25rem}.project-preview-bar{width:.36rem;flex-shrink:0;transition:background-color .15s ease}.project-preview-body{flex:1;display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;gap:1rem}.project-preview-body strong{display:block;font-size:.95rem}.project-preview-body p{margin:2px 0 0;font-size:.82rem;color:var(--color-text-secondary)}.project-preview-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:.82rem;color:var(--color-text-secondary)}.project-form-sections{display:grid;gap:1rem}.project-form-section{display:grid;gap:.75rem;padding-top:1rem;border-top:.5px solid var(--color-border-tertiary)}.project-form-section:first-child{padding-top:0;border-top:none}.project-form-section-label{display:block;font-size:.71rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:.1rem}.project-color-field{display:grid;gap:.55rem}.project-color-swatches{display:flex;flex-wrap:wrap;gap:.5rem}.color-swatch{width:1.75rem;height:1.75rem;border-radius:999px;border:2px solid transparent;cursor:pointer;transition:transform .1s ease,box-shadow .1s ease;flex-shrink:0;box-shadow:inset 0 0 0 1px #1e2a2a14}.color-swatch:hover{transform:scale(1.15)}.color-swatch.is-selected{box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px currentColor;transform:scale(1.1)}.project-color-input{width:4.5rem;padding:.2rem}.project-actions{justify-content:space-between}.project-members-panel{display:grid;gap:.9rem}.project-member-list{display:grid;gap:.75rem}.project-member-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem .75rem;align-items:center;padding:.85rem .95rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-background-secondary)}.project-member-meta{display:grid;gap:.15rem;min-width:0;align-self:center}.project-member-meta strong{font-size:.88rem;font-weight:700;overflow-wrap:anywhere}.project-member-meta span{font-size:.78rem;color:var(--color-text-secondary);overflow-wrap:anywhere}.project-member-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0;flex-wrap:nowrap}.project-member-rate-field{min-width:0;flex-shrink:0}.project-member-rate-field .rate-input-wrap{width:130px}.project-member-actions .secondary-button{min-width:72px;padding:.55rem .75rem;font-size:.84rem;white-space:nowrap}.project-member-actions .secondary-button.danger{min-width:80px}.project-member-add{display:flex;flex-wrap:wrap;gap:.65rem;align-items:flex-end}.project-member-add>label:first-child{flex:1 1 160px;min-width:0}.project-member-add .project-member-rate-field{flex:0 0 130px}.project-member-add>.secondary-button{flex-shrink:0;padding:.85rem .95rem;align-self:flex-end;white-space:nowrap}.project-create-panel .drawer-actions.project-actions{position:sticky;bottom:0;margin-top:auto;padding:.85rem 0 .65rem;background:linear-gradient(to bottom,transparent,var(--color-surface) 28%);z-index:2;border-top:.5px solid var(--color-border-tertiary);justify-content:flex-end}.section-empty-state.compact{padding:1.5rem 1rem}.clients-list-panel .panel-header{align-items:flex-start;gap:.65rem;flex-wrap:wrap}.clients-directory-toolbar{display:grid;justify-items:start;gap:.45rem}.clients-directory-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap;min-width:0}.clients-list-panel .panel-header .secondary-button{padding:4px 10px;font-size:.88rem;height:auto;line-height:1.4;white-space:nowrap}.is-active-filter{background:var(--color-background-info);border-color:var(--color-primary);color:var(--color-primary)}.clients-list-panel,.client-detail-panel,.client-subpanel{display:grid;gap:.9rem}.clients-list-panel{align-content:start;overflow:visible}.clients-list,.client-entry-list{display:grid;gap:.75rem}.clients-list{align-content:start}.client-list-card{display:flex;align-items:stretch;text-align:left;width:100%;min-width:0;box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-surface);transition:background .1s ease,border-color .1s ease;overflow:hidden;padding:0}.client-list-card:hover,.client-list-card.is-active{background:var(--color-background-secondary);border-color:var(--color-border-strong)}.client-list-card.is-archived{opacity:.55;background:var(--color-background-secondary)}.client-list-card.is-archived .client-card-accent{filter:grayscale(1)}.client-card-accent{width:.36rem;flex-shrink:0;align-self:stretch;border-radius:0}.client-card-body{flex:1 1 0;min-width:0;padding:.65rem .75rem;display:flex;align-items:center;justify-content:space-between;gap:.45rem}.client-list-card-main p,.client-project-main p,.client-entry-row p{margin:.2rem 0 0;color:var(--color-text-muted)}.client-list-card-main{display:flex;flex-direction:column;gap:1px;min-width:0}.client-list-card-main strong{font-size:.88rem;font-weight:800;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-list-card-main p{margin:0;font-size:.74rem;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-list-card-metrics{display:flex;flex-direction:column;align-items:flex-end;gap:1px;flex-shrink:0}.client-list-card-metrics span{font-size:.74rem;color:var(--color-text-secondary);white-space:nowrap}.client-list-card-metrics span:last-child{font-weight:600;color:var(--color-success-text)}.client-metric-row{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:1rem}.rate-settings-panel{padding:.75rem 1rem}.client-rate-editor{display:flex;align-items:end;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.client-rate-editor .rate-field{display:flex;flex-direction:column;gap:4px;flex:0 0 auto}.client-rate-editor .rate-input-wrap{width:140px}.client-rate-editor .primary-button{flex-shrink:0;align-self:flex-end;margin-bottom:0}.rate-settings-panel .panel-copy{font-size:.88rem;color:var(--color-text-secondary);margin-top:2px}.client-detail-split{display:grid;grid-template-columns:1fr;gap:1rem;align-items:start}.client-detail-panel{display:flex;flex-direction:column;height:100%;overflow-y:auto;min-height:0;padding-right:.25rem}.client-project-row,.client-entry-row{padding:.5rem 0;border-bottom:.5px solid var(--color-border)}.client-project-row:last-child,.client-entry-row:last-child{border-bottom:none}.client-project-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0}.client-project-main{display:flex;align-items:center;gap:.5rem}.client-project-list{overflow:visible}.client-project-metrics{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:.88rem;color:var(--color-text-secondary)}.client-project-metrics strong{color:var(--color-text);font-size:1rem}.client-entry-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.billing-history-panel{display:grid;gap:.9rem}.billing-history-panel .panel-header{flex-shrink:0}.client-entry-list{display:grid;align-content:start}.danger-confirm{display:grid;gap:.45rem}.futuristic-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:3rem 2rem;min-height:320px}.fl-container{position:relative;width:120px;height:120px}.fl-orbit{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1px solid rgba(31,107,107,.12);animation:fl-spin 6s linear infinite}.fl-orbit-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--color-primary);box-shadow:0 0 12px #1f6b6b80,0 0 24px #1f6b6b33}.fl-orbit-dot-1{top:-4px;left:50%;transform:translate(-50%);animation:fl-pulse-dot 1.5s ease-in-out infinite}.fl-orbit-dot-2{bottom:12px;left:4px;animation:fl-pulse-dot 1.5s ease-in-out .5s infinite}.fl-orbit-dot-3{bottom:12px;right:4px;animation:fl-pulse-dot 1.5s ease-in-out 1s infinite}.fl-core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px}.fl-hex{position:absolute;top:0;right:0;bottom:0;left:0;border:1.5px solid var(--color-primary);border-radius:12px;opacity:0}.fl-hex-1{animation:fl-hex-pulse 2.4s ease-out infinite}.fl-hex-2{animation:fl-hex-pulse 2.4s ease-out .8s infinite}.fl-hex-3{animation:fl-hex-pulse 2.4s ease-out 1.6s infinite}.fl-core-label{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.fl-core-icon{font-size:1.5rem;color:var(--color-primary);animation:fl-icon-pulse 2s ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(31,107,107,.4))}.fl-streams{position:absolute;top:-16px;right:-16px;bottom:-16px;left:-16px;pointer-events:none}.fl-stream{position:absolute;background:linear-gradient(90deg,transparent,rgba(31,107,107,.3),transparent);height:1px}.fl-stream-1{top:20%;left:0;width:100%;animation:fl-stream-flow 2.5s ease-in-out infinite}.fl-stream-2{top:45%;left:0;width:100%;animation:fl-stream-flow 2.5s ease-in-out .6s infinite}.fl-stream-3{top:65%;left:0;width:100%;animation:fl-stream-flow 2.5s ease-in-out 1.2s infinite}.fl-stream-4{top:85%;left:0;width:100%;animation:fl-stream-flow 2.5s ease-in-out 1.8s infinite}.fl-message{font-family:Manrope,monospace;font-size:.82rem;font-weight:600;color:var(--color-primary);letter-spacing:.06em;text-align:center;min-height:1.2em;animation:fl-text-flicker 4s ease-in-out infinite}.fl-scan-track{width:160px;height:3px;background:#1f6b6b1a;border-radius:4px;overflow:hidden}.fl-scan-bar{width:40%;height:100%;border-radius:4px;background:linear-gradient(90deg,transparent,var(--color-primary),transparent);animation:fl-scan 1.4s ease-in-out infinite}@keyframes fl-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fl-pulse-dot{0%,to{transform:translate(-50%) scale(1);opacity:.6}50%{transform:translate(-50%) scale(1.6);opacity:1}}@keyframes fl-hex-pulse{0%{transform:scale(.6) rotate(0);opacity:.8;border-color:var(--color-primary)}to{transform:scale(1.8) rotate(30deg);opacity:0;border-color:#1f6b6b1a}}@keyframes fl-icon-pulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}@keyframes fl-stream-flow{0%{transform:translate(-100%);opacity:0}20%{opacity:1}80%{opacity:1}to{transform:translate(100%);opacity:0}}@keyframes fl-text-flicker{0%,to{opacity:1}50%{opacity:.7}52%{opacity:1}54%{opacity:.8}56%{opacity:1}}@keyframes fl-scan{0%{transform:translate(-100%)}to{transform:translate(350%)}}.loader-wrapper{display:flex;justify-content:center;align-items:center;height:100%;min-height:400px}.insights-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem;height:100%;overflow-y:auto;min-height:0;padding:0;box-sizing:border-box;align-content:start;scrollbar-width:thin}.insights-card,.insights-archive-panel{display:grid;gap:.5rem;transition:box-shadow .2s ease,transform .15s ease}.insights-card:hover{box-shadow:0 6px 24px #182a2a12}.insights-card{padding:.85rem 1rem}.insights-card .panel-header,.insights-archive-panel .panel-header{gap:.4rem;align-items:flex-start}.insights-card .panel-header h3{font-size:.95rem;font-weight:800;letter-spacing:-.01em}.insights-card .panel-copy{font-size:.76rem;margin-top:.05rem;color:var(--color-text-tertiary)}.insights-client-select{min-width:190px}.insights-card-wide{grid-column:1 / -1;background:linear-gradient(135deg,var(--color-surface) 60%,var(--color-background-secondary) 100%);border-color:var(--color-border)}.insights-archive-panel{grid-column:auto;padding:.85rem 1rem;background:var(--color-background-secondary);border-color:var(--color-border-tertiary)}.insights-archive-panel .panel-header h3{font-size:.88rem;font-weight:700}.insights-archive-panel .secondary-button{font-size:.78rem;padding:.3rem .7rem}.insights-chart{position:relative;min-height:130px;border-radius:.65rem;background:var(--color-background-secondary);padding:.35rem .25rem 0}.insights-chart-donut{position:relative;min-height:130px}.insights-donut-layout{display:grid;grid-template-columns:150px 1fr;gap:.65rem;align-items:center}.insights-donut-breakdown{display:grid;gap:.4rem;align-content:center}.insights-breakdown-card{display:grid;gap:.1rem;padding:.45rem .65rem;border:1px solid var(--color-border-tertiary);border-radius:.65rem;background:var(--color-background-secondary);transition:border-color .15s ease}.insights-breakdown-card:hover{border-color:var(--color-border-strong)}.insights-breakdown-card strong{font-size:.88rem;color:var(--color-text)}.insights-breakdown-card span{color:var(--color-text-secondary);font-size:.74rem}.insights-breakdown-label{display:flex;align-items:center;gap:.4rem;color:var(--color-text);font-weight:600;font-size:.78rem}.insights-breakdown-dot{width:.55rem;height:.55rem;border-radius:999px;flex-shrink:0}.insights-breakdown-dot-billable{background:var(--color-success-text)}.insights-breakdown-dot-nonbillable{background:var(--color-readonly-text)}.insights-breakdown-note{margin:0;color:var(--color-text-tertiary);font-size:.68rem;line-height:1.3;margin-top:.15rem}.insights-center-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1px}.insights-center-label strong{font-size:.88rem;line-height:1.15;color:var(--color-text)}.insights-center-label span{color:var(--color-text-tertiary);font-size:.6rem;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.archived-records{display:grid;gap:.35rem;margin-top:.25rem}.archived-record-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.4rem 0;border-bottom:.5px solid var(--color-border-tertiary)}.archived-record-row:last-child{border-bottom:none}.archived-record-row p{margin:.15rem 0 0;color:var(--color-text-secondary);font-size:.76rem}.billing-table{margin-top:.4rem}.billing-workspace-panel,.email-output-shell{display:grid;align-content:start;gap:.9rem;min-height:0}.billing-workspace-panel{overflow:hidden}.billing-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.billing-header-left{display:flex;flex-direction:column;gap:.2rem}.billing-title-row{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.billing-title-row h3{margin:0;white-space:nowrap}.billing-header-right{display:flex;width:100%}.billing-period-bar{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;width:100%;padding:.6rem .75rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-background-secondary)}.billing-period-divider{width:1px;height:1.5rem;background:var(--color-border-strong);flex-shrink:0}.billing-period-segments{display:flex;gap:.25rem;align-items:center;flex-shrink:0}.billing-period-pill{border:1px solid var(--color-border);border-radius:999px;background:transparent;color:var(--color-text-secondary);padding:.28rem .72rem;font-size:.82rem;font-weight:600;cursor:pointer;line-height:1;transition:background .12s ease,color .12s ease,border-color .12s ease;white-space:nowrap}.billing-period-pill:hover{background:var(--color-surface);color:var(--color-text)}.billing-period-pill.is-active{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.billing-period-nav{display:flex;align-items:center;gap:.5rem;flex:1 1 0;min-width:0}.billing-period-nav .icon-button{width:2rem;height:2rem;flex-shrink:0;border-radius:var(--border-radius-sm)}.billing-period-range{font-size:.88rem;font-weight:700;color:var(--color-text);white-space:nowrap;flex:1 1 0;text-align:center}.billing-period-today{padding:.28rem .72rem;font-size:.82rem;white-space:nowrap;flex-shrink:0}.billing-client-trigger{position:relative}.billing-client-button{border:none;background:transparent;padding:0;font-size:inherit;font-weight:700;color:var(--color-primary);cursor:pointer;display:flex;align-items:center;gap:.25rem;border-bottom:1px dashed var(--color-primary);line-height:inherit}.billing-client-button:hover{color:var(--color-primary-strong);border-bottom-color:var(--color-primary-strong)}.billing-client-caret{font-size:.8rem;opacity:.7}.billing-client-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:180px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-soft);z-index:20;overflow:hidden}.billing-client-option{display:block;width:100%;padding:.65rem .9rem;text-align:left;border:none;background:transparent;color:var(--color-text);cursor:pointer;font-size:.9rem;border-bottom:.5px solid var(--color-border-tertiary)}.billing-client-option:last-child{border-bottom:none}.billing-client-option:hover{background:var(--color-background-secondary)}.billing-client-option.is-active{color:var(--color-primary);font-weight:700}.billing-summary-row{position:sticky;top:0;background:var(--color-background-primary);z-index:1;border-bottom:.5px solid var(--color-border-tertiary)}.billing-line-items-shell{display:grid;gap:.75rem;min-height:0}.billing-line-items-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.billing-line-items-header h3{margin:0}.billing-breakdown-toggle{white-space:nowrap}.billing-breakdown-collapsed{padding:.85rem .95rem;border:1px dashed var(--color-border);border-radius:var(--border-radius-md);background:var(--color-background-secondary);color:var(--color-text-secondary)}.billing-breakdown-collapsed p{margin:0}.billing-empty-state{display:grid;gap:.2rem;padding:.95rem 1rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-background-secondary);color:var(--color-text-secondary)}.billing-empty-state p{margin:0}.billing-line-items{max-height:calc(100vh - 320px);overflow-y:auto;scrollbar-width:thin;min-height:0;padding-right:.25rem;margin-right:-.25rem}.billing-line-card{padding:.75rem 0;border-bottom:.5px solid var(--color-border-tertiary);display:grid;gap:.25rem;transition:background .1s ease}.billing-line-card:last-child{border-bottom:none}.billing-line-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.billing-line-card-meta{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;min-width:0}.billing-line-date{font-size:.78rem;font-weight:700;color:var(--color-text-tertiary);white-space:nowrap}.billing-line-user{font-size:.86rem;font-weight:700;color:var(--color-text)}.billing-line-card-right{display:flex;flex-direction:column;align-items:flex-end;gap:.08rem;flex-shrink:0}.billing-line-hours{font-size:.76rem;color:var(--color-text-tertiary);white-space:nowrap}.billing-line-amount{font-size:.92rem;font-weight:800;color:var(--color-warning-text);white-space:nowrap}.billing-line-card-project{font-size:.82rem;color:var(--color-text-secondary);font-weight:600}.billing-line-card-desc{display:grid;gap:.2rem;margin-top:.1rem}.billing-line-desc-preview,.billing-line-desc-full{font-size:.82rem;color:var(--color-text-secondary);line-height:1.5}.billing-line-expand{border:0;background:transparent;color:var(--color-primary);font-size:.78rem;font-weight:700;padding:0;cursor:pointer;text-align:left;width:-moz-fit-content;width:fit-content}.billing-line-expand:hover{color:var(--color-primary-strong)}.billing-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:start;padding:.8rem 0;border-bottom:1px solid var(--color-border)}.billing-row:last-child{border-bottom:0}.billing-row-main strong{font-size:.88rem;font-weight:800;color:var(--color-text)}.billing-row-main p{font-size:.83rem;color:var(--color-text-secondary);line-height:1.5}.billing-row-amount{color:var(--color-warning-text);font-weight:700}.empty-state-panel{display:grid;justify-items:start;gap:1rem}.section-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--color-text-tertiary);text-align:center}.section-empty-state p:first-child{font-size:14px;font-weight:500;margin:0 0 4px;color:var(--color-text-tertiary)}.section-empty-state p:last-child{font-size:13px;margin:0;color:var(--color-text-tertiary)}.email-preview{display:grid;gap:0;margin:0;padding:1rem;border-radius:var(--border-radius-md);background:var(--color-background-secondary);border:1px solid var(--color-border-tertiary);color:var(--color-text);font-family:Georgia,Times New Roman,serif;font-size:.92rem;line-height:1.65}.email-line{margin:0;padding:.1rem 0;color:var(--color-text-secondary)}.email-line-spacer{height:.75rem}.email-line-greeting{font-weight:600;color:var(--color-text);margin-bottom:.15rem}.email-line-section{font-weight:700;color:var(--color-text);font-size:.88rem;text-transform:uppercase;letter-spacing:.06em;margin-top:.25rem;margin-bottom:.15rem}.email-line-member{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.12rem .5rem;border-radius:.5rem}.email-line-member:hover{background:var(--color-background-secondary)}.email-member-name{color:var(--color-text);font-weight:600;font-size:.88rem}.email-member-total{color:var(--color-warning-text);font-weight:700;font-size:.88rem;white-space:nowrap}.email-line-total{font-weight:800;color:var(--color-text);font-size:.95rem;margin-top:.2rem;padding-top:.35rem;border-top:.5px solid var(--color-border-tertiary)}.email-line-signoff{color:var(--color-text-secondary);margin-top:.1rem}.email-output-panel{max-height:calc(100vh - 160px);overflow-y:auto;scrollbar-width:thin}.email-output-actions{display:flex;justify-content:flex-end}.client-link{border:0;background:transparent;padding:0;color:var(--color-text-secondary);font-size:13px;cursor:pointer;text-decoration:none;border-bottom:.5px solid var(--color-border);transition:color .15s,border-color .15s}.client-link:hover{color:var(--color-text);border-bottom-color:var(--color-border-strong)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:transparent;pointer-events:none;transition:background .16s ease;z-index:30}.drawer-overlay.is-open{background:var(--color-overlay);pointer-events:auto}.drawer{--drawer-accent: var(--color-border-strong);position:absolute;top:0;right:-390px;width:360px;height:100dvh;border-left:1px solid var(--color-border);background:var(--color-surface-overlay);padding:1rem;display:grid;grid-template-rows:auto minmax(0,1fr);gap:.9rem;overflow:hidden;box-shadow:-20px 0 40px #182a2a1a;transition:right .18s ease}.drawer.is-open{right:0}.drawer-header{justify-content:space-between;align-items:start}.drawer-header-main{display:flex;align-items:flex-start;gap:.5rem}.drawer-header-accent{width:3px;border-radius:2px;background:var(--drawer-accent);height:32px;margin-top:.1rem}.drawer-body{display:grid;align-content:start;gap:.9rem;min-height:0;overflow-y:auto;padding-right:.2rem;scrollbar-width:thin}.drawer-meta{padding:.85rem .95rem;display:grid;gap:.65rem}.drawer-form label{display:grid;gap:.32rem}.drawer-time-field,.drawer-time-field .drawer-input{cursor:pointer}.drawer-input,.drawer-textarea,.auth-input{width:100%;border-radius:var(--border-radius-sm);border:1px solid var(--color-border);background:var(--color-surface);padding:.85rem .95rem;color:var(--color-text)}.drawer-textarea{min-height:110px;resize:vertical}.drawer-input:focus,.drawer-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #1f6b6b1f}.rate-input-wrap{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.55rem;align-items:center}.rate-symbol{color:var(--color-text-secondary);font-weight:700}.rate-input-wrap.edited .rate-input{border-color:var(--color-primary);box-shadow:0 0 0 2px #1f6b6b1f}.rate-input{min-width:0}.rate-hint,.drawer-help-text{font-size:11px;color:var(--color-text-tertiary)}.rate-hint.changed{color:var(--color-primary)}.drawer-warning-inline{font-size:11px;color:var(--color-warning-text)}.drawer-error-inline{font-size:11px;color:#9a3e3e}.duration-badge{display:inline-flex;align-items:center;justify-content:center;min-height:2.9rem;padding:.78rem .9rem;border-radius:var(--border-radius-sm);border:.5px solid var(--color-border-tertiary);background:var(--color-background-secondary);color:var(--color-text)}.drawer-divider{height:.5px;background:var(--color-border-tertiary);margin:.1rem 0}.drawer-actions{justify-content:flex-end;flex-wrap:wrap;position:sticky;bottom:0;padding-top:.8rem;margin-top:.2rem;background:linear-gradient(to bottom,rgba(0,0,0,0),var(--color-surface-overlay) 20%)}.auth-shell{min-height:100vh;display:flex;align-items:stretch;padding:0;background:radial-gradient(circle at 18% 18%,rgba(31,107,107,.1),transparent 30%),radial-gradient(circle at 85% 15%,rgba(53,92,125,.08),transparent 25%),radial-gradient(circle at 60% 95%,rgba(201,168,76,.06),transparent 30%),linear-gradient(160deg,#f0f4f2,#f5f7f4,#f2f5f0)}.auth-card{width:min(100%,460px);padding:1.5rem}.auth-shell-signin{width:min(100%,1160px);gap:1.25rem}.auth-shell-centered{display:grid;place-items:center;padding:1.5rem}.auth-scene,.mobile-auth-hero{display:none}.auth-card-signin{position:relative;overflow:hidden;border-color:#1f6b6b29;background:linear-gradient(135deg,#fffffffa,#f0f9f6f5),var(--color-surface);box-shadow:-20px 0 60px #1f6b6b0f,0 18px 50px #182a2a14}.auth-card-signin:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,#1f6b6b66,#355c7d4d,#1f6b6b33);filter:blur(.5px)}.auth-scene-panel{height:100%;padding:2rem 2rem 1.8rem;border:1px solid rgba(31,107,107,.12);border-radius:1.6rem;background:radial-gradient(circle at 70% 30%,rgba(31,107,107,.14),transparent 40%),radial-gradient(circle at top,rgba(31,107,107,.08),transparent 35%),linear-gradient(180deg,#ffffffb8,#ffffff6b);box-shadow:0 0 80px #1f6b6b26,0 30px 65px #182a2a14;display:grid;grid-template-rows:auto auto 1fr;gap:1rem;overflow:hidden;position:relative;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.auth-scene-panel:before{display:none}.auth-scene-header{display:block}.auth-scene-title{margin:0;font-size:clamp(1.8rem,2.8vw,2.5rem);line-height:.96;letter-spacing:-.03em;color:var(--color-text)}.auth-scene-copy{margin:0;max-width:28rem;color:var(--color-text-secondary);font-size:1rem;line-height:1.6}.auth-clock-stage{position:relative;width:100%;min-height:600px;display:flex;align-items:center;justify-content:center;align-self:center;justify-self:stretch;overflow:visible}.auth-clock{position:relative;width:min(100%,600px);aspect-ratio:1;display:grid;place-items:center}.auth-clock-tick-slot{position:absolute;top:1.5rem;right:1.5rem;bottom:1.5rem;left:1.5rem}.auth-clock-tick{position:absolute;left:50%;top:-.2rem;width:2px;height:14px;transform:translate(-50%);background:linear-gradient(180deg,#1f6b6bb3,#1f6b6b14);border-radius:999px;animation:auth-fade-breathe 2.8s ease-in-out infinite}.auth-clock-ring{position:absolute;border-radius:50%;border:1px solid rgba(31,107,107,.18)}.auth-clock-ring-outer{top:1.5rem;right:1.5rem;bottom:1.5rem;left:1.5rem;box-shadow:inset 0 0 35px #1f6b6b0f}.auth-clock-ring-middle{top:4rem;right:4rem;bottom:4rem;left:4rem;border-style:dashed;animation:auth-spin-slow 18s linear infinite reverse}.auth-clock-ring-core{top:7.75rem;right:7.75rem;bottom:7.75rem;left:7.75rem;background:radial-gradient(circle,rgba(31,107,107,.16),rgba(31,107,107,.03) 68%,transparent 72%);border-color:#1f6b6b38}.auth-clock-hand{position:absolute;left:50%;bottom:50%;width:3px;border-radius:999px;transform-origin:bottom center;background:linear-gradient(180deg,rgba(31,107,107,.15),var(--color-primary))}.auth-clock-hand-hour{height:76px}.auth-clock-hand-minute{height:110px}.auth-clock-hand-second{width:2px;height:132px;background:linear-gradient(180deg,rgba(201,168,76,.2),var(--color-warning-text))}.auth-clock-center{width:6.2rem;height:6.2rem;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#fffffffa,#f0f9f6f0),linear-gradient(180deg,rgba(31,107,107,.08),transparent);border:2px solid rgba(31,107,107,.22);box-shadow:0 10px 24px #182a2a14;font-size:1.1rem;font-weight:800;color:var(--color-primary);letter-spacing:.08em}[data-theme=dark] .auth-shell{background:radial-gradient(circle at 18% 18%,rgba(42,184,154,.12),transparent 30%),radial-gradient(circle at 85% 15%,rgba(90,138,176,.1),transparent 25%),radial-gradient(circle at 60% 95%,rgba(200,152,64,.08),transparent 30%),linear-gradient(160deg,#101919,#142020 52%,#101818)}[data-theme=dark] .auth-card-signin{border-color:#2ab89a29;background:linear-gradient(135deg,#162020fa,#121d1df5),var(--color-surface);box-shadow:-20px 0 60px #2ab89a14,0 18px 50px #0000004d}[data-theme=dark] .auth-scene-panel{border-color:#2ab89a24;background:radial-gradient(circle at 70% 30%,rgba(42,184,154,.16),transparent 42%),radial-gradient(circle at top,rgba(42,184,154,.08),transparent 34%),linear-gradient(180deg,#0e1616d1,#121c1c9e);box-shadow:0 0 80px #2ab89a1a,0 30px 65px #0000003d}[data-theme=dark] .auth-clock-ring{border-color:#8aada829}[data-theme=dark] .auth-clock-tick{background:linear-gradient(180deg,#8aada8c7,#2ab89a1f)}[data-theme=dark] .auth-clock-center{background:linear-gradient(135deg,#162020fa,#101a1af0),linear-gradient(180deg,rgba(42,184,154,.1),transparent);border-color:#2ab89a3d;box-shadow:0 10px 24px #0000003d}.auth-mode-switch{display:grid;grid-template-columns:repeat(2,1fr);gap:.55rem;margin:1rem 0 1.1rem}.auth-mode-button{border:1px solid var(--color-border);border-radius:var(--border-radius-sm);background:var(--color-background-secondary);color:var(--color-text-muted);font-weight:700;padding:.78rem .95rem}.auth-mode-button.is-active{border-color:var(--color-primary);background:#1f6b6b14;color:var(--color-primary-strong)}.auth-submit{width:100%}.auth-divider{display:flex;align-items:center;gap:.85rem;margin:1rem 0;color:var(--color-text-muted)}.auth-divider span{flex:1;height:1px;background:var(--color-border)}.auth-divider p{margin:0;font-size:.88rem}.auth-message,.auth-error{margin:0}.auth-message{color:var(--color-primary)}.auth-error{color:#9a3e3e}@keyframes auth-spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes auth-fade-breathe{0%,to{opacity:.42}50%{opacity:1}}@media(min-width:921px){.auth-shell-signin{display:grid;grid-template-columns:1fr minmax(420px,480px);width:100%;max-width:none;gap:0;align-items:stretch}.auth-scene{display:flex;align-items:stretch}.auth-scene-panel{flex:1;border-radius:0;border:none;border-right:1px solid rgba(31,107,107,.1);background:radial-gradient(circle at 40% 30%,rgba(31,107,107,.12),transparent 45%),linear-gradient(180deg,#fff9,#f7faf680);box-shadow:none;padding:3rem 3.5rem;grid-template-rows:auto auto 1fr;justify-items:stretch}.auth-scene-header,.auth-scene-copy{justify-self:start}.auth-card-signin{align-self:stretch;border-radius:0;border:none;border-left:0;background:var(--color-surface);box-shadow:none;padding:3rem;display:flex;flex-direction:column;justify-content:center;max-width:480px}.auth-card-signin:before{display:none}}@media(max-width:1180px){.hero-panel.compact,.metric-row,.timesheet-layout,.secondary-layout,.client-detail-split,.clients-layout,.client-metric-row,.team-layout,.team-detail-grid,.team-stat-grid,.insights-layout,.insights-donut-layout,.hero-filters.compact,.billing-summary{grid-template-columns:1fr}}@media(max-width:920px){.auth-shell{flex-direction:column;align-items:center;justify-content:flex-start;min-height:100dvh;padding:0;background:radial-gradient(circle at 50% 15%,rgba(42,184,154,.12),transparent 40%),radial-gradient(circle at 20% 80%,rgba(90,138,176,.08),transparent 35%),linear-gradient(180deg,#0f1a1a,#142020 60%,#101818)}.auth-shell-signin{width:100%;max-width:none}.auth-scene{display:none}.mobile-auth-hero{display:flex;flex-direction:column;align-items:center;gap:.85rem;padding:1.85rem 1.5rem .2rem;width:100%}.mobile-auth-clock{position:relative;width:110px;height:110px;display:grid;place-items:center;flex-shrink:0}.mobile-auth-ring{position:absolute;border-radius:50%;border:1px solid rgba(42,184,154,.22)}.mobile-auth-ring-outer{top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 20px #2ab89a0f,0 0 30px #2ab89a14}.mobile-auth-ring-middle{top:12px;right:12px;bottom:12px;left:12px;border-style:dashed;animation:auth-spin-slow 18s linear infinite reverse}.mobile-auth-hand{position:absolute;left:50%;bottom:50%;border-radius:999px;transform-origin:bottom center;z-index:10}.mobile-auth-hand-hour{width:2.5px;height:26px;background:linear-gradient(180deg,rgba(42,184,154,.15),var(--color-primary))}.mobile-auth-hand-minute{width:2px;height:36px;background:linear-gradient(180deg,rgba(42,184,154,.15),var(--color-primary))}.mobile-auth-hand-second{width:1.5px;height:42px;background:linear-gradient(180deg,rgba(201,168,76,.2),var(--color-warning-text))}.mobile-auth-center{position:relative;z-index:0;width:2.35rem;height:2.35rem;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#121c1ceb,#0e1616e0);border:1px solid rgba(42,184,154,.22);box-shadow:0 4px 12px #0003;font-size:.72rem;font-weight:800;color:var(--color-primary);letter-spacing:.08em}.mobile-auth-brand{text-align:center}.mobile-auth-eyebrow{margin:0 0 .2rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--color-primary)}.mobile-auth-tagline{margin:0;font-size:1.65rem;font-weight:800;letter-spacing:-.02em;line-height:1.1;color:var(--color-text)}.auth-card-signin{width:100%;max-width:480px;border-radius:0;border:none;background:transparent!important;box-shadow:none;padding:1.75rem 1.5rem 2rem;flex:0 0 auto}.auth-card-signin:before{display:none}.billing-line-items{max-height:none;overflow:visible;padding-right:0;margin-right:0}.auth-shell-centered{display:flex;align-items:center;justify-content:center;min-height:100dvh;width:100%;padding:0 1.5rem}.loader-wrapper{width:100%;min-height:100dvh!important;display:flex;align-items:center;justify-content:center}[data-theme=light] .auth-shell,:root:not([data-theme=dark]) .auth-shell{background:radial-gradient(circle at 50% 15%,rgba(31,107,107,.1),transparent 38%),radial-gradient(circle at 20% 80%,rgba(53,92,125,.07),transparent 32%),linear-gradient(180deg,#e8f0ee,#f0f4f2 55%,#edf2ef)}:root:not([data-theme=dark]) .auth-card-signin{border:none;background:transparent;box-shadow:none}:root:not([data-theme=dark]) .mobile-auth-ring{border-color:#1f6b6b33}:root:not([data-theme=dark]) .mobile-auth-center{background:linear-gradient(135deg,#fff,#f0f9f6);border-color:#1f6b6b2e;box-shadow:0 4px 12px #182a2a14}:root:not([data-theme=dark]) .mobile-auth-hand-hour,:root:not([data-theme=dark]) .mobile-auth-hand-minute{background:linear-gradient(180deg,rgba(31,107,107,.15),var(--color-primary))}:root:not([data-theme=dark]) .mobile-auth-hand-second{background:linear-gradient(180deg,rgba(201,139,46,.2),var(--color-warning-text))}.page-shell{grid-template-columns:1fr}.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:50;width:min(320px,calc(100vw - 3rem));border-right:1px solid var(--color-border);border-bottom:0;transform:translate(-100%);transition:transform .18s ease;overflow-y:auto;box-shadow:0 24px 60px #0000002e}.sidebar.is-open{transform:translate(0)}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;border:0;background:#00000052;opacity:0;pointer-events:none;transition:opacity .18s ease}.sidebar-backdrop.is-open{opacity:1;pointer-events:auto}.shell-menu-button,.mobile-org-switcher{display:grid}.topbar-workspace-label{display:block}.topbar-actions{flex-wrap:wrap}.mobile-org-switcher{width:min(280px,100%)}.content-area{height:100dvh;padding:.85rem 1rem 1rem}.drawer{width:100%;right:-100%}}@media(max-width:720px){.billing-layout{display:flex;flex-direction:column;gap:.85rem;min-height:0;height:auto;max-height:none}.billing-workspace-panel{overflow:visible;display:flex;flex-direction:column;gap:.85rem}.email-output-shell{display:flex;flex-direction:column;gap:.75rem}.billing-panel-header{flex-direction:column;gap:.75rem;align-items:stretch}.billing-header-left,.billing-header-right{width:100%}.billing-period-bar{flex-wrap:wrap;gap:.55rem}.billing-period-divider{display:none}.billing-period-segments{width:100%;justify-content:space-between}.billing-period-pill{flex:1 1 0;text-align:center}.billing-period-nav{flex:1 1 auto}.billing-period-today{flex-shrink:0}.billing-title-row{flex-direction:column;align-items:flex-start;gap:.2rem}.billing-summary-row{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;padding:0;border:none;background:transparent}.billing-summary-row>div{padding:.8rem .85rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-background-secondary)}.billing-summary-row>div:first-child{display:none}.billing-line-items-shell{gap:.6rem}.billing-line-items-header{flex-direction:row;align-items:center;justify-content:space-between}.billing-table.billing-line-items{max-height:none;overflow:visible;padding-right:0;margin-right:0}.billing-row{display:flex;flex-direction:column;gap:.45rem;padding:.85rem;margin-bottom:.55rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-background-secondary)}.billing-row:last-child{border-bottom:1px solid var(--color-border);margin-bottom:0}.billing-row-main strong{display:block;margin-bottom:.25rem;font-size:.86rem}.billing-row p{font-size:.82rem;line-height:1.5;color:var(--color-text-secondary)}.billing-row-amount{font-size:.92rem;font-weight:800;align-self:flex-end}.email-output-shell .panel-header{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:.65rem}.email-output-shell .panel-header .secondary-button{flex-shrink:0;width:auto;min-height:0;padding:.45rem .7rem;font-size:.82rem}.email-preview{min-height:0;max-height:none;overflow:visible;padding:0;border:0;background:transparent;font-size:.88rem;line-height:1.62}.email-output-actions{display:none}body.mobile-sheet-open{overflow:hidden}body.mobile-sheet-open .content-area{overflow:hidden;overscroll-behavior:none}.content-area{height:auto;min-height:100dvh;overflow-y:auto;overflow-x:hidden;padding:.9rem .9rem calc(5.75rem + env(safe-area-inset-bottom,0px))}.content-area>.secondary-layout,.content-area>.clients-layout,.content-area>.settings-layout,.content-area>.timesheet-section-wrapper,.content-area>.insights-layout{flex:0 0 auto;min-height:auto;overflow:visible}.topbar,.topbar-actions,.panel-header,.drawer-actions,.sidebar-user,.inline-actions,.grid-toolbar{align-items:flex-start;flex-direction:column}.grid-row{grid-template-columns:1fr}.grid-head{display:none}.time-cell,.row-total{text-align:left}.topbar{gap:.8rem}.topbar-title-group,.topbar-heading,.topbar-actions,.mobile-org-switcher,.topbar-actions .primary-button{width:100%}.mobile-bottom-nav{position:fixed;left:.75rem;right:.75rem;bottom:calc(.75rem + env(safe-area-inset-bottom,0px));z-index:45;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;padding:.45rem;border:1px solid var(--color-border-strong);border-radius:calc(var(--border-radius-lg) + .1rem);background:var(--color-surface-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:var(--shadow-soft)}.mobile-bottom-link{min-width:0;padding:.68rem .3rem;font-size:.72rem;line-height:1.1;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:clip}.mobile-more-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:44;background:#0000003d;opacity:0;pointer-events:none;transition:opacity .18s ease}.mobile-more-backdrop.is-open{opacity:1;pointer-events:auto}.mobile-more-sheet{display:grid;position:fixed;left:.75rem;right:.75rem;bottom:calc(5.6rem + env(safe-area-inset-bottom,0px));z-index:46;padding:1rem;gap:.8rem;border:1px solid var(--color-border-strong);border-radius:var(--border-radius-lg);background:var(--color-surface-overlay);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--shadow-soft);opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .18s ease,transform .18s ease}.mobile-more-sheet.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.team-layout{display:block;height:auto;overflow:visible}.team-directory-panel{height:auto;overflow:visible}.team-directory-list{gap:.75rem}.team-directory-card{gap:.65rem}.team-member-open-hint{display:block}.team-detail-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:59;border:0;background:#00000047;opacity:0;pointer-events:none;transition:opacity .18s ease}.team-detail-backdrop.is-open{opacity:1;pointer-events:auto}.team-detail-panel{position:fixed;left:.75rem;right:.75rem;bottom:calc(5.9rem + env(safe-area-inset-bottom,0px));z-index:60;max-height:min(78dvh,720px);padding:1rem;overflow-y:auto;opacity:0;pointer-events:none;transform:translateY(14px);transition:opacity .18s ease,transform .18s ease;box-shadow:var(--shadow-soft)}.team-detail-panel.is-mobile-open{opacity:1;pointer-events:auto;transform:translateY(0)}.team-detail-close{display:inline-flex}.team-detail-panel .panel-header{align-items:flex-start;flex-direction:row;justify-content:space-between}.team-week-toolbar{align-items:flex-start}.team-week-toolbar .week-control,.team-week-toolbar .secondary-button{width:100%}.team-week-toolbar .week-control>div{min-width:0}.team-stat-grid,.team-detail-grid{grid-template-columns:1fr}.team-access-row,.team-project-row{align-items:flex-start;flex-direction:column}.team-project-meta{justify-items:start}.team-access-row strong,.team-project-hours{text-align:left}.team-member-role-editor{justify-content:flex-start;width:100%}.team-member-role-editor .settings-select,.team-member-role-editor .secondary-button,.team-access-row .secondary-button.danger{width:100%}.timesheet-section-wrapper{overflow:visible;height:auto}.timesheet-section-wrapper .timesheet-layout{display:block;height:auto;overflow:visible;flex:0 0 auto;min-height:auto}.timesheet-section-wrapper .main-column{overflow:visible;height:auto;min-height:auto}.team-column{display:none}.hero-panel.compact{grid-template-columns:1fr;gap:.55rem;padding:.75rem .85rem}.hero-filters.compact{grid-template-columns:1fr 1fr;gap:.5rem}.hero-filters.compact .hero-chip:nth-child(1),.hero-filters.compact .hero-chip:nth-child(2){display:none}.hero-panel.compact .hero-copy{display:none}.metric-row{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-row .metric-panel:nth-child(2){display:none}.metric-panel{padding:.65rem .85rem;gap:.6rem}.metric-panel h3{font-size:20px}.metric-kicker{min-height:2.8rem;width:.55rem}.main-grid-panel{display:none}.mobile-project-list{display:grid;gap:.65rem}.mobile-project-empty{padding:.95rem 1rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-background-secondary);color:var(--color-text-secondary)}.mobile-project-empty p{margin:0}.mobile-project-empty p+p{margin-top:.2rem}.mobile-project-card{width:100%;text-align:left;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-surface);padding:.85rem;display:grid;gap:.65rem;transition:background .1s ease,border-color .1s ease}.mobile-project-card:active{background:var(--color-background-secondary);border-color:var(--color-border-strong)}.mobile-project-card-top{display:flex;align-items:center;gap:.65rem}.mobile-project-card-top .project-bar{width:.32rem;height:2.2rem;border-radius:999px;flex-shrink:0}.mobile-project-card-info{flex:1 1 0;min-width:0}.mobile-project-card-info strong{display:block;font-size:.9rem;font-weight:700;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-project-client{display:block;font-size:.75rem;color:var(--color-text-secondary);margin-top:.1rem}.mobile-project-total{font-size:.95rem;font-weight:800;color:var(--color-text-tertiary);flex-shrink:0;white-space:nowrap}.mobile-project-total.has-hours{color:var(--color-warning-text)}.mobile-day-dots{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem}.mobile-day-dot{height:.4rem;border-radius:999px;border:1.5px solid var(--color-border);background:var(--color-background-secondary);padding:0;min-width:0;transition:background .1s ease}.mobile-day-dot.is-filled{background:var(--color-primary);border-color:var(--color-primary)}.mobile-day-dot:active{opacity:.7}.main-grid-panel .grid-toolbar{flex-direction:row;flex-wrap:nowrap;gap:.45rem;width:100%}.main-grid-panel .grid-toolbar .section-control{flex:1 1 0;min-width:0}.main-grid-panel .grid-toolbar .secondary-button:last-child{display:none}.mobile-week-nav{display:flex;align-items:center;gap:.55rem;padding:.65rem .85rem;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background:var(--color-surface)}.mobile-week-nav .week-control{flex:1 1 0;min-width:0;justify-content:space-between;border:0;background:transparent;padding:0}.mobile-week-nav .secondary-button{flex-shrink:0;padding:.45rem .75rem;font-size:.84rem}.billing-panel.inline{padding:.75rem .85rem}.billing-panel.inline .panel-header{flex-direction:row;align-items:center;gap:.65rem;flex-wrap:nowrap}.billing-panel.inline .panel-header h3{font-size:.86rem}.billing-panel.inline .billing-summary{grid-template-columns:repeat(2,minmax(0,1fr));padding:.65rem;gap:.5rem}.billing-panel.inline .billing-summary>div:first-child{display:none}.clients-layout{display:block;height:auto;overflow:visible}.client-detail-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:41;border:0;background:#00000047;opacity:0;pointer-events:none;transition:opacity .18s ease}.client-detail-backdrop.is-open{opacity:1;pointer-events:auto}.client-detail-panel{position:fixed;left:.75rem;right:.75rem;bottom:calc(5.9rem + env(safe-area-inset-bottom,0px));z-index:43;max-height:min(78dvh,760px);padding:1rem;overflow-y:auto;opacity:0;pointer-events:none;transform:translateY(14px);transition:opacity .18s ease,transform .18s ease;box-shadow:var(--shadow-soft)}.client-detail-panel.is-mobile-open{opacity:1;pointer-events:auto;transform:translateY(0)}.client-detail-close{display:inline-flex}.client-detail-panel .panel-header{align-items:stretch;flex-direction:column;justify-content:flex-start;gap:.75rem}.client-detail-panel .panel-header>div:first-child{min-width:0}.client-detail-panel .panel-header h3,.project-create-panel .panel-header h3{line-height:1.2}.client-detail-panel .panel-header .panel-copy,.project-create-panel .panel-header .panel-copy{margin-top:.18rem;line-height:1.45;overflow-wrap:anywhere}.client-detail-close,.project-create-close{align-self:flex-end;padding-inline:.8rem}.client-detail-panel .inline-actions,.project-create-panel .inline-actions{width:100%;display:grid;gap:.55rem;justify-content:stretch}.client-detail-panel .inline-actions>*,.project-create-panel .inline-actions>*{width:100%}.client-detail-panel .inline-actions .status-badge,.project-create-panel .inline-actions .status-badge{justify-self:flex-start;width:auto;max-width:100%}.client-detail-panel .inline-actions .text-button,.project-create-panel .inline-actions .text-button{text-align:left;padding:.2rem 0}.client-detail-panel .danger-confirm,.project-create-panel .danger-confirm{width:100%}.client-metric-row,.client-detail-split{grid-template-columns:1fr}.client-project-row,.client-entry-row{align-items:flex-start;flex-direction:column;gap:.45rem}.client-project-metrics,.billing-row-amount{align-items:flex-start}.projects-layout{display:block;height:auto;overflow:visible}.project-create-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:41;border:0;background:#00000047;opacity:0;pointer-events:none;transition:opacity .18s ease}.project-create-backdrop.is-open{opacity:1;pointer-events:auto}.project-create-panel{position:fixed;left:.75rem;right:.75rem;bottom:calc(5.9rem + env(safe-area-inset-bottom,0px));z-index:43;max-height:min(78dvh,760px);padding:1rem;overflow-y:auto;opacity:0;pointer-events:none;transform:translateY(14px);transition:opacity .18s ease,transform .18s ease;box-shadow:var(--shadow-soft)}.project-create-panel.is-mobile-open{opacity:1;pointer-events:auto;transform:translateY(0)}.project-create-close{display:inline-flex}.project-create-panel .panel-header{align-items:stretch;flex-direction:column;justify-content:flex-start;gap:.75rem}.project-preview-body,.project-actions,.project-form-section>div,.project-list-card{align-items:flex-start;flex-direction:column}.project-preview-body,.project-actions{gap:.65rem}.project-preview-meta,.project-list-metrics{align-items:flex-start}.project-preview-card{gap:.7rem}.project-preview-card .project-preview-bar{min-height:3.1rem}.project-form-sections{gap:.85rem}.project-form-section{gap:.65rem;padding-top:.85rem}.project-member-row,.project-member-add{grid-template-columns:1fr}.project-member-actions{justify-content:stretch}.project-member-actions .secondary-button,.project-member-add .secondary-button{width:100%}.project-color-swatches{gap:.55rem}.project-actions .secondary-button,.project-actions .primary-button{width:100%}.project-create-panel .drawer-actions{position:static;bottom:auto;z-index:auto;background:transparent;border-top:0;padding:.15rem 0 0;margin-top:.25rem;gap:.65rem}.project-create-panel .drawer-actions .secondary-button,.project-create-panel .drawer-actions .primary-button{width:100%}.project-list-card{gap:.55rem}.project-list-card .project-list-main,.project-list-card .project-list-metrics{width:100%}.clients-directory-toolbar,.projects-directory-actions{width:100%;justify-content:flex-start}.clients-directory-actions,.projects-directory-actions{justify-content:flex-start;flex-wrap:wrap}.clients-list-panel .panel-header .secondary-button,.projects-list-panel .panel-header .secondary-button{white-space:nowrap}.insights-layout{height:auto;overflow:visible;align-content:start}.insights-card,.insights-archive-panel{padding:.85rem .9rem}.insights-card .panel-header,.insights-archive-panel .panel-header{align-items:center;text-align:center}.insights-client-select{min-width:0;width:100%}.insights-chart{padding:.45rem .15rem 0}.insights-donut-layout{grid-template-columns:1fr;justify-items:center}.insights-donut-breakdown,.insights-breakdown-card,.insights-archive-panel .secondary-button{width:100%}.insights-archive-panel .panel-header{gap:.55rem}.settings-layout{display:flex;flex-direction:column;gap:.85rem;height:auto;overflow:visible}.settings-card{gap:.8rem}.settings-row,.settings-row-select,.settings-row-danger{align-items:flex-start;flex-direction:column;gap:.45rem}.settings-row strong,.settings-select{width:100%;text-align:left}.settings-theme-picker{grid-template-columns:1fr}.settings-workspace-row,.settings-inline-form,.settings-save-row{align-items:stretch;flex-direction:column}.settings-workspace-actions,.settings-modal-actions{width:100%;justify-content:stretch}.settings-workspace-actions .secondary-button,.settings-inline-form .primary-button,.settings-save-row .secondary-button,.settings-save-row .primary-button,.settings-row .secondary-button,.settings-modal-actions .secondary-button{width:100%}}.main-grid-panel{display:flex;flex-direction:column;min-height:0}.main-grid-panel>.grid-table{overflow-y:auto;scrollbar-width:thin;min-height:0;flex:1 1 0}.timesheet-layout{align-items:stretch}.timesheet-section-wrapper .main-column{display:flex;flex-direction:column;row-gap:.75rem;height:100%;overflow:hidden;min-height:0}.main-grid-panel{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}.main-grid-panel>.panel-header{flex-shrink:0}.main-grid-panel>.grid-table{flex:1 1 0;min-height:0;overflow-y:auto;scrollbar-width:thin}.main-grid-panel>.grid-table>.grid-head{position:sticky;top:0;z-index:2;background:var(--color-surface);padding-block:.35rem}
