:root{--bg:#f7f8fa;--bg-accent:#eef0f3;--surface:rgba(255,255,255,0.98);--surface-strong:#ffffff;--surface-card:rgba(255,255,255,0.72);--surface-input:#ffffff;--surface-subtle:rgba(255,255,255,0.6);--surface-nav:rgba(255,255,255,0.6);--surface-segment:rgba(255,255,255,0.8);--ink:#111318;--muted:#636878;--line:rgba(17,19,24,0.1);--line-strong:rgba(17,19,24,0.18);--primary:#1f6c5b;--primary-strong:#114539;--danger:#a63d2a;--shadow:0 24px 60px rgba(17,19,24,0.08);--radius:24px;--radius-sm:16px;--brand-bg:rgba(240,242,245,0.8);--brand-bg-mobile:rgba(240,242,245,0.9);--topbar-menu-bg:rgba(248,249,251,0.98);--pill-muted-bg:rgba(17,19,24,0.08);--progress-track:rgba(17,19,24,0.08)}[data-theme=dark]{--bg:#0f1117;--bg-accent:#181b22;--surface:rgba(22,25,34,0.97);--surface-strong:#1c2030;--surface-card:rgba(28,32,42,0.9);--surface-input:#1c2030;--surface-subtle:rgba(28,32,42,0.7);--surface-nav:rgba(22,25,34,0.85);--surface-segment:rgba(28,32,42,0.8);--ink:#e8ecf4;--muted:#8892a4;--line:rgba(232,236,244,0.1);--line-strong:rgba(232,236,244,0.16);--primary:#2d9b82;--primary-strong:#1f7060;--danger:#d05a42;--shadow:0 24px 60px rgba(0,0,0,0.5);--brand-bg:rgba(15,17,23,0.85);--brand-bg-mobile:rgba(15,17,23,0.92);--topbar-menu-bg:rgba(18,21,29,0.98);--pill-muted-bg:rgba(232,236,244,0.1);--progress-track:rgba(232,236,244,0.12);color-scheme:dark}[data-theme=dark] body{background:#0f1117}*{box-sizing:border-box}html{min-height:100%}body{margin:0;min-height:100vh;overflow-x:clip;color:var(--ink);font-family:SF Pro Display,Segoe UI,sans-serif;background:#f7f8fa}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh;overflow-x:clip}.topbar{position:sticky;top:0;z-index:10;padding:20px 24px 0}.access-card,.access-user,.topbar__inner,.user-panel{display:flex;align-items:center;justify-content:space-between;gap:14px}.topbar-nav{display:inline-flex;align-items:center;gap:10px}.mobile-topbar-menu{display:none}.topbar__inner{width:min(1320px,calc(100vw - 32px));margin:0 auto}.brand{display:inline-flex;align-items:center;gap:14px;padding:14px 18px;border:1px solid var(--line);border-radius:999px;background:var(--brand-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow)}.brand small,.brand strong{display:block}.brand>span:last-child,.project-card__top>div{min-width:0}.brand small{color:var(--muted)}.brand-mark{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;aspect-ratio:1/1;border-radius:50%;color:white;font-weight:700;background:linear-gradient(135deg,var(--primary) 0,#d1843a 100%)}.mobile-topbar-menu__summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:18px;background:var(--brand-bg-mobile);list-style:none;cursor:pointer}.mobile-topbar-menu__summary::-webkit-details-marker{display:none}.mobile-topbar-menu__summary:after{content:"Открыть";color:var(--muted);font-size:.86rem}.mobile-topbar-menu[open] .mobile-topbar-menu__summary:after{content:"Скрыть"}.mobile-topbar-menu__summary small,.mobile-topbar-menu__summary strong{display:block}.mobile-topbar-menu__summary small{color:var(--muted)}.mobile-topbar-menu__content{display:grid;gap:10px;margin-top:10px}.page-frame{width:min(1320px,calc(100vw - 32px));margin:0 auto;padding:24px 0 56px}.page-grid{display:grid;gap:18px;min-width:0}.notice-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow)}.notice-banner p,.notice-banner strong{margin:0}.notice-banner p{margin-top:6px;color:rgba(255,255,255,.92)}.notice-banner .button{color:white;background:rgba(255,255,255,.16)}.notice-banner--success{color:white;background:linear-gradient(135deg,#1f6c5b,#114539)}.notice-banner--error{color:white;background:linear-gradient(135deg,#b64934,#7e2b1d)}.hero{display:grid;gap:18px;grid-template-columns:1.3fr 1fr;align-items:start}.panel{padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);min-width:0}.bar-row__head,.calendar-group__head,.inline-form,.line-item,.line-item__heading,.metric-list,.page-header,.project-card__top,.row-actions,.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-header{align-items:end}.page-header.compact{align-items:center}.page-header--project{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.95fr);align-items:start;gap:22px}.page-header__content{display:grid;gap:10px;min-width:0}.section-head{margin-bottom:18px}.section-head--spaced{margin-top:24px}.hero h1,.page-header h1,.section-head h2{margin:6px 0 0}.hero p,.page-header p,.section-head p{margin:8px 0 0;color:var(--muted);max-width:62ch}.eyebrow{display:inline-flex;padding:6px 10px;border-radius:999px;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;color:var(--primary-strong);background:rgba(31,108,91,.12)}.eyebrow--link{width:fit-content;text-decoration:none}.form-card{display:grid;gap:14px;min-width:0}.form-card--inline{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-strong)}.form-card--user-row{grid-template-columns:repeat(5,minmax(0,1fr)) auto auto}.form-card--category-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.form-card--category-row label:first-of-type{grid-column:1/-1}.form-card--category-row .checkbox{grid-column:1/2;align-self:center;min-height:48px}.form-card--category-row .button{grid-column:2/3;justify-self:end;min-width:150px}.form-card--category-row label:first-of-type .input{min-width:0}.form-card--project-settings{grid-template-columns:minmax(220px,2fr) minmax(150px,1fr) auto;align-items:end;width:min(100%,620px);padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:linear-gradient(145deg,rgba(31,108,91,.06),var(--surface-strong));box-shadow:inset 0 1px 0 var(--line)}.form-card--project-settings label{min-width:0}.form-card--project-settings .button{min-width:100px;align-self:end}.account-create-strip{display:grid;gap:14px 16px;grid-template-columns:2fr 1.6fr 1fr .7fr 1.4fr auto;align-items:start}.account-create-strip__currency{min-width:0}.account-create-strip__action{display:grid;gap:8px}.account-list{display:grid;gap:6px}.account-list__inactive-toggle{margin-top:16px;font-size:13px;text-align:center}.account-list__inactive-toggle a{color:var(--muted);text-decoration:none}.account-list__inactive-toggle a:hover{color:var(--ink)}.account-row{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-strong);overflow:hidden}.account-row--inactive{opacity:.55}.account-row__head{display:grid;grid-template-columns:28px 1fr auto auto 20px;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.account-row__head::-webkit-details-marker{display:none}.account-row__head:hover{background:var(--surface-card)}.account-row__icon{font-size:18px;line-height:1;text-align:center}.account-row__name{font-weight:500;font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-row__inactive-badge{font-size:11px;color:var(--muted);background:var(--pill-muted-bg);border-radius:20px;padding:2px 8px;white-space:nowrap}.account-row__balance{font-size:14px;font-weight:500;color:var(--muted);white-space:nowrap}.account-row__chevron{width:16px;height:16px;position:relative;flex-shrink:0}.account-row__chevron:after,.account-row__chevron:before{content:"";position:absolute;top:50%;width:6px;height:1.5px;background:var(--muted);border-radius:2px;transition:transform .15s}.account-row__chevron:before{left:1px;transform:translateY(-50%) rotate(45deg)}.account-row__chevron:after{right:1px}.account-row[open] .account-row__chevron:before,.account-row__chevron:after{transform:translateY(-50%) rotate(-45deg)}.account-row[open] .account-row__chevron:after{transform:translateY(-50%) rotate(45deg)}.account-row__body{border-top:1px solid var(--line)}.account-row__form{padding:16px}.account-row__form-grid{display:grid;gap:14px 16px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.account-row__form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px}.account-form-card{padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-strong)}.account-form-card__grid{display:grid;gap:14px 18px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.account-form-card__field--wide{grid-column:1/-1}.account-form-card__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:4px}.account-form-card__footer .row-actions{margin-left:auto}.participant-row-card{padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-strong)}.participant-row-card__grid{display:grid;gap:14px 18px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.participant-row-card__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:4px}.accent-form{padding:20px;border-radius:var(--radius);background:linear-gradient(145deg,rgba(31,108,91,.08),var(--surface-strong))}.form-grid{display:grid;gap:14px}.form-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}label{display:grid;gap:8px}label>span{color:var(--muted);font-size:.92rem}.checkbox{display:inline-flex;align-items:center;gap:10px}.checkbox input{width:18px;height:18px}.input{width:100%;padding:12px 14px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface-input);color:var(--ink)}.input--error{border-color:rgba(181,77,43,.7);box-shadow:0 0 0 3px rgba(181,77,43,.12)}.input:disabled,.textarea:disabled{color:var(--muted);cursor:not-allowed;background:rgba(92,84,74,.08)}.textarea{resize:vertical;min-height:96px}.field-error{color:var(--danger);font-size:.85rem}.subtle-note{color:var(--muted);font-size:.92rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:1px solid var(--line-strong);border-radius:10px;cursor:pointer;font-size:.875rem;font-weight:500;line-height:1.4;color:var(--ink);background:var(--surface-strong);transition:background .15s,border-color .15s,box-shadow .15s}.button:hover{background:var(--bg-accent);border-color:var(--line-strong)}.button.primary{color:white;background:var(--primary);border-color:transparent;box-shadow:0 1px 3px rgba(31,108,91,.3)}.button.primary:hover{background:var(--primary-strong);box-shadow:0 2px 8px rgba(31,108,91,.4)}.button.subtle{padding:7px 12px;font-size:.82rem;border-color:var(--line);color:var(--muted);background:transparent}.button.subtle:hover{color:var(--ink);background:var(--bg-accent)}.button.danger{color:white;background:var(--danger);border-color:transparent}.button.danger:hover{filter:brightness(.9)}.button:disabled{opacity:.56;cursor:not-allowed}.theme-toggle{font-size:1.1rem;min-width:42px;min-height:42px;flex-shrink:0}.budget-list{gap:12px}.budget-card,.budget-list{display:flex;flex-direction:column}.budget-card{background:var(--surface-card);border:1px solid var(--border);border-radius:10px;padding:14px 16px;gap:8px}.budget-card--compact{padding:10px 14px;gap:6px}.budget-card__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.budget-card__meta{display:flex;align-items:center;gap:8px;min-width:0}.budget-card__meta strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.budget-card__amounts{display:flex;align-items:baseline;gap:4px;flex-shrink:0}.budget-card__limit{color:var(--muted);font-size:.85rem}.budget-progress{height:6px;background:var(--progress-track);border-radius:3px;overflow:hidden}.budget-progress--thin{height:4px;flex:1 1}.budget-progress__bar{height:100%;background:var(--primary);border-radius:3px;transition:width .3s ease}.budget-progress__bar--warn{background:#f59e0b}.budget-progress__bar--over{background:var(--danger)}.budget-card__footer{display:flex;justify-content:space-between;font-size:.82rem}.budget-card__edit{border-top:1px solid var(--border);padding-top:12px;margin-top:4px}.budget-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.amount--negative{color:var(--danger)}.amount--positive{color:var(--primary)}.amount--muted{color:var(--muted);font-size:.85rem}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dashboard-panel{margin:0}.dashboard-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--border)}.dashboard-row:last-child{border-bottom:none}.dashboard-row__left{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1}.dashboard-row__right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.dashboard-row__label{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-row__date{font-size:.78rem;color:var(--muted)}.dashboard-row__date--overdue{color:var(--danger);font-weight:600}.stats-grid--2col{grid-template-columns:1fr 1fr!important;margin-bottom:12px}@media (max-width:768px){.budget-edit-grid,.dashboard-grid{grid-template-columns:1fr}}.counterparty-list-wrapper{display:flex;flex-direction:column;gap:12px}.counterparty-list-search{display:flex;align-items:center;gap:10px}.counterparty-list-search .input{flex:1 1}.counterparty-list-search__count{font-size:.85rem;color:var(--muted);white-space:nowrap}.counterparty-list{display:flex;flex-direction:column;gap:2px}.counterparty-row{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface-card)}.counterparty-row--inactive{opacity:.6}.counterparty-row__summary{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:none;border:none;cursor:pointer;text-align:left;color:var(--ink);font-size:.95rem}.counterparty-row__summary:hover{background:var(--surface-subtle)}.counterparty-row__name{font-weight:500;flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.counterparty-row__type{flex-shrink:0}.counterparty-row__chevron{font-size:.7rem;color:var(--muted);flex-shrink:0}.counterparty-row__form{padding:16px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:12px}.pagination{display:flex;align-items:center;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.pagination__info{color:var(--muted);font-size:.9rem;flex:1 1;text-align:center}.period-bar{display:flex;flex-direction:column;gap:10px}.period-bar__presets{display:flex;flex-wrap:wrap;gap:8px}.period-bar__btn--active{color:white;background:linear-gradient(135deg,var(--primary) 0,var(--primary-strong) 100%)}.period-bar__custom{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.period-bar__custom .input{width:auto;flex:1 1 140px}.card-grid,.stats-grid{display:grid;gap:16px;min-width:0}.card-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.project-card,.stat-card{display:grid;gap:10px;padding:20px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-card);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--line);border-radius:3px 3px 0 0}.stat-card strong{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;line-height:1}.stat-card span{font-size:.78rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em}.stat-card__value--positive{color:var(--primary)}.stat-card__value--negative{color:var(--danger)}.stat-card__value--warn{color:#d97706}.stat-card:has(.stat-card__value--positive):before{background:var(--primary);opacity:.5}.stat-card:has(.stat-card__value--negative):before{background:var(--danger);opacity:.5}.empty-state,.inline-link,.line-item small,.metric-list dt,.project-card small,.stat-card span{color:var(--muted)}.project-card:hover{transform:translateY(-2px);transition:transform .14s ease}.project-card__top>div{display:grid;gap:4px}.project-card__top small,.project-card__top strong{display:block}.brand strong,.project-card__top strong,.user-chip strong{overflow-wrap:anywhere}.brand small,.project-card__top small,.user-chip small{line-height:1.4;overflow-wrap:anywhere}.user-chip{display:grid;gap:2px;padding:10px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-nav)}.user-chip small{color:var(--muted)}.pill{padding:6px 10px;border-radius:999px;font-size:.8rem;background:rgba(31,108,91,.08);white-space:nowrap}.pill--muted{color:var(--muted);background:var(--pill-muted-bg)}.pill--success{color:#1f6c5b;background:rgba(31,108,91,.12)}.pill--warn{color:#92610a;background:rgba(231,166,26,.15)}.statement-row--new{background:rgba(231,166,26,.06)}.statement-row--matched{background:rgba(31,108,91,.04);opacity:.75}.statement-row--ignored{background:transparent;opacity:.4}.toast-notice{position:fixed;bottom:32px;left:50%;transform:translateX(-50%);z-index:9999;padding:14px 24px;border-radius:14px;font-size:.9rem;font-weight:500;color:#fff;pointer-events:none;animation:toast-in .2s ease}.toast-notice--success{background:rgba(31,108,91,.92)}.toast-notice--error,.toast-notice--success{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.toast-notice--error{background:rgba(166,61,42,.92)}@keyframes toast-in{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.metric-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.metric-list--3col{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-list dd,.metric-list dt{margin:0}.metric-list dd{margin-top:6px;font-weight:600;color:var(--ink)}.project-card{border-top:3px solid var(--line)}.project-card--positive{border-top-color:var(--primary)}.project-card--negative{border-top-color:var(--danger)}.project-card__net{display:grid;gap:4px}.project-card__net>span{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.project-card__net>strong{font-size:1.6rem;font-weight:700;letter-spacing:-.02em;line-height:1}.project-card__bar-wrap{display:grid;gap:5px}.project-card__bar-label{font-size:11px;color:var(--muted)}.project-card__footer{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);padding-top:4px;border-top:1px solid var(--line)}.project-nav{display:grid;gap:14px;min-width:0}.project-nav__meta{display:flex;flex-wrap:wrap;gap:10px}.project-nav__groups{display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));min-width:0}.project-nav__group{display:grid;gap:2px;padding:10px;border:1px solid var(--line);border-radius:18px;background:var(--surface-nav);min-width:0}.project-nav__group-title{font-size:.7rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);padding:4px 8px 6px}.project-nav__items{display:flex;flex-direction:column;gap:1px}.project-nav__item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;color:var(--muted);font-size:.88rem;font-weight:500;transition:background .12s,color .12s}.project-nav__item:hover{background:var(--bg-accent);color:var(--ink)}.project-nav__item:hover .project-nav__icon{opacity:1;color:var(--ink)}.project-nav__item--active{background:rgba(31,108,91,.1);color:var(--primary-strong);font-weight:600}.project-nav__item--active .project-nav__icon{color:var(--primary);opacity:1}.project-nav__icon{flex-shrink:0;opacity:.55;transition:color .12s,opacity .12s}.segment-nav{display:flex;flex-wrap:wrap;gap:10px}.segment-link{padding:10px 14px;border-radius:999px;color:var(--muted);background:var(--surface-segment)}.segment-link.active{color:white;background:linear-gradient(135deg,#222720 0,var(--primary) 100%)}.dashboard-period{display:flex;flex-direction:column;gap:12px}.dashboard-period__custom{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dashboard-period__custom label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.input--sm{padding:6px 10px;font-size:13px;height:auto}.split-layout{display:grid;gap:18px;grid-template-columns:1.2fr 1fr;min-width:0}.stack{display:grid;gap:12px}.calendar-groups{display:grid;gap:18px}.calendar-group{padding:18px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-subtle)}.auth-page{padding-top:32px}.auth-grid{display:grid;gap:16px}.readonly-card{display:grid;gap:10px;max-width:340px}.access-card{flex-wrap:wrap;padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-subtle)}.access-card--active{border-color:rgba(31,108,91,.32);background:linear-gradient(145deg,rgba(31,108,91,.14),var(--surface));box-shadow:0 10px 28px rgba(31,108,91,.08)}.attachment-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-subtle)}.attachment-card small{color:var(--muted)}.access-user{display:grid;gap:2px;min-width:220px}.access-user small{color:var(--muted)}.line-item{padding:14px 0;border-bottom:1px solid var(--line)}.line-item>div{display:flex;flex-direction:column;gap:2px}.line-item:last-child{padding-bottom:0;border-bottom:0}.line-item--stretch,.line-item__heading{align-items:center}.row-actions{flex-wrap:wrap}.row-actions--compact{gap:8px;justify-content:flex-start}.table-subtext{margin-top:8px;font-size:.86rem}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.76rem;color:white}.badge--overdue{background:var(--danger)}.badge--today{background:#9b5d18}.badge--soon{background:#355ca8}.badge--future{background:#5f6c62}.bar-row{display:grid;gap:8px}.progress{width:100%;height:10px;overflow:hidden;border-radius:999px;background:var(--progress-track)}.progress__fill{height:100%;border-radius:999px}.progress__fill--expense{background:linear-gradient(90deg,#cf7a3d,#a63d2a)}.progress__fill--income{background:linear-gradient(90deg,#2f8f7f,#1f6c5b)}.table-wrap{overflow:auto;max-width:100%;border-radius:12px;border:1px solid var(--line)}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:10px 14px;text-align:left;background:var(--surface-subtle);color:var(--muted);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;border-bottom:1px solid var(--line)}.data-table th:first-child{border-radius:12px 0 0 0}.data-table th:last-child{border-radius:0 12px 0 0}.data-table td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--line);font-size:.88rem}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background .1s}.data-table tbody tr:hover{background:var(--surface-subtle)}.data-table td.amount-cell,.data-table th:has(+.amount-cell){text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.amount-cell,.amount-cell--positive{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.amount-cell--positive{color:var(--primary)}.amount-cell--negative{color:var(--danger);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.table-subtext{font-size:.78rem;color:var(--muted);margin-top:3px}.empty-state{padding:26px;border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-subtle)}.help-block{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.help-block__trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.help-block__trigger::-webkit-details-marker{display:none}.help-block__label{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.9rem;color:var(--primary)}.help-block__toggle-hint{font-size:.8rem;color:var(--muted);transition:opacity .15s}.help-block[open] .help-block__toggle-hint{opacity:0}.help-block__content{padding:0 20px 20px;border-top:1px solid var(--line)}.help-type-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding-top:16px}.help-type-card{padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg)}.help-type-card strong{display:block;font-size:.9rem;margin-bottom:6px}.help-type-card p{margin:0;font-size:.82rem;color:var(--muted);line-height:1.5}.inline-link{text-decoration:underline;text-underline-offset:3px}@media (max-width:980px){.hero,.page-header--project,.split-layout{grid-template-columns:1fr}.form-card--inline,.inline-form,.page-header{align-items:start}.form-card--category-row,.form-card--inline,.form-card--project-settings,.form-card--user-row,.inline-form{grid-template-columns:1fr}.account-create-strip{grid-template-columns:1fr 1fr}.account-create-strip__action,.account-create-strip__currency{grid-column:1/-1}.account-row__form-grid{grid-template-columns:1fr 1fr}.account-form-card__grid,.participant-row-card__grid{grid-template-columns:1fr}.account-form-card__footer,.participant-row-card__footer{flex-direction:column;align-items:start}.account-form-card__footer .row-actions{margin-left:0;width:100%}.form-card--project-settings,.participant-row-card__footer .button{width:100%}.form-card--project-settings .button{width:100%;min-width:0}.access-card,.bar-row__head,.calendar-group__head,.line-item,.line-item__heading,.notice-banner,.page-header,.project-card__top,.row-actions,.section-head,.topbar__inner,.user-panel{flex-direction:column;align-items:start}}@media (max-width:680px){.page-frame{width:min(100vw - 20px,1320px);padding-top:16px}.topbar{position:static;padding:14px 10px 0}.topbar__inner{width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;position:relative}.user-panel--desktop{display:none}.mobile-topbar-menu{display:grid;justify-items:center;position:relative;flex-shrink:0}.brand,.mobile-topbar-menu{width:auto;min-width:0;margin:0}.brand{display:flex;max-width:calc(100% - 110px);min-height:58px;padding:12px 14px;gap:10px;border-radius:18px;align-items:center;overflow:hidden;box-shadow:none}.brand>span:last-child{min-width:0}.brand small,.brand strong{word-break:normal;overflow-wrap:normal}.brand strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.9rem;line-height:1.1}.brand small{display:none}.brand-mark{width:34px;height:34px}.topbar-nav,.topbar-nav .button,.user-chip,.user-panel,.user-panel .button,.user-panel form{width:100%}.topbar-nav{gap:8px}.mobile-topbar-menu__content .button,.topbar-nav .button,.user-panel form .button{justify-content:center}.mobile-topbar-menu__summary{display:flex;align-items:center;justify-content:center;min-height:58px;padding:12px 16px;border-radius:18px;box-shadow:none;white-space:nowrap}.mobile-topbar-menu__summary:after{content:none}.mobile-topbar-menu__summary strong{font-size:.9rem;line-height:1}.mobile-topbar-menu__summary small{display:none}.mobile-topbar-menu__summary span{min-width:0}.mobile-topbar-menu__content{position:absolute;top:calc(100% + 8px);right:0;left:auto;width:min(300px,calc(100vw - 20px));display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--topbar-menu-bg);box-shadow:var(--shadow);z-index:20}.panel,.project-card,.stat-card{padding:18px}.card-grid>*,.page-grid>*,.project-nav__groups>*,.split-layout>*,.stats-grid>*{min-width:0;max-width:100%}.hero{gap:14px}.section-head{gap:10px}.hero h1,.page-header h1,.section-head h2{font-size:clamp(1.8rem,7vw,2.35rem);line-height:1.02}.hero p,.page-header p,.section-head p{max-width:none}.page-header--project{gap:16px}.form-grid.two-columns,.metric-list{grid-template-columns:1fr}.project-card__top{gap:10px}.project-card__top .pill{align-self:flex-start}.metric-list{gap:12px}.project-nav__groups{display:flex;flex-wrap:nowrap;gap:12px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.project-nav__group{flex:0 0 min(280px,calc(100vw - 36px));min-width:min(280px,calc(100vw - 36px))}}