:root{font-family:Segoe UI,Arial,sans-serif;color:#213b31;background:#f5f3ec;font-size:14px}*{box-sizing:border-box}body{margin:0;display:flex}aside{position:fixed;width:248px;height:100vh;background:#183b2f;color:#f6f0df;padding:32px 25px;display:flex;flex-direction:column}aside img{width:142px;height:142px;object-fit:contain;align-self:center;border-radius:50%;margin-bottom:32px}h1,h2,h3{font-family:Georgia,serif;font-weight:400}h1{font-size:44px;margin:9px 0 27px}h2{font-size:26px}aside h2{line-height:1.3}aside p{color:#c7d1c6;line-height:1.8}.eyebrow{font-size:10px;letter-spacing:2px;color:#9b8047;font-weight:700}aside .eyebrow{color:#d1bb88}button{cursor:pointer;background:#254c3b;color:white;border:1px solid #254c3b;padding:11px 17px;border-radius:6px;font:inherit}button:hover{filter:brightness(1.12)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b89b5e;outline-offset:2px}aside button{background:#d4bd86;color:#183b2f;border:0}.secondary{background:transparent;color:inherit;border:1px solid #b8c2b7}.aside-bottom{margin-top:auto;display:grid;gap:17px}small{line-height:1.6;color:#aebcaf}.import{cursor:pointer}.import input{display:block;width:100%;font-size:11px;margin-top:8px}main{margin-left:248px;padding:40px 4%;width:calc(100% - 248px)}header{display:flex;justify-content:space-between;align-items:center}.local{font-size:12px;color:#5f7565}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:30px}.stat{background:#eaece2;padding:22px;border:1px solid #dfe2d6;border-radius:8px}.stat strong{display:block;font:30px Georgia;margin-top:10px}.workspace{display:grid;grid-template-columns:285px 1fr;gap:24px}.list,.sheet{background:#fffef9;border:1px solid #dfdfd3;border-radius:9px}.list-top{padding:20px}.list-top h2{font-size:21px;margin-top:0}.list-top input,.list-top select{margin-top:8px}.record{width:100%;border:0;border-top:1px solid #e6e5db;background:transparent;color:#213b31;text-align:left;border-radius:0;padding:18px 20px}.record strong,.record small{display:block}.record small{color:#6d786e;margin-top:6px}.badge{font-size:11px;background:#e9eee4;border-radius:20px;padding:3px 8px;float:right}.empty{text-align:center;padding:90px 20px}.empty h2{font-size:35px}.empty p{color:#6b776c}.sheet{padding:25px}label{font-size:12px;color:#566959;display:block}input,select,textarea{display:block;width:100%;border:1px solid #d6ddcf;border-radius:5px;padding:10px;background:#fff;color:#243c30;font:inherit}label input,label select,label textarea{margin-top:6px}textarea{resize:vertical;min-height:65px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:17px}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.toolbar button{font-size:12px}.line{display:grid;grid-template-columns:1fr 65px 85px 30px;gap:7px;margin:8px 0}.line button{padding:5px;background:transparent;color:#865d4b;border:0}.line-head{font-size:11px;color:#657364}.items{margin:22px 0}.totals{background:#f0f2e9;padding:18px;margin:20px 0;border-radius:6px}.totals div{display:flex;justify-content:space-between;padding:5px}.totals .balance{font-weight:700;font-size:20px;border-top:1px solid #cfd7c8;margin-top:10px;padding-top:15px}#notice{color:#6a4d22;margin-bottom:16px}#print{display:none}.muted{color:#72806f;font-size:12px}.sheet h2{margin-top:0}@media(max-width:1150px){aside{width:200px;padding:22px 17px}main{margin-left:200px;width:calc(100% - 200px);padding:25px}.workspace{grid-template-columns:1fr}.list{max-height:300px;overflow:auto}}@media(max-width:650px){body{display:block}aside{position:static;width:100%;height:auto;display:block;padding:18px}aside img{width:65px;height:65px;float:left;margin:0 18px 0 0}aside h2,aside p,aside .eyebrow{display:none}.aside-bottom{display:flex;align-items:center;margin-top:20px}.aside-bottom small{display:none}main{margin:0;width:100%;padding:18px}.stats{gap:8px}.stat{padding:13px}.stat strong{font-size:23px}.grid{grid-template-columns:1fr}.local{display:none}.sheet{padding:16px}}@media print{body{display:block;background:white;color:#172b22}aside,main{display:none!important}#print{display:block;font-size:12px;padding:18px}#print header{border-bottom:2px solid #294a39;padding-bottom:20px}#print img{width:110px}#print h1{font-size:36px}#print table{width:100%;border-collapse:collapse;margin:30px 0}#print td,#print th{text-align:left;padding:12px 8px;border-bottom:1px solid #ddd}#print .right{text-align:right}#print .print-grid{display:flex;justify-content:space-between;margin-top:25px}#print .preserve{white-space:pre-wrap}#print tr{break-inside:avoid}@page{margin:15mm}}
/* Brand finish */
aside img{width:184px;height:184px;background:white;border-radius:12px;padding:9px;box-shadow:0 12px 32px #071c2140;margin-bottom:30px}aside{background:linear-gradient(155deg,#224d3d,#102e26)}.sheet{box-shadow:0 8px 35px #26453408}.stat:first-child{background:#e5ebdf;border-top:3px solid #4f7455}.stat:nth-child(2){background:#edf0e5;border-top:3px solid #b99b60}.stat:nth-child(3){background:#f2eadf;border-top:3px solid #bb8e67}.record:hover{background:#edf2e8}.list-top{border-bottom:1px solid #e3e5d9}.sheet h2{padding-bottom:15px;border-bottom:1px solid #e4e5d9}.toolbar{align-items:center}.toolbar .muted{margin-left:auto;font-size:11px}#print img{width:145px;height:145px;object-fit:contain}@media(max-width:650px){aside img{width:80px;height:80px;margin:0 18px 0 0;padding:4px}.toolbar .muted{width:100%;margin:0}}
/* The preview and printed invoice share the same document layout. */
#previewDialog{width:min(1080px,96vw);max-height:94vh;padding:0;border:0;border-radius:12px;background:#e7e9e2;color:#213b31;box-shadow:0 25px 90px #102e2650}#previewDialog::backdrop{background:#102b24aa;backdrop-filter:blur(3px)}.preview-bar{display:flex;align-items:center;gap:12px;padding:18px 24px;background:#fffef9;border-bottom:1px solid #d6ddcf}.preview-bar>div{flex:1}.preview-bar strong{font:22px Georgia}.preview-bar span{display:block;font-size:12px;color:#687667;margin-top:5px}.preview-scroll{overflow:auto;max-height:calc(94vh - 100px);padding:28px}.invoice-document{background:white;width:180mm;min-height:249mm;padding:18px;margin:auto;box-shadow:0 4px 24px #213b3115;font-size:12px;color:#172b22}#previewPaper header,#print header{border-bottom:2px solid #294a39;padding-bottom:20px;display:flex;justify-content:space-between;align-items:center}#previewPaper img,#print img{width:145px;height:145px;object-fit:contain}#previewPaper h1,#print h1{font-size:36px}#previewPaper table,#print table{width:100%;border-collapse:collapse;margin:30px 0;table-layout:fixed}#previewPaper td,#previewPaper th,#print td,#print th{text-align:left;padding:12px 8px;border-bottom:1px solid #ddd;overflow-wrap:anywhere}#previewPaper th:first-child,#print th:first-child{width:49%}#previewPaper .right,#print .right{text-align:right}#previewPaper .print-grid,#print .print-grid{display:flex;justify-content:space-between;gap:24px;margin-top:25px}#previewPaper .print-grid>div,#print .print-grid>div{max-width:48%}#previewPaper .preserve,#print .preserve{white-space:pre-wrap;overflow-wrap:anywhere}#previewPaper tr,#print tr{break-inside:avoid}@media(max-width:650px){.preview-bar{flex-wrap:wrap;padding:14px}.preview-bar>div{flex-basis:100%}.preview-scroll{padding:14px;max-height:calc(94vh - 150px)}}@media print{#previewDialog{display:none!important}}
.optional-sections{margin-top:28px;border-top:1px solid #d8dfd1;padding-top:12px}.optional-sections h3{font-size:24px;margin-bottom:10px}.optional-card{margin:10px 0;border:1px solid #dce1d6;border-radius:7px;background:#fafbf7}.optional-card.selected{border-color:#66876b;background:#edf3e8;box-shadow:inset 3px 0 #486b50}.option-toggle{display:flex;align-items:center;gap:12px;padding:15px;font-size:14px;cursor:pointer;color:#274835}.option-toggle input{width:18px;height:18px;margin:0;accent-color:#254c3b}.optional-card fieldset{border:0;padding:0 17px 17px;display:grid;gap:13px}.optional-card fieldset[hidden]{display:none}.optional-card fieldset label{margin-top:0}

#businessDialog{width:min(550px,94vw);max-height:90vh;overflow:auto;border:1px solid #cbd5c4;border-radius:12px;padding:28px;background:#fffef9;color:#213b31}#businessDialog::backdrop{background:#102b24aa}#businessForm>label{margin-bottom:14px}#businessForm h2{margin-top:0;font-size:30px}#businessForm .option-toggle{margin:0;padding:9px 0}#businessError{color:#963d29}@media print{#businessDialog{display:none!important}}
.nav-buttons{display:grid;gap:10px;margin:8px 0 15px}.nav-buttons button{text-align:left}.collection-panel{background:#fffef9;padding:28px;border:1px solid #dce1d6;border-radius:10px}.panel-heading{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:22px}.panel-heading h2{font-size:30px;margin:8px 0}.library-controls{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-bottom:22px}.table-scroll{overflow-x:auto}.records-table{width:100%;border-collapse:collapse;text-align:left}.records-table th{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#61735e;padding:14px 10px;border-bottom:1px solid #d8ded1}.records-table td{padding:17px 10px;border-bottom:1px solid #e5e8dd}.status-chip{display:inline-block;background:#e9eee4;padding:5px 10px;border-radius:20px;font-size:12px}.empty-row{padding:40px 12px!important;color:#6c7b68;text-align:center}.customer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;margin-top:24px}.customer-card{background:#f4f6ed;color:#244431;text-align:left;padding:22px;border:1px solid #dbe2d1;display:grid;gap:12px}.customer-card strong{font:22px Georgia}.customer-card small{color:#61735e}.customer-monogram{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#dfe8d4;color:#42623d;font:22px Georgia}.view-record{font-size:12px;color:#526e46;margin-top:10px}#customerDialog{width:min(820px,95vw);max-height:92vh;overflow:auto;border:1px solid #ccd5c4;border-radius:12px;padding:28px;color:#213b31;background:#fffef9}#customerDialog::backdrop{background:#102b24aa}.history-row{display:flex;width:100%;justify-content:space-between;gap:15px;background:#f0f4e9;color:#244431;border:1px solid #d8e1cf;margin:8px 0}.customer-history{margin-top:15px}#customerError{color:#963d29}[hidden]{display:none!important}@media(max-width:650px){.library-controls{grid-template-columns:1fr}.collection-panel{padding:16px}.nav-buttons{display:flex}.panel-heading{flex-wrap:wrap}}@media print{#customerDialog{display:none!important}}
/* Keep navigation and forms reachable in shorter desktop windows. */
aside{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#81957c #183b2f}.aside-bottom{flex-shrink:0;padding-top:22px;padding-bottom:10px}aside>img,aside>.eyebrow,aside>h2,aside>p,aside>.nav-buttons,aside>#new{flex-shrink:0}main{min-width:0}.workspace>*{min-width:0}.sheet{overflow-wrap:anywhere}body{min-height:100vh}@media(max-height:850px) and (min-width:651px){aside{padding-top:18px;padding-bottom:18px}aside img{width:110px;height:110px;margin-bottom:18px}aside h2{font-size:22px;margin:14px 0}aside p{font-size:12px;line-height:1.6;margin:8px 0}.nav-buttons{gap:7px;margin-bottom:10px}.aside-bottom{gap:11px}aside button{padding:9px 13px}main{padding-top:24px}}@media(max-width:650px){aside{overflow:visible;height:auto}}
