.ledger-nav{display:flex;gap:6px;flex-wrap:wrap;padding:0 0 24px;border-bottom:1px solid var(--line,#dce2d9);margin-bottom:26px}.ledger-nav button{background:transparent;border-color:transparent}.ledger-nav button.active{background:#214e40;color:#fff}.ledger-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:18px 0}.ledger-totals{margin-top:24px}.ledger-filter{display:flex;gap:20px;align-items:end;flex-wrap:wrap;margin:24px 0 10px}.ledger-filter label{margin:0;min-width:180px}.check-label{display:flex;align-items:center;gap:10px;padding:12px 0}.check-label input{width:22px;min-width:22px;height:22px;margin:0;accent-color:#214e40}.ledger-hint{font-size:13px;color:#657368;line-height:1.6;margin:14px 0}.ledger-layout{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(230px,1fr);gap:24px;margin-top:24px;align-items:start}.ledger-categories{overflow:hidden}.ledger-summary{padding:24px}.ledger-summary h2{font-size:30px;margin:10px 0}.ledger-summary p{line-height:1.65}.ledger-summary button{width:100%;margin-top:10px}.ledger-summary hr{border:0;border-top:1px solid #dce2d9;margin:24px 0}.ledger-column-head,.ledger-category>summary{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:10px;padding:20px;align-items:center}.ledger-column-head{background:#f1f4eb;font-size:12px;color:#657368}.ledger-column-head span:not(:first-child),.ledger-category>summary>:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.ledger-category{border-top:1px solid #dce2d9}.ledger-category>summary{cursor:pointer;list-style:none;font-size:14px;min-height:76px}.ledger-category>summary::-webkit-details-marker{display:none}.ledger-category>summary>span:first-child{font-weight:650}.ledger-category>summary>span:first-child:before{content:'› ';display:inline-block;margin-right:5px}.ledger-category[open]>summary>span:first-child:before{content:'⌄ '}.ledger-category summary small{display:block;color:#657368;font-weight:400;margin-top:4px}.ledger-category>div{padding:0 18px 14px;background:#f8faf5}.ledger-transaction{display:flex;justify-content:space-between;gap:16px;width:100%;text-align:left;border:0;border-top:1px solid #e1e7dd;border-radius:0;background:transparent;padding:16px 8px;min-height:70px}.ledger-transaction:hover{background:#edf3e4}.ledger-transaction>span:first-child{min-width:0;overflow-wrap:anywhere}.ledger-transaction small,.batch-row small{display:block;font-size:12px;color:#657368;margin-top:4px}.ledger-amount{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.ledger-income,.ledger-other{padding:24px;margin-top:20px}.ledger-other>summary{cursor:pointer;font-weight:650;min-height:44px}.ledger-empty{padding:24px}.share-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.share-card{padding:26px;min-width:0}.share-card h2{margin:8px 0 14px}.share-card p{line-height:1.65;overflow-wrap:anywhere}.share-card dl{margin-top:24px}.share-card dl>div{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #e1e7dd;padding:12px 0}.share-card dd{margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}.ledger-warning{padding:12px 16px;background:#fff1d8;color:#735316;border-radius:8px}.income-ratio{padding:24px;margin-bottom:24px}.income-ratio>div{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:18px 0}.income-ratio strong{display:block;font-size:26px;margin-top:6px}.income-ratio p{color:#657368}.import-upload{display:flex;align-items:end;gap:20px;padding:24px;flex-wrap:wrap}.import-upload label{margin:0;flex:1;min-width:200px}.import-upload input[type=file]{max-width:100%;padding:10px}.import-item{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid #dce2d9;border-radius:12px;margin:10px 0;background:#fff}.import-select{border:0;background:transparent;display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:14px;align-items:center;text-align:left;flex:1;min-width:0;padding:16px;min-height:88px}.import-select[aria-pressed=true]{background:#e9f2df}.import-select:disabled{opacity:.6;cursor:not-allowed}.import-select small{display:block;color:#657368;overflow-wrap:anywhere;margin-top:4px;font-weight:400}.select-mark{font-size:22px;color:#214e40}.import-confirm{position:sticky;bottom:12px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;background:#f0f5e9;border:1px solid #b9cbb0;border-radius:12px;box-shadow:0 5px 20px #16372b18;margin-top:22px}.import-confirm small{display:block;color:#657368;font-size:12px;margin-top:4px}.batch-row{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #dce2d9;padding:16px 0;align-items:center}.batch-row>div{min-width:0;overflow-wrap:anywhere}#transaction-dialog{max-width:650px}#transaction-dialog textarea{font:inherit;width:100%;min-height:85px;padding:12px;border:1px solid #d2dbce;border-radius:8px}#transaction-dialog .form-row{grid-template-columns:1fr 1fr}#ledger-shell input[type=month]{min-width:0;max-width:100%}button:focus-visible,summary:focus-visible{outline:3px solid #6b9260;outline-offset:3px}
@media(max-width:1000px){.ledger-layout{grid-template-columns:1fr}.ledger-summary{max-width:none}.ledger-column-head,.ledger-category>summary{padding:18px 14px;gap:7px}}
@media(max-width:700px){.share-columns{grid-template-columns:1fr}.ledger-nav{gap:4px}.ledger-nav button{padding:10px 12px;min-height:44px}.ledger-filter{gap:12px}.ledger-filter label{min-width:0;flex:1}.ledger-filter .check-label{flex-basis:100%}.ledger-column-head,.ledger-category>summary{grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,1fr));font-size:12px;padding:16px 10px;gap:4px}.ledger-category>summary{font-size:12px}.ledger-category summary small{font-size:11px}.ledger-category>div{padding:0 8px 12px}.ledger-totals{grid-template-columns:1fr 1fr}.ledger-totals>.balance{grid-column:span 2}.ledger-totals .metric{padding:20px 16px}.ledger-totals strong{font-size:28px}.import-item{flex-wrap:wrap}.import-select{flex-basis:100%;padding:14px 8px;gap:8px}.import-item>.quiet{margin-left:36px;min-height:44px}.import-confirm{flex-wrap:wrap;bottom:8px}.import-confirm button{width:100%}.share-card{padding:20px}.ledger-transaction{gap:8px;font-size:13px}.ledger-transaction small{font-size:11px}.ledger-actions button{min-height:44px}.import-upload{padding:18px}.import-upload label{min-width:0;flex-basis:100%}}
@media(max-width:380px){.ledger-column-head,.ledger-category>summary{font-size:11px}.ledger-totals strong{font-size:25px}.ledger-category>summary{padding-left:7px;padding-right:7px}.share-card dl>div{gap:10px;font-size:13px}}
@media(max-width:700px){#ledger-shell .page-heading{flex-direction:column;align-items:stretch;gap:16px}#ledger-shell .page-heading h1{font-size:38px}#ledger-shell .page-heading>label{max-width:220px}.ledger-nav{display:grid;grid-template-columns:1fr 1fr}.ledger-nav button{text-align:left}.ledger-column-head,.ledger-category>summary{grid-template-columns:repeat(3,minmax(0,1fr));font-size:13px}.ledger-column-head>span:first-child,.ledger-category>summary>span:first-child{grid-column:1/-1;text-align:left}.ledger-category>summary>span:first-child{font-size:16px;margin-bottom:6px}.ledger-category summary small{display:inline;margin-left:8px}.ledger-column-head>span:not(:first-child),.ledger-category>summary>:not(:first-child){text-align:left}.ledger-category>summary{padding:18px 14px}}
.bulk-destination{display:flex;gap:16px;align-items:end;flex-wrap:wrap;padding:16px 0}.bulk-destination label{margin:0;flex:1;min-width:200px}.bulk-destination button{min-height:46px}
