:root{--bg: #080808;--bg-2: #101010;--bg-3: #161616;--bg-4: #1c1c1c;--ink: #f6f1e8;--muted: #a39c91;--faint: #6f6a62;--line: rgba(246, 241, 232, .08);--line-strong: rgba(246, 241, 232, .16);--accent: #e8dcc6;--accent-dim: rgba(232, 220, 198, .12);--danger: #d9786c;--danger-dim: rgba(217, 120, 108, .12);--ok: #86c09a;--ok-dim: rgba(134, 192, 154, .12);--warn: #d4b562;--warn-dim: rgba(212, 181, 98, .12);--shadow: 0 24px 80px rgba(0, 0, 0, .45);--font: "Outfit", system-ui, sans-serif;--serif: "Cormorant Garamond", Georgia, serif;--sidebar: 248px;--radius: 14px;--radius-sm: 10px;--focus: 0 0 0 3px rgba(232, 220, 198, .28)}*{box-sizing:border-box}html,body,#root{min-height:100%}html{color-scheme:dark}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--ink);letter-spacing:.01em;font-size:15px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:var(--focus);border-color:var(--accent)}h1,h2,.serif{font-family:var(--serif);font-weight:500;letter-spacing:-.02em}.login-wrap{min-height:100vh;display:grid;grid-template-columns:minmax(280px,1fr) minmax(360px,480px);background:radial-gradient(900px 420px at 18% 12%,rgba(232,220,198,.12),transparent 55%),linear-gradient(180deg,#0c0c0c,var(--bg))}.login-hero{display:flex;flex-direction:column;justify-content:space-between;padding:3.2rem 3.4rem}.login-hero h2{margin:1.4rem 0 .6rem;font-size:clamp(2.4rem,5vw,4.2rem);line-height:.95;max-width:11ch}.login-hero p{margin:0;color:var(--muted);max-width:36ch;line-height:1.55}.login-hero ul{margin:0;padding:0;list-style:none;display:grid;gap:.55rem;color:var(--muted);font-size:.92rem}.login-hero li:before{content:"— ";color:var(--accent)}.login-panel{display:grid;place-items:center;padding:1.5rem;background:#101010b8;border-left:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.login-card{width:min(400px,100%);background:var(--bg-2);border:1px solid var(--line-strong);border-radius:20px;padding:2rem 1.9rem 1.8rem;box-shadow:var(--shadow)}.login-card h1{margin:.45rem 0 .25rem;font-size:2.15rem}.login-card>p{color:var(--muted);margin:0 0 1.4rem}.brand-mark{color:var(--accent);letter-spacing:.28em;text-transform:uppercase;font-size:.7rem;font-weight:500}.app-shell{display:grid;grid-template-columns:var(--sidebar) 1fr;min-height:100vh}.sidebar{border-right:1px solid var(--line);background:linear-gradient(180deg,#121212,#0d0d0d);padding:1.15rem .85rem 1rem;display:flex;flex-direction:column;gap:.15rem;position:sticky;top:0;height:100vh}.sidebar .logo{padding:.25rem .7rem 1.05rem}.sidebar .logo strong{display:block;font-family:var(--serif);font-size:1.55rem;line-height:1}.nav-section{margin:.95rem .75rem .3rem;font-size:.68rem;color:var(--faint);letter-spacing:.16em;text-transform:uppercase}.nav-link{display:flex;align-items:center;gap:.65rem;padding:.58rem .75rem;border-radius:11px;color:var(--muted);font-size:.94rem}.nav-link.active{background:var(--accent-dim);color:var(--ink);box-shadow:inset 0 0 0 1px #e8dcc61f}.nav-link:hover{background:var(--bg-4);color:var(--ink)}.nav-ico{width:16px;height:16px;flex:none;opacity:.85}.sidebar .user{margin-top:auto;padding:.9rem .7rem .2rem;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.75rem}.user-card{display:flex;align-items:center;gap:.7rem;min-width:0}.user-card div{min-width:0}.user-card strong{display:block;font-size:.9rem;font-weight:500}.user-card span{display:block;color:var(--muted);font-size:.78rem}.avatar{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:var(--accent-dim);color:var(--accent);font-size:.72rem;letter-spacing:.04em;flex:none}.content{padding:1.7rem 1.9rem 2.6rem;overflow:auto;min-width:0}.mobile-bar{display:none}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.page-head h1{margin:0;font-size:2.05rem}.page-head p{margin:.28rem 0 0;color:var(--muted);max-width:58ch;line-height:1.45}.page-kicker{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;font-size:.68rem;margin-bottom:.2rem}.page-actions{display:flex;gap:.55rem;flex-wrap:wrap}.toolbar,.form-grid,.kpi-grid{display:grid;gap:.8rem}.filter-card,.toolbar{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1rem;align-items:end;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:.95rem}.filter-card>label,.toolbar>label{flex:0 1 180px;min-width:150px}.filter-card .actions,.toolbar .actions{flex:1 1 100%}.filter-card .tabs,.toolbar .tabs{margin-bottom:0}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.3rem}.kpi,.card,.drawer,.modal{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius)}.kpi{padding:1.05rem 1.15rem 1rem;position:relative;overflow:hidden}.kpi span{color:var(--muted);font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.kpi strong{display:block;margin-top:.45rem;font-size:1.38rem;font-variant-numeric:tabular-nums;letter-spacing:-.03em}.kpi em{display:block;margin-top:.4rem;font-style:normal;color:var(--faint);font-size:.78rem}.kpi.tone-danger{box-shadow:inset 0 0 0 1px var(--danger-dim)}.kpi.tone-ok{box-shadow:inset 0 0 0 1px var(--ok-dim)}.kpi.tone-warn{box-shadow:inset 0 0 0 1px var(--warn-dim)}a.kpi{text-decoration:none;color:inherit;display:block;cursor:pointer}a.kpi:hover{border-color:var(--line-strong);background:var(--bg-3)}.card{padding:0;overflow:auto}.card-pad{padding:1.05rem 1.1rem 1.15rem}.card+.card,.filter-card+.card,.toolbar+.card{margin-top:0}.stack{display:grid;gap:1rem}label{display:flex;flex-direction:column;gap:.38rem;font-size:.78rem;color:var(--muted)}input,select,textarea{background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:.64rem .75rem;transition:border-color .15s ease,box-shadow .15s ease}textarea{min-height:90px;resize:vertical}input[type=file]{padding:.42rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-grid .span-2{grid-column:span 2}.search-select{position:relative}.search-select input{width:100%}.search-select-list{position:fixed;z-index:80;margin:0;padding:.28rem;list-style:none;max-height:min(280px,42vh);overflow:auto;background:var(--bg-3);border:1px solid var(--line-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow)}.search-select-list button{display:block;width:100%;text-align:left;border:0;background:transparent;border-radius:8px;padding:.55rem .65rem;cursor:pointer;color:var(--ink)}.search-select-list button:hover,.search-select-list button.on{background:var(--accent-dim)}.search-select-empty{padding:.65rem;color:var(--muted);font-size:.85rem}.actions{display:flex;gap:.55rem;flex-wrap:wrap;align-items:center}.btn{border:1px solid var(--line-strong);background:var(--bg-3);border-radius:999px;padding:.52rem 1.05rem;cursor:pointer;font-size:.9rem;transition:background .15s ease,border-color .15s ease,transform .12s ease}.btn:hover{background:var(--bg-4)}.btn.primary{background:var(--accent);color:#14110c;border-color:transparent;font-weight:600}.btn.primary:hover{filter:brightness(1.04)}.btn.danger{color:var(--danger);border-color:#d9786c47;background:var(--danger-dim)}.btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn{width:34px;height:34px;border-radius:999px;border:1px solid var(--line);background:transparent;cursor:pointer;font-size:1.2rem;line-height:1}.icon-btn:hover{background:var(--bg-4)}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{padding:.78rem .9rem;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}th{color:var(--faint);font-weight:500;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;background:#141414;position:sticky;top:0;z-index:1}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}td.wrap{white-space:normal;max-width:340px}tr.clickable{cursor:pointer}tr.clickable:hover{background:#e8dcc60d}.table-wrap{overflow:auto;max-height:min(72vh,820px)}.table-meta{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem 0;color:var(--muted);font-size:.8rem}.badge{display:inline-flex;align-items:center;padding:.18rem .55rem;border-radius:999px;font-size:.72rem;letter-spacing:.02em;background:var(--bg-4);color:var(--muted)}.badge.Paid,.badge.Received,.badge.Matched{color:var(--ok);background:var(--ok-dim)}.badge.Overdue,.badge.Cancelled{color:var(--danger);background:var(--danger-dim)}.badge.Projected,.badge.Pending,.badge.ToReceive,.badge.Unmatched{color:var(--warn);background:var(--warn-dim)}.tree-pad-1{padding-left:1.05rem}.tree-pad-2{padding-left:2.1rem}.tree-pad-3{padding-left:3.15rem}.row-total{font-weight:600}.row-bank{background:#e8dcc60b}.neg{color:var(--danger)}.expand{width:1.4rem;height:1.4rem;padding:0;display:inline-grid;place-items:center;color:var(--accent);cursor:pointer;border:0;background:transparent;border-radius:6px}.expand:hover{background:var(--accent-dim)}.matrix-table th:first-child,.matrix-table td:first-child{position:sticky;left:0;z-index:2;background:var(--bg-2);min-width:220px}.matrix-table thead th:first-child{z-index:3;background:#141414}.modal-back,.drawer-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000009e;z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-back{display:grid;place-items:center;padding:1rem}.drawer-back{display:flex;justify-content:flex-end}.modal{width:min(840px,100%);padding:1.35rem 1.3rem 1.2rem;max-height:90vh;overflow:auto}.modal h2{margin:0 0 1rem}.drawer.wide{width:min(1040px,100%)}.drawer{width:min(520px,100%);height:100%;border-radius:0;border:none;border-left:1px solid var(--line-strong);padding:0;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow)}.drawer-head,.drawer-foot{padding:1.1rem 1.15rem}.drawer-head{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line)}.drawer-head h2{margin:0;font-size:1.55rem}.drawer-head p{margin:.3rem 0 0}.drawer-body{padding:1.1rem 1.15rem;overflow:auto;flex:1}.drawer-foot{border-top:1px solid var(--line)}.section-title{margin:1.1rem 0 .55rem}.section-title h2{margin:0;font-size:1.25rem}.section-title p{margin:.2rem 0 0}.suggestion-list{display:flex;flex-direction:column;gap:.5rem;max-height:46vh;overflow:auto;margin-top:.8rem}.suggestion-item{display:flex;flex-direction:row;align-items:flex-start;gap:.7rem;padding:.75rem .85rem;border:1px solid var(--line);border-radius:12px;cursor:pointer;color:var(--ink);font-size:.92rem}.suggestion-item.on{border-color:#e8dcc673;background:var(--accent-dim)}.suggestion-item input{margin-top:.25rem;accent-color:var(--accent)}.suggestion-item span{display:flex;flex-direction:column;gap:.2rem}.alert{padding:.7rem .85rem;border-radius:12px;margin:0 0 1rem;font-size:.9rem}.alert.danger{color:var(--danger);background:var(--danger-dim)}.alert.info{color:var(--accent);background:var(--accent-dim)}.alert ul{margin:.55rem 0 0;padding-left:1.15rem}.error{color:var(--danger);font-size:.9rem}.muted{color:var(--muted)}.tabs{display:flex;gap:.35rem;margin-bottom:1rem;flex-wrap:wrap;padding:.25rem;background:var(--bg-2);border:1px solid var(--line);width:fit-content;border-radius:999px}.tab{padding:.42rem .9rem;border-radius:999px;border:0;background:transparent;cursor:pointer;color:var(--muted)}.tab.on{background:var(--accent);color:#14110c;font-weight:600}.empty-state,.loading-state{padding:3rem 1.4rem;text-align:center;color:var(--muted)}.empty-state strong{display:block;color:var(--ink);font-size:1.05rem;margin-bottom:.35rem}.empty-state p{margin:0 0 1rem}.quick-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem}.quick-link{display:block;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-2)}.quick-link strong{display:block;margin-bottom:.25rem}.quick-link span{color:var(--muted);font-size:.85rem}.quick-link:hover{border-color:var(--line-strong);background:var(--bg-3)}.tree-row{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;padding:.55rem .85rem;border-bottom:1px solid var(--line)}.tree-row:hover{background:#e8dcc60a}.split-2+.card{margin-top:1rem}.btn.small{padding:.36rem .8rem;font-size:.8rem}.chip{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;padding:.34rem .75rem;font-size:.78rem;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.chip:hover{background:var(--bg-4);color:var(--ink);border-color:var(--line-strong)}.pc-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1rem;align-items:start}.pc-tree-card{overflow:visible}.pc-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .9rem;padding:.85rem .95rem;border-bottom:1px solid var(--line);background:var(--bg-2);border-radius:var(--radius) var(--radius) 0 0}.pc-search{position:relative;flex:1 1 240px;min-width:200px;display:block}.pc-search svg{position:absolute;left:.75rem;top:50%;width:16px;height:16px;transform:translateY(-50%);color:var(--faint);pointer-events:none}.pc-search input{width:100%;padding-left:2.25rem;padding-right:2rem;background:var(--bg)}.pc-search input::-webkit-search-cancel-button{display:none}.pc-clear{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--muted);width:1.5rem;height:1.5rem;border-radius:50%;cursor:pointer;font-size:1rem;line-height:1}.pc-clear:hover{background:var(--bg-4);color:var(--ink)}.pc-kinds{display:flex;gap:.35rem;flex-wrap:wrap}.pc-kinds .chip{display:inline-flex;align-items:center;gap:.4rem}.pc-kinds .chip em{font-style:normal;color:var(--faint);font-variant-numeric:tabular-nums}.pc-kinds .chip.on{background:var(--accent-dim);color:var(--ink);border-color:#e8dcc659}.pc-kinds .chip.on em{color:var(--accent)}.pc-tools{display:flex;align-items:center;gap:.8rem;margin-left:auto}.pc-check{flex-direction:row;align-items:center;gap:.45rem;font-size:.78rem;color:var(--muted);cursor:pointer;white-space:nowrap}.pc-check input{accent-color:var(--accent);margin:0}.pc-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ink);opacity:.75;flex:none}.pc-dot.revenue{background:var(--ok);opacity:1}.pc-dot.tax{background:var(--warn);opacity:1}.pc-dot.expense{background:var(--ink);opacity:.55}.pc-tree{list-style:none;margin:0;padding:.35rem 0}.pc-row{display:flex;align-items:center;gap:.35rem;min-height:2.55rem;padding:0 .6rem 0 .9rem;border-bottom:1px solid var(--line);position:relative;transition:background .12s ease}.pc-row:last-child{border-bottom:0}.pc-row:hover{background:#e8dcc609}.pc-row.is-editing{background:var(--accent-dim);box-shadow:inset 3px 0 0 var(--accent)}.pc-row.is-target{box-shadow:inset 3px 0 0 var(--ok);background:#86c09a0f}.pc-row.is-hit .pc-name{color:var(--accent)}.pc-row.is-inactive .pc-name,.pc-row.is-inactive .pc-code{opacity:.5;text-decoration:line-through;text-decoration-color:var(--faint)}.pc-row.pc-root{background:#ffffff04}.pc-row.pc-root+.pc-row:not(.pc-root){border-top:0}.pc-root .pc-name{font-weight:600;font-size:.98rem;letter-spacing:.01em}.pc-root .pc-code{color:var(--accent);background:var(--accent-dim)}.pc-group:not(.pc-root) .pc-name{font-weight:500}.pc-leaf .pc-name{color:var(--ink);opacity:.92}.pc-depth-2 .pc-name,.pc-depth-3 .pc-name,.pc-depth-4 .pc-name{font-size:.88rem}.pc-indent{display:flex;align-self:stretch;flex:none}.pc-guide{display:block;width:1.35rem;border-left:1px solid var(--line-strong);margin-left:.65rem;opacity:.7}.pc-expand{width:1.5rem;height:1.5rem;color:var(--muted);border-radius:6px;flex:none}.pc-expand svg{width:12px;height:12px;transition:transform .15s ease}.pc-expand.on svg{transform:rotate(90deg)}.pc-expand:hover{color:var(--ink)}.pc-expand:disabled{opacity:.35;cursor:default;background:transparent}.pc-expand-gap{width:1.5rem;height:1.5rem;display:inline-grid;place-items:center;flex:none}.pc-expand-gap .pc-dot{width:5px;height:5px;opacity:.45}.pc-main{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:.65rem;padding:.5rem .4rem;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit;border-radius:8px}.pc-main:focus-visible{box-shadow:var(--focus);outline:0}.pc-code{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.74rem;color:var(--muted);background:var(--bg-3);border:1px solid var(--line);padding:.14rem .45rem;border-radius:6px;white-space:nowrap;flex:none;min-width:2.6rem;text-align:center;letter-spacing:.02em}.pc-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pc-tags{display:inline-flex;gap:.35rem;align-items:center;flex:none;margin-left:.2rem}.pc-tag{font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;padding:.16rem .5rem;border-radius:999px;border:1px solid var(--line);color:var(--muted);white-space:nowrap}.pc-tag.kind-revenue{color:var(--ok);border-color:#86c09a4d;background:var(--ok-dim)}.pc-tag.kind-tax{color:var(--warn);border-color:#d4b5624d;background:var(--warn-dim)}.pc-tag.kind-expense{color:var(--ink);border-color:var(--line-strong);background:var(--bg-3)}.pc-tag.exempt{color:var(--ok);border-color:#86c09a4d}.pc-tag.inactive{color:var(--danger);border-color:#d9786c4d;background:var(--danger-dim);text-decoration:none}.pc-tag.count{color:var(--faint);text-transform:none;letter-spacing:0;font-variant-numeric:tabular-nums}.pc-actions{display:flex;gap:.15rem;flex:none;opacity:0;transform:translate(4px);transition:opacity .12s ease,transform .12s ease}.pc-row:hover .pc-actions,.pc-row:focus-within .pc-actions,.pc-row.is-editing .pc-actions{opacity:1;transform:none}@media (hover: none){.pc-actions{opacity:1;transform:none}}.pc-icon{width:1.9rem;height:1.9rem;display:inline-grid;place-items:center;border:1px solid transparent;background:transparent;color:var(--muted);border-radius:8px;cursor:pointer}.pc-icon svg{width:15px;height:15px}.pc-icon:hover{background:var(--bg-4);color:var(--ink);border-color:var(--line)}.pc-icon.danger:hover{background:var(--danger-dim);color:var(--danger);border-color:#d9786c4d}.pc-icon:focus-visible{box-shadow:var(--focus);outline:0}.pc-foot{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:.65rem .95rem;border-top:1px solid var(--line);color:var(--faint);font-size:.76rem}.pc-foot-legend{display:inline-flex;align-items:center;gap:.4rem}.pc-foot-legend .pc-dot{margin-left:.5rem}.pc-foot-legend .pc-dot:first-child{margin-left:0}.pc-skeleton{padding:1rem 1.1rem 1.3rem;display:grid;gap:.8rem}.pc-skeleton>div{height:14px;border-radius:6px;background:linear-gradient(90deg,var(--bg-3) 0%,var(--bg-4) 50%,var(--bg-3) 100%);background-size:200% 100%;animation:cf-shimmer 1.4s infinite}.pc-form{position:sticky;top:1rem;overflow:visible;padding:0}.pc-form.is-editing{box-shadow:inset 0 0 0 1px #e8dcc64d}.pc-form-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.6rem;padding:1.05rem 1.1rem .9rem;border-bottom:1px solid var(--line)}.pc-form-head h2{margin:0;font-size:1.35rem}.pc-form-head p{margin:.25rem 0 0;font-size:.82rem}.pc-form-body{display:grid;gap:.95rem;padding:1rem 1.1rem 1.15rem}.pc-form-grid{display:grid;grid-template-columns:110px minmax(0,1fr);gap:.8rem}.pc-form-grid .span-2{grid-column:auto}.pc-code-input{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;letter-spacing:.03em}.pc-field{display:flex;flex-direction:column;gap:.38rem}.pc-field-label{font-size:.78rem;color:var(--muted)}.pc-segment{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem;padding:.25rem;background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--radius-sm)}.pc-seg{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:0;background:transparent;color:var(--muted);padding:.5rem .4rem;border-radius:8px;font:inherit;font-size:.85rem;cursor:pointer;transition:background .15s ease,color .15s ease}.pc-seg:hover{color:var(--ink);background:var(--bg-3)}.pc-seg.on{background:var(--bg-4);color:var(--ink);font-weight:600;box-shadow:inset 0 0 0 1px var(--line-strong)}.pc-warn{margin:0;font-size:.76rem;color:var(--warn)}.pc-switch{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:.75rem;cursor:pointer;padding:.7rem .8rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);transition:border-color .15s ease}.pc-switch:hover{border-color:var(--line-strong)}.pc-switch input{position:absolute;opacity:0;width:0;height:0}.pc-switch-track{width:34px;height:20px;border-radius:999px;background:var(--bg-4);border:1px solid var(--line-strong);position:relative;margin-top:.1rem;transition:background .15s ease,border-color .15s ease}.pc-switch-track:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--muted);transition:transform .15s ease,background .15s ease}.pc-switch input:checked+.pc-switch-track{background:var(--accent);border-color:var(--accent)}.pc-switch input:checked+.pc-switch-track:after{transform:translate(14px);background:#14110c}.pc-switch input:focus-visible+.pc-switch-track{box-shadow:var(--focus)}.pc-switch-text{display:flex;flex-direction:column;gap:.15rem}.pc-switch-text strong{color:var(--ink);font-size:.86rem;font-weight:500}.pc-switch-text small{color:var(--faint);font-size:.74rem;line-height:1.35}.pc-form-actions{display:flex;gap:.55rem;flex-wrap:wrap;padding-top:.2rem}@media (max-width: 1180px){.pc-layout{grid-template-columns:1fr}.pc-form{position:static}}.cf-filters{gap:1rem 1.4rem;align-items:center}.cf-range{display:flex;align-items:end;gap:.6rem}.cf-range>label{flex:0 1 150px;min-width:130px}.cf-range-sep{color:var(--faint);padding-bottom:.65rem;font-size:.95rem}.cf-presets{display:flex;gap:.4rem;flex-wrap:wrap;align-self:end;padding-bottom:.1rem}.cf-mode{display:flex;flex-direction:column;gap:.4rem;margin-left:auto;align-items:flex-end}.cf-mode-hint{color:var(--faint);font-size:.76rem}.cf-kpis{margin-bottom:1rem}.cf-card{overflow:hidden}.cf-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--line);font-size:.8rem}.cf-wrap{transition:opacity .15s ease}.cf-wrap.is-loading{opacity:.55;pointer-events:none}.cf-table{font-size:.88rem}.cf-table th,.cf-table td{padding:.62rem .85rem}.cf-table thead th{vertical-align:bottom}.cf-head-name{padding-left:1rem!important}.cf-head-month,.cf-head-total{line-height:1.15;min-width:118px}.cf-head-month .cf-month,.cf-head-total .cf-month{display:block;color:var(--muted);font-size:.8rem;letter-spacing:.06em}.cf-head-month .cf-year,.cf-head-total .cf-year{display:block;color:var(--faint);font-size:.64rem;letter-spacing:.06em;text-transform:none;margin-top:.12rem}.cf-head-month.is-current .cf-month{color:var(--accent)}.cf-head-month .cf-now{display:inline-block;margin-top:.3rem;padding:.08rem .42rem;border-radius:999px;background:var(--accent-dim);color:var(--accent);font-size:.58rem;letter-spacing:.12em}.cf-head-total{border-left:1px solid var(--line-strong)}.cf-cell.is-current{background:#e8dcc609}.cf-cell-total{border-left:1px solid var(--line-strong);font-weight:600}.cf-zero{color:var(--faint);opacity:.55}.cf-strong{font-weight:600}.cf-cell.clickable{cursor:pointer;position:relative}.cf-cell.clickable:hover{background:#e8dcc614}.cf-cell.clickable:hover>span{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}.cf-row{transition:background .12s ease}.cf-row:hover>td{background:#e8dcc608}.cf-row:hover>td:first-child{background:#131313}.cf-name{padding-left:1rem!important;max-width:360px}.cf-name-inner{display:flex;align-items:center;gap:.45rem;min-width:0}.cf-expand-gap{display:inline-block;width:1.4rem;height:1.4rem;flex:none}.cf-expand svg{width:12px;height:12px;transition:transform .15s ease}.cf-expand.on svg{transform:rotate(90deg)}.cf-code{color:var(--faint);font-size:.72rem;font-variant-numeric:tabular-nums;letter-spacing:.02em;min-width:3.2ch}.cf-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cf-revenue>td:first-child .cf-label,.cf-capital>td:first-child .cf-label,.cf-non-operating>td:first-child .cf-label{color:var(--ink)}.cf-revenue .cf-cell>span:not(.cf-zero):not(.neg),.cf-capital .cf-cell>span:not(.cf-zero):not(.neg),.cf-non-operating .cf-cell>span:not(.cf-zero):not(.neg){color:var(--ok)}.cf-tax .cf-cell>span:not(.cf-zero):not(.neg),.cf-expense .cf-cell>span:not(.cf-zero):not(.neg){color:var(--ink)}.cf-group>td:first-child .cf-label{font-weight:600}.cf-depth-2>td:first-child .cf-label,.cf-depth-3>td:first-child .cf-label{color:var(--muted)}.cf-depth-2 .cf-cell>span:not(.cf-zero),.cf-depth-3 .cf-cell>span:not(.cf-zero){color:var(--muted)}.cf-total>td{font-weight:600;background:#e8dcc60b}.cf-total>td:first-child{background:#151515}.cf-total>td:first-child .cf-label{text-transform:uppercase;letter-spacing:.08em;font-size:.74rem;color:var(--accent)}.cf-bank-account>td{background:#86c09a0a}.cf-bank-account>td:first-child{background:#121513}.cf-bank>td{background:#86c09a14}.cf-bank>td:first-child{background:#131814}.cf-bank>td:first-child .cf-label{color:var(--ok)}.cf-section>td{border-top:2px solid var(--line-strong)}.cf-legend{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;padding:.7rem 1rem;border-top:1px solid var(--line);color:var(--faint);font-size:.76rem;align-items:center}.cf-legend span{display:inline-flex;align-items:center;gap:.45rem}.cf-legend-right{margin-left:auto;color:var(--muted)}.cf-dot{width:8px;height:8px;border-radius:999px;display:inline-block}.cf-dot.revenue{background:var(--ok)}.cf-dot.expense{background:var(--ink);opacity:.8}.cf-dot.bank{background:var(--ok);box-shadow:0 0 0 3px #86c09a2e}.cf-skeleton{padding:1.2rem 1rem 1.4rem;display:grid;gap:.75rem}.cf-skeleton-row{height:.9rem;border-radius:6px;background:linear-gradient(90deg,var(--bg-3) 0%,var(--bg-4) 50%,var(--bg-3) 100%);background-size:200% 100%;animation:cf-shimmer 1.4s ease-in-out infinite}@keyframes cf-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.cf-entries{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.cf-entry{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--line)}.cf-entry:last-child{border-bottom:0}.cf-entry-main{display:flex;flex-direction:column;gap:.2rem;min-width:0}.cf-entry-main strong{font-weight:500}.cf-entry-main .muted{font-size:.8rem}.cf-entry-side{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;flex:none}.cf-entry-amount{font-variant-numeric:tabular-nums;font-weight:600}@media (max-width: 980px){.cf-mode{margin-left:0;align-items:flex-start;width:100%}.cf-legend-right{margin-left:0}}@media (max-width: 980px){.login-wrap{grid-template-columns:1fr}.login-hero{display:none}.app-shell{grid-template-columns:1fr}.sidebar{display:none}.sidebar.open{display:flex;position:fixed;inset:0 auto 0 0;width:min(280px,86vw);z-index:50;box-shadow:var(--shadow)}.mobile-bar{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;border-bottom:1px solid var(--line);background:var(--bg-2);position:sticky;top:0;z-index:20}.content{padding:1.15rem 1rem 2rem}.form-grid .span-2{grid-column:span 1}.split-2{grid-template-columns:1fr}.tabs{width:100%}}
