@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap";:root{--font-sans:"DM Sans", system-ui, sans-serif;--color-bg:#f4f5f7;--color-surface:#fff;--color-surface-muted:#f8f9fb;--color-border:#e2e5eb;--color-border-subtle:#eef0f4;--color-text:#3d4451;--color-text-muted:#6b7280;--color-text-heading:#111827;--color-accent:#1e40af;--color-accent-hover:#1d4ed8;--color-accent-soft:#eff6ff;--color-accent-border:#bfdbfe;--color-sidebar-bg:#fff;--color-sidebar-active:#eff6ff;--color-sidebar-hover:#f3f4f6;--color-success:#3b6d11;--color-success-bg:#eaf3de;--color-warning:#854f0b;--color-warning-bg:#faeeda;--color-danger:#a32d2d;--color-danger-bg:#fcebeb;--shadow-sm:0 1px 2px #0f172a0a;--shadow-md:0 4px 16px #0f172a0f;--shadow-lg:0 12px 40px #0f172a14;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--sidebar-width:240px;--header-height:72px;font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;line-height:1.5}*,:before,:after{box-sizing:border-box}body{min-height:100vh;margin:0}#root{min-height:100vh}h1,h2,h3,h4{color:var(--color-text-heading);letter-spacing:-.02em;margin:0;font-weight:600}p{margin:0}button{font-family:inherit}a{color:inherit;text-decoration:none}.sui-filters{flex-wrap:wrap;gap:.375rem;display:flex}.sui-filter{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:default;padding:.3125rem .625rem;font-family:inherit;font-size:.75rem;font-weight:500}.sui-filter--active{border-color:var(--color-accent);color:var(--color-accent);font-weight:600}.sui-kpi-grid{gap:1rem;margin-bottom:1.25rem;display:grid}.sui-kpi-grid--6{grid-template-columns:repeat(6,1fr)}.sui-kpi-grid--5{grid-template-columns:repeat(5,1fr)}.sui-kpi-grid--4{grid-template-columns:repeat(4,1fr)}.sui-kpi{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-direction:column;gap:.25rem;padding:1rem 1.125rem;display:flex}.sui-kpi__label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:.75rem;font-weight:500}.sui-kpi__value{color:var(--color-text-heading);letter-spacing:-.02em;font-size:1.125rem;font-weight:600}.sui-kpi__value--lg{font-size:1.625rem}.sui-kpi__sub{font-size:.75rem;font-weight:600}.sui-grid{gap:1rem;margin-bottom:1.25rem;display:grid}.sui-grid--2{grid-template-columns:1fr 1fr}.sui-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:1.25rem;padding:1rem 1.125rem}.sui-card--flush{margin-bottom:0}.sui-card__head{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.75rem;font-weight:600;display:flex}.sui-card__head-note{text-transform:none;letter-spacing:0;font-size:.8125rem;font-weight:400}.sui-company-strip{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;font-size:.8125rem;display:flex}.sui-company-strip__label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:.6875rem;font-weight:600}.sui-company-strip__item{align-items:center;gap:.375rem;display:inline-flex}.sui-list__row{border-top:1px solid var(--color-border-subtle);align-items:center;gap:.625rem;padding:.5625rem .25rem;font-size:.8125rem;display:flex}.sui-list__row:first-child{border-top:none}.sui-list__row-main{flex:1;min-width:0}.sui-list__row-title{font-weight:600}.sui-list__row-meta{color:var(--color-text-muted);font-size:.75rem}.sui-list__row-fixed{flex-shrink:0;width:4.875rem}.sui-chip{white-space:nowrap;border-radius:6px;align-items:center;padding:.125rem .5rem;font-size:.6875rem;font-weight:600;display:inline-flex}.sui-chip--danger{background:var(--color-danger-bg);color:var(--color-danger)}.sui-chip--warning{background:var(--color-warning-bg);color:var(--color-warning)}.sui-chip--success{background:var(--color-success-bg);color:var(--color-success)}.sui-chip--accent{background:var(--color-accent-soft);color:var(--color-accent)}.sui-chip--muted{background:var(--color-surface-muted);color:var(--color-text-muted)}.sui-text--danger{color:var(--color-danger)}.sui-text--warning{color:var(--color-warning)}.sui-text--success{color:var(--color-success)}.sui-bars{align-items:flex-end;gap:.375rem;height:4.75rem;padding-top:.25rem;display:flex;position:relative}.sui-bars__target{border-top:1.5px dashed var(--color-text-muted);pointer-events:none;position:absolute;bottom:84%;left:0;right:0}.sui-bars__col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:.125rem;display:flex}.sui-bars__value{color:var(--color-text-muted);font-size:.6875rem}.sui-bars__bar{background:#b9b7af;border-radius:3px 3px 0 0;width:62%;min-height:.5rem}.sui-bars__bar--danger{background:var(--color-danger)}.sui-bars__bar--accent{background:var(--color-accent)}.sui-bars__label{color:var(--color-text-muted);font-size:.6875rem}.sui-kanban{grid-template-columns:repeat(4,1fr);gap:.625rem;display:grid}.sui-kanban--3{grid-template-columns:repeat(3,1fr)}.sui-kanban__col{background:var(--color-surface-muted);border-radius:var(--radius-sm);padding:.5rem}.sui-kanban__head{color:var(--color-text-muted);justify-content:space-between;margin-bottom:.5rem;font-size:.75rem;font-weight:600;display:flex}.sui-kanban__card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-bottom:.375rem;padding:.5rem .625rem;font-size:.75rem}.sui-kanban__card:last-child{margin-bottom:0}.sui-kanban__card--overdue{border-color:var(--color-danger)}.sui-kanban__card--warn{border-color:#e0a33c}.sui-kanban__title{font-weight:600;line-height:1.35}.sui-kanban__meta{color:var(--color-text-muted);margin-top:.125rem;font-size:.6875rem}.sui-table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.sui-table{border-collapse:collapse;width:100%;font-size:.8125rem}.sui-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border);text-align:right;padding:.5rem .75rem;font-size:.6875rem;font-weight:600}.sui-table th:first-child{text-align:left}.sui-table td{border-top:1px solid var(--color-border-subtle);text-align:right;color:var(--color-text);padding:.5625rem .75rem}.sui-table td:first-child{text-align:left}.sui-table tr:first-child td{border-top:none}.sui-track{background:var(--color-border);border-radius:6px;flex:1;height:6px;overflow:hidden}.sui-track__fill{height:100%;display:block}.sui-track__fill--danger{background:var(--color-danger)}.sui-track__fill--warning{background:#e0a33c}.sui-track__fill--success{background:var(--color-success)}.sui-note{border-top:1px solid var(--color-border-subtle);color:var(--color-text-muted);margin-top:.75rem;padding-top:.75rem;font-size:.75rem}.sui-highlight{background:var(--color-surface-muted);border-radius:var(--radius-sm);margin-bottom:.75rem;padding:.625rem .875rem;font-size:.8125rem}.sui-section-title{margin-bottom:.75rem;font-size:.9375rem;font-weight:600}.sui-sample-tag{color:var(--color-text-muted);font-style:italic}@media (width<=1100px){.sui-kpi-grid--6,.sui-kpi-grid--5{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.sui-kpi-grid--6,.sui-kpi-grid--5,.sui-kpi-grid--4{grid-template-columns:repeat(2,1fr)}.sui-grid--2{grid-template-columns:1fr}.sui-kanban,.sui-kanban--3{grid-template-columns:1fr 1fr}}@media (width<=480px){.sui-kanban,.sui-kanban--3{grid-template-columns:1fr}}.accounts-page__header{margin-bottom:1.75rem}.accounts-page__header h1{margin-bottom:.375rem;font-size:1.5rem}.accounts-page__header p{color:var(--color-text-muted);font-size:.875rem}.accounts-page__status{color:var(--color-text-muted);margin-top:.625rem;font-size:.8125rem;display:inline-flex}.accounts-page__status--error{color:var(--color-danger)}.accounts-page .sui-card__head{align-items:flex-start}.accounts-page .sui-card__head>span:first-child{min-width:0}.accounts-page .sui-card__head-note{flex-shrink:0}.accounts-page .sui-bars{height:auto;min-height:6.75rem;padding-top:.375rem;overflow:hidden}.accounts-page .sui-bars__col{min-height:6rem}.accounts-page .sui-bars__value,.accounts-page .sui-bars__label{line-height:1.2}.accounts-page__pending-card{min-width:0;margin-bottom:0;padding:1rem 1.125rem}.accounts-page__pending-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;margin-bottom:1.25rem;display:grid}.accounts-page__pending-table>thead th:nth-child(2),.accounts-page__pending-table>tbody>tr:not(.accounts-page__detail-row)>td:nth-child(2){width:7rem}.accounts-page__pending-table>thead th:last-child,.accounts-page__pending-table>tbody>tr:not(.accounts-page__detail-row)>td:last-child{width:10rem}.accounts-page__company-button{max-width:100%;color:var(--color-accent);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.375rem;padding:0;font-weight:600;display:inline-flex}.accounts-page__company-button span{text-overflow:ellipsis;overflow:hidden}.accounts-page__company-button svg{flex-shrink:0}.accounts-page__company-button:hover{color:var(--color-accent-hover);text-decoration:underline}.accounts-page__company-button:focus-visible{box-shadow:0 0 0 3px var(--color-accent-soft);border-radius:4px;outline:0}.accounts-page__amount{color:var(--color-text-heading);font-weight:600}.accounts-page__detail-row>td{background:var(--color-surface-muted);padding:0}.accounts-page__documents{padding:.875rem 1rem 1rem}.accounts-page__documents-title{color:var(--color-text-heading);text-align:left;margin-bottom:.625rem;font-size:.75rem;font-weight:600}.accounts-page__documents-scroll{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);max-height:20rem;overflow:auto}.accounts-page__documents-table{border-collapse:collapse;width:100%;min-width:38rem;font-size:.75rem}.accounts-page__documents-table th,.accounts-page__documents-table td{border-top:1px solid var(--color-border-subtle);text-align:right;padding:.5rem .625rem}.accounts-page__documents-table th{z-index:1;border-top:0;border-bottom:1px solid var(--color-border);color:var(--color-text-muted);background:var(--color-surface-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.6875rem;font-weight:600;position:sticky;top:0}.accounts-page__documents-table th:first-child,.accounts-page__documents-table td:first-child{text-align:left}.accounts-page__documents-table tbody tr:first-child td{border-top:0}.accounts-page__documents-table td:last-child{color:var(--color-text-heading);font-weight:600}.accounts-page__status-label{text-transform:capitalize}.accounts-page__empty-cell{color:var(--color-text-muted)!important;text-align:center!important;padding-block:2rem!important}.accounts-page__skeleton{background:linear-gradient(90deg, var(--color-border), var(--color-surface-muted), var(--color-border));background-size:200% 100%;border-radius:999px;max-width:100%;height:.875rem;animation:1.1s ease-in-out infinite accounts-page-skeleton;display:inline-block}.accounts-page__skeleton--bar{border-radius:.375rem .375rem 0 0;width:1.75rem}.accounts-page__skeleton--bar-value{width:2.5rem}.accounts-page__skeleton--bar-label{width:3.25rem}@keyframes accounts-page-skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}@media (width<=900px){.accounts-page__pending-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.accounts-page__pending-card{padding-inline:.75rem}.accounts-page__pending-table>thead th:nth-child(2),.accounts-page__pending-table>tbody>tr:not(.accounts-page__detail-row)>td:nth-child(2),.accounts-page__pending-table>thead th:last-child,.accounts-page__pending-table>tbody>tr:not(.accounts-page__detail-row)>td:last-child{width:auto}.accounts-page__documents{padding-inline:.625rem}}.marketing-page__header{margin-bottom:1.75rem}.marketing-page__header h1{margin-bottom:.375rem;font-size:1.5rem}.marketing-page__header p{color:var(--color-text-muted);font-size:.875rem}.overview-page__header{margin-bottom:1.75rem}.overview-page__header h1{margin-bottom:.375rem;font-size:1.5rem}.overview-page__header p{color:var(--color-text-muted);font-size:.875rem}.overview-page__status{color:#b45309;margin-top:.5rem;font-size:.8125rem;display:inline-block}.people-page__header{margin-bottom:1.75rem}.people-page__header h1{margin-bottom:.375rem;font-size:1.5rem}.people-page__header p{color:var(--color-text-muted);font-size:.875rem}.people-page__dept-table .people-page__output-col{text-align:left;color:var(--color-text-muted)}.people-page__dept-table th.people-page__output-col{text-align:left}.records-page__header{margin-bottom:1.75rem}.records-page__header h1{margin-bottom:.375rem;font-size:1.5rem}.records-page__header p{color:var(--color-text-muted);font-size:.875rem}.sales-page__header{margin-bottom:1.75rem}.sales-page__header h1{margin-bottom:.375rem;font-size:1.5rem}.sales-page__header p{color:var(--color-text-muted);font-size:.875rem}.sales-page__status{color:var(--color-text-muted);margin-top:.625rem;font-size:.8125rem;display:inline-block}.sales-page__status--error{color:var(--color-danger)}.sales-page__skeleton{background:linear-gradient(90deg, var(--color-surface-muted) 0%, var(--color-border-subtle) 42%, var(--color-surface-muted) 82%);vertical-align:middle;background-size:220% 100%;border-radius:4px;width:100%;max-width:100%;height:.875rem;animation:1.1s ease-in-out infinite sales-page-skeleton;display:inline-block}.sui-kpi__value .sales-page__skeleton{height:1.5rem}.sui-kpi__sub .sales-page__skeleton{height:.8125rem}.sales-page__skeleton--bar-value{width:2.5rem;height:.75rem}.sales-page__skeleton--bar{width:1.5rem;min-height:12px}.sales-page__skeleton--bar-label{width:2rem;height:.75rem}.sales-page .sui-bars{height:auto;min-height:6.75rem;padding-top:.375rem}.sales-page .sui-bars__col{min-height:6rem}.sales-page .sui-bars__value,.sales-page .sui-bars__label{line-height:1.2}.sales-page__group-filters{margin-bottom:.75rem}@keyframes sales-page-skeleton{0%{background-position:120% 0}to{background-position:-120% 0}}.service-page__header{margin-bottom:1.75rem}.service-page__header h1{margin-bottom:.375rem;font-size:1.5rem}.service-page__header p{color:var(--color-text-muted);font-size:.875rem}.service-page__status{color:var(--color-text-muted);margin-top:.625rem;font-size:.8125rem;display:inline-block}.service-page__status--error{color:var(--color-danger)}.service-page__skeleton{background:linear-gradient(90deg, var(--color-surface-muted) 0%, var(--color-border-subtle) 42%, var(--color-surface-muted) 82%);vertical-align:middle;background-size:220% 100%;border-radius:4px;width:100%;max-width:100%;height:.875rem;animation:1.1s ease-in-out infinite service-page-skeleton;display:inline-block}.sui-kpi__value .service-page__skeleton{height:1.5rem}.service-page__kanban-scroll{max-width:100%;padding-bottom:.25rem;overflow:auto hidden}.service-page__kanban{align-items:start;min-width:52rem}.service-page .sui-list__row-fixed{text-overflow:ellipsis;white-space:nowrap;width:min(9rem,38%);overflow:hidden}@keyframes service-page-skeleton{0%{background-position:120% 0}to{background-position:-120% 0}}.service-page__department-list{scrollbar-gutter:stable;flex-direction:column;gap:.625rem;max-height:min(58vh,38rem);padding-right:.25rem;display:flex;overflow-y:auto}.service-page__department-list::-webkit-scrollbar{width:.5rem}.service-page__department-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}.service-page__project-card{border:1px solid var(--color-border-subtle)}.service-page__project-card--stuck{border:2px solid var(--color-danger);box-shadow:0 0 0 2px #dc262614}.service-page .sui-kanban__title,.service-page .sui-kanban__meta,.service-page .sui-list__row-title,.service-page .sui-list__row-meta,.service-page .sui-table td{overflow-wrap:anywhere}.service-page__cs-list{scrollbar-gutter:stable;flex-direction:column;max-height:min(22rem,50vh);padding-right:.25rem;display:flex;overflow-y:scroll}.service-page__cs-list::-webkit-scrollbar{width:.5rem}.service-page__cs-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}.service-page__feedback-card{min-height:12rem}.service-page__feedback-head{border-bottom:1px solid var(--color-border-subtle);padding-bottom:.75rem}.service-page__feedback-summary{color:var(--color-text);font-size:.875rem}.service-page__feedback-summary strong{color:var(--color-success)}.service-page__feedback-row{border-top:1px solid var(--color-border-subtle);align-items:center;gap:1rem;padding:.75rem .375rem;display:flex}.service-page__feedback-row:first-of-type{border-top:none}.service-page__feedback-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-heading);flex:1;overflow:hidden}.service-page__feedback-pill{text-overflow:ellipsis;white-space:nowrap;border-radius:8px;flex-shrink:0;max-width:9rem;padding:.3125rem .75rem;font-size:.75rem;font-weight:700;overflow:hidden}.service-page__feedback-pill--top{background:var(--color-success-bg);color:var(--color-success)}.service-page__feedback-pill--bottom{background:var(--color-danger-bg);color:var(--color-danger)}@media (width<=640px){.service-page__feedback-head,.service-page__feedback-row{flex-direction:column;align-items:flex-start}.service-page__feedback-pill{max-width:100%}}.tasks-page__header{margin-bottom:1.75rem}.tasks-page__header h1{margin-bottom:.375rem;font-size:1.5rem}.tasks-page__header p{color:var(--color-text-muted);font-size:.875rem}.tasks-page__status{color:var(--color-text-muted);margin-top:.75rem;font-size:.8125rem;display:inline-flex}.tasks-page__status--error{color:var(--color-danger)}.tasks-page__filters{margin-bottom:1rem}.tasks-page__filter-row{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.tasks-page__filter-row label{color:var(--color-text-muted);font-size:.8125rem}.tasks-page__filter-row select{border:1px solid var(--color-border);background:var(--color-surface);min-width:18rem;max-width:min(100%,32rem);height:2.25rem;color:var(--color-text);border-radius:.375rem;padding:0 .625rem}.tasks-page__kanban-body{scrollbar-gutter:stable;flex-direction:column;gap:.625rem;max-height:min(62vh,42rem);padding-right:.25rem;display:flex;overflow-y:auto}.tasks-page__kanban-body::-webkit-scrollbar{width:.5rem}.tasks-page__kanban-body::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}.tasks-page__kanban{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.tasks-page__kanban .sui-kanban__col{min-width:0}@media (width<=900px){.tasks-page__kanban{grid-template-columns:repeat(3,minmax(18rem,1fr));overflow-x:auto}}.tasks-page__kanban .sui-kanban__title,.tasks-page__kanban .sui-kanban__meta{overflow-wrap:anywhere;word-break:break-word;min-width:0}.tasks-page__task-card{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;border:0;display:block}.tasks-page__task-card:hover{border-color:var(--color-accent-border);box-shadow:0 0 0 3px var(--color-accent-soft)}.tasks-page__task-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.tasks-page__task-card .sui-kanban__title,.tasks-page__task-card .sui-kanban__meta{display:block}.tasks-page__detail-modal{z-index:60;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.tasks-page__detail-backdrop{background:#0f172a73;border:0;position:absolute;inset:0}.tasks-page__detail-panel{z-index:1;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);width:min(48rem,100%);max-height:min(48rem,100vh - 2.5rem);position:relative;overflow-y:auto;box-shadow:0 24px 80px #0f172a3d}.tasks-page__detail-header{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.tasks-page__detail-header h2{color:var(--color-text-heading);overflow-wrap:anywhere;margin:0;font-size:1.125rem;line-height:1.35}.tasks-page__detail-header p{color:var(--color-text-muted);margin:.25rem 0 0;font-size:.8125rem}.tasks-page__detail-close{font:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;padding:.4375rem .75rem;font-size:.8125rem;font-weight:600}.tasks-page__detail-close:hover{background:var(--color-surface-muted)}.tasks-page__detail-content{gap:1rem;padding:1.25rem;display:grid}.tasks-page__detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.875rem 1rem;margin:0;display:grid}.tasks-page__detail-grid div{min-width:0}.tasks-page__detail-grid dt,.tasks-page__detail-description h3{color:var(--color-text-muted);margin:0 0 .25rem;font-size:.75rem;font-weight:600}.tasks-page__detail-grid dd,.tasks-page__detail-description p{color:var(--color-text-heading);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:.875rem}.tasks-page__detail-description{border-top:1px solid var(--color-border-subtle);padding-top:.25rem}@media (width<=640px){.tasks-page__detail-modal{padding:.75rem}.tasks-page__detail-grid{grid-template-columns:1fr}}.tasks-page__person-list{scrollbar-gutter:stable;flex-direction:column;max-height:min(22rem,50vh);padding-right:.25rem;display:flex;overflow-y:scroll}.tasks-page__person-list::-webkit-scrollbar{width:.5rem}.tasks-page__person-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}.tasks-page__search-select{width:min(100%,32rem);min-width:18rem;position:relative}.tasks-page__search-select input{border:1px solid var(--color-border);background:var(--color-surface);width:100%;height:2.25rem;color:var(--color-text);font:inherit;border-radius:.375rem;padding:0 4.25rem 0 .625rem}.tasks-page__search-select input:disabled{cursor:wait;color:var(--color-text-muted);background:var(--color-surface-muted)}.tasks-page__search-select input:focus{border-color:var(--color-accent-border);box-shadow:0 0 0 3px var(--color-accent-soft);outline:none}.tasks-page__search-select-clear{color:var(--color-text-muted);cursor:pointer;font:inherit;background:0 0;border:0;padding:.25rem .375rem;font-size:.75rem;font-weight:600;position:absolute;top:50%;right:.375rem;transform:translateY(-50%)}.tasks-page__search-select-clear:hover{color:var(--color-text-heading)}.tasks-page__search-select-menu{z-index:25;background:var(--color-surface);border:1px solid var(--color-border);max-height:16rem;box-shadow:var(--shadow-md);border-radius:.5rem;padding:.25rem;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow-y:auto}.tasks-page__search-select-option{width:100%;color:var(--color-text);cursor:pointer;font:inherit;overflow-wrap:anywhere;text-align:left;background:0 0;border:0;border-radius:.375rem;padding:.5rem .625rem;font-size:.8125rem;display:block}.tasks-page__search-select-option:hover,.tasks-page__search-select-option[aria-selected=true]{background:var(--color-accent-soft);color:var(--color-accent)}.tasks-page__search-select-status{color:var(--color-text-muted);padding:.625rem;font-size:.8125rem}.tasks-page__task-progress{gap:.25rem;margin-top:.625rem;display:grid}.tasks-page__task-progress-head{color:var(--color-text-muted);justify-content:flex-end;font-size:.6875rem;font-weight:600;display:flex}.tasks-page__task-progress-track{background:var(--color-surface-muted);border-radius:999px;width:100%;height:.375rem;display:block;overflow:hidden}.tasks-page__task-progress-fill{border-radius:inherit;min-width:0;height:100%;display:block}.tasks-page__task-progress-fill--success{background:var(--color-success)}.tasks-page__task-progress-fill--danger{background:var(--color-danger)}.tasks-page__task-badge{overflow-wrap:anywhere;border-radius:999px;width:fit-content;max-width:100%;margin-top:.625rem;padding:.1875rem .5rem;font-size:.6875rem;font-weight:700;line-height:1.25;display:inline-flex}.tasks-page__task-badge--success{color:var(--color-success);background:var(--color-success-bg)}.tasks-page__task-badge--danger{color:var(--color-danger);background:var(--color-danger-bg)}.tech-page__header{margin-bottom:1.75rem}.tech-page__header h1{margin-bottom:.375rem;font-size:1.5rem}.tech-page__header p{color:var(--color-text-muted);font-size:.875rem}.tech-page__dev-scope{width:8.125rem;color:var(--color-text-muted);flex-shrink:0;font-size:.6875rem}.tech-page__status{color:var(--color-text-muted);margin-top:.75rem;font-size:.8125rem;display:inline-flex}.tech-page__status--error{color:var(--color-danger)}.tech-page__skeleton{background:linear-gradient(90deg, var(--color-surface-muted) 0%, var(--color-border-subtle) 42%, var(--color-surface-muted) 82%);vertical-align:middle;background-size:220% 100%;border-radius:4px;max-width:100%;height:.875rem;animation:1.1s ease-in-out infinite tech-page-skeleton;display:inline-block}.tech-page .sui-table td{overflow-wrap:anywhere}@keyframes tech-page-skeleton{0%{background-position:120% 0}to{background-position:-120% 0}}.tech-page__load-list{gap:0;max-height:24rem;padding-right:.25rem;display:grid;overflow-y:auto}.tech-page__load-row{border-bottom:1px solid var(--color-border-subtle);grid-template-columns:minmax(7rem,.7fr) minmax(10rem,1.2fr) minmax(10rem,3fr) minmax(8rem,.9fr);align-items:center;gap:1rem;min-height:3.625rem;display:grid}.tech-page__load-row:last-child{border-bottom:0}.tech-page__load-name{color:var(--color-text);overflow-wrap:anywhere;font-weight:600}.tech-page__load-projects{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tech-page__load-track{background:var(--color-surface-muted);border-radius:999px;width:100%;height:.5rem;overflow:hidden}.tech-page__load-fill{border-radius:inherit;background:var(--color-success);min-width:0;height:100%;display:block}.tech-page__load-fill--danger{background:var(--color-danger)}.tech-page__load-meta{color:var(--color-text-muted);text-align:right;justify-items:end;gap:.125rem;font-size:.8125rem;display:grid}.tech-page__load-meta strong{color:var(--color-text)}.tech-page__load-note{margin-top:1rem}@media (width<=900px){.tech-page__load-row{grid-template-columns:1fr;align-items:stretch;gap:.5rem;padding:.875rem 0}.tech-page__load-meta{text-align:left;justify-items:start}}.section-picker{z-index:1000;place-items:start center;padding:12vh 1rem 1rem;display:grid;position:fixed;inset:0}.section-picker__backdrop{cursor:default;background:#0f172a59;border:none;position:absolute;inset:0}.section-picker__dialog{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:min(560px,100%);box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.section-picker__header{border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:.75rem;padding:.875rem 1rem;display:flex}.section-picker__search-icon{color:var(--color-text-muted);flex-shrink:0}.section-picker__input{min-width:0;color:var(--color-text-heading);background:0 0;border:none;outline:none;flex:1;padding:0;font-size:.9375rem}.section-picker__input::placeholder{color:var(--color-text-muted)}.section-picker__shortcut,.section-picker__footer kbd{min-width:1.5rem;color:var(--color-text-muted);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:4px;place-items:center;padding:.125rem .375rem;font-family:inherit;font-size:.6875rem;font-weight:500;display:inline-grid}.section-picker__title{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.section-picker__list{max-height:min(320px,50vh);margin:0;padding:.5rem;list-style:none;overflow-y:auto}.section-picker__option{color:var(--color-text);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:.75rem;padding:.625rem .75rem;font-size:.875rem;display:flex}.section-picker__option--active{background:var(--color-sidebar-active);color:var(--color-accent)}.section-picker__option-icon{flex-shrink:0}.section-picker__option-label{flex:1;font-weight:500}.section-picker__option-slug{color:var(--color-text-muted);font-size:.75rem}.section-picker__option--active .section-picker__option-slug{color:var(--color-accent)}.section-picker__empty{color:var(--color-text-muted);text-align:center;padding:1.5rem .75rem;font-size:.875rem}.section-picker__footer{color:var(--color-text-muted);border-top:1px solid var(--color-border-subtle);background:var(--color-surface-muted);flex-wrap:wrap;gap:.75rem 1rem;padding:.625rem 1rem;font-size:.75rem;display:flex}.section-picker__footer span{align-items:center;gap:.375rem;display:inline-flex}.assign-task-modal{z-index:50;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.assign-task-modal__backdrop{cursor:default;background:#0f172a73;border:0;position:absolute;inset:0}.assign-task-modal__panel{z-index:1;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);width:min(42rem,100%);max-height:min(46rem,100vh - 2.5rem);position:relative;overflow-y:auto;box-shadow:0 24px 80px #0f172a3d}.assign-task-modal__header{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;gap:1rem;padding:1.25rem 1.25rem 1rem;display:flex}.assign-task-modal__header h2{color:var(--color-text-heading);margin:0;font-size:1.125rem;line-height:1.35}.assign-task-modal__header p{color:var(--color-text-muted);margin:.25rem 0 0;font-size:.8125rem}.assign-task-modal__close{width:2rem;height:2rem;color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.assign-task-modal__close:hover{background:var(--color-surface-muted);color:var(--color-text-heading)}.assign-task-modal__form{grid-template-columns:repeat(2,minmax(0,1fr));gap:.875rem 1rem;padding:1rem 1.25rem 1.25rem;display:grid}.assign-task-modal__field,.assign-task-modal__check{gap:.375rem;min-width:0;display:grid}.assign-task-modal__field--wide,.assign-task-modal__actions,.assign-task-modal__check{grid-column:1/-1}.assign-task-modal__field span,.assign-task-modal__check span{color:var(--color-text-heading);font-size:.75rem;font-weight:600}.assign-task-modal__field input,.assign-task-modal__field select,.assign-task-modal__field textarea{box-sizing:border-box;width:100%;min-width:0;font:inherit;color:var(--color-text-heading);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);outline:none;padding:.5625rem .6875rem;font-size:.8125rem}.assign-task-modal__field textarea{resize:vertical;min-height:6rem}.assign-task-modal__field input:focus,.assign-task-modal__field select:focus,.assign-task-modal__field textarea:focus{border-color:var(--color-accent-border);box-shadow:0 0 0 3px var(--color-accent-soft)}.assign-task-modal__check{align-items:center;gap:.5rem;display:inline-flex}.assign-task-modal__check input{width:1rem;height:1rem;margin:0}.assign-task-modal__message{border-radius:var(--radius-sm);grid-column:1/-1;margin:0 1.25rem;padding:.625rem .75rem;font-size:.8125rem}.assign-task-modal__message--error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.assign-task-modal__message--success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.assign-task-modal__form .assign-task-modal__message{margin:0}.assign-task-modal__actions{justify-content:flex-end;gap:.625rem;padding-top:.25rem;display:flex}.assign-task-modal__primary,.assign-task-modal__secondary{font:inherit;border-radius:var(--radius-sm);cursor:pointer;padding:.5625rem .875rem;font-size:.8125rem;font-weight:600}.assign-task-modal__primary{color:#fff;background:var(--color-accent);border:1px solid var(--color-accent)}.assign-task-modal__primary:hover:not(:disabled){background:var(--color-accent-hover)}.assign-task-modal__secondary{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border)}.assign-task-modal__secondary:hover:not(:disabled){background:var(--color-surface-muted)}.assign-task-modal__primary:disabled,.assign-task-modal__secondary:disabled,.assign-task-modal__field input:disabled,.assign-task-modal__field select:disabled,.assign-task-modal__field textarea:disabled{opacity:.65;cursor:not-allowed}@media (width<=640px){.assign-task-modal{padding:.75rem}.assign-task-modal__form{grid-template-columns:1fr}.assign-task-modal__actions{flex-direction:column-reverse}.assign-task-modal__primary,.assign-task-modal__secondary{width:100%}}.dashboard{min-height:100vh;display:flex}.dashboard__sidebar{width:var(--sidebar-width);background:var(--color-sidebar-bg);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;display:flex}.dashboard__sidebar-header{height:var(--header-height);box-sizing:border-box;border-bottom:1px solid var(--color-border-subtle);align-items:center;padding:10px 1.25rem;display:flex}.dashboard__logo{width:100%;max-height:calc(var(--header-height) - 20px);object-fit:contain;object-position:left center;height:auto;display:block}.dashboard__search{background:var(--color-surface-muted);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);align-items:center;gap:.5rem;margin:.875rem .75rem 0;padding:0 .75rem;transition:border-color .15s,box-shadow .15s;display:flex}.dashboard__search:focus-within{border-color:var(--color-accent-border);box-shadow:0 0 0 3px var(--color-accent-soft)}.dashboard__search-icon{width:15px;height:15px;color:var(--color-text-muted);flex-shrink:0}.dashboard__search-input{min-width:0;color:var(--color-text-heading);background:0 0;border:none;outline:none;flex:1;padding:.5rem 0;font-size:.8125rem}.dashboard__search-input::placeholder{color:var(--color-text-muted)}.dashboard__nav{flex-direction:column;gap:.25rem;padding:.75rem .75rem 1rem;display:flex}.dashboard__nav-empty{color:var(--color-text-muted);text-align:center;padding:.75rem .875rem;font-size:.8125rem}.dashboard__nav-link{color:var(--color-text-muted);border-radius:var(--radius-sm);align-items:center;gap:.75rem;padding:.625rem .875rem;font-size:.875rem;font-weight:500;transition:background .15s,color .15s;display:flex}.dashboard__nav-link svg,.dashboard__nav-icon{flex-shrink:0;width:18px;height:18px}.dashboard__nav-link:hover{background:var(--color-sidebar-hover);color:var(--color-text-heading)}.dashboard__nav-link--active{background:var(--color-sidebar-active);color:var(--color-accent)}.dashboard__main{flex-direction:column;flex:1;min-width:0;display:flex}.dashboard__header{height:var(--header-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);align-items:center;gap:1rem;padding:0 1.5rem;display:flex}.dashboard__toolbar{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.dashboard__toolbar-search{background:var(--color-surface-muted);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);flex:1;align-items:center;gap:.5rem;min-width:0;padding:0 .75rem;transition:border-color .15s,box-shadow .15s;display:flex}.dashboard__toolbar-search:focus-within{border-color:var(--color-accent-border);box-shadow:0 0 0 3px var(--color-accent-soft)}.dashboard__toolbar-search-icon{width:15px;height:15px;color:var(--color-text-muted);flex-shrink:0}.dashboard__toolbar-search-input{min-width:0;color:var(--color-text-heading);background:0 0;border:none;outline:none;flex:1;padding:.4375rem 0;font-family:inherit;font-size:.8125rem}.dashboard__toolbar-search-input::placeholder{color:var(--color-text-muted)}.dashboard__toolbar-filter{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;flex-shrink:0;align-items:center;gap:.4rem;padding:.4375rem .875rem;font-family:inherit;font-size:.8125rem;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.dashboard__toolbar-filter--active{color:var(--color-accent);background:var(--color-accent-soft);border-color:var(--color-accent-border)}.dashboard__toolbar-filter:disabled{opacity:.5;cursor:not-allowed}.dashboard__period-filter{flex-shrink:0;position:relative}.dashboard__filter-popover{z-index:50;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:min(22rem,100vw - 2rem);box-shadow:var(--shadow-lg);padding:1rem;position:absolute;top:calc(100% + .625rem);right:0}.dashboard__filter-heading{gap:.15rem;margin-bottom:.875rem;display:grid}.dashboard__filter-heading strong{color:var(--color-text-heading);font-size:.875rem}.dashboard__filter-heading span,.dashboard__filter-dates label>span{color:var(--color-text-muted);font-size:.75rem}.dashboard__filter-presets{gap:.375rem;margin-bottom:.875rem;display:flex}.dashboard__filter-presets button,.dashboard__filter-cancel{font:inherit;color:var(--color-text);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;padding:.4rem .625rem;font-size:.75rem}.dashboard__filter-dates{grid-template-columns:1fr 1fr;gap:.625rem;display:grid}.dashboard__filter-dates label{gap:.3rem;display:grid}.dashboard__filter-dates input{min-width:0;font:inherit;color:var(--color-text-heading);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.45rem .55rem;font-size:.8125rem}.dashboard__filter-dates input:focus{border-color:var(--color-accent-border);box-shadow:0 0 0 3px var(--color-accent-soft);outline:none}.dashboard__filter-error{color:#b45309;margin:.5rem 0 0;font-size:.75rem}.dashboard__filter-actions{border-top:1px solid var(--color-border-subtle);justify-content:flex-end;gap:.5rem;margin-top:1rem;padding-top:.75rem;display:flex}.dashboard__filter-apply{font:inherit;color:#fff;background:var(--color-accent);border:1px solid var(--color-accent);border-radius:var(--radius-sm);cursor:pointer;padding:.4rem .75rem;font-size:.75rem;font-weight:600}.dashboard__filter-apply:disabled{opacity:.6;cursor:not-allowed}.dashboard__toolbar-filter:hover{background:var(--color-surface-muted);border-color:#cbd5e1}.dashboard__toolbar-assign{color:#fff;background:var(--color-accent);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;flex-shrink:0;padding:.4375rem .875rem;font-family:inherit;font-size:.8125rem;font-weight:600;transition:background .15s}.dashboard__toolbar-assign:hover{background:var(--color-accent-hover)}.dashboard__user-bar{border-left:1px solid var(--color-border-subtle);flex-shrink:0;align-items:center;gap:.875rem;padding-left:.875rem;display:flex}.dashboard__user-account{grid-template-columns:minmax(0,1fr);gap:.125rem;max-width:11rem;display:inline-grid}.dashboard__user-email{color:var(--color-text-muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:.6875rem;overflow:hidden}.dashboard__logout{box-sizing:border-box;width:100%;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;gap:.375rem;padding:.4375rem .875rem;font-size:.8125rem;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.dashboard__logout svg{flex-shrink:0}.dashboard__logout:hover:not(:disabled){background:var(--color-surface-muted);border-color:#cbd5e1}.dashboard__logout:disabled{opacity:.6;cursor:not-allowed}.dashboard__content{flex:1;padding:1.75rem 2rem;overflow-y:auto}@media (width<=768px){.dashboard{flex-direction:column}.dashboard__sidebar{border-right:none;border-bottom:1px solid var(--color-border);width:100%}.dashboard__nav{flex-direction:row;padding:.75rem;overflow-x:auto}.dashboard__search{padding:.75rem .75rem 0}.dashboard__search-input{min-width:0}.dashboard__nav-link{white-space:nowrap}.dashboard__content{padding:1.25rem}.dashboard__header{height:auto;min-height:var(--header-height);flex-wrap:wrap;padding:.75rem 1rem}.dashboard__toolbar{flex:100%;order:1}.dashboard__user-bar{border-left:none;order:0;margin-left:auto;padding-left:0}}.access-denied{justify-content:center;align-items:center;min-height:100%;padding:2rem 0;display:flex}.access-denied__card{text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:min(480px,100%);box-shadow:var(--shadow-sm);padding:2rem}.access-denied__title{color:#b45309;margin-bottom:.75rem;font-size:1.375rem}.access-denied__message{color:var(--color-text);margin-bottom:.75rem;font-size:.9375rem;line-height:1.6}.access-denied__hint{color:var(--color-text-muted);font-size:.8125rem}.google-sign-in{flex-direction:column;align-items:center;gap:.75rem;width:100%;display:flex}.google-sign-in__status{color:var(--color-text-muted);font-size:.8125rem}.google-sign-in__error{color:#b45309;text-align:center;font-size:.8125rem}.login-page{place-items:center;min-height:100vh;padding:2rem;display:grid;position:relative;overflow:hidden}.login-page__backdrop{background:radial-gradient(ellipse 80% 60% at 20% 10%, #1e40af0f, transparent), radial-gradient(ellipse 60% 50% at 80% 90%, #1e40af0a, transparent), var(--color-bg);pointer-events:none;position:absolute;inset:0}.login-page__card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:min(420px,100%);box-shadow:var(--shadow-lg);padding:2.5rem;position:relative}.login-page__brand{align-items:flex-start;gap:1rem;display:flex}.login-page__logo{width:48px;height:48px;color:var(--color-accent);background:var(--color-accent-soft);border:1px solid var(--color-accent-border);border-radius:var(--radius-md);flex-shrink:0;place-items:center;font-size:1.25rem;font-weight:700;display:grid}.login-page__title{margin-bottom:.375rem;font-size:1.375rem;font-weight:600}.login-page__subtitle{color:var(--color-text-muted);font-size:.875rem;line-height:1.5}.login-page__divider{background:var(--color-border-subtle);height:1px;margin:1.75rem 0}.login-page__action{justify-content:center;display:flex}.login-page__alert{color:#b45309;border-radius:var(--radius-sm);text-align:center;background:#fffbeb;border:1px solid #fde68a;margin-top:1.25rem;padding:.75rem 1rem;font-size:.8125rem}.app-loading{min-height:100vh;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-size:.875rem;display:flex}.app-loading__spinner{border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite app-loading-spin}@keyframes app-loading-spin{to{transform:rotate(360deg)}}
