@import"https://fonts.googleapis.com/css2?family=Golos+Text:wght@400;500;600;700&display=swap";:root,[data-theme=light]{--bg: #F7F8F9;--surface: #fff;--surface-2: #F7F8F9;--surface-3: #EEF2F6;--sidebar: #fff;--text: #1F2020;--muted: #707070;--border: #E2E8F0;--primary: #E41F07;--primary-hover: #c11a06;--primary-soft: #fce9e6;--secondary: #FFA201;--accent: #FFA201;--danger: #EF1E1E;--warn: #f9b801;--success: #1ABE17;--info: #2F80ED;--radius: 8px;--shadow: 0px 4px 4px 0px rgba(219, 219, 219, .25);--shadow-lg: 0px 4.4px 12px -1px rgba(222, 222, 222, .36);--overlay: rgba(0, 0, 0, .45);--scrollbar-size: 10px;--scrollbar-thumb: rgba(112, 112, 112, .45);--scrollbar-thumb-hover: rgba(112, 112, 112, .7);--scrollbar-track: transparent;--topbar-h: 56px;--sidebar-w: 240px}[data-theme=dark]{--bg: #1e1e1e;--surface: #252526;--surface-2: #2d2d2d;--surface-3: #333333;--sidebar: #181818;--text: #cccccc;--muted: #858585;--border: #3e3e42;--primary: #c9785c;--primary-hover: #d4896e;--primary-soft: rgba(201, 120, 92, .12);--secondary: #c09850;--accent: #d4896e;--danger: #e06c75;--warn: #d4a057;--success: #6abf88;--info: #6ba3d9;--shadow: 0 1px 3px rgba(0, 0, 0, .22);--shadow-lg: 0 8px 28px rgba(0, 0, 0, .38);--overlay: rgba(0, 0, 0, .5);--scrollbar-size: 10px;--scrollbar-thumb: rgba(255, 255, 255, .18);--scrollbar-thumb-hover: rgba(255, 255, 255, .28);--scrollbar-track: transparent;--linear-gradient: linear-gradient(180deg, #c9785c 0%, #b8925a 100%)}[data-theme=dark] .sidebar__link:hover,[data-theme=dark] .sidebar__link.active,[data-theme=dark] .sidebar a.active{background:#ffffff0f;color:#e8e8e8}[data-theme=dark] .sidebar__link.active{box-shadow:inset 2px 0 0 var(--primary)}[data-theme=dark] .topbar__btn:hover{background:#ffffff0f;color:var(--text);border-color:var(--border)}[data-theme=dark] .btn--primary{background:#a86850;border-color:#a86850;color:#f5f5f5}[data-theme=dark] .btn--primary:hover{background:#b8775e;border-color:#b8775e}[data-theme=dark] .stat-card:hover{border-color:var(--border)}[data-theme=dark] .board-card:hover{border-color:#555559}[data-theme=dark] .board-card--due-today,[data-theme=dark] .task-item--due-today{background:#d4a0571a;border-color:#d4a05759}[data-theme=dark] .deadline-date--today{color:#d4a057;background:#d4a0571f;border-color:#d4a0574d}[data-theme=dark] .deadline-date--overdue{color:#e8959c;background:#e06c751f;border-color:#e06c754d}[data-theme=dark] .deadline-date--done{color:#7ec99a;background:#6abf881f;border-color:#6abf884d}[data-theme=dark] .num-ok{color:#7ec99a}[data-theme=dark] .num-bad{color:#e8959c}[data-theme=dark] .finance-card--warn strong{color:#d4a057}[data-theme=dark] .finance-card--ok strong{color:#7ec99a}[data-theme=dark] .finance-card--bad strong{color:#e8959c}[data-theme=dark] .fin-status--positive{background:#6abf881f;color:#7ec99a}[data-theme=dark] .fin-status--negative{background:#e06c751f;color:#e8959c}[data-theme=dark] .fin-status--neutral{background:#ffffff0d;color:var(--muted)}[data-theme=dark] .badge--ok,[data-theme=dark] .badge--success{background:#6abf881f;color:#7ec99a}[data-theme=dark] .badge--off,[data-theme=dark] .badge--danger{background:#e06c751f;color:#e8959c}[data-theme=dark] .badge--warn{background:#d4a0571f;color:#d4a057}[data-theme=dark] .badge--info{background:#6ba3d91f;color:#8bb8e8}[data-theme=dark] .modal-overlay,[data-theme=dark] .drawer-overlay{background:var(--overlay)}[data-theme=dark] .rich-editor__content .tiptap pre,[data-theme=dark] .rich-content pre{background:#1a1a1a;color:#b8b8b8}[data-theme=dark] .admin-tabs button.active{background:#a86850;border-color:#a86850}[data-theme=dark] .tasks-tabs button.active{background:#ffffff0f;color:var(--text);border-color:var(--border)}[data-theme=dark] .finance-card--clickable:hover{box-shadow:0 2px 12px #00000059}*{margin:0;padding:0;box-sizing:border-box}.ui-scroll,html,body,.sidebar,.sidebar__nav,.content,.board-wrap,.backlog-panel__list,.drawer__main,.drawer__side,.comments-list,.entity-select__menu,.time-popup,.modal,.modal--wide,.finance-detail__table,.finance-table-wrap,.passwords-sidebar,.track-graph,.rich-editor__content,.rich-editor__content .tiptap,.rich-editor__content .ProseMirror,.rich-content pre,.rich-editor__content .tiptap pre{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.ui-scroll::-webkit-scrollbar,html::-webkit-scrollbar,body::-webkit-scrollbar,.sidebar::-webkit-scrollbar,.sidebar__nav::-webkit-scrollbar,.content::-webkit-scrollbar,.board-wrap::-webkit-scrollbar,.backlog-panel__list::-webkit-scrollbar,.drawer__main::-webkit-scrollbar,.drawer__side::-webkit-scrollbar,.comments-list::-webkit-scrollbar,.entity-select__menu::-webkit-scrollbar,.time-popup::-webkit-scrollbar,.modal::-webkit-scrollbar,.modal--wide::-webkit-scrollbar,.finance-detail__table::-webkit-scrollbar,.finance-table-wrap::-webkit-scrollbar,.passwords-sidebar::-webkit-scrollbar,.track-graph::-webkit-scrollbar,.rich-editor__content::-webkit-scrollbar,.rich-editor__content .tiptap::-webkit-scrollbar,.rich-editor__content .ProseMirror::-webkit-scrollbar,.rich-content pre::-webkit-scrollbar,.rich-editor__content .tiptap pre::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.ui-scroll::-webkit-scrollbar-track,html::-webkit-scrollbar-track,body::-webkit-scrollbar-track,.sidebar::-webkit-scrollbar-track,.sidebar__nav::-webkit-scrollbar-track,.content::-webkit-scrollbar-track,.board-wrap::-webkit-scrollbar-track,.backlog-panel__list::-webkit-scrollbar-track,.drawer__main::-webkit-scrollbar-track,.drawer__side::-webkit-scrollbar-track,.comments-list::-webkit-scrollbar-track,.entity-select__menu::-webkit-scrollbar-track,.time-popup::-webkit-scrollbar-track,.modal::-webkit-scrollbar-track,.modal--wide::-webkit-scrollbar-track,.finance-detail__table::-webkit-scrollbar-track,.finance-table-wrap::-webkit-scrollbar-track,.passwords-sidebar::-webkit-scrollbar-track,.track-graph::-webkit-scrollbar-track,.rich-editor__content::-webkit-scrollbar-track,.rich-editor__content .tiptap::-webkit-scrollbar-track,.rich-editor__content .ProseMirror::-webkit-scrollbar-track,.rich-content pre::-webkit-scrollbar-track,.rich-editor__content .tiptap pre::-webkit-scrollbar-track{background:var(--scrollbar-track)}.ui-scroll::-webkit-scrollbar-thumb,html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,.sidebar::-webkit-scrollbar-thumb,.sidebar__nav::-webkit-scrollbar-thumb,.content::-webkit-scrollbar-thumb,.board-wrap::-webkit-scrollbar-thumb,.backlog-panel__list::-webkit-scrollbar-thumb,.drawer__main::-webkit-scrollbar-thumb,.drawer__side::-webkit-scrollbar-thumb,.comments-list::-webkit-scrollbar-thumb,.entity-select__menu::-webkit-scrollbar-thumb,.time-popup::-webkit-scrollbar-thumb,.modal::-webkit-scrollbar-thumb,.modal--wide::-webkit-scrollbar-thumb,.finance-detail__table::-webkit-scrollbar-thumb,.finance-table-wrap::-webkit-scrollbar-thumb,.passwords-sidebar::-webkit-scrollbar-thumb,.track-graph::-webkit-scrollbar-thumb,.rich-editor__content::-webkit-scrollbar-thumb,.rich-editor__content .tiptap::-webkit-scrollbar-thumb,.rich-editor__content .ProseMirror::-webkit-scrollbar-thumb,.rich-content pre::-webkit-scrollbar-thumb,.rich-editor__content .tiptap pre::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.ui-scroll::-webkit-scrollbar-thumb:hover,html::-webkit-scrollbar-thumb:hover,body::-webkit-scrollbar-thumb:hover,.sidebar::-webkit-scrollbar-thumb:hover,.sidebar__nav::-webkit-scrollbar-thumb:hover,.content::-webkit-scrollbar-thumb:hover,.board-wrap::-webkit-scrollbar-thumb:hover,.backlog-panel__list::-webkit-scrollbar-thumb:hover,.drawer__main::-webkit-scrollbar-thumb:hover,.drawer__side::-webkit-scrollbar-thumb:hover,.comments-list::-webkit-scrollbar-thumb:hover,.entity-select__menu::-webkit-scrollbar-thumb:hover,.time-popup::-webkit-scrollbar-thumb:hover,.modal::-webkit-scrollbar-thumb:hover,.modal--wide::-webkit-scrollbar-thumb:hover,.finance-detail__table::-webkit-scrollbar-thumb:hover,.finance-table-wrap::-webkit-scrollbar-thumb:hover,.passwords-sidebar::-webkit-scrollbar-thumb:hover,.track-graph::-webkit-scrollbar-thumb:hover,.rich-editor__content::-webkit-scrollbar-thumb:hover,.rich-editor__content .tiptap::-webkit-scrollbar-thumb:hover,.rich-editor__content .ProseMirror::-webkit-scrollbar-thumb:hover,.rich-content pre::-webkit-scrollbar-thumb:hover,.rich-editor__content .tiptap pre::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}.ui-scroll::-webkit-scrollbar-corner,html::-webkit-scrollbar-corner,body::-webkit-scrollbar-corner,.board-wrap::-webkit-scrollbar-corner,.drawer__main::-webkit-scrollbar-corner,.finance-detail__table::-webkit-scrollbar-corner{background:transparent}[data-theme=light]{color-scheme:light}[data-theme=dark]{color-scheme:dark}body{font-family:Golos Text,system-ui,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased;font-size:14px}button,input,select,textarea{font-family:inherit;font-size:.875rem;color:var(--text)}input,select,textarea{padding:.55rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}label{display:flex;flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:500;color:var(--muted)}.muted{color:var(--muted)}.error{color:var(--danger);font-size:.85rem}.warn{color:var(--warn)}.crm{display:flex;min-height:100vh}.page-wrapper{flex:1;display:flex;flex-direction:column;min-width:0}.sidebar{width:var(--sidebar-w);background:var(--sidebar);border-right:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar__brand{display:flex;gap:.65rem;align-items:center;padding:1rem 1.1rem;border-bottom:1px solid var(--border)}.sidebar__logo{width:36px;height:36px;background:var(--linear-gradient, linear-gradient(180deg, #E41F07 0%, #FFA201 100%));color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem}.sidebar h1{font-size:1rem;font-weight:700;line-height:1.2}.sidebar p{font-size:.68rem;color:var(--muted)}.sidebar__nav{padding:.75rem .65rem;flex:1}.sidebar__group{margin-bottom:1rem}.sidebar__group-label{display:block;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:0 .65rem;margin-bottom:.35rem}.sidebar__link{display:flex;align-items:center;gap:.55rem;color:var(--muted);text-decoration:none;padding:.55rem .65rem;border-radius:6px;font-size:.85rem;font-weight:500;transition:background .15s,color .15s;margin-bottom:.1rem}.sidebar__link i{font-size:1.05rem;width:20px;text-align:center}.sidebar__link:hover{background:var(--primary-soft);color:var(--primary)}.sidebar__link.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.topbar{height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;gap:1rem;position:sticky;top:0;z-index:50}.topbar__search{display:flex;align-items:center;gap:.5rem;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:.4rem .75rem;min-width:220px;max-width:360px;flex:1}.topbar__search i{color:var(--muted);font-size:1rem}.topbar__search input{border:none;background:transparent;padding:0;font-size:.85rem}.topbar__search input:focus{box-shadow:none}.topbar__actions{display:flex;align-items:center;gap:.75rem}.topbar__btn{width:36px;height:36px;border-radius:6px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.1rem}.topbar__btn:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.topbar__user{display:flex;align-items:center;gap:.55rem}.topbar__user-info{display:flex;flex-direction:column;line-height:1.2}.topbar__user-info strong{font-size:.82rem}.topbar__user-info span{font-size:.68rem;color:var(--muted)}.content{flex:1;padding:1.25rem;overflow-x:auto;min-width:0}.page-title{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}.page-title h2{font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:.35rem}.page-title__count{font-size:.85rem;color:var(--muted);font-weight:500}.page-title__sub{font-size:.8rem;color:var(--muted);margin-top:.2rem}.page-title__actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.filters-inline{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filters-inline select,.filters-inline input{width:auto;min-width:120px}.page-header{margin-bottom:1.25rem}.page-header h2{font-size:1.25rem;font-weight:700}.page-header--row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.page-header__actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.header-actions{display:flex;gap:.5rem}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .9rem;border-radius:6px;font-weight:600;font-size:.82rem;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;transition:background .15s,border-color .15s}.btn:hover{background:var(--surface-2)}.btn--primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn--primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn--light{background:var(--surface-2)}.btn--sm{padding:.38rem .7rem;font-size:.78rem}.btn:disabled{opacity:.5;cursor:not-allowed}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem;box-shadow:var(--shadow)}.panel h3,.panel h4{font-size:.95rem;font-weight:600;margin-bottom:.75rem}.panel--inline{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap}.panel--settings{margin-bottom:1rem}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:.75rem}.form-grid--4{grid-template-columns:repeat(4,1fr)}.form-grid__wide{grid-column:1 / -1}.form-actions{display:flex;gap:.5rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1.25rem}.stats-grid--3{grid-template-columns:repeat(3,1fr)}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.15rem;display:flex;flex-direction:column;gap:.35rem;box-shadow:var(--shadow);position:relative;overflow:hidden}.stat-card:hover{border-color:var(--primary)}.stat-card--accent{border-left:3px solid var(--primary)}.stat-card__icon{width:42px;height:42px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin-bottom:.25rem}.stat-card__icon--primary{background:var(--primary-soft);color:var(--primary)}.stat-card__icon--success{background:#1abe171f;color:var(--success)}.stat-card__icon--info{background:#2f80ed1f;color:var(--info)}.stat-card__icon--warn{background:#ffa20126;color:var(--secondary)}.stat-card__icon--danger{background:#ef1e1e1a;color:var(--danger)}.stat-card__icon--muted{background:var(--surface-2);color:var(--muted)}.stat-card--link{text-decoration:none;color:inherit;transition:box-shadow .15s,transform .15s}.stat-card--link:hover{box-shadow:0 2px 10px #00000014;transform:translateY(-1px)}.stat-card__label{font-size:.75rem;color:var(--muted)}.stat-card strong{font-size:1.4rem;font-weight:700}.stat-card__delta{font-size:.72rem;color:var(--success)}.status-bars{display:flex;flex-direction:column;gap:.6rem}.status-bar{display:grid;grid-template-columns:90px 1fr 24px;align-items:center;gap:.6rem;font-size:.82rem}.status-bar__track{height:6px;background:var(--surface-3);border-radius:3px;overflow:hidden}.status-bar__fill{height:100%;border-radius:3px}.status-bar__fill--backlog{background:#64748b}.status-bar__fill--in_progress{background:var(--primary)}.status-bar__fill--review{background:var(--warn)}.status-bar__fill--done{background:var(--success)}.table{width:100%;border-collapse:collapse;font-size:.85rem}.table th{text-align:left;padding:.65rem;border-bottom:1px solid var(--border);color:var(--muted);font-size:.72rem;text-transform:uppercase}.table td{padding:.65rem;border-bottom:1px solid var(--border)}.table tr:hover td{background:var(--surface-2)}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem}.project-card,.team-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem;transition:transform .2s,border-color .2s}.project-card:hover,.team-card:hover{transform:translateY(-2px);border-color:var(--primary)}.project-card__head{display:flex;justify-content:space-between;margin-bottom:.4rem}.project-card__balance{color:var(--primary)}.team-card{display:flex;align-items:center;gap:.85rem}.badge{font-size:.68rem;padding:.15rem .5rem;border-radius:999px;font-weight:600;margin-left:auto}.badge--ok{background:#4ade8026;color:var(--success)}.badge--off{background:#f8717126;color:var(--danger)}.avatar{width:32px;height:32px;border-radius:50%;background:var(--primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:700;flex-shrink:0}.avatar--lg{width:40px;height:40px;font-size:.8rem}.avatar--deal{width:36px;height:36px;border-radius:8px;font-size:.75rem}.avatar--sm{width:26px;height:26px;font-size:.6rem}.avatar--xs{width:22px;height:22px;font-size:.55rem}.tag{font-size:.68rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;background:var(--surface-3);color:var(--muted)}.badge{font-size:.68rem;padding:.2rem .55rem;border-radius:4px;font-weight:600}.badge--ok,.badge--success{background:#1abe171f;color:var(--success)}.badge--off,.badge--danger{background:#ef1e1e1a;color:var(--danger)}.badge--warn{background:#f9b80126;color:var(--warn)}.badge--info{background:#2f80ed1f;color:var(--info)}.kanban-page{height:calc(100vh - var(--topbar-h) - 2.5rem);display:flex;flex-direction:column}.kanban-split{flex:1;display:flex;gap:.75rem;min-height:0}.backlog-panel{width:300px;flex-shrink:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden;box-shadow:var(--shadow)}.backlog-panel__list:has(.board-card--drag){background:var(--primary-soft)}.backlog-card{border-left:3px solid var(--muted)}.board-wrap{flex:1;overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);min-width:0;cursor:grab;box-shadow:var(--shadow)}.board-col-head{display:flex;align-items:center;gap:.5rem;padding:.85rem 1rem;background:var(--surface);border-bottom:1px solid var(--border);border-right:1px solid var(--border);font-size:.8rem;font-weight:600;position:sticky;top:0;z-index:2;align-self:start}.board-col-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.board-count{font-size:.72rem;color:var(--muted);background:var(--surface-2);padding:.15rem .5rem;border-radius:4px;border:1px solid var(--border)}.board-lane-head{padding:.75rem 1rem;background:var(--surface);border-bottom:1px solid var(--border);border-right:1px solid var(--border);border-left:3px solid;font-size:.8rem;font-weight:600;display:flex;align-items:center;position:sticky;left:0;z-index:1}.board-cell{padding:.55rem;border-bottom:1px solid var(--border);border-right:1px solid var(--border);min-height:130px;display:flex;flex-direction:column;gap:.45rem;background:var(--bg);transition:background .15s}.board-cell:has(.board-card--drag){background:var(--primary-soft)}.board-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.55rem .6rem;cursor:grab;transition:box-shadow .15s,border-color .15s;box-shadow:var(--shadow)}.board-card:hover{border-color:var(--primary);box-shadow:var(--shadow-lg)}.board-card__body{flex:1;min-width:0}.board-card h4{font-size:.8rem;font-weight:600;line-height:1.25;margin-bottom:.2rem}.board-card__meta{font-size:.72rem;color:var(--muted);display:flex;flex-direction:column;gap:.15rem}.board-card__foot{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;margin-top:.4rem;padding-top:.4rem;border-top:1px solid var(--border)}.board-card__assignee{font-size:.72rem;color:var(--muted);max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-card__meta-chip{font-size:.68rem;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);padding:.12rem .35rem;border-radius:999px}.board-card__time{font-size:.68rem;color:var(--muted);margin-left:auto}.board-wrap--panning{cursor:grabbing;-webkit-user-select:none;user-select:none}.board-wrap--panning .board-card{pointer-events:none}.board-grid{display:grid;min-width:max-content;width:max-content}.board-corner{background:var(--surface);border-bottom:1px solid var(--border);border-right:1px solid var(--border);position:sticky;top:0;left:0;z-index:3;align-self:start}.board-card--drag{opacity:.45;cursor:grabbing}.backlog-panel__head{display:flex;align-items:flex-start;gap:.5rem;padding:.85rem 1rem;border-bottom:1px solid var(--border);background:var(--surface)}.backlog-panel__title{flex:1;min-width:0}.backlog-panel__title h3{font-size:.95rem;font-weight:700;margin:0}.backlog-panel__title p{font-size:.7rem;margin:.15rem 0 0}.backlog-panel__list{flex:1;overflow-y:auto;padding:.65rem;display:flex;flex-direction:column;gap:.45rem}.backlog-panel__empty{font-size:.78rem;text-align:center;padding:1.5rem .5rem}.billing-rail{width:300px;flex-shrink:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden;box-shadow:var(--shadow)}.billing-rail__head{display:flex;align-items:flex-start;gap:.5rem;padding:.85rem 1rem;border-bottom:1px solid var(--border);background:var(--surface)}.billing-rail__title{flex:1;min-width:0}.billing-rail__title h3{font-size:.95rem;font-weight:700;margin:0}.billing-rail__title p{font-size:.7rem;margin:.15rem 0 0}.billing-rail__body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.billing-rail__col{flex:1;min-height:0;display:flex;flex-direction:column;border-bottom:1px solid var(--border)}.billing-rail__col:last-child{border-bottom:none}.billing-rail__col-head{display:flex;align-items:center;gap:.45rem;padding:.55rem .75rem;border-bottom:1px solid var(--border);background:var(--surface-2)}.billing-rail__col-head strong{flex:1;min-width:0;font-size:.8rem;font-weight:650}.billing-rail__list{flex:1;overflow-y:auto;padding:.55rem;display:flex;flex-direction:column;gap:.45rem}.billing-rail__list:has(.board-card--drag){background:var(--primary-soft)}.board-add{background:none;border:1px dashed var(--border);border-radius:6px;color:var(--muted);padding:.35rem;cursor:pointer;font-size:.85rem;transition:border-color .15s,color .15s}.board-add:hover{border-color:var(--primary);color:var(--primary)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.75rem}.settings-row{display:flex;gap:.5rem;margin-top:.35rem}.settings-lists{display:flex;flex-direction:column;gap:.5rem;font-size:.82rem}.settings-tag{display:inline-flex;align-items:center;gap:.35rem;margin:.25rem .35rem 0 0;padding:.2rem .5rem;border:1px solid;border-radius:6px;background:var(--surface-2)}.settings-tag button{background:none;border:none;color:var(--muted);cursor:pointer;font-size:.9rem}.settings-tag button:hover{color:var(--danger)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay, rgba(0,0,0,.65));z-index:200;display:flex;align-items:stretch;justify-content:flex-end;animation:fadeIn .2s}.drawer{width:min(1280px,100%);height:100%;min-height:0;background:var(--surface);display:flex;box-shadow:var(--shadow-lg);animation:slideLeft .25s ease}.drawer__main{flex:1;min-height:0;min-width:0;padding:1.25rem 1.5rem;overflow-y:auto;border-right:1px solid var(--border)}.drawer__side{width:510px;min-height:0;display:flex;flex-direction:column;background:var(--surface-2);overflow:hidden}.drawer__toolbar{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.drawer-save-log{font-size:.76rem;color:var(--success);background:#22c55e1f;padding:.2rem .45rem;border-radius:6px}.admin-metrics-strip{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:.75rem .9rem}.drawer__toolbar-spacer{flex:1}.drawer__status-pill{padding:.35rem .75rem;border-radius:999px;background:var(--surface-3);border:1px solid var(--border);font-size:.75rem;font-weight:600;width:auto}.drawer__title{font-size:1.35rem;font-weight:700;background:none;border:none;width:100%;padding:0;margin-bottom:.35rem}.drawer__title:focus{outline:none}.drawer__meta{font-size:.78rem;color:var(--muted);margin-bottom:1rem}.drawer__section{margin-bottom:1.25rem}.drawer__section h4{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.6rem}.drawer__section-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.6rem}.drawer__body{width:100%;resize:vertical;min-height:100px;line-height:1.6}.time-progress{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem;margin-bottom:1.25rem}.time-progress__head{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.55rem}.time-progress__label{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.time-progress__values{font-size:.9rem}.time-progress__track{height:8px;border-radius:999px;background:var(--surface-3);overflow:hidden;display:flex;position:relative}.time-progress__fill{height:100%;border-radius:999px;background:var(--success);transition:width .3s ease}.time-progress--warn .time-progress__fill{background:var(--warn)}.time-progress--over .time-progress__fill{background:var(--danger)}.time-progress__hint{font-size:.78rem;margin:0}.time-progress__overtext{font-size:.75rem;color:var(--danger);margin:.4rem 0 0}.time-progress__remaining{font-size:.78rem;margin:.4rem 0 0}.time-progress__remaining--ok{color:var(--success)}.time-progress__remaining--warn{color:var(--warn)}.time-progress__remaining--over{color:var(--danger)}input:disabled,input[readonly]{opacity:.75;cursor:not-allowed;background:var(--surface-2)}.icon-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;transition:background .15s}.icon-btn:hover{background:var(--surface-3)}.icon-btn--accent{background:var(--primary);border-color:var(--primary);color:#fff}.icon-btn--timer{width:auto;padding:0 .65rem;gap:.35rem}.icon-btn--active{background:var(--danger);border-color:var(--danger);color:#fff}.timer-val{font-size:.75rem;font-variant-numeric:tabular-nums}.param-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.param{display:flex;flex-direction:column;gap:.2rem}.param__label{font-size:.72rem;color:var(--muted)}.param__value select,.param__value input{font-size:.82rem}.entity-select{position:relative}.entity-select__trigger{width:100%;min-height:36px;border:1px solid var(--border);border-radius:8px;background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:.45rem;padding:.4rem .55rem;cursor:pointer}.entity-option{display:inline-flex;align-items:center;gap:.45rem;min-width:0}.project-dot{width:22px;height:22px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:.75rem;flex-shrink:0}.entity-select__menu{position:absolute;z-index:25;top:calc(100% + 6px);left:0;right:0;max-height:280px;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-lg);padding:.4rem;display:flex;flex-direction:column;gap:.1rem;min-width:220px}.entity-select__search{width:100%;margin-bottom:.35rem;flex-shrink:0}.entity-select__item{width:100%;box-sizing:border-box;border:none;background:transparent;border-radius:8px;padding:.42rem .5rem;display:flex;align-items:center;gap:.5rem;text-align:left;cursor:pointer;flex:0 0 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entity-select__item small{margin-left:auto}.entity-select__item:hover,.entity-select__item.active{background:var(--surface-2)}.attachments{display:flex;flex-wrap:wrap;gap:.5rem}.attachment{display:inline-flex;align-items:center;gap:0;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;font-size:.78rem;color:var(--text);transition:border-color .15s;overflow:hidden}.attachment__main{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .7rem;background:none;border:none;color:inherit;cursor:pointer;font:inherit}.attachment__main:hover{color:var(--primary)}.attachment__name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment__remove{width:28px;height:100%;border:none;border-left:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;font-size:1rem}.attachment__remove:hover{background:#f871711f;color:var(--danger)}.attachment--add{cursor:pointer;color:var(--muted);background:none;padding:.45rem .7rem;border:1px dashed var(--border)}.attachment--add:disabled{opacity:.6;cursor:wait}.attachment__icon{font-size:.9rem;display:flex}.attachment-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.65rem}.attachment-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);padding:.5rem .65rem}.attachment-row__main{display:flex;align-items:center;gap:.55rem;min-width:0}.attachment-row__main strong{font-size:.82rem;word-break:break-all}.attachment-row__icon{width:28px;height:28px;border-radius:7px;background:var(--surface-3);display:flex;align-items:center;justify-content:center}.attachment-row__actions{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end}.form-error{color:var(--danger);font-size:.78rem;margin-bottom:.5rem}.icon-btn--danger:hover{background:#f8717126;color:var(--danger)}.time-controls{display:flex;gap:.5rem;margin-bottom:.65rem;flex-wrap:wrap;align-items:center}.time-controls input[type=number]{width:92px}.time-controls input[type=date]{width:auto;min-width:140px}.time-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#00000059;display:flex;align-items:center;justify-content:center;padding:1rem}.time-popup{width:min(540px,100%);max-height:78vh;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);padding:.9rem}.time-popup__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.7rem}.time-popup__head h4{margin:0;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.time-list{list-style:none;font-size:.8rem;display:flex;flex-direction:column;gap:.35rem}.time-entry{display:flex;align-items:center;gap:.55rem;padding:.55rem .65rem;background:var(--surface-2);border:1px solid var(--border);border-radius:8px}.time-entry__body{flex:1;min-width:0}.time-entry__main{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.time-entry__mins{font-weight:700;font-variant-numeric:tabular-nums;color:var(--primary)}.time-entry__meta{font-size:.72rem;margin-top:.1rem}.time-entry__delete{width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;font-size:1.1rem;line-height:1;flex-shrink:0}.time-entry__delete:hover{background:#f8717126;color:var(--danger)}.time-empty{font-size:.8rem;margin:0}.drawer__tabs{display:flex;border-bottom:1px solid var(--border)}.drawer__tabs button{flex:1;padding:.75rem;background:none;border:none;color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.04em;cursor:pointer;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.drawer__tabs button.active{color:var(--primary);border-bottom-color:var(--primary)}.comment-form{display:flex;gap:.5rem;padding:.75rem;border-bottom:1px solid var(--border);align-items:flex-start}.comment-form__editor{flex:1;display:flex;flex-direction:column;gap:.5rem}.comment-form .rich-editor__content{min-height:170px!important}.comment-form__actions{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.comment-form__buttons{display:flex;gap:.4rem}.comment-final-check{display:inline-flex;flex-direction:row;align-items:center;gap:.35rem;font-size:.78rem;font-weight:400;color:var(--muted);white-space:nowrap;cursor:pointer}.comment-final-check input{width:auto;margin:0;flex-shrink:0;padding:0;border:none;background:transparent;box-shadow:none}.comments-list{flex:1;min-height:0;overflow-y:auto;padding:.75rem}.comments-empty{text-align:center;padding:2rem 0;font-size:.85rem}.comment{display:flex;gap:.6rem;margin-bottom:1rem}.comment__head{display:flex;gap:.5rem;align-items:baseline;margin-bottom:.25rem;font-size:.82rem}.comment p{font-size:.85rem;line-height:1.5}.comment-attachments{margin-top:.5rem;display:flex;flex-direction:column;gap:.35rem}.comment-attachment{border:1px solid var(--border);border-radius:8px;padding:.45rem .55rem;background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:.55rem}.ai-placeholder{padding:2rem 1rem;text-align:center}.ai-placeholder p:first-child{font-size:1.1rem;margin-bottom:.5rem}.image-preview-overlay{z-index:400;padding:1.5rem}.image-preview{width:min(960px,100%);max-height:calc(100vh - 3rem);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-lg)}.image-preview__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border-bottom:1px solid var(--border);background:var(--surface-2)}.image-preview__name{font-size:.88rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-preview__actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.image-preview__body{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:1rem;background:#00000059}[data-theme=light] .image-preview__body{background:#eef2f6}.image-preview__body img{max-width:100%;max-height:calc(100vh - 160px);object-fit:contain;border-radius:6px;box-shadow:0 8px 32px #00000059}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay, rgba(0,0,0,.6));z-index:250;display:flex;align-items:center;justify-content:center;padding:1rem}.modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem;width:min(480px,100%);position:relative}.modal--sm{width:min(380px,100%)}.modal--wide{width:min(1080px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);display:flex;flex-direction:column;padding:1.75rem 2rem;overflow:hidden}.modal--task{width:min(560px,100%);padding:0;overflow:hidden}.modal__head{display:flex;align-items:flex-start;gap:.85rem;padding:1.5rem 1.5rem 0}.modal__icon{width:40px;height:40px;border-radius:10px;background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}.modal__subtitle{font-size:.8rem;color:var(--muted);margin-top:.15rem}.modal--task .field{display:flex;flex-direction:column;align-items:stretch;gap:.4rem;padding:0 1.5rem;margin:0 0 1rem}.modal--task .field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:.75rem;padding:.35rem 1.5rem 0;margin:0 0 1.15rem}.modal--task .field-grid .field{padding:0;margin:0;min-width:0}.modal--task .field__label{display:block;font-size:.72rem;font-weight:600;color:var(--muted);margin:0;text-transform:uppercase;letter-spacing:.04em;line-height:1.3}.modal--task .field__req{color:var(--primary)}.modal--task .field__input{box-sizing:border-box;width:100%;min-width:0;height:40px;margin:0;padding:0 .75rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:.88rem;line-height:1.2;-moz-appearance:none;appearance:none;-webkit-appearance:none}.modal--task select.field__input{padding-right:2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23707070' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .65rem center;background-size:14px;cursor:pointer}.modal--task input[type=number].field__input{-moz-appearance:textfield}.modal--task input[type=number].field__input::-webkit-outer-spin-button,.modal--task input[type=number].field__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.modal--task .field__input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.modal--task .rich-editor{margin-top:0}.modal--task .form-actions{padding:1rem 1.5rem 1.5rem;margin:0;border-top:1px solid var(--border);background:var(--surface-2)}.form-actions--end{justify-content:flex-end}.modal__close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--muted);font-size:1.25rem;cursor:pointer;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center}.modal__close:hover{background:var(--surface-2);color:var(--text)}.modal h3{margin-bottom:0;font-size:1.05rem}.rich-editor{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.rich-editor__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem;padding:.35rem .5rem;border-bottom:1px solid var(--border);background:var(--surface-2)}.rich-editor__btn{min-width:28px;height:28px;padding:0 .4rem;border:none;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;font-size:.75rem}.rich-editor__btn:hover{background:var(--surface-3);color:var(--text)}.rich-editor__btn--active{background:var(--primary-soft);color:var(--primary)}.rich-editor__sep{width:1px;height:18px;background:var(--border);margin:0 .2rem}.rich-editor__content{max-height:420px;overflow-y:auto}.rich-editor__content .tiptap{padding:.75rem;outline:none;font-size:.88rem;line-height:1.65;min-height:inherit}.rich-editor__content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--muted);float:left;height:0;pointer-events:none}.rich-editor__content .tiptap h2{font-size:1.15rem;margin:.75rem 0 .35rem}.rich-editor__content .tiptap h3{font-size:1rem;margin:.6rem 0 .3rem}.rich-editor__content .tiptap ul,.rich-editor__content .tiptap ol{padding-left:1.25rem;margin:.35rem 0}.rich-editor__content .tiptap code{background:var(--surface-2);padding:.1rem .35rem;border-radius:4px;font-size:.82em}.rich-editor__content .tiptap pre{background:#1e1e2e;color:#cdd6f4;padding:.75rem;border-radius:8px;overflow-x:auto;margin:.5rem 0}.rich-editor__content .tiptap pre code{background:none;padding:0;color:inherit}.rich-editor__content .tiptap blockquote{border-left:3px solid var(--primary);margin:.5rem 0;padding-left:.75rem;color:var(--muted)}.rich-editor__content .tiptap img{max-width:100%;border-radius:8px;margin:.5rem 0}.rich-content{font-size:.88rem;line-height:1.65}.rich-content h2{font-size:1.15rem;margin:.75rem 0 .35rem}.rich-content h3{font-size:1rem;margin:.6rem 0 .3rem}.rich-content ul,.rich-content ol{padding-left:1.25rem;margin:.35rem 0}.rich-content code{background:var(--surface-2);padding:.1rem .35rem;border-radius:4px}.rich-content pre{background:#1e1e2e;color:#cdd6f4;padding:.75rem;border-radius:8px;overflow-x:auto}.rich-content img{max-width:100%;border-radius:8px}.salary-total{margin-left:auto;align-self:center}.salary-summary{margin-bottom:1rem}.salary-summary__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}.salary-summary__grid>div{display:flex;flex-direction:column;gap:.25rem}.salary-summary__grid input{max-width:140px}.salary-summary__final-sum{font-size:1.15rem;color:var(--primary)}.salary-summary__notes{display:block;margin-top:1rem}.salary-summary__notes textarea{width:100%;margin-top:.35rem}.salary-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin:1rem 0}.salary-row{cursor:pointer}.salary-row:hover{background:var(--surface-2)}.salary-row__actions{display:flex;gap:.25rem}.btn--icon{padding:.35rem .5rem}.salary-drawer{width:min(920px,100%);max-width:100%}.badge--muted{background:var(--surface-2);color:var(--muted)}.panel__title{font-size:1rem;margin:0 0 .75rem}.table-wrap{overflow-x:auto}.table tfoot td{border-top:2px solid var(--border)}.expense-summary-panel{margin-bottom:1rem}.expense-summary-total{display:flex;flex-direction:column;gap:.2rem;margin-bottom:1rem}.expense-summary-total strong{font-size:1.4rem}.expense-summary-split{font-size:.82rem}.expense-row--charged td{color:var(--muted)}.expense-category-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.expense-category-card{display:grid;grid-template-columns:1.4rem 1fr;gap:.65rem;align-items:start;padding:.75rem;background:var(--surface-2);border-radius:10px;min-height:4.25rem}.expense-category-card>i{font-size:1.2rem;color:var(--primary);line-height:1.2;width:1.4rem;text-align:center}.expense-category-card>div{display:flex;flex-direction:column;gap:.2rem;min-width:0}.expense-category-card>div>span{font-size:.72rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.expense-category-card>div>strong{font-variant-numeric:tabular-nums;font-size:.95rem}.expense-drawer{width:min(440px,100%);max-height:100vh}.expense-drawer .drawer__main{max-height:100vh;overflow-y:auto}.expense-form{display:flex;flex-direction:column;gap:.85rem}.expense-form__field{display:flex;flex-direction:column;gap:.35rem;margin:0;width:100%}.expense-form__field>span{font-size:.78rem;color:var(--muted)}.expense-form__field input,.expense-form__field select,.expense-form__field textarea{width:100%;box-sizing:border-box}label.expense-form__check{display:flex;flex-direction:row;align-items:center;gap:.55rem;margin:.15rem 0 0;line-height:1.35;font-size:.84rem;font-weight:400;color:var(--text);cursor:pointer;width:100%}label.expense-form__check input[type=checkbox]{width:1rem;height:1rem;margin:0;flex-shrink:0;accent-color:var(--primary)}label.expense-form__check>span{flex:1;min-width:0}.expense-form__actions{display:flex;flex-direction:column;gap:.5rem;width:100%;margin-top:.35rem}.expense-form__actions .btn{width:100%;justify-content:center}.expense-form__actions .btn--ghost{border-color:var(--border);color:var(--text)}.expense-form__period{margin:0;font-size:.78rem}.expense-table{table-layout:fixed;width:100%}.expense-table__col-desc{width:auto}.expense-table__col-amount{width:9rem}.expense-table__col-actions{width:9.5rem}.expense-table th:nth-child(2),.expense-table td:nth-child(2){text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.expense-table th:nth-child(3),.expense-table td:nth-child(3){text-align:right;width:9.5rem}.expense-table td:nth-child(1){overflow:hidden;text-overflow:ellipsis}.expense-charge-list{margin:.75rem 0 0;padding-left:1.1rem}.expense-charge-list li{margin:.25rem 0}.checkbox-row{display:flex;flex-direction:row;align-items:center;gap:.5rem;margin:.75rem 0}@media(max-width:1100px){.expense-category-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.expense-category-cards{grid-template-columns:1fr}}.confirm-dialog__body{color:var(--text)}.toast{position:fixed;right:1.25rem;bottom:1.25rem;z-index:1000;display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;border-radius:10px;background:var(--surface);border:1px solid var(--border);box-shadow:0 8px 24px #0000002e;max-width:min(420px,calc(100vw - 2rem))}.toast--success{border-color:color-mix(in srgb,var(--success) 40%,var(--border))}.toast--success>i{color:var(--success)}.toast__close{background:transparent;border:none;color:var(--muted);cursor:pointer;margin-left:.25rem}.switch{position:relative;display:inline-block;width:40px;height:22px}.switch input{opacity:0;width:0;height:0}.switch__slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;cursor:pointer;transition:.2s}.switch__slider:before{content:"";position:absolute;height:16px;width:16px;left:2px;top:2px;background:var(--text);border-radius:50%;transition:.2s}.switch input:checked+.switch__slider{background:var(--primary-soft);border-color:var(--primary)}.switch input:checked+.switch__slider:before{transform:translate(18px);background:var(--primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideLeft{0%{transform:translate(40px);opacity:0}to{transform:none;opacity:1}}@media(max-width:900px){.drawer{flex-direction:column;width:100%}.drawer__side{width:100%;max-height:40vh}.stats-grid,.stats-grid--3{grid-template-columns:repeat(2,1fr)}.modal--task .field-grid{grid-template-columns:1fr}}.sidebar a.active{background:var(--primary-soft);color:var(--primary)}.sidebar__footer{margin-top:auto;padding:.5rem}.btn--ghost{background:transparent;border-color:transparent;color:var(--muted)}.btn--ghost:hover{background:var(--surface-2);color:var(--text)}[data-theme=light] .sidebar{border-right:1px solid var(--border)}[data-theme=light] .sidebar h1{color:var(--text)}.board-col-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-actions{position:relative;display:flex;gap:.15rem;margin-left:auto}.board-col-head .board-count{margin-left:0}.board-col-head .col-actions{margin-left:auto}.col-action{width:24px;height:24px;border:none;background:transparent;color:var(--muted);border-radius:4px;cursor:pointer;font-size:.85rem;display:flex;align-items:center;justify-content:center}.col-action:hover{background:var(--surface-3);color:var(--text)}.col-menu{position:absolute;top:100%;right:0;z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-lg);min-width:160px;overflow:hidden}.col-menu--lane{top:100%;right:0;left:auto}.col-menu>button{display:block;width:100%;text-align:left;padding:.55rem .75rem;background:none;border:none;color:var(--text);cursor:pointer;font-size:.8rem}.col-menu>button:hover{background:var(--surface-2)}.col-menu--danger{color:var(--danger)!important}.col-rename-input{flex:1;min-width:0;padding:.2rem .4rem;font-size:.78rem}.board-col-head--add{justify-content:center;padding:.5rem;min-width:48px}.board-col-head--add-open{min-width:240px;padding:.65rem}.col-add-form{display:flex;gap:.35rem;width:100%;align-items:center}.col-add-form input{flex:1;font-size:.82rem;padding:.45rem .55rem;min-width:0}.col-add-form button{flex-shrink:0;width:32px;height:32px;border:none;background:var(--primary);color:#fff;border-radius:6px;cursor:pointer;font-size:1rem}.board-add-col{width:28px;height:28px;border-radius:6px;border:1px dashed var(--border);background:none;color:var(--muted);cursor:pointer;font-size:1.1rem}.board-add-col:hover{border-color:var(--primary);color:var(--primary)}.board-lane-head{position:sticky;left:0;z-index:1;display:flex;align-items:center;justify-content:space-between}.board-lane-head .col-actions{position:relative}.lane-menu-btn{background:none;border:none;color:var(--muted);cursor:pointer;padding:.2rem .4rem}.board-cell--spacer{background:var(--surface-2)}.finance-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.finance-page__actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.finance-obligations{display:flex;flex-wrap:wrap;gap:1.25rem 1.75rem;padding:.65rem 0 .25rem;border-top:1px solid var(--border);margin-top:.25rem;align-items:flex-end}.finance-obligations__hint{width:100%;margin:0;font-size:.75rem}.finance-obligation{display:flex;flex-direction:column;gap:.15rem}.finance-obligation strong{font-size:.95rem}.finance-obligation--eq{padding-left:.75rem;border-left:1px solid var(--border)}.finance-cards--5{grid-template-columns:repeat(5,1fr)}.finance-cards--6{grid-template-columns:repeat(6,1fr)}@media(max-width:1200px){.finance-cards--6{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.finance-cards--6{grid-template-columns:repeat(2,1fr)}}.finance-accordion{margin-top:1rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden}.finance-accordion>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:.5rem;padding:.85rem 1rem;font-weight:600;-webkit-user-select:none;user-select:none}.finance-accordion>summary::-webkit-details-marker{display:none}.finance-accordion>summary .muted{font-weight:400;margin-left:.35rem}.finance-accordion__body{padding:0 1rem 1rem;margin-top:0!important}.finance-jarvis-btn{white-space:nowrap}.finance-jarvis__meta{margin-bottom:.75rem;font-size:.85rem}.finance-jarvis__report{white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:.9rem;line-height:1.55;margin:0;padding:1rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);max-height:min(70vh,640px);overflow:auto}.finance-page .page-header h2{font-size:1.15rem}.finance-summary h3,.finance-table-wrap h3{font-size:.95rem;margin-bottom:.75rem;color:var(--muted)}.finance-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem;margin-bottom:1.25rem}.finance-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;display:flex;flex-direction:column;gap:.35rem}.finance-card span{font-size:.72rem;color:var(--muted);line-height:1.3}.finance-card strong{font-size:1.15rem}.finance-card--warn strong{color:#ea580c}.finance-card--ok strong{color:#16a34a}.finance-card--bad strong{color:#dc2626}.finance-card--neutral strong{color:var(--muted)}.finance-card--clickable{cursor:pointer;transition:box-shadow .15s,transform .15s}.finance-card--clickable:hover{box-shadow:0 2px 8px #00000014;transform:translateY(-1px)}.finance-tx-filters{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.85rem}.finance-tx-filters .btn.active{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.finance-tx-balance{grid-column:1 / -1;margin:0}.input--error{border-color:var(--danger)!important}.finance-tx-panel h3{font-size:.95rem;margin-bottom:.75rem;color:var(--muted)}.finance-tx-form{display:grid;grid-template-columns:1.4fr 1.4fr 140px 1fr auto;gap:.75rem;align-items:end}.finance-tx-field{display:flex;flex-direction:column;gap:.3rem}.finance-tx-field span{font-size:.72rem;color:var(--muted)}.finance-tx-field input,.finance-tx-field select{width:100%;padding:.45rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text)}.finance-tx-field--wide{grid-column:span 1}.finance-table-wrap{overflow-x:auto}.finance-table tbody tr.finance-row{cursor:pointer}.finance-table tbody tr:nth-child(2n){background:var(--surface-2)}.finance-sort-btn{display:inline-flex;align-items:center;gap:.3rem;border:none;background:transparent;padding:0;margin:0;font:inherit;font-weight:600;color:inherit;cursor:pointer;text-align:left}.finance-sort-btn:hover{color:var(--primary)}.finance-sort-icon{font-size:.85rem;opacity:.85}.finance-sort-icon--idle{opacity:.35}.link{color:var(--primary);cursor:pointer;text-decoration:none}.link:hover{text-decoration:underline}.num-ok{color:#16a34a;font-weight:600}.num-bad{color:#dc2626;font-weight:600}.num-zero{color:var(--muted)}.fin-status{font-size:.75rem;padding:.2rem .55rem;border-radius:999px;white-space:nowrap}.fin-status--positive{background:#4ade8026;color:var(--success)}.fin-status--negative{background:#f8717126;color:var(--danger)}.fin-status--neutral{background:var(--surface-3);color:var(--muted)}.finance-detail__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:1rem 0}.finance-detail__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.finance-detail__header h3{margin:0;font-size:1.25rem}.finance-detail__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1.25rem;padding:1.15rem 1.25rem;background:var(--surface-2);border-radius:var(--radius)}.finance-stat{display:flex;flex-direction:column;gap:.35rem}.finance-stat__label{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.finance-stat strong{font-size:1.15rem}.finance-detail__table{flex:1;min-height:0;max-height:min(560px,calc(100vh - 280px));overflow:auto;border:1px solid var(--border);border-radius:var(--radius)}.finance-detail h4{margin:0 0 .75rem;font-size:.9rem;color:var(--muted);font-weight:600}.finance-tx-table{table-layout:auto;font-size:.9rem}.finance-tx-table th{position:sticky;top:0;z-index:1;background:var(--surface-2);font-size:.72rem;padding:.75rem 1rem;white-space:nowrap}.finance-tx-table td{padding:.8rem 1rem;vertical-align:top;line-height:1.45}.finance-tx-table tr:hover td{background:var(--surface-2)}.finance-tx-table .col-date{white-space:nowrap;width:1%}.finance-tx-table .col-party{white-space:nowrap;min-width:130px;max-width:180px}.finance-tx-table .col-amount{white-space:nowrap;width:1%;text-align:right;font-variant-numeric:tabular-nums}.finance-tx-table .col-comment{min-width:240px;word-break:break-word;color:var(--text)}.finance-layout{display:grid;grid-template-columns:340px 1fr;gap:1rem;align-items:start}.finance-chart-panel h3{font-size:.95rem;margin-bottom:.75rem;color:var(--muted)}.finance-chart-row{display:flex;gap:1.25rem;align-items:center}.donut-chart{width:140px;height:140px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.donut-chart--empty{background:var(--surface-3)}.donut-chart__hole{width:88px;height:88px;border-radius:50%;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:.72rem;font-weight:700;line-height:1.2}.donut-chart__hole small{font-size:.62rem;color:var(--muted);font-weight:500}.chart-legend{list-style:none;margin:0;padding:0;flex:1;display:flex;flex-direction:column;gap:.55rem}.chart-legend li{display:flex;align-items:center;gap:.5rem;font-size:.82rem}.chart-legend__dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.chart-legend__label{flex:1;color:var(--muted)}.finance-mini-stats{display:flex;gap:1.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border);font-size:.85rem}.finance-mini-stats strong{display:block;font-size:1.1rem;margin-top:.15rem}.finance-cards--3{grid-template-columns:repeat(3,1fr)}.finance-cards--4{grid-template-columns:repeat(4,1fr)}.month-input{padding:.4rem .65rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text)}.projects-page .project-cell{display:flex;align-items:center;gap:.65rem}.projects-show-inactive{display:flex;flex-direction:row;align-items:center;gap:.4rem;font-size:.82rem;color:var(--muted);font-weight:500;cursor:pointer;margin:0}.projects-show-inactive input{width:auto;margin:0}.projects-row--inactive{opacity:.55}.projects-row--inactive .project-cell strong{text-decoration:line-through;text-decoration-color:var(--muted)}.project-badge{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.color-swatch{display:inline-block;width:20px;height:20px;border-radius:4px}.icon-picker,.color-picker{display:flex;flex-wrap:wrap;gap:.35rem}.icon-picker button,.color-picker button{width:32px;height:32px;border:2px solid transparent;border-radius:6px;cursor:pointer;background:var(--surface-2);display:flex;align-items:center;justify-content:center}.color-picker button{border-radius:50%}.icon-picker button.active,.color-picker button.active{border-color:var(--primary)}.color-picker--sm button{width:22px;height:22px}.kanban-filters{display:flex;align-items:center;gap:.5rem;min-width:0;padding:.65rem .85rem}.kanban-filters__tags{display:flex;flex-wrap:nowrap;align-items:center;gap:.4rem;min-width:0;overflow-x:auto;scrollbar-width:thin}.kanban-filter-tag{flex:0 0 auto;border:1px solid var(--border);background:var(--surface-2);color:var(--muted);font-size:.78rem;font-weight:500;line-height:1.2;padding:.35rem .7rem;border-radius:999px;cursor:pointer;white-space:nowrap;transition:border-color .15s,background .15s,color .15s}.kanban-filter-tag:hover{border-color:var(--primary);color:var(--text)}.kanban-filter-tag.is-active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);font-weight:600}.btn--active{border-color:var(--primary);color:var(--primary)}.col-menu__colors{display:flex;gap:.35rem;padding:.5rem;flex-wrap:wrap}.col-menu__color{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;display:inline-block}.col-menu__color:hover{border-color:var(--text)}.col-menu__types{display:flex;flex-direction:column;gap:.15rem;padding:.35rem .5rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.col-menu__label{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:.15rem .35rem}.col-menu__types>button{border:none;background:transparent;text-align:left;padding:.35rem .5rem;border-radius:6px;font-size:.8rem;cursor:pointer}.col-menu__types>button:hover{background:var(--surface-2)}.col-menu__types>button.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.board-card--due-today,.task-item--due-today{background:#fef9c3;border-color:#facc15}.deadline-date--today{color:#a16207;background:#fef08a;border-color:#facc15}.deadline-date--overdue{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.deadline-date--done{color:#15803d;background:#dcfce7;border-color:#86efac}.task-item__date.deadline-date--today,.task-item__date.deadline-date--overdue,.task-item__date.deadline-date--done{padding:.12rem .4rem;border-radius:999px;border:1px solid transparent}.tasks-toolbar{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem;padding:.75rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.tasks-tabs{display:flex;gap:.35rem}.tasks-tabs button{padding:.4rem .85rem;border:1px solid transparent;background:transparent;border-radius:6px;cursor:pointer;font-size:.82rem;font-weight:600;color:var(--muted)}.tasks-tabs button.active{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.tasks-list{display:flex;flex-direction:column;gap:.65rem}.task-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s,box-shadow .15s;box-shadow:var(--shadow)}.task-item:hover{border-color:var(--primary);box-shadow:var(--shadow-lg)}.task-item__main{flex:1;min-width:0}.task-item__main h4{font-size:.9rem;font-weight:600;margin-bottom:.35rem}.task-item__tags{display:flex;gap:.35rem;flex-wrap:wrap}.task-item__right{display:flex;align-items:center;gap:.65rem;flex-shrink:0}.task-item__date{font-size:.78rem;color:var(--muted);white-space:nowrap}.data-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.data-card .table{margin:0}.data-card .table th{background:var(--surface-2);padding:.85rem 1rem;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border)}.data-card .table td{padding:.85rem 1rem;vertical-align:middle}.data-card .table tr:last-child td{border-bottom:none}.user-cell{display:flex;align-items:center;gap:.65rem}.user-cell strong{font-size:.85rem}.action-btns{display:flex;gap:.35rem}.action-btn{width:30px;height:30px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.9rem}.action-btn:hover{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.action-btn--danger:hover{color:var(--danger);border-color:var(--danger);background:#ef1e1e1a}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:var(--bg)}.login-card{width:min(400px,100%);background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2rem;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:1rem}.login-card__brand{display:flex;gap:.75rem;align-items:center;margin-bottom:.5rem}.login-card h1{font-size:1.25rem}.login-submit{width:100%;justify-content:center;margin-top:.25rem}.login-error{color:var(--danger);font-size:.85rem;background:#ef1e1e14;padding:.5rem .75rem;border-radius:6px}.login-hint{font-size:.75rem;text-align:center}.login-hint code{background:var(--surface-2);padding:.1rem .35rem;border-radius:4px}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.profile-avatar-block{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}.profile-avatar,.profile-avatar-fallback{width:80px;height:80px;border-radius:12px;object-fit:cover}.profile-form{display:flex;gap:.5rem;align-items:flex-end}.profile-form--col{flex-direction:column;align-items:stretch}.profile-msg{padding:.5rem .75rem;border-radius:6px;margin-bottom:1rem;font-size:.85rem}.profile-msg--ok{background:#1abe171a;color:var(--success)}.profile-msg--err{background:#ef1e1e1a;color:var(--danger)}.topbar__user{text-decoration:none;color:inherit;display:flex;align-items:center;gap:.55rem}.topbar__user:hover .topbar__user-info strong{color:var(--primary)}.topbar__avatar,.table-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.modal label{margin-bottom:.65rem}.my-tasks-list{display:flex;flex-direction:column;gap:.5rem}.my-task-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.85rem 1rem;cursor:pointer;transition:border-color .15s,transform .15s}.my-task-row:hover{border-color:var(--primary);transform:translate(4px)}.my-task-row__meta{display:flex;align-items:center;gap:.5rem;font-size:.8rem}.status-pill{font-size:.68rem;padding:.15rem .5rem;border-radius:999px;background:var(--surface-3)}.admin-tabs{display:flex;gap:.5rem;margin-bottom:1rem}.admin-tabs button{padding:.5rem 1rem;border:1px solid var(--border);background:var(--surface);border-radius:8px;cursor:pointer;color:var(--muted);font-weight:600;font-size:.82rem}.admin-tabs button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.admin-group__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.perm-grid{display:flex;flex-wrap:wrap;gap:.5rem}.perm-chip{display:flex;align-items:center;gap:.35rem;padding:.35rem .65rem;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;font-size:.78rem;cursor:pointer}.perm-chip input{width:auto}.telegram-page .telegram-status{margin-bottom:1rem}.telegram-help{margin:0;padding-left:1.1rem;color:var(--muted);line-height:1.6}.telegram-help li{margin-bottom:.35rem}.telegram-table select{min-width:180px;width:auto}.telegram-table .perm-chip{margin:0;flex-direction:row;align-items:center;gap:.35rem;font-weight:400}.dashboard-charts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.track-graph{height:170px;display:flex;align-items:flex-end;gap:.35rem;padding:.75rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.track-graph__col{min-width:20px;display:flex;flex-direction:column;align-items:center;gap:.25rem}.track-graph__bar{width:14px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#22c55e,#6366f1);box-shadow:0 2px 8px #6366f147}.track-graph__col span{font-size:.65rem;color:var(--muted)}.passwords-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:1rem;align-items:start}.passwords-sidebar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:auto;max-height:calc(100vh - 260px)}.passwords-sidebar__head{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding:.8rem .9rem .4rem;border-bottom:1px solid var(--border)}.passwords-sidebar__row{display:flex;align-items:stretch;min-width:0}.passwords-sidebar__toggle{flex-shrink:0;width:1.5rem;border:none;background:transparent;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.passwords-sidebar__toggle:hover{color:var(--text)}.passwords-sidebar__toggle--empty{visibility:hidden;pointer-events:none}.passwords-sidebar__item{flex:1;min-width:0;border:none;background:transparent;text-align:left;padding:.5rem .75rem .5rem 0;display:flex;align-items:center;gap:.45rem;font-size:.84rem;color:var(--text);cursor:pointer}.passwords-sidebar__item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.passwords-sidebar__item:hover{background:var(--surface-2)}.passwords-sidebar__item.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.copyable-field{display:inline-flex;align-items:center;gap:.35rem;max-width:100%}.copyable-field__value{border:none;background:transparent;color:var(--text);font:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.85rem;padding:.15rem .35rem;border-radius:6px;cursor:pointer;text-align:left;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copyable-field__value:hover{background:var(--surface-2)}.copyable-field__value--copied{color:var(--primary)}.copyable-field__toggle{border:none;background:transparent;color:var(--muted);padding:.15rem;border-radius:6px;cursor:pointer;line-height:1}.copyable-field__toggle:hover{color:var(--text);background:var(--surface-2)}.copyable-field__link{display:inline-block;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}@media(max-width:1100px){.finance-cards{grid-template-columns:repeat(2,1fr)}.finance-layout{grid-template-columns:1fr}.finance-detail__stats,.finance-detail__grid{grid-template-columns:repeat(2,1fr)}.modal--wide{width:calc(100vw - 1rem);padding:1.25rem}.dashboard-charts,.passwords-layout{grid-template-columns:1fr}.passwords-sidebar{max-height:280px}.kanban-split{flex-direction:column}.backlog-panel{width:100%;max-height:240px}.billing-rail{width:100%;max-height:320px}}@media(max-width:640px){.crm{flex-direction:column}.sidebar{width:100%;height:auto;position:static}.sidebar__nav{display:flex;flex-wrap:wrap;gap:.25rem}.sidebar__group{margin-bottom:0}.sidebar__group-label,.topbar__search{display:none}.stats-grid,.form-grid,.form-grid--4,.finance-cards,.finance-tx-form{grid-template-columns:1fr}}.badge--muted{background:#64748b24;color:#64748b;margin-left:0}[data-theme=dark] .badge--muted{background:#94a3b824;color:#94a3b8}.invoices-filters{align-items:flex-end;gap:1rem}.invoices-filters .param{min-width:180px;flex:1}.invoices-filters .entity-select{min-width:200px}.invoices-table__row{cursor:pointer}.invoices-table__row:hover{background:var(--surface-2)}.table-actions{display:flex;gap:.25rem}.drawer--invoice{width:min(720px,100%);max-width:100%}.drawer--invoice .drawer__main{width:100%;overflow:auto}.invoice-form{display:flex;flex-direction:column;gap:1rem}.invoice-form__actions{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:flex-end;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--border)}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.segmented button{border:none;background:var(--surface);padding:.45rem .85rem;cursor:pointer;color:var(--muted)}.segmented button.active{background:var(--primary);color:#fff}.invoice-task-list{display:flex;flex-direction:column;gap:0;max-height:380px;overflow:auto;border:1px solid var(--border);border-radius:10px;background:var(--surface)}label.invoice-task-row{display:flex;flex-direction:row;align-items:center;gap:.7rem;margin:0;padding:.55rem .75rem;border:none;border-bottom:1px solid var(--border);border-radius:0;background:transparent;cursor:pointer;font-size:inherit;font-weight:400;color:var(--text);transition:background .12s ease}label.invoice-task-row:last-child{border-bottom:none}label.invoice-task-row:hover{background:var(--surface-2)}label.invoice-task-row--selected{background:color-mix(in srgb,var(--primary) 8%,transparent)}label.invoice-task-row input[type=checkbox]{width:1rem;height:1rem;margin:0;flex-shrink:0;accent-color:var(--primary)}.invoice-task-row__body{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1;line-height:1.3}.invoice-task-row__title{font-size:.88rem;font-weight:560;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}.invoice-task-row__meta{display:flex;align-items:center;gap:.35rem;font-size:.72rem;color:var(--muted)}.invoice-task-row__dot{width:3px;height:3px;border-radius:50%;background:var(--muted);opacity:.55;flex-shrink:0}.invoice-task-row__amount{flex-shrink:0;font-size:.86rem;font-variant-numeric:tabular-nums;font-weight:650;color:var(--text);white-space:nowrap}.invoice-items-edit input{width:100%}.invoice-items-edit .col-amount{width:140px}.invoice-total-preview{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-radius:10px;background:var(--surface-2);border:1px solid var(--border)}.invoice-total-preview strong{font-size:1.15rem}.invoice-view-meta{margin-bottom:1rem}.invoice-history{list-style:none;display:flex;flex-direction:column;gap:.45rem}.invoice-history li{display:flex;justify-content:space-between;gap:1rem;font-size:.85rem}.confirm-dialog{width:min(420px,100%)}.confirm-dialog h3{margin-bottom:.5rem}.confirm-dialog p{white-space:pre-wrap;color:var(--text);margin-bottom:1rem;line-height:1.45}.confirm-dialog__actions{display:flex;justify-content:flex-end;gap:.5rem}.salary-approve-charges{margin:0 0 1rem;padding-left:1.1rem;color:var(--text);line-height:1.5;font-size:.88rem}.salary-approve-charges li+li{margin-top:.25rem}.status-change-options{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1rem}.project-invoices-link{display:inline-block;margin-top:.25rem;font-size:.75rem;color:var(--primary);text-decoration:none}.project-invoices-link:hover{text-decoration:underline}.tx-invoice-link{color:var(--primary);font-size:.8rem;text-decoration:none;font-weight:600}.tx-invoice-link:hover{text-decoration:underline}.finance-tabs{margin-bottom:.25rem}.finance-invoices-table td,.finance-invoices-table th{white-space:nowrap}.batch-generate-modal{max-height:90vh;overflow:auto}.batch-client-all{display:inline-flex;align-items:center;gap:.45rem;margin:.35rem 0 .5rem;cursor:pointer;font-size:.88rem}.batch-client-list{max-height:180px;overflow:auto;border:1px solid var(--border);border-radius:8px;padding:.4rem;background:var(--surface-2);display:flex;flex-direction:column;gap:.2rem}.batch-client-row{display:flex;align-items:center;gap:.45rem;padding:.3rem .4rem;border-radius:6px;cursor:pointer;font-size:.85rem}.batch-client-row:hover{background:var(--surface)}.muted-row{opacity:.65}
