:root{--bg:var(--tg-theme-bg-color,#fff);--bg2:var(--tg-theme-secondary-bg-color,#f2f2f7);--text:var(--tg-theme-text-color,#111);--hint:var(--tg-theme-hint-color,#8e8e93);--accent:var(--tg-theme-button-color,#2481cc);--accent-text:var(--tg-theme-button-text-color,#fff);--danger:var(--tg-theme-destructive-text-color,#e53935);--ok:#2e9e5b;--grid:color-mix(in srgb, var(--hint) 25%, transparent)}*{box-sizing:border-box}body{background:var(--bg2);color:var(--text);margin:0;font:15px/1.4 -apple-system,system-ui,Segoe UI,Roboto,sans-serif}.app{padding:12px 12px calc(72px + env(safe-area-inset-bottom));max-width:640px;margin:0 auto}.card{background:var(--bg);border-radius:12px;margin-bottom:12px;padding:12px}.tabs{background:var(--bg);border-top:1px solid var(--grid);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.tabs button{color:var(--hint);background:0 0;border:0;border-radius:0;flex:1;padding:10px 0;font-size:11px}.tabs button.active{color:var(--accent)}button{background:var(--accent);color:var(--accent-text);font:inherit;cursor:pointer;border:0;border-radius:8px;padding:8px 12px}button:disabled{opacity:.5}button.secondary{background:var(--bg2);color:var(--text)}button.link{color:var(--accent);background:0 0;padding:4px 0}button.danger{color:var(--danger);background:0 0;padding:4px 0}.kpis{grid-template-columns:1fr 1fr;gap:8px;display:grid}.kpi .label{color:var(--hint);font-size:12px}.kpi .value{font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.pos{color:var(--ok)}.neg{color:var(--danger)}.segmented{gap:4px;margin-bottom:12px;display:flex}.segmented button{background:var(--bg);color:var(--text);flex:1}.segmented button.active{background:var(--accent);color:var(--accent-text)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13px}th,td{text-align:right;white-space:nowrap;padding:6px 4px}th:first-child,td:first-child{text-align:left}th{color:var(--hint);font-weight:500}.row-main{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.title{font-weight:500}.sub{color:var(--hint);font-size:13px}.amount{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.list-item{border-bottom:1px solid var(--grid);padding:10px 0}.list-item:last-child{border-bottom:0}.section-head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}h2{margin:0;font-size:17px}h3{color:var(--hint);margin:12px 0 4px;font-size:14px;font-weight:500}.form{flex-direction:column;gap:8px;padding:8px 0;display:flex}.form label{color:var(--hint);flex-direction:column;gap:4px;font-size:13px;display:flex}.form label.check{flex-direction:row;align-items:center}input,select{font:inherit;border:1px solid var(--grid);background:var(--bg2);color:var(--text);border-radius:8px;width:100%;padding:8px}input[type=checkbox]{width:auto}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.badge{background:var(--bg2);color:var(--hint);border-radius:6px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:400}.warn{background:color-mix(in srgb, var(--danger) 12%, var(--bg))}.stale{color:var(--danger)}.error{color:var(--danger);margin:4px 0}.muted{color:var(--hint)}.month-row{cursor:pointer}.past-row td{color:var(--hint)}.subhead th{text-transform:uppercase;letter-spacing:.03em;padding-top:10px;font-size:11px}.item-row td{padding-top:2px;padding-bottom:2px;font-size:12px}.item-row td:first-child{white-space:normal;padding-left:18px}.steps{color:var(--hint);flex-wrap:wrap;gap:8px;margin-top:6px;font-size:12px;display:flex}.steps .active{color:var(--accent);font-weight:600}.calib-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.calib-input{align-items:center;gap:6px;margin-top:6px;display:flex}.calib-input input[type=number]{max-width:140px}.calib-input input.currency{max-width:72px}.calib-input select{max-width:120px}.capital-total{font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.share-bar{background:var(--bg2);border-radius:4px;height:8px;margin:10px 0 6px;display:flex;overflow:hidden}.share-bar span{height:100%;display:block}.capital-group{padding-top:8px}.capital-row{padding:3px 0 3px 18px;font-size:13px}.dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}
