body:has(.time-entries-page){min-width:0}.time-entries-page{position:relative;width:min(100%,86rem);padding-top:clamp(1.25rem,3vw,2.25rem)}.time-entries-page button:focus-visible,.time-entries-page a:focus-visible,.time-entries-page input:focus-visible,.time-entries-page select:focus-visible,.time-entries-page textarea:focus-visible{outline:3px solid rgb(54 165 104 / 25%);outline-offset:2px}.time-entries-header,.time-entry-form-header,.time-entry-detail-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.time-entries-header h1,.time-entry-form-header h1,.time-entry-detail-header h1{margin:.25rem 0;color:var(--green-950);font-size:clamp(1.85rem,3vw,2.45rem);line-height:1.1;letter-spacing:-.04em}.time-entries-header p,.time-entry-form-header p,.time-entry-detail-header p{margin:0;color:var(--muted)}.time-entry-filter-bar{display:flex;flex-wrap:wrap;gap:.65rem;align-items:end;margin:1.1rem 0 0;border:1px solid var(--line);border-radius:.85rem;padding:.7rem;background:#fff}.time-entry-filter-bar label,.time-entry-filter-panel label{display:grid;gap:.3rem;color:#35453c;font-size:.78rem;font-weight:700}.time-entry-filter-bar label:first-child{width:11rem}.time-entry-filter-bar label:nth-child(2){width:min(16rem,30vw)}.time-entry-filter-bar input,.time-entry-filter-bar select,.time-entry-filter-panel select{min-height:2.65rem;border:1px solid #cfd9d1;border-radius:.65rem;padding:.55rem .75rem;color:var(--green-950);background:#fff}.time-entry-filter-button,.time-entry-clear-button,.secondary-button{min-height:2.65rem;border:1px solid var(--line);border-radius:.65rem;padding:.55rem .8rem;color:var(--green-800);background:#fff;font-weight:700;cursor:pointer}.time-entry-filter-button{display:inline-flex;gap:.45rem;align-items:center}.time-entry-filter-button strong{min-width:1.35rem;height:1.35rem;display:grid;place-items:center;border-radius:999px;color:#fff;background:var(--green-650);font-size:.72rem}.time-entry-clear-button{border-color:transparent;color:var(--muted)}.time-entry-period-summary{margin:0 0 0 auto;align-self:center;color:var(--muted);font-size:.86rem;white-space:nowrap}.time-entry-period-summary strong{color:var(--green-950)}.time-entry-filter-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin:.65rem 0 0}.time-entry-filter-chips button{min-height:2rem;border:1px solid #cbe2d2;border-radius:999px;padding:.3rem .65rem;color:var(--green-800);background:#f1f8f3;font-size:.78rem;cursor:pointer}.time-entry-filter-dialog,.time-entry-dialog{border:0;padding:0;background:transparent}.time-entry-filter-dialog{inset:11.5rem clamp(1.5rem,5vw,5rem) auto auto;width:min(28rem,calc(100vw - 2rem));max-height:calc(100dvh - 13rem);margin:0;overflow:visible}.time-entry-filter-dialog::backdrop{background:#10291c14}.time-entry-filter-panel{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;max-height:inherit;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:.9rem;padding:1rem;background:#fff;box-shadow:0 18px 45px #10291c33;animation:time-entry-popover-in .18s ease-out}.time-entry-filter-heading,.time-entry-filter-actions{grid-column:1 / -1}.time-entry-filter-heading{display:flex;justify-content:space-between;align-items:start}.time-entry-filter-heading h2{margin:.2rem 0 0}.time-entry-filter-heading>button{width:2.65rem;height:2.65rem;border:0;border-radius:.65rem;color:var(--muted);background:transparent;font-size:1.5rem;cursor:pointer}.time-entry-filter-actions{position:sticky;bottom:-1rem;display:flex;gap:.65rem;justify-content:flex-end;border-top:1px solid var(--line);margin:.25rem -1rem -1rem;padding:.8rem 1rem max(.8rem,env(safe-area-inset-bottom));background:#fff}.time-entry-filter-actions .primary-button{width:auto;min-width:9rem}.time-entry-table{margin-top:.85rem;overflow:visible;border:1px solid var(--line);border-radius:.85rem;background:#fff}.time-entry-table table{width:100%;border-collapse:collapse;table-layout:fixed}.time-entry-table th{height:2.75rem;padding:.55rem .75rem;color:var(--muted);background:#f7faf7;font-size:.72rem;letter-spacing:.04em;text-align:left;text-transform:uppercase}.time-entry-table th:first-child{width:8.5rem}.time-entry-table th:nth-child(2){width:34%}.time-entry-table th:nth-child(3){width:20%}.time-entry-table th:nth-child(4){width:7.5rem}.time-entry-table th:nth-child(5){width:8rem}.time-entry-table th:last-child{width:3.5rem}.time-entry-table tbody tr{height:4.25rem;border-top:1px solid #edf1ee;transition:background .16s ease}.time-entry-table tbody tr:hover{background:#fbfdfb}.time-entry-table td{padding:.55rem .75rem;vertical-align:middle}.time-entry-table td strong,.time-entry-table td small{display:block}.time-entry-table td small{overflow:hidden;margin-top:.18rem;color:var(--muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.time-entry-summary-cell a{display:-webkit-box;overflow:hidden;color:var(--green-950);font-weight:700;line-height:1.25;text-decoration:none;-webkit-box-orient:vertical;-webkit-line-clamp:1}.time-entry-date,.time-entry-number{white-space:nowrap}.time-entry-number{color:var(--green-950);font-weight:700}.time-entry-actions{position:relative;display:flex;justify-content:flex-end}.time-entry-actions-trigger{width:2.65rem;height:2.65rem;display:grid;place-items:center;border:0;border-radius:.65rem;color:var(--green-800);background:transparent;font-weight:800;letter-spacing:.08em;cursor:pointer}.time-entry-actions-trigger:hover,.time-entry-actions-trigger[aria-expanded=true]{background:var(--mint)}.time-entry-actions-menu{position:absolute;z-index:12;top:calc(100% + .25rem);right:0;width:10rem;display:grid;border:1px solid var(--line);border-radius:.75rem;padding:.35rem;background:#fff;box-shadow:0 14px 32px #10291c2e;animation:time-entry-popover-in .16s ease-out}.time-entry-actions-menu a,.time-entry-actions-menu button{min-height:2.5rem;display:flex;align-items:center;border:0;border-radius:.5rem;padding:.55rem .65rem;color:var(--green-800);background:transparent;font:inherit;font-weight:700;text-align:left;text-decoration:none;cursor:pointer}.time-entry-actions-menu a:hover,.time-entry-actions-menu button:hover{background:#f1f6f2}.time-entry-actions-menu button{color:var(--danger)}.time-entry-cards{display:none}.time-entry-skeleton{display:grid;gap:1px;margin-top:.85rem;overflow:hidden;border:1px solid var(--line);border-radius:.85rem;background:var(--line)}.time-entry-skeleton>div{height:4.25rem;display:grid;grid-template-columns:7rem 1fr 10rem;gap:1rem;align-items:center;padding:.75rem;background:#fff}.time-entry-state{display:grid;gap:.55rem;justify-items:center;margin-top:.85rem;border:1px solid var(--line);border-radius:.85rem;padding:2rem 1rem;color:var(--muted);background:#fff;text-align:center}.time-entry-state>span:first-child{font-size:1.65rem}.time-entry-state strong{color:var(--green-950)}.time-entry-state p{margin:0}.time-entry-toast{position:fixed;z-index:40;top:1rem;right:1rem;max-width:calc(100vw - 2rem);display:flex;gap:.65rem;align-items:center;border:1px solid #b9dec5;border-radius:.8rem;padding:.75rem .85rem;color:#17603a;background:#fff;box-shadow:0 16px 40px #10291c2e;animation:time-entry-toast-in .18s ease-out}.time-entry-toast>button{width:2rem;height:2rem;border:0;color:var(--muted);background:transparent;cursor:pointer}.time-entry-dialog{width:min(30rem,calc(100vw - 2rem));max-width:100%;border-radius:1rem}.time-entry-dialog::backdrop{background:#10291c73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.time-entry-dialog-content{display:grid;grid-template-columns:auto 1fr;gap:1rem;border-radius:1rem;padding:1.25rem;background:#fff;animation:time-entry-dialog-in .18s ease-out}.time-entry-dialog-icon{width:2.5rem;height:2.5rem;display:grid;place-items:center;border-radius:50%;color:var(--danger);background:#fff0ee;font-weight:800}.time-entry-dialog h2{margin:0;font-size:1.2rem}.time-entry-dialog p{margin:.4rem 0 0;color:var(--muted);line-height:1.5}.time-entry-dialog .form-alert,.time-entry-dialog-actions{grid-column:1 / -1}.time-entry-dialog-actions{display:flex;gap:.65rem;justify-content:flex-end}.time-entry-dialog-actions .danger-button{margin:0}.time-entry-success{display:flex;gap:.8rem;align-items:center;margin-bottom:1rem;border:1px solid #b9dec5;border-radius:.85rem;padding:.85rem 1rem;color:#17603a;background:#eef8f1;animation:time-entry-toast-in .18s ease-out}.time-entry-success>span{width:2rem;height:2rem;display:grid;flex:0 0 auto;place-items:center;border-radius:50%;color:#fff;background:var(--green-650)}.time-entry-success p{margin:.15rem 0 0}.time-entry-detail-header{align-items:flex-end}.time-entry-detail-header>div:first-child{min-width:0;max-width:50rem}.time-entry-detail-header h1{overflow-wrap:anywhere}.time-entry-saved-badge{display:inline-flex;gap:.35rem;align-items:center;border-radius:999px;padding:.3rem .6rem;color:#17603a;background:var(--mint);font-size:.78rem;font-weight:800}.time-entry-detail-actions{display:flex;gap:.65rem}.time-entry-detail-card{margin-top:1.25rem;border:1px solid var(--line);border-radius:1rem;background:#fff}.time-entry-detail-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;border-bottom:1px solid var(--line)}.time-entry-detail-grid>div{min-width:0;padding:1rem}.time-entry-detail-grid dt,.time-entry-audit{color:var(--muted);font-size:.76rem}.time-entry-detail-grid dd{overflow-wrap:anywhere;margin:.3rem 0 0;color:var(--green-950);font-weight:700}.time-entry-detail-copy{display:grid;grid-template-columns:1.2fr .8fr;gap:1.25rem;padding:1.25rem}.time-entry-detail-copy h2{margin:0 0 .45rem;font-size:.9rem}.time-entry-detail-copy p{margin:0;color:#35453c;line-height:1.6;white-space:pre-wrap}.time-entry-audit{display:flex;gap:1rem;justify-content:space-between;border-top:1px solid var(--line);padding:.75rem 1.25rem}.time-entry-secondary-actions{display:flex;justify-content:flex-end;margin-top:.75rem}.time-entry-secondary-actions .danger-button{margin:0}.time-entry-form-page{width:min(100%,80rem)}.time-entry-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,.35fr);gap:1rem;align-items:start;margin-top:1.25rem}.time-entry-form-section{min-width:0;margin:0;border:1px solid var(--line);border-radius:.9rem;padding:1rem;background:#fff}.time-entry-form-section legend{display:grid;grid-template-columns:auto 1fr;column-gap:.55rem;padding:0 .35rem}.time-entry-form-section legend>span{grid-row:1 / 3;width:1.8rem;height:1.8rem;display:grid;place-items:center;border-radius:50%;color:var(--green-800);background:var(--mint);font-size:.78rem;font-weight:800}.time-entry-form-section legend strong{color:var(--green-950)}.time-entry-form-section legend small{color:var(--muted)}.time-entry-form-grid{display:grid;gap:0 .8rem;margin-top:.75rem}.time-entry-context-grid,.time-entry-period-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.time-entry-form .form-field{margin-bottom:.8rem}.time-entry-form .form-field input,.time-entry-form .form-field select,.time-entry-form .form-field textarea{min-height:2.8rem}.time-entry-billable{display:flex;gap:.65rem;align-items:center;border:1px solid var(--line);border-radius:.7rem;padding:.65rem .75rem;cursor:pointer}.time-entry-billable input{width:1.1rem;height:1.1rem;accent-color:var(--green-650)}.time-entry-billable span{display:grid;gap:.12rem}.time-entry-billable small{color:var(--muted)}.time-entry-form-summary{position:sticky;top:6.25rem;grid-column:2;grid-row:1 / span 3;display:grid;grid-template-columns:1fr 1fr;gap:.85rem;border:1px solid #cbe2d2;border-radius:.9rem;padding:1rem;background:#eef7f0}.time-entry-form-summary>div{display:grid;gap:.2rem}.time-entry-form-summary span,.time-entry-form-summary small{color:var(--muted);font-size:.76rem}.time-entry-form-summary small{grid-column:1 / -1;line-height:1.45}.time-entry-form .form-alert,.time-entry-form-actions{grid-column:1 / -1}.time-entry-form-actions{display:flex;gap:.65rem;align-items:center;border:1px solid var(--line);border-radius:.85rem;padding:.65rem;background:#fffffff0;box-shadow:0 10px 30px #10291c1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.time-entry-form-actions .primary-button{width:auto;min-width:11rem}@keyframes time-entry-popover-in{0%{opacity:0;transform:translateY(-.35rem)}to{opacity:1;transform:translateY(0)}}@keyframes time-entry-toast-in{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes time-entry-dialog-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media(max-width:1050px){.time-entry-period-summary{width:100%;margin-left:0}.time-entry-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:800px){.time-entries-page{padding-bottom:calc(5rem + env(safe-area-inset-bottom))}.time-entry-table{display:none}.time-entry-cards{display:grid;gap:.65rem;margin-top:.8rem}.time-entry-card{min-width:0;border:1px solid var(--line);border-radius:.85rem;padding:.75rem;background:#fff}.time-entry-card-top,.time-entry-card-totals{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.time-entry-card-top time{color:var(--muted);font-size:.78rem;font-weight:700}.time-entry-card-link{display:grid;gap:.25rem;margin:.15rem 0 .65rem;color:var(--green-950);text-decoration:none}.time-entry-card-link strong{display:-webkit-box;overflow:hidden;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.time-entry-card-link span{overflow:hidden;color:var(--muted);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.time-entry-card-totals{border-top:1px solid #edf1ee;padding-top:.6rem;color:var(--green-950);font-size:.9rem}.time-entry-filter-dialog{inset:auto 0 0;width:100%;max-height:min(82dvh,42rem);margin:0}.time-entry-filter-dialog::backdrop{background:#10291c6b}.time-entry-filter-panel{grid-template-columns:1fr;border-radius:1rem 1rem 0 0;padding:1rem max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));animation:time-entry-sheet-in .2s ease-out}.time-entry-filter-heading,.time-entry-filter-actions{grid-column:auto}.time-entry-filter-actions{bottom:calc(-1rem - env(safe-area-inset-bottom));margin-right:calc(-1rem - env(safe-area-inset-right));margin-left:calc(-1rem - env(safe-area-inset-left))}.time-entry-detail-header,.time-entry-form-header{align-items:flex-start;flex-direction:column}.time-entry-detail-actions{width:100%}.time-entry-detail-actions>*{flex:1}.time-entry-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.time-entry-detail-copy,.time-entry-form{grid-template-columns:1fr}.time-entry-form-summary{position:static;grid-column:auto;grid-row:auto}}@keyframes time-entry-sheet-in{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}@media(max-width:620px){.time-entries-page{padding-top:1rem}.time-entries-header,.time-entry-form-header{gap:.8rem}.time-entries-header .primary-link,.time-entry-form-header .secondary-link{width:100%}.time-entry-filter-bar{display:grid;grid-template-columns:minmax(0,1fr) auto}.time-entry-filter-bar label:first-child,.time-entry-filter-bar label:nth-child(2){width:auto}.time-entry-filter-bar label:nth-child(2){grid-column:1 / -1;grid-row:2}.time-entry-filter-button{grid-column:2;grid-row:1;align-self:end}.time-entry-clear-button{grid-column:1 / -1;justify-self:start;min-height:2rem;padding:.2rem}.time-entry-period-summary{grid-column:1 / -1;font-size:.8rem;white-space:normal}.time-entry-filter-actions{display:grid;grid-template-columns:.8fr 1.2fr}.time-entry-filter-actions .primary-button{width:100%;min-width:0}.time-entry-actions-menu{position:fixed;top:auto;right:max(.75rem,env(safe-area-inset-right));bottom:calc(4.8rem + env(safe-area-inset-bottom));left:max(.75rem,env(safe-area-inset-left));width:auto}.time-entry-actions-menu a,.time-entry-actions-menu button{min-height:3rem}.time-entry-skeleton>div{height:8rem;grid-template-columns:1fr;gap:.45rem}.time-entry-detail-actions{display:grid}.time-entry-detail-grid{grid-template-columns:1fr}.time-entry-detail-grid>div{display:flex;gap:1rem;justify-content:space-between;border-bottom:1px solid #edf1ee;padding:.75rem 1rem}.time-entry-detail-grid dd{margin:0;text-align:right}.time-entry-audit{flex-direction:column;gap:.25rem}.time-entry-secondary-actions .danger-button{width:100%}.time-entry-context-grid,.time-entry-period-grid{grid-template-columns:1fr}.time-entry-form-section{padding:.9rem}.time-entry-form-page{padding-bottom:calc(9rem + env(safe-area-inset-bottom))}.time-entry-form-summary{grid-template-columns:1fr 1fr}.time-entry-form-actions{position:fixed;z-index:17;right:0;bottom:calc(4.05rem + env(safe-area-inset-bottom));left:0;display:grid;grid-template-columns:1.2fr .8fr;border-width:1px 0 0;border-radius:0;padding:.55rem max(.75rem,env(safe-area-inset-right)) .55rem max(.75rem,env(safe-area-inset-left))}.time-entry-form-actions .primary-button{width:100%;min-width:0}.time-entry-form-actions .secondary-link{width:100%}.time-entry-dialog-content{grid-template-columns:1fr}.time-entry-dialog .form-alert,.time-entry-dialog-actions{grid-column:auto}.time-entry-dialog-actions{display:grid}.time-entry-dialog-actions>*{width:100%}}@media(max-width:360px){.time-entries-header{align-items:stretch;flex-direction:column;gap:.7rem}.time-entries-header .primary-link{width:100%}}@media(max-width:340px){.time-entry-filter-bar{grid-template-columns:minmax(0,1fr)}.time-entry-filter-bar label:nth-child(2),.time-entry-filter-button{grid-column:1;grid-row:auto}.time-entry-filter-button{width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.time-entry-filter-panel,.time-entry-actions-menu,.time-entry-toast,.time-entry-dialog-content,.time-entry-success{animation:none}}:root{font-family:Inter,system-ui,sans-serif;color:#17231d;background:#f4f7f3;font-synthesis:none;text-rendering:optimizeLegibility;--green-950: #10291c;--green-800: #184d31;--green-650: #237348;--green-500: #36a568;--mint: #daf2e2;--cream: #f8faf7;--line: #dfe8e1;--muted: #607067;--danger: #a63f3f}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;overflow-x:hidden;overflow-y:auto}html,#root{min-height:100%}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--green-650)}h1,h2,strong,.brand,.sidebar-brand{font-family:Inter,system-ui,sans-serif}.auth-page{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(28rem,.95fr) minmax(32rem,1.05fr);background:var(--cream)}.auth-panel{width:min(100%,42rem);align-self:center;justify-self:center;padding:3.5rem clamp(2rem,6vw,5.5rem)}.brand{display:inline-flex;align-items:center;color:var(--green-950);font-size:1.4rem;font-weight:800;letter-spacing:-.04em;text-decoration:none}.beta-badge{margin-left:.65rem;border:1px solid #b9dec5;border-radius:999px;padding:.25rem .55rem;color:var(--green-800);background:var(--mint);font-size:.68rem;font-weight:700;letter-spacing:.04em;white-space:nowrap}.brand:before,.sidebar-brand:before{content:"";width:.65rem;height:.65rem;margin-right:.5rem;align-self:center;border-radius:.18rem .5rem;background:var(--green-500)}.auth-heading{margin:4.5rem 0 2rem}.eyebrow{display:block;color:var(--green-650);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.auth-heading h1,.page-heading h1{margin:.65rem 0 .55rem;color:var(--green-950);font-size:clamp(2rem,4vw,3.15rem);line-height:1.08;letter-spacing:-.045em}.auth-heading p,.page-heading p,.coming-soon p{margin:0;color:var(--muted);line-height:1.65}.form-field{display:grid;gap:.45rem;margin-bottom:1rem;color:#35453c;font-size:.9rem;font-weight:600}.form-field input,.form-field select,.form-field textarea,.compact-field input{width:100%;min-height:3.15rem;border:1px solid #cfd9d1;border-radius:.7rem;outline:none;padding:.75rem .9rem;color:var(--green-950);background:#fff;transition:border-color .16s ease,box-shadow .16s ease}.form-field textarea{resize:vertical}.form-field input:focus,.form-field select:focus,.form-field textarea:focus,.compact-field input:focus{border-color:var(--green-500);box-shadow:0 0 0 3px #36a56826}.form-field input[aria-invalid=true],.form-field select[aria-invalid=true],.form-field textarea[aria-invalid=true]{border-color:#c76a6a}.field-error{color:var(--danger);font-weight:500}.form-alert{margin:.5rem 0 1rem;border-radius:.65rem;padding:.75rem .9rem;color:#7f2c2c;background:#fae8e6;font-size:.9rem}.primary-button{width:100%;min-height:3.2rem;border:0;border-radius:.7rem;color:#fff;background:var(--green-650);font-weight:700;cursor:pointer;box-shadow:0 8px 20px #184d3129}.primary-button:hover:not(:disabled){background:var(--green-800)}.primary-button:focus-visible,.logout-button:focus-visible,nav a:focus-visible{outline:3px solid rgb(54 165 104 / 35%);outline-offset:3px}.primary-button:disabled{opacity:.65;cursor:wait}.auth-switch{margin:1.5rem 0 0;color:var(--muted);font-size:.94rem;text-align:center}.auth-switch a{font-weight:700}.auth-aside{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;gap:1rem;margin:1rem;border-radius:1.2rem;padding:clamp(2.5rem,7vw,6rem);color:#fff;background:radial-gradient(circle at 70% 20%,rgb(102 207 139 / 40%),transparent 28%),linear-gradient(145deg,#173f29,#0d271a)}.auth-aside:before,.auth-aside:after{content:"";position:absolute;border:1px solid rgb(255 255 255 / 12%);border-radius:50%}.auth-aside:before{width:28rem;height:28rem;top:-8rem;right:-8rem}.auth-aside:after{width:18rem;height:18rem;top:-3rem;right:-3rem}.auth-aside span,.auth-aside strong{position:relative;z-index:1}.auth-aside span{color:#a9dcb9;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.auth-aside strong{max-width:11ch;font-size:clamp(2.4rem,5vw,4.7rem);line-height:1.02;letter-spacing:-.055em}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.app-shell{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:15rem minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;height:100dvh;display:flex;flex-direction:column;justify-content:space-between;padding:2rem 1.2rem;color:#fff;background:var(--green-950)}.sidebar-brand{display:flex;padding:0 .7rem;font-size:1.3rem;font-weight:800}.sidebar nav{display:grid;gap:.4rem;margin-top:3rem}.sidebar nav a{display:flex;gap:.7rem;align-items:center;border-radius:.7rem;padding:.8rem .9rem;color:#b9c9bf;text-decoration:none}.sidebar nav a.active{color:#fff;background:#ffffff1a}.logout-button{border:1px solid rgb(255 255 255 / 16%);border-radius:.7rem;padding:.75rem;color:#e6eee9;background:transparent;cursor:pointer}.app-content{min-width:0;min-height:100vh;min-height:100dvh}.topbar{position:sticky;z-index:20;top:0;min-height:5.25rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:.85rem clamp(1.2rem,4vw,3rem);background:#f8faf7e5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar>div,.user-summary,.user-summary>div{display:flex}.topbar>div,.user-summary>div{flex-direction:column}.topbar-label,.user-summary span,.profile-details span,.metric-card span{color:var(--muted);font-size:.78rem}.user-summary{flex-direction:row!important;align-items:center;gap:.7rem}.account-menu{position:relative}.account-trigger{display:grid;border:0;border-radius:999px;padding:0;background:transparent;cursor:pointer}.account-popover{position:absolute;z-index:30;top:calc(100% + .65rem);right:0;width:min(20rem,calc(100vw - 2rem));display:grid;overflow:hidden;border:1px solid var(--line);border-radius:.9rem;padding:.45rem;background:#fff;box-shadow:0 16px 38px #10291c2e;animation:popover-in .16s ease-out}.account-popover a,.account-popover button{min-height:2.75rem;display:flex;align-items:center;border:0;border-radius:.55rem;padding:.65rem .75rem;color:var(--green-800);background:transparent;font:inherit;font-weight:700;text-align:left;text-decoration:none;cursor:pointer}.account-popover a:hover,.account-popover button:hover{background:#f0f6f1}.account-popover button{color:var(--danger)}.account-identity{display:grid;gap:.2rem;border-bottom:1px solid var(--line);margin:0 0 .35rem;padding:.65rem .75rem .85rem}.account-identity span,.account-identity small,.account-version{color:var(--muted);font-size:.8rem}.account-version{padding:.45rem .75rem .3rem}@keyframes popover-in{0%{opacity:0;transform:translateY(-.35rem)}to{opacity:1;transform:translateY(0)}}.avatar{width:2.5rem;height:2.5rem;display:grid;place-items:center;border-radius:50%;color:var(--green-800)!important;background:var(--mint);font-weight:800}.page-content{width:min(100%,78rem);margin:0 auto;padding:clamp(2rem,5vw,4.5rem) clamp(1.2rem,5vw,4rem)}.page-heading{max-width:42rem}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.5rem}.metric-card,.profile-card,.coming-soon{border:1px solid var(--line);border-radius:1rem;background:#fff}.metric-card{min-height:9rem;display:flex;flex-direction:column;justify-content:space-between;padding:1.3rem}.metric-card strong{font-size:2rem}.coming-soon{display:flex;gap:1rem;align-items:flex-start;margin-top:1rem;padding:1.4rem;background:#eef7f0}.coming-soon>span{width:2.25rem;height:2.25rem;display:grid;flex:0 0 auto;place-items:center;border-radius:50%;color:var(--green-800);background:var(--mint)}.profile-card{max-width:52rem;display:grid;grid-template-columns:auto 1fr;gap:2rem;margin-top:2.5rem;padding:clamp(1.5rem,4vw,2.5rem)}.profile-avatar{width:5rem;height:5rem;display:grid;place-items:center;border-radius:1.3rem;color:var(--green-800);background:var(--mint);font-family:Inter,system-ui,sans-serif;font-size:2rem;font-weight:800}.profile-details{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.profile-details>div{display:grid;gap:.3rem}.route-loading{min-height:100vh;min-height:100dvh;display:grid;place-items:center;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.business-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem}.primary-link,.secondary-link{display:inline-flex;min-height:2.85rem;align-items:center;justify-content:center;border-radius:.7rem;padding:.65rem 1rem;font-weight:700;text-decoration:none}.primary-link{color:#fff;background:var(--green-650)}.secondary-link{border:1px solid var(--line);color:var(--green-800);background:#fff}.filter-bar{display:grid;grid-template-columns:repeat(3,minmax(12rem,1fr));gap:1rem;align-items:end;margin:2rem 0 1.25rem;border:1px solid var(--line);border-radius:1rem;padding:1rem;background:#fff}.filter-bar .form-field,.compact-field{margin:0}.compact-field{display:grid;gap:.45rem;color:#35453c;font-size:.9rem;font-weight:600}.state-panel{margin-top:1.25rem;border:1px solid var(--line);border-radius:1rem;padding:1.5rem;color:var(--muted);background:#fff}.loading-state{display:grid;gap:.7rem;overflow:hidden}.loading-label{margin-bottom:.15rem;color:var(--green-800);font-weight:700}.skeleton-line{width:72%;height:.75rem;overflow:hidden;border-radius:999px;background:linear-gradient(90deg,#e9efea 25%,#f7faf7,#e9efea 75%);background-size:200% 100%;animation:skeleton-pulse 1.4s ease-in-out infinite}.skeleton-line-wide{width:100%}.skeleton-line-short{width:45%}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.state-error{border-color:#efc8c4;color:#7f2c2c;background:#fff6f5}.empty-state{justify-items:center;display:grid;gap:.55rem;text-align:center}.empty-state-icon{width:2.6rem;height:2.6rem;display:grid;place-items:center;margin-bottom:.15rem;border-radius:.8rem;color:var(--green-800);background:var(--mint);font-size:1.2rem;font-weight:800}.empty-state strong{color:var(--green-950)}.empty-state .secondary-link{margin-top:.55rem}.table-card{overflow-x:auto;margin-top:1.25rem;border:1px solid var(--line);border-radius:1rem;background:#fff}table{width:100%;border-collapse:collapse}th,td{padding:1rem;text-align:left;vertical-align:middle}th{color:var(--muted);font-size:.76rem;letter-spacing:.06em;text-transform:uppercase}tbody tr{border-top:1px solid var(--line)}td strong,td small{display:block}td small{margin-top:.25rem;color:var(--muted)}.row-actions{display:flex;gap:.8rem;justify-content:flex-end;white-space:nowrap}.row-actions a,.row-actions button{border:0;padding:0;color:var(--green-650);background:transparent;font-weight:700;text-decoration:none;cursor:pointer}.row-actions button{color:var(--danger)}.status-badge{display:inline-flex;border-radius:999px;padding:.3rem .65rem;color:#425349;background:#edf1ee;font-size:.78rem;font-weight:700}.status-select{max-width:100%;min-height:2.35rem;border:1px solid transparent;border-radius:999px;padding:.35rem 2rem .35rem .7rem;color:#425349;background-color:#edf1ee;font-size:.82rem;font-weight:700;cursor:pointer}.status-select.status-active{color:#17603a;background-color:var(--mint)}.status-select.status-paused{color:#7a5a16;background-color:#fff2c8}.status-select.status-closed{color:#656d68;background-color:#ecefed}.state-success{border-color:#b9dec5;color:#17603a;background:#eef8f1}.status-active{color:#17603a;background:var(--mint)}.status-archived,.status-closed{color:#656d68;background:#ecefed}.status-paused{color:#7a5a16;background:#fff2c8}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:1rem;margin-top:1.25rem;color:var(--muted)}.pagination button{border:1px solid var(--line);border-radius:.6rem;padding:.55rem .8rem;color:var(--green-800);background:#fff;cursor:pointer}.pagination button:disabled{opacity:.45;cursor:default}.business-form{max-width:58rem;margin-top:2rem;border:1px solid var(--line);border-radius:1rem;padding:clamp(1.25rem,4vw,2rem);background:#fff}.form-grid-three{grid-template-columns:repeat(3,1fr)}.dynamic-fields{margin:0 0 1rem;border:1px solid var(--line);border-radius:.8rem;padding:1rem}.dynamic-fields legend{padding:0 .45rem;color:var(--green-800);font-weight:700}.form-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:1.5rem}.form-actions .primary-button{width:auto;min-width:10rem;padding:.7rem 1.2rem}.danger-button{min-height:2.85rem;margin-left:auto;border:1px solid #e5b8b3;border-radius:.7rem;padding:.65rem 1rem;color:var(--danger);background:snow;font-weight:700;cursor:pointer}.calculation-preview,.saved-calculation{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0;border-radius:.8rem;padding:1rem;background:#eef7f0}.calculation-preview>div,.saved-calculation>div{display:grid;gap:.25rem}.calculation-preview span,.saved-calculation span,.calculation-preview small{color:var(--muted);font-size:.8rem}.calculation-preview small{grid-column:1 / -1}.saved-calculation{max-width:58rem;margin-top:2rem;border:1px solid #c8e6d1}.month-picker{width:min(15rem,100%);display:grid;gap:.4rem;margin-top:1.5rem;color:var(--muted);font-size:.85rem;font-weight:700}.month-picker input{min-height:2.8rem;border:1px solid var(--line);border-radius:.7rem;padding:.6rem .8rem;background:#fff}.metrics-dashboard{grid-template-columns:repeat(4,1fr)}.dashboard-section{margin-top:2.5rem}.dashboard-insights{max-width:48rem}.bar-chart{display:grid;gap:1rem;margin-top:1rem;border:1px solid var(--line);border-radius:1rem;padding:1.25rem;background:#fff}.bar-chart-row{display:grid;gap:.45rem}.bar-chart-row>div:first-child{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem}.bar-chart-row span{color:var(--muted)}.bar-chart-track{height:.65rem;overflow:hidden;border-radius:999px;background:#e9efea}.bar-chart-track span{display:block;height:100%;border-radius:inherit;background:var(--green-650);transition:width .22s ease}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.section-heading h2{margin:0;color:var(--green-950)}.section-heading span{color:var(--muted)}.activity-list{display:grid;gap:.75rem;margin-top:1rem}.activity-list article{display:flex;justify-content:space-between;gap:1rem;border:1px solid var(--line);border-radius:.85rem;padding:1rem;background:#fff}.activity-list article>div{display:grid;gap:.25rem}.activity-list article>div:last-child{text-align:right}.activity-list span{color:var(--muted);font-size:.85rem}.topbar select{border:1px solid var(--line);border-radius:.5rem;padding:.35rem .55rem;color:var(--green-950);background:#fff;font-weight:700}.category-color{display:inline-block;width:.75rem;height:.75rem;border-radius:50%}.checkbox-field{display:flex;gap:.55rem;align-items:center;margin:.5rem 0 1rem;font-weight:700}.reject-row,.share-box{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.reject-row input,.share-box input{min-width:min(100%,24rem);flex:1;border:1px solid var(--line);border-radius:.6rem;padding:.7rem}.dashboard-groups{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.dashboard-groups>div,.public-report{border:1px solid var(--line);border-radius:1rem;padding:1.5rem;background:#fff}.public-report{width:min(100% - 2rem,60rem);margin:2rem auto}.mobile-menu-button,.mobile-navigation,.mobile-bottom-navigation{display:none}:where(button,a,input,select,textarea):focus-visible{outline:3px solid rgb(54 165 104 / 35%);outline-offset:3px}@media(max-width:900px){.auth-page{grid-template-columns:1fr}.auth-aside{display:none}.app-shell{display:block;padding-bottom:4.75rem}.sidebar{display:none}.topbar{grid-template-columns:auto minmax(0,1fr) auto;display:grid;gap:.75rem;padding:.75rem max(1rem,env(safe-area-inset-right)) .75rem max(1rem,env(safe-area-inset-left))}.mobile-menu-button{min-height:2.75rem;display:inline-flex;gap:.45rem;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:.7rem;padding:.55rem .7rem;color:var(--green-800);background:#fff;font-weight:700}.mobile-menu-button>span:first-child{font-size:1.2rem;line-height:1}.mobile-navigation{position:fixed;z-index:19;top:5.25rem;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:.55rem;overflow-y:auto;overscroll-behavior:contain;border-top:1px solid var(--line);padding:1rem max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:#f8faf7fa;box-shadow:0 18px 45px #10291c2e}.mobile-navigation a,.mobile-navigation button{min-height:3.25rem;display:flex;gap:.65rem;align-items:center;border:1px solid var(--line);border-radius:.8rem;padding:.8rem;color:var(--green-800);background:#fff;font-weight:700;text-decoration:none}.mobile-bottom-navigation{position:fixed;z-index:18;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);padding:.35rem max(.35rem,env(safe-area-inset-right)) max(.35rem,env(safe-area-inset-bottom)) max(.35rem,env(safe-area-inset-left));background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-bottom-navigation a,.mobile-bottom-navigation button{min-height:3.1rem;display:grid;place-items:center;gap:.1rem;border:0;border-radius:.65rem;color:var(--muted);background:transparent;font:inherit;font-size:.68rem;font-weight:700;text-decoration:none;cursor:pointer}.mobile-bottom-navigation a span,.mobile-bottom-navigation button span{font-size:1.1rem}.mobile-bottom-navigation a.active{color:var(--green-800);background:var(--mint)}.mobile-navigation a.active{border-color:#b9dec5;background:var(--mint)}.mobile-navigation button{grid-column:1 / -1;color:var(--danger);cursor:pointer}.metrics-dashboard{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.auth-panel{padding:2rem 1.25rem}.auth-heading{margin-top:3rem}.form-grid,.metrics,.profile-details,.form-grid-three,.filter-bar,.calculation-preview,.saved-calculation,.dashboard-groups{grid-template-columns:1fr}.business-header{align-items:flex-start;flex-direction:column}.primary-link{width:100%}.table-card{overflow:visible;border:0;background:transparent}table,thead,tbody,tr,th,td{display:block}thead{display:none}tbody{display:grid;gap:.75rem}tbody tr{border:1px solid var(--line);border-radius:.85rem;padding:.75rem;background:#fff}td{display:grid;grid-template-columns:minmax(6rem,.45fr) 1fr;gap:.75rem;padding:.45rem}td:before{content:attr(data-label);color:var(--muted);font-size:.75rem;font-weight:700;text-transform:uppercase}.row-actions{display:flex;justify-content:flex-start;padding-top:.8rem}.row-actions:before{content:none}.calculation-preview small{grid-column:auto}.form-actions>*,.form-actions .primary-button{width:100%}.danger-button{margin-left:0}.topbar{min-height:4.7rem}.mobile-navigation{top:4.7rem}.mobile-bottom-navigation{grid-template-columns:repeat(4,minmax(0,1fr))}.mobile-menu-button>span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.organization-switcher{min-width:0}.organization-switcher select{width:100%;max-width:13rem}.user-summary>div{display:none}.profile-card{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}.skeleton-line{animation:none}}
