:root{color-scheme:light;accent-color:#7ac70c;--ink:#1a1d17;--ink-soft:#7c8078;--ink-faint:rgba(26,29,23,0.45);--bg:#ffffff;--surface:#ffffff;--surface-muted:#f4f5f3;--surface-sunken:#eceeea;--line:rgba(26,29,23,0.07);--line-strong:rgba(26,29,23,0.14);--lime:#7ac70c;--lime-strong:#6bb00a;--lime-ink:#4f8408;--lime-wash:rgba(122,199,12,0.14);--danger:#d33a1a;--danger-wash:rgba(211,58,26,0.1);--warn-ink:#96700f;--warn-wash:rgba(226,173,20,0.16);--radius-block:24px;--radius-card:20px;--radius-field:16px;--radius-pill:1000px;--sans:"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;--mono:ui-monospace,"Cascadia Mono",Consolas,monospace}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.35;-webkit-font-smoothing:antialiased}a{color:var(--lime-ink);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.015em;text-wrap:balance}h1{font-size:1.75rem;line-height:1.15}h2{font-size:1.15rem}h3{font-size:.95rem}button,input,select,textarea{font:inherit;color:inherit}input,select,textarea{width:100%;padding:.75rem 1rem;color:var(--ink);background:var(--surface-muted);border:1px solid transparent;border-radius:var(--radius-field)}::placeholder{color:var(--ink-faint)}input:focus,select:focus,textarea:focus{background:var(--surface);border-color:var(--lime);outline:none}select{padding-right:2.5rem;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%237c8078' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5 6 6.5l5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:.75rem;cursor:pointer}input[type=checkbox],select{-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=checkbox]{display:inline-grid;place-content:center;flex:none;width:1.3rem;height:1.3rem;padding:0;border:1.5px solid var(--line-strong);border-radius:50%;background:var(--surface);cursor:pointer;transition:background .15s ease,border-color .15s ease}input[type=checkbox]:before{content:"";width:.5rem;height:.28rem;border-left:2px solid #ffffff;border-bottom:2px solid #ffffff;transform:translateY(-1px) rotate(-45deg) scale(.4);opacity:0;transition:transform .12s ease,opacity .12s ease}input[type=checkbox]:hover{border-color:var(--lime)}input[type=checkbox]:checked{background:var(--lime);border-color:var(--lime)}input[type=checkbox]:checked:before{transform:translateY(-1px) rotate(-45deg) scale(1);opacity:1}input[type=file]{padding:.45rem .5rem;cursor:pointer}input[type=file]::-webkit-file-upload-button{margin-right:.75rem;padding:.45rem 1rem;border:0;border-radius:var(--radius-pill);background:var(--lime-wash);color:var(--lime-ink);font:inherit;font-size:.9rem;cursor:pointer;-webkit-transition:background .15s ease;transition:background .15s ease}input[type=file]::file-selector-button{margin-right:.75rem;padding:.45rem 1rem;border:0;border-radius:var(--radius-pill);background:var(--lime-wash);color:var(--lime-ink);font:inherit;font-size:.9rem;cursor:pointer;transition:background .15s ease}input[type=file]::-webkit-file-upload-button:hover{background:rgba(122,199,12,.24)}input[type=file]::file-selector-button:hover{background:rgba(122,199,12,.24)}textarea{min-height:5.5rem;resize:vertical}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line-strong);border:3px solid transparent;border-radius:var(--radius-pill);background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--ink-faint);background-clip:content-box}:focus-visible{outline:2px solid var(--lime);outline-offset:2px}.shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:1.5rem;padding:1rem 1.75rem;background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap}.brand{font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:var(--lime-ink)}.nav{display:flex;gap:.4rem;align-items:center;flex:1 1;flex-wrap:wrap}.nav a{color:var(--ink-soft);padding:.5rem .95rem;border-radius:var(--radius-pill)}.nav a:hover{background:var(--surface-muted);text-decoration:none}.nav a[data-active=true]{background:var(--lime-wash);color:var(--lime-ink)}.nav a.btn{background:var(--lime);color:#ffffff;font-weight:500;padding:.6rem 1.2rem;border-radius:var(--radius-pill)}.nav a.btn:hover{background:var(--lime-strong)}.nav-toggle{display:none;align-items:center;gap:.35rem;padding:.55rem .8rem;background:var(--surface-muted);border-radius:var(--radius-field);font-size:1.05rem;line-height:1}.whoami{display:flex;align-items:center;gap:.9rem;font-size:.9rem;color:var(--ink-soft)}.whoami-name{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem 0;color:var(--ink);font-weight:500}.whoami-name:hover{color:var(--lime-ink);text-decoration:none}.whoami button{padding:.42rem .9rem;background:transparent;border:1px solid var(--line-strong);color:var(--ink-soft);font-size:.88rem}.whoami button:hover{border-color:var(--danger);color:var(--danger)}.content{flex:1 1;width:100%;max-width:1160px;margin:0 auto;padding:1.75rem;display:flex;flex-direction:column;gap:1.25rem}.card{background:var(--surface-muted);border-radius:var(--radius-block);padding:1.25rem 1.4rem}.stack{flex-direction:column;gap:.9rem}.row,.stack{display:flex}.row{gap:.75rem;align-items:center;flex-wrap:wrap}.grid{display:grid;grid-gap:.9rem;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.muted{color:var(--ink-soft);font-size:.92rem}.faint{color:var(--ink-faint);font-size:.85rem}.mono{font-family:var(--mono);font-size:.82rem}.image-field{display:flex;flex-direction:column;gap:.6rem}.image-previews{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));grid-gap:.6rem;gap:.6rem}.image-previews figure{position:relative;margin:0;border-radius:var(--radius-field);overflow:hidden;background:var(--surface-sunken)}.image-previews img{display:block;width:100%;height:90px;object-fit:cover}.image-previews figcaption{padding:.35rem .5rem;font-size:.72rem;color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-previews figure>button{position:absolute;top:.35rem;right:.35rem;width:1.6rem;height:1.6rem;padding:0;font-size:1rem;line-height:1;background:rgba(255,255,255,.9);color:var(--ink)}.image-previews figure>button:hover{background:var(--danger-wash);color:var(--danger)}.link-button{padding:.2rem .6rem;background:var(--lime-wash);color:var(--lime-ink);font-size:.82rem;border-radius:var(--radius-pill)}.link-button:hover{background:rgba(122,199,12,.24)}.modal{position:fixed;inset:0;z-index:50;display:grid;place-items:start center;overflow-y:auto;padding:3vh 1rem;background:rgba(26,29,23,.35)}.modal-card{width:100%;max-width:var(--modal-width,32rem);padding:1.4rem 1.5rem;background:var(--surface);border-radius:var(--radius-block)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.modal-close{width:2rem;height:2rem;padding:0;font-size:1.2rem;line-height:1;background:var(--surface-muted)}.badge.mono{font-family:var(--mono);font-size:.78rem}.picker{position:relative}.picker-field{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:.75rem 1rem;border-radius:var(--radius-field);background:var(--surface-muted);color:var(--ink-faint);font-size:.95rem;text-align:left}.card .picker-field{background:var(--surface)}.picker-field[data-filled=true]{color:var(--ink)}.picker-field:hover:not(:disabled){background:var(--surface-sunken)}.picker-field[aria-expanded=true]{box-shadow:inset 0 0 0 1px var(--lime)}.picker-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-caret{flex:none;color:var(--ink-soft);font-size:.7rem}.picker-list{overscroll-behavior:contain;position:absolute;z-index:30;top:calc(100% + .35rem);left:0;right:0;max-height:17rem;overflow-y:auto;margin:0;padding:.35rem;list-style:none;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-field)}.picker-list button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.55rem .8rem;border-radius:12px;background:transparent;color:var(--ink);font-size:.92rem;text-align:left;justify-content:flex-start}.picker-list button:hover{background:var(--surface-sunken)}.picker-list button[data-selected=true]{background:var(--lime-wash);color:var(--lime-ink)}.picker-empty{padding:.6rem .8rem;color:var(--ink-faint);font-size:.9rem}.picker-search{position:-webkit-sticky;position:sticky;top:-.35rem;z-index:1;margin:-.35rem -.35rem .35rem;padding:.35rem;background:var(--surface)}.picker-search input{padding:.5rem .8rem;font-size:.9rem}.picker-list button:disabled{opacity:.4;cursor:not-allowed}.picker-list button:disabled:hover{background:transparent}.picker-mark{flex:none;width:1.15rem;height:1.15rem;border:1.5px solid var(--line-strong);border-radius:50%;background:var(--surface)}.picker-mark[data-on=true]{border-color:var(--lime);background:var(--lime) url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M3 6.4 5.1 8.5 9 3.9'/%3E%3C/svg%3E") no-repeat center /.8rem}.datepicker{position:relative}.datepicker-field{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:.75rem 1rem;border-radius:var(--radius-field);background:var(--surface-muted);color:var(--ink-faint);font-size:.95rem;text-align:left}.card .datepicker-field{background:var(--surface)}.datepicker-field[data-filled=true]{color:var(--ink)}.datepicker-field:hover{background:var(--surface-sunken)}.datepicker-icon{flex:none;color:var(--ink-soft)}.datepicker-field:hover .datepicker-icon{color:var(--lime-ink)}.datepicker-guard{position:absolute;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none}.datepicker-panel{position:absolute;z-index:30;top:calc(100% + .4rem);left:0;width:min(18rem,calc(100vw - 4rem));padding:.85rem;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-card);display:flex;flex-direction:column;gap:.6rem}.datepicker-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-weight:600}.datepicker-head button{width:2rem;height:2rem;padding:0;background:var(--surface-muted);font-size:1.1rem;line-height:1}.datepicker-head button:hover{background:var(--lime-wash);color:var(--lime-ink)}.datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:.15rem;gap:.15rem;text-align:center}.datepicker-weekday{padding:.35rem 0;color:var(--ink-faint);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.datepicker-grid button{padding:0;width:100%;aspect-ratio:1;border-radius:50%;background:transparent;color:var(--ink);font-size:.9rem}.datepicker-grid button:hover{background:var(--surface-sunken)}.datepicker-grid button[data-outside=true]{color:var(--ink-faint)}.datepicker-grid button[data-today=true]{box-shadow:inset 0 0 0 1.5px var(--lime);color:var(--lime-ink)}.datepicker-grid button[data-selected=true]{background:var(--lime);color:#ffffff;box-shadow:none}.datepicker-time{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.datepicker-time-fields{display:flex;align-items:center;gap:.4rem}.datepicker-time-fields .picker{width:5.2rem}.datepicker-time-fields .picker-field{padding:.45rem .7rem}.datepicker-foot{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding-top:.15rem;border-top:1px solid var(--line)}.datepicker-foot button{padding:.45rem .9rem;font-size:.85rem;background:transparent;color:var(--ink-soft)}.datepicker-foot button:hover{background:var(--surface-sunken)}.datepicker-foot button.secondary{background:var(--lime-wash);color:var(--lime-ink)}.combobox{position:relative}.combobox>input{padding-right:2.75rem}.combobox-toggle{position:absolute;top:50%;right:.35rem;transform:translateY(-50%);width:2rem;height:2rem;padding:0;background:transparent;color:var(--ink-soft);font-size:.8rem;line-height:1}.combobox-toggle:hover{background:var(--surface-sunken)}.combobox-list{overscroll-behavior:contain;position:absolute;z-index:20;top:calc(100% + .35rem);left:0;right:0;max-height:15rem;overflow-y:auto;margin:0;padding:.35rem;list-style:none;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-field)}.combobox-list button{display:flex;align-items:center;width:100%;justify-content:flex-start;padding:.55rem .8rem;border-radius:12px;background:transparent;color:var(--ink);font-size:.95rem;text-align:left}.combobox-list button:hover,.combobox-list button[data-active=true]{background:var(--lime-wash);color:var(--lime-ink)}.combobox-list button[aria-selected=true]{font-weight:500}.facts{margin:0;display:flex;flex-direction:column}.fact{display:grid;grid-template-columns:minmax(150px,220px) 1fr;grid-gap:.75rem 1.25rem;gap:.75rem 1.25rem;padding:.6rem 0;border-bottom:1px solid var(--line)}.fact:last-child{border-bottom:0;padding-bottom:0}.fact:first-child{padding-top:0}.fact dt{color:var(--ink-soft);font-size:.9rem}.fact dd{margin:0}@media (max-width:560px){.fact{grid-template-columns:1fr;gap:.15rem}}.metric{font-size:1.5rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.15}label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--ink-soft)}label.inline{flex-direction:row;align-items:center;gap:.5rem;color:var(--ink)}.card input,.card select,.card textarea{background-color:var(--surface)}.btn,button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.8rem 1.4rem;background:var(--surface-sunken);color:var(--ink);border:0;border-radius:var(--radius-pill);cursor:pointer;width:auto;transition:background .15s ease}.btn:hover,button:hover{background:var(--line-strong);text-decoration:none}button:disabled{opacity:.45;cursor:progress}button.primary{background:var(--lime);color:#ffffff;font-weight:500}button.primary:hover{background:var(--lime-strong)}button.secondary{background:var(--lime-wash);color:var(--lime-ink)}button.danger{background:var(--danger-wash);color:var(--danger)}button.danger:hover{background:rgba(211,58,26,.18)}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .7rem;border-radius:var(--radius-pill);font-size:.78rem;background:var(--surface-sunken);color:var(--ink-soft);white-space:nowrap}.badge.overdue,.badge.urgent{background:var(--danger-wash);color:var(--danger)}.badge.overdue{font-weight:500}.badge.ok{background:var(--lime);color:#ffffff}.badge.warn{background:var(--warn-wash);color:var(--warn-ink)}.badge.accent{background:var(--lime-wash);color:var(--lime-ink)}.notice{padding:.85rem 1.1rem;border-radius:var(--radius-card);background:var(--surface-muted);font-size:.92rem}.notice.error{background:var(--danger-wash);color:var(--danger)}.notice.success{background:var(--lime-wash);color:var(--lime-ink)}.tabs{display:flex;gap:.45rem;flex-wrap:wrap}.tabs a,.tabs button{padding:.55rem 1.1rem;border-radius:var(--radius-pill);background:var(--surface-muted);color:var(--ink-soft);font-size:.9rem}.tabs a:hover,.tabs button:hover{background:var(--surface-sunken);text-decoration:none}.tabs a[data-active=true],.tabs button.primary{background:var(--lime);color:#ffffff}.task-list{display:flex;flex-direction:column;gap:.75rem}.task-card{display:block;background:var(--surface-muted);border:1px solid transparent;border-radius:var(--radius-block);padding:1.1rem 1.3rem;color:inherit}.task-card:hover{border-color:var(--lime);text-decoration:none}.task-card[data-urgent=true]{border-color:rgba(211,58,26,.25)}.task-card[data-overdue=true]{background:var(--danger-wash)}.task-meta{margin-top:.45rem;gap:.9rem}.task-title{font-weight:600;font-size:1.02rem;margin-bottom:.15rem}.tiles{gap:.6rem 1.25rem;align-items:stretch}.tile-group,.tiles{display:flex;flex-wrap:wrap}.tile-group{gap:.6rem;padding-right:1.25rem;border-right:1px solid var(--line)}.tile-group:last-child{padding-right:0;border-right:0}.counter{display:block;min-width:130px;background:var(--surface-muted);border:1px solid transparent;border-radius:var(--radius-card);padding:.85rem 1rem;color:inherit}.counter[data-empty]{opacity:.45;cursor:not-allowed}a.counter:hover{background:var(--surface-sunken);text-decoration:none}a.counter[data-active=true]{background:var(--lime-wash);border-color:var(--lime);color:var(--lime-ink)}a.counter[data-active=true]:hover{background:rgba(122,199,12,.22)}a.counter[data-active=true] .faint{color:var(--lime-ink)}.chips{gap:.45rem}.chip{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .8rem;border-radius:var(--radius-pill);background:var(--lime-wash);color:var(--lime-ink);font-size:.85rem}.chip:hover{background:rgba(122,199,12,.24);text-decoration:none}.filter-flags{flex-wrap:wrap;gap:.45rem;align-items:center}.chip[data-on=false]{background:var(--surface-muted);color:var(--ink-soft)}.chip.reset,.chip[data-on=false]:hover{background:var(--surface-sunken)}.chip.reset{color:var(--ink-soft)}.chip.reset:hover{background:var(--line-strong)}.counter b{display:block;font-size:1.5rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1}.timeline{display:flex;flex-direction:column;gap:.9rem;border-left:2px solid var(--line-strong);padding-left:1.1rem}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:.7rem;gap:.7rem}.gallery figure{margin:0;border-radius:var(--radius-card);overflow:hidden;background:var(--surface-sunken)}.gallery img{display:block;width:100%;height:120px;object-fit:cover}.gallery figcaption{padding:.45rem .65rem;font-size:.78rem;color:var(--ink-soft)}.auth-page{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:1.5rem;background:var(--surface-muted)}.auth-card{width:100%;max-width:440px;background:var(--surface);border-radius:var(--radius-block);padding:2rem;display:flex;flex-direction:column;gap:1.1rem}.divider{height:1px;background:var(--line);border:0;margin:.25rem 0}table{width:100%;border-collapse:collapse;font-size:.9rem;background:var(--surface)}td,th{text-align:left;padding:.6rem .75rem;border-bottom:1px solid var(--line)}th{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-weight:600}.table-wrap{overflow-x:auto;border-radius:var(--radius-card);background-image:linear-gradient(to right,var(--surface),rgba(255,255,255,0)),linear-gradient(to left,var(--surface),rgba(255,255,255,0)),linear-gradient(to right,rgba(26,29,23,.13),rgba(26,29,23,0)),linear-gradient(to left,rgba(26,29,23,.13),rgba(26,29,23,0));background-position:0,100%,0,100%;background-repeat:no-repeat;background-size:2.5rem 100%,2.5rem 100%,1.1rem 100%,1.1rem 100%;background-attachment:local,local,scroll,scroll}.metric-tiles{display:grid;grid-gap:.6rem;gap:.6rem;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr))}.metric-tile{position:relative;display:flex;flex-direction:column;gap:.5rem;min-height:7.5rem;padding:.85rem .95rem 1.6rem;border-radius:var(--radius-card);background:var(--surface-muted)}.metric-tile[data-tone=up]{background:var(--lime-wash)}.metric-tile[data-tone=down]{background:var(--danger-wash)}.metric-tile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.metric-tile-name{font-size:.74rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft)}.metric-tile[data-tone=up] .metric-tile-name{color:var(--lime-ink)}.metric-tile[data-tone=down] .metric-tile-name{color:var(--danger)}.metric-tile-delta{flex:none;font-size:.8rem;color:var(--ink-faint)}.metric-tile[data-tone=up] .metric-tile-delta{color:var(--lime-ink)}.metric-tile[data-tone=down] .metric-tile-delta{color:var(--danger)}.metric-tile-value{font-size:1.4rem;font-weight:600;letter-spacing:-.02em;overflow-wrap:anywhere}.metric-tile-arrow{position:absolute;right:.85rem;bottom:.7rem;font-size:1.1rem;color:var(--ink-faint)}.metric-tile[data-tone=up] .metric-tile-arrow{color:var(--lime-ink)}.metric-tile[data-tone=down] .metric-tile-arrow{color:var(--danger)}.toast{position:fixed;left:50%;bottom:1.5rem;z-index:60;display:flex;align-items:center;gap:.75rem;max-width:min(34rem,calc(100vw - 2rem));padding:.75rem .9rem .75rem 1.1rem;border-radius:var(--radius-field);background:var(--lime-wash);color:var(--lime-ink);box-shadow:0 8px 28px rgba(26,29,23,.16);transform:translate(-50%);animation:toast-in .18s ease-out}.toast[data-tone=error]{background:var(--danger-wash);color:var(--danger)}.toast[data-leaving=true]{opacity:0;transform:translate(-50%,.5rem);transition:opacity .2s ease,transform .2s ease}.toast button{padding:.2rem .5rem;background:transparent;color:inherit;font-size:1.1rem;line-height:1}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,.75rem)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.qr-frame{position:relative;width:100%;max-width:17rem;aspect-ratio:1;margin:0 auto;border-radius:var(--radius-card);background:var(--surface);overflow:hidden}.qr-frame img{display:block;width:100%;height:100%;image-rendering:pixelated}.qr-loading{position:absolute;inset:0;display:grid;place-items:center;grid-gap:.6rem;gap:.6rem;background:var(--surface-muted)}.qr-spinner{width:2.2rem;height:2.2rem;border:3px solid var(--line-strong);border-top-color:var(--lime);border-radius:50%;animation:qr-spin .8s linear infinite}@keyframes qr-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.qr-spinner{animation-duration:2.4s}}.empty{display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:2.25rem 1rem;text-align:center}.empty strong{font-weight:600}.empty .faint{max-width:34rem}.scroll-fade{background-image:linear-gradient(to right,var(--bg),rgba(255,255,255,0)),linear-gradient(to left,var(--bg),rgba(255,255,255,0)),linear-gradient(to right,rgba(26,29,23,.13),rgba(26,29,23,0)),linear-gradient(to left,rgba(26,29,23,.13),rgba(26,29,23,0));background-position:0,100%,0,100%;background-repeat:no-repeat;background-size:2.5rem 100%,2.5rem 100%,1.1rem 100%,1.1rem 100%;background-attachment:local,local,scroll,scroll}.subtabs{display:flex;gap:.25rem;border-bottom:2px solid var(--line-strong);overflow-x:auto;scrollbar-width:none}.subtabs::-webkit-scrollbar{display:none}.subtabs a{padding:.55rem .9rem;margin-bottom:-2px;border-bottom:2px solid transparent;color:var(--ink);white-space:nowrap}.subtabs a:hover{color:var(--lime-ink);text-decoration:none}.subtabs a[data-active=true]{border-bottom-color:var(--lime);color:var(--lime-ink);font-weight:600}.switch{display:inline-flex;background:var(--surface-muted);padding:.2rem;gap:.15rem}.switch,.switch button{border-radius:var(--radius-pill)}.switch button{padding:.4rem .9rem;font-size:.85rem;background:transparent;color:var(--ink-soft)}.switch button[data-active=true]{background:var(--surface);color:var(--lime-ink);font-weight:600}.graph-wrap{overflow-x:auto;padding-bottom:.5rem}.graph-canvas{position:relative;margin:0 auto}.graph-canvas>svg{position:absolute;inset:0}.graph-node{position:absolute;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.1rem;padding:.5rem 2.2rem .5rem .7rem;text-align:left;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-field);overflow:hidden}.graph-node:hover,.graph-node[data-active=true]{border-color:var(--lime);background:var(--lime-wash)}.graph-node[data-active=true]{color:var(--lime-ink)}.graph-node[data-active=true] .faint{color:var(--lime-ink);opacity:.75}.graph-node[data-muted=true]{opacity:.6}.graph-node strong{font-size:.92rem;line-height:1.1;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.graph-node span{max-width:100%;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:.78rem;line-height:1.2}.graph-node-open{position:absolute;top:.3rem;right:.3rem;width:1.9rem;height:1.9rem;padding:0;display:grid;place-items:center;border-radius:50%;background:transparent;color:var(--ink-faint);font-size:.95rem;line-height:1}.graph-node-open:hover{background:var(--lime-wash);color:var(--lime-ink)}.graph-node-foot{color:var(--ink-faint);font-size:.72rem}.filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.6rem}.filters>input,.filters>label{flex:1 1 12rem;min-width:11rem;max-width:20rem;margin:0}.filters>.faint{margin-left:auto;padding-bottom:.55rem;white-space:nowrap}.pager{justify-content:space-between;gap:.5rem}.pager,.pager-pages{display:flex;align-items:center;flex-wrap:wrap}.pager-pages{gap:.25rem}.pager-pages button{min-width:2.3rem;padding:.4rem .6rem;font-size:.85rem}.pager-pages button[data-active=true]{background:var(--lime);color:#ffffff}.pager-gap{padding:0 .15rem;color:var(--ink-faint)}.pager-size{display:flex;align-items:center;gap:.25rem;margin-right:auto;margin-left:.75rem}.pager-size button{padding:.3rem .55rem;font-size:.82rem;background:transparent;color:var(--ink-soft)}.pager-size button[data-active=true]{background:var(--surface-muted);color:var(--ink);font-weight:600}@media (max-width:640px){.content{padding:1.1rem}.topbar{padding:.8rem 1.1rem;gap:.9rem}h1{font-size:1.4rem}.auth-page,.card{padding:1rem}.auth-card{padding:1.35rem}.picker-search input,input,select,textarea{font-size:16px}.nav-toggle{display:inline-flex;margin-left:auto}.subtabs{margin:0 -1.1rem;padding:0 1.1rem;scroll-snap-type:x proximity}.subtabs a{padding:.65rem .8rem;scroll-snap-align:center}.nav{flex-basis:100%;flex-direction:column;align-items:stretch;gap:.15rem;padding-top:.35rem;border-top:1px solid var(--line)}.nav[data-open=false]{display:none}.nav a{padding:.7rem .9rem;border-radius:var(--radius-field)}.nav a.btn{margin-top:.25rem;text-align:center}.nav a{padding:.62rem .95rem}.whoami{flex-wrap:wrap;width:100%;justify-content:space-between;gap:.6rem}.whoami-name{flex-wrap:wrap;max-width:100%}.whoami-name .badge{white-space:normal}.table-wrap table{width:max-content;min-width:100%}.table-wrap td,.table-wrap th{padding:.5rem .55rem}.table-wrap th{text-transform:none;letter-spacing:.01em;font-size:.8rem;white-space:nowrap}.table-wrap td{max-width:16rem;overflow-wrap:anywhere}.table-wrap td button{padding:.6rem .8rem;font-size:.85rem}.filters>label{flex:1 1 8.5rem;min-width:0;max-width:none}.filters>input{flex:1 1 100%;min-width:0;max-width:none}.tile-group{width:100%;padding-right:0;padding-bottom:.6rem;border-right:0;border-bottom:1px solid var(--line)}.tile-group:last-child{padding-bottom:0;border-bottom:0}.counter{min-width:0;flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 0.3rem);padding:.55rem .7rem}.grid:has(>div>.metric){grid-template-columns:1fr 1fr}.metric{font-size:1.3rem}.task-meta{gap:.1rem .55rem;font-size:.8rem}.switch{display:flex;flex-direction:column;align-items:stretch;width:100%}.switch button{width:100%;padding:.6rem .9rem}.tabs a,.tabs button{padding:.65rem 1.1rem}.chip{padding:.55rem .9rem}.pager-pages{gap:.35rem}.pager-pages button{min-width:2.6rem;padding:.6rem .5rem}.modal{padding:.75rem}.modal-card{padding:1.1rem 1.15rem}.modal-close{width:2.5rem;height:2.5rem}.image-previews figure>button{width:2.25rem;height:2.25rem;font-size:1.15rem}.combobox-toggle{width:2.5rem;height:2.5rem;right:.25rem}.combobox>input{padding-right:3rem}.datepicker-head button{width:2.5rem;height:2.5rem}.datepicker-foot button{padding:.65rem .9rem}.datepicker-grid{gap:.1rem}.datepicker-grid button{aspect-ratio:auto;min-height:2.6rem;border-radius:var(--radius-pill)}.combobox-list,.picker-list{max-height:min(17rem,45vh)}.combobox-list button,.picker-list button{padding:.7rem .8rem}.picker-list button{flex-wrap:wrap}.picker-list button>span{min-width:0;overflow-wrap:anywhere}.picker-list button>.faint{flex:1 0 100%}.picker-field{align-items:flex-start}.picker-value{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.picker-caret{margin-top:.2rem}.graph-wrap{max-height:70vh;overflow:auto;overscroll-behavior:contain}}