/* Scoped to bookkeeping; existing owner and worker layouts retain their styles. */
:where(.content):has(> :is(#bookkeeping-view, #test-books)){min-width:0;max-width:100%}
:where(#bookkeeping-view, #test-books){color-scheme:light;color:#172d43;background:#f1f5f8;border-radius:1rem;padding:1.25rem;min-width:0}
:where(#bookkeeping-view, #test-books) .eyebrow{color:#187370}
:where(#bookkeeping-view, #test-books) :is(.card,.books-dialog){background:#fff;color:#172d43;border:1px solid #dce5ed;border-radius:1rem}
:where(#bookkeeping-view, #test-books) :is(input,select,textarea){background:#fff;color:#172d43;border:1px solid #c6d5df;min-height:2.75rem;font-size:1rem}
:where(#bookkeeping-view, #test-books) button{background:#126e70;color:#fff;min-height:2.75rem}
:where(#bookkeeping-view, #test-books) .button-quiet{background:#fff;color:#24445e;border-color:#c5d4df}
:where(#bookkeeping-view, #test-books) :is(.muted,.fine-print){color:#607387}
:where(#bookkeeping-view, #test-books) .message{color:#176967}
:where(#bookkeeping-view, #test-books) .message:empty{display:none}
:where(#bookkeeping-view, #test-books) .message.error{color:#a32937}
:where(#bookkeeping-view, #test-books) :focus-visible{outline:3px solid #448cd1;outline-offset:3px}
:where(#bookkeeping-view, #test-books) .books-heading{align-items:center}
:where(#bookkeeping-view, #test-books) .books-heading h1{margin:0}
:where(#bookkeeping-view, #test-books) .books-heading p.muted{margin:.45rem 0 0}
:where(#bookkeeping-view, #test-books) .books-actions{display:flex;flex-wrap:wrap;gap:.65rem}
:where(#bookkeeping-view, #test-books) .books-toolbar{display:flex;align-items:end;gap:.75rem;margin:1.4rem 0}
:where(#bookkeeping-view, #test-books) .books-toolbar label{font-size:.875rem;max-width:13rem}
:where(#bookkeeping-view, #test-books) .books-toolbar button{margin-left:auto}
:where(#bookkeeping-view, #test-books) .books-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}
:where(#bookkeeping-view, #test-books) .books-metric{border-radius:1rem;padding:1.25rem 1.1rem;background:#fff;border:1px solid #d9e4ec;min-width:0}
:where(#bookkeeping-view, #test-books) .books-metric span{font-size:.875rem;color:#607387;display:block}
:where(#bookkeeping-view, #test-books) .books-metric strong{display:block;font-size:clamp(1.15rem,2vw,1.75rem);letter-spacing:-.035em;margin-top:.7rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
:where(#bookkeeping-view, #test-books) .books-metric.money-net{background:#123d50;border-color:#123d50;color:#fff}
:where(#bookkeeping-view, #test-books) .money-net span{color:#b8d9e5}
:where(#bookkeeping-view, #test-books) .money-in strong{color:#087163}
:where(#bookkeeping-view, #test-books) .money-out strong{color:#924b28}
:where(#bookkeeping-view, #test-books) .books-note{font-size:.875rem;color:#607387;line-height:1.6}
:where(#bookkeeping-view, #test-books) .books-tabs{display:flex;gap:1.35rem;margin:1.6rem 0 1.3rem;border-bottom:1px solid #d6e1e9;overflow-x:auto}
:where(#bookkeeping-view, #test-books) .books-tabs button{background:none;color:#65778a;border-radius:0;padding:.8rem .2rem;white-space:nowrap;border-bottom:3px solid transparent}
:where(#bookkeeping-view, #test-books) .books-tabs button[aria-selected=true]{border-bottom-color:#126e70;color:#126e70}
:where(#bookkeeping-view, #test-books) .books-tabs span{background:#dcebed;color:#185860;padding:.15rem .45rem;border-radius:.4rem;margin-left:.2rem;font-size:.875rem}
:where(#bookkeeping-view, #test-books) .books-columns{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(15rem,1fr);gap:1rem}
:where(#bookkeeping-view, #test-books) .books-columns>.card{min-width:0}
:where(#bookkeeping-view, #test-books) .books-columns .heading-row{align-items:center;margin-bottom:.5rem}
:where(#bookkeeping-view, #test-books) .books-columns .heading-row h2{margin:0}
:where(#bookkeeping-view, #test-books) .book-row{display:flex;justify-content:space-between;align-items:start;gap:1rem;padding:1.1rem 0;border-bottom:1px solid #e5ecf1;overflow-wrap:anywhere}
:where(#bookkeeping-view, #test-books) .book-row:last-child{border-bottom:0}
:where(#bookkeeping-view, #test-books) .book-row>div:first-child{min-width:0}
:where(#bookkeeping-view, #test-books) .book-row h3{margin:0 0 .3rem}
:where(#bookkeeping-view, #test-books) .book-row p{margin:.3rem 0;font-size:.875rem}
:where(#bookkeeping-view, #test-books) .book-row-amount{display:flex;flex-direction:column;align-items:end;gap:.45rem;flex-shrink:0;max-width:48%;text-align:right}
:where(#bookkeeping-view, #test-books) .book-row-amount>strong{font-size:1rem;font-variant-numeric:tabular-nums}
:where(#bookkeeping-view, #test-books) .book-row-amount button{min-height:2rem;font-size:.875rem;padding:.25rem .5rem}
:where(#bookkeeping-view, #test-books) .book-row.voided{opacity:.65}
:where(#bookkeeping-view, #test-books) .book-row.voided .book-row-amount strong{text-decoration:line-through}
:where(#bookkeeping-view, #test-books) .income{color:#087163}
:where(#bookkeeping-view, #test-books) .expense{color:#293f56}
:where(#bookkeeping-view, #test-books) .book-badge{display:inline-block;padding:.2rem .45rem;border-radius:.4rem;background:#edf3f7;color:#546d82;font-size:.75rem;line-height:1.5}
:where(#bookkeeping-view, #test-books) .books-empty{text-align:center;padding:2.3rem 1rem;color:#6a7d8d}
:where(#bookkeeping-view, #test-books) .books-empty h3{color:#36536a;margin:.5rem 0}
:where(#bookkeeping-view, #test-books) .books-empty p{font-size:.875rem;margin:.4rem auto;max-width:25rem}
:where(#bookkeeping-view, #test-books) .books-pages{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;font-size:.875rem}
:where(#bookkeeping-view, #test-books) .books-pages button{font-size:.875rem;min-height:2.3rem}
:where(#bookkeeping-view, #test-books) .book-category{margin:1.35rem 0}
:where(#bookkeeping-view, #test-books) .book-category>div:first-child{display:flex;justify-content:space-between;gap:.5rem;font-size:.875rem}
:where(#bookkeeping-view, #test-books) .book-category strong{font-weight:600;white-space:nowrap}
:where(#bookkeeping-view, #test-books) .book-bar{height:7px;margin-top:.7rem;background:#edf3f7;border-radius:6px;overflow:hidden}
:where(#bookkeeping-view, #test-books) .book-bar span{display:block;height:100%;background:#3a9596;border-radius:6px}
:where(#bookkeeping-view, #test-books) .books-dialog{border:1px solid #d1dee7;border-radius:1.2rem;padding:1.7rem;width:min(44rem,calc(100% - 1.5rem));max-height:92dvh;color:#172d43;box-shadow:0 24px 100px #11283e44;overscroll-behavior:contain}
:where(#bookkeeping-view, #test-books) .books-dialog::backdrop{background:#10253899;backdrop-filter:blur(3px)}
:where(#bookkeeping-view, #test-books) .books-dialog-heading{display:flex;flex-wrap:wrap;align-items:start;gap:1rem}
:where(#bookkeeping-view, #test-books) .books-dialog-heading>div{flex:1 1 8rem;min-width:0;overflow-wrap:anywhere}
:where(#bookkeeping-view, #test-books) .books-dialog-heading h2{margin:.2rem 0 1rem}
:where(#bookkeeping-view, #test-books) .books-dialog-heading button{flex:0 0 auto;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;width:max-content;white-space:nowrap;overflow-wrap:normal;word-break:normal;font-size:.875rem}
:where(#bookkeeping-view, #test-books) .books-discard-prompt{margin:.4rem 0 1rem;padding:1rem;border:1px solid #e8cf9d;border-radius:.75rem;background:#fff8ea;color:#624717}
:where(#bookkeeping-view, #test-books) .books-discard-prompt h3{margin:0 0 .4rem}
:where(#bookkeeping-view, #test-books) .books-discard-prompt p{margin:.4rem 0 1rem;font-size:.9375rem;line-height:1.5}
:where(#bookkeeping-view, #test-books) .receipt-upload .books-actions{justify-content:center}
:where(#bookkeeping-view, #test-books) .books-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
:where(#bookkeeping-view, #test-books) .books-form-grid label{font-size:.875rem}
:where(#bookkeeping-view, #test-books) .books-form-grid .full-width{grid-column:1/-1}
:where(#bookkeeping-view, #test-books) .books-dialog fieldset{border:0;padding:0;margin:1.2rem 0;min-width:0}
:where(#bookkeeping-view, #test-books) .books-dialog textarea{resize:vertical}
:where(#bookkeeping-view, #test-books) .books-dialog #books-save{width:100%;margin-top:.65rem}
:where(#bookkeeping-view, #test-books) .books-dialog #books-receipt-image{width:100%;height:220px;object-fit:contain;background:#edf2f5;border-radius:.7rem;margin:.7rem 0}
:where(#bookkeeping-view, #test-books) .books-dialog #books-receipt-warning{color:#805419;background:#fff7e9;padding:.7rem;border-radius:.6rem}
:where(#bookkeeping-view, #test-books) .books-dialog #books-receipt-warning:empty{display:none}
@media(max-width:1100px){:where(#bookkeeping-view, #test-books) .books-columns{grid-template-columns:1fr}
:where(#bookkeeping-view, #test-books) .books-heading{align-items:start;flex-direction:column}
:where(#bookkeeping-view, #test-books) .books-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){:where(#bookkeeping-view, #test-books) .books-toolbar{flex-wrap:wrap;gap:.6rem}
:where(#bookkeeping-view, #test-books) .books-toolbar label{flex:1;min-width:8rem}
:where(#bookkeeping-view, #test-books) .books-toolbar button{margin-left:0;flex:1}
:where(#bookkeeping-view, #test-books) .books-actions{width:100%}
:where(#bookkeeping-view, #test-books) .books-actions button{flex:1}
:where(#bookkeeping-view, #test-books) .books-metric{padding:1rem}
:where(#bookkeeping-view, #test-books) .books-metric strong{font-size:1.2rem}
:where(#bookkeeping-view, #test-books) .books-tabs{gap:1rem}
:where(#bookkeeping-view, #test-books) .books-tabs button{font-size:.875rem}
:where(#bookkeeping-view, #test-books) .books-form-grid{grid-template-columns:1fr}
:where(#bookkeeping-view, #test-books) .books-dialog{padding:1.2rem}
:where(#bookkeeping-view, #test-books) .books-dialog-heading .eyebrow{font-size:.75rem}
:where(#bookkeeping-view, #test-books) .book-row{gap:.6rem}
:where(#bookkeeping-view, #test-books) .book-row-amount{max-width:46%}
:where(#bookkeeping-view, #test-books) .book-row-amount>strong{font-size:.95rem}}
:where(#bookkeeping-view, #test-books) .books-toolbar input,:where(#bookkeeping-view, #test-books) .books-toolbar select{min-width:0;max-width:100%}
:where(#bookkeeping-view, #test-books) .books-toolbar label{min-width:0}
@media(max-width:720px){:where(#bookkeeping-view, #test-books) .books-toolbar label{flex:1 1 40%;max-width:none;min-width:0}}
:where(#bookkeeping-view, #test-books) .books-entry-options{margin:.3rem 0}
:where(#bookkeeping-view, #test-books) .books-capture-options{display:grid;gap:.75rem;margin:1.2rem 0}
:where(#bookkeeping-view, #test-books) .books-capture-option{display:flex;align-items:center;gap:1rem;width:100%;padding:1.1rem;text-align:left;background:#f7fafb;border:1px solid #d6e3e9;color:#23445b}
:where(#bookkeeping-view, #test-books) .books-capture-option:hover{background:#eaf5f3;border-color:#80b6b0;filter:none}
:where(#bookkeeping-view, #test-books) .books-capture-option>svg{width:2.5rem;height:2.5rem;padding:.45rem;border-radius:.6rem;background:#e0f0ed;color:#126e70;flex-shrink:0}
:where(#bookkeeping-view, #test-books) .books-capture-option>span:nth-child(2){flex:1}
:where(#bookkeeping-view, #test-books) .books-capture-option strong{display:block;font-size:1rem;margin-bottom:.25rem}
:where(#bookkeeping-view, #test-books) .books-capture-option strong+span{display:block;font-weight:400;font-size:.875rem;line-height:1.45;color:#607387}
:where(#bookkeeping-view, #test-books) .books-capture-option>span:last-child{font-size:1.6rem;color:#73918e}
:where(#bookkeeping-view, #test-books) .books-dialog input[hidden]{display:none}
:where(#bookkeeping-view, #test-books) #books-review-field{ display: flex; align-items: flex-start; gap: .65rem; margin: 1rem 0; }
:where(#bookkeeping-view, #test-books) #books-review-field.hidden{ display: none; }
:where(#bookkeeping-view, #test-books) #books-review-confirmed{width:1.2rem;height:1.2rem;min-height:1.2rem;flex:0 0 1.2rem;margin:.25rem 0 0;accent-color:#126e70}
@media(max-width:480px){
  :where(#bookkeeping-view, #test-books) .books-toolbar label{flex:1 1 100%}
  :where(#bookkeeping-view, #test-books) .books-heading .books-actions button{font-size:.9375rem;padding:.72rem .6rem}
}

/* Keep refresh readable at narrow widths and enlarged text sizes. */
:where(#bookkeeping-view, #test-books) .books-toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));align-items:end;gap:.75rem;max-width:48rem}
:where(#bookkeeping-view, #test-books) .books-toolbar label{max-width:none;min-width:0}
:where(#bookkeeping-view, #test-books) #books-refresh{margin:0;min-width:max-content;white-space:nowrap;overflow-wrap:normal;word-break:normal;justify-self:start}
:where(#bookkeeping-view, #test-books) #books-auto-status{margin:-.6rem 0 1rem}
@media(max-width:480px){:where(#bookkeeping-view, #test-books) #books-refresh{justify-self:stretch;width:100%}}

/* Let larger text reflow inside the available space without shrinking labels. */
:where(#bookkeeping-view, #test-books){padding:clamp(12px,1.25rem,20px);overflow-wrap:anywhere}
:where(#bookkeeping-view, #test-books) :is(.books-heading>div,.heading-row>h2,label,fieldset,input,select,textarea){min-width:0;max-width:100%}
:where(#bookkeeping-view, #test-books) :is(.card,.books-metric){padding:clamp(12px,1.25rem,20px)}
:where(#bookkeeping-view, #test-books) button{max-width:100%;overflow-wrap:normal;word-break:normal;padding:clamp(10px,.72rem,16px) clamp(12px,1rem,20px)}
:where(#bookkeeping-view, #test-books) .books-metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr))}
:where(#bookkeeping-view, #test-books) :is(.books-columns .heading-row,.books-pages){flex-wrap:wrap}
:where(#bookkeeping-view, #test-books) .books-pages button{flex:0 0 auto}
:where(#bookkeeping-view, #test-books) .books-dialog{padding:clamp(16px,1.2rem,28px)}
:where(#bookkeeping-view, #test-books) .books-capture-options{grid-template-columns:minmax(0,1fr);min-width:0}
:where(#bookkeeping-view, #test-books) .books-capture-option{flex-wrap:wrap;min-width:0;padding:clamp(12px,1rem,20px);gap:.75rem}
:where(#bookkeeping-view, #test-books) .books-capture-option>span:nth-child(2){flex:1 1 10rem;min-width:0;overflow-wrap:anywhere}
@media(max-width:480px){:where(#bookkeeping-view, #test-books) .books-capture-option>span:last-child{display:none}}
@media(min-width:721px) and (max-width:1000px){
  :where(.workspace):has(> .content > :is(#bookkeeping-view, #test-books):not(.hidden)){grid-template-columns:minmax(0,1fr)}
  :where(.workspace):has(> .content > :is(#bookkeeping-view, #test-books):not(.hidden))>.sidebar{flex-direction:row;overflow-x:auto;border-right:0;padding:.75rem}
}
