/* Shared app surface, responsive containment and touch controls. */
:root{--v87-gap:16px;--v87-radius:14px;--v87-border:#e2ded5;--v87-paper:#fff;--v87-bg:#faf8f3;--v87-gold:#88703d}
*,*::before,*::after{box-sizing:border-box}html{width:100%;text-size-adjust:100%;-webkit-text-size-adjust:100%;scroll-padding-bottom:100px}body{width:100%;max-width:100%;margin:0;background:var(--v87-bg);overflow-x:clip}body,button,input,textarea,select{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}img,video,canvas,svg{max-width:100%}img{object-fit:contain}h1,h2,h3,p,small,dt,dd,span,a{overflow-wrap:anywhere}button,a,summary{touch-action:manipulation}button,input,select,textarea{max-width:100%;min-width:0}input,select,textarea{border-radius:10px}button,.button{min-height:44px;line-height:1.35;border-radius:10px}.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #aa8d52;outline-offset:3px}form,label,fieldset,section,article,.main,.app-shell,.ui-detail,.form-grid,.panel-grid{min-width:0;max-width:100%}fieldset{margin:0}.main{width:100%;padding-bottom:110px}.ui-detail{width:100%;max-width:1120px}.ui-panel,.panel,.app-form-card,.ui-records{border-color:var(--v87-border);border-radius:var(--v87-radius);box-shadow:0 2px 8px #29251c04}.ui-title h1,.page-head h1,.page-head h2,.v82-page-heading h1{font-size:clamp(25px,3.5vw,34px);line-height:1.18;letter-spacing:-.7px}.ui-title p,.v82-page-heading p{line-height:1.55;max-width:65ch}.ui-panel h2,.app-form-card h2{font-size:20px}.ui-records{gap:0}.ui-record-link{height:auto}.ui-record-actions{padding:0 14px 14px}.ui-fields,.form-grid,.panel-grid{gap:16px}.ui-info>*,.ui-fields>*,.form-grid>*,.panel-grid>*,.action-row>*{min-width:0}.action-row,.section-head,.ui-panel-head,.page-head{flex-wrap:wrap}.action-row{gap:8px}.action-row form{margin:0}.ui-table-scroll,.responsive-table,.v87-table-scroll,.dashboard-trend-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.v87-table-scroll:focus-visible{outline:2px solid var(--v87-gold)}table{border-collapse:collapse}pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}dialog{max-width:calc(100% - 24px);max-height:calc(100dvh - 24px)}dialog input{font-size:16px}.alert{overflow-wrap:anywhere}.mobile-nav{width:100%;max-width:100vw}.v87-upload header p{color:#6a6962;line-height:1.5}.v87-upload-row{display:grid;grid-template-columns:140px minmax(0,1fr);gap:20px;align-items:center;margin-top:18px}.v87-photo-preview{height:140px;border:1px dashed #cfc5ae;border-radius:12px;background:#faf8f2;display:grid;place-items:center;overflow:hidden}.v87-photo-preview img{width:100%;height:100%;object-fit:contain}.v87-photo-preview svg{width:42px;height:42px;color:#9b8551}.v87-upload input[type=file]{padding:12px;width:100%;border:1px solid #d6d0c3;background:#fff}.v87-upload input::file-selector-button{border:0;background:#f2ede2;border-radius:6px;padding:8px;margin-right:8px;font:inherit}.v87-upload small{display:block;margin-top:8px;color:#6a6962}.v87-stock-total{font-size:28px;display:block;margin:14px 0}.v87-live-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin:0 auto 16px;max-width:1120px;color:#716d63;font-size:12px}.v87-live-toolbar[hidden]{display:none}.v87-live-toolbar button{border:1px solid #ddd6c6;background:#fff;border-radius:8px;font-size:12px;padding:8px 12px;flex-shrink:0}.v87-catalogue-notice{margin:10px 0;color:#756135}.ui-item-name{min-width:0}.invoice-product-thumb,.line-product-photo,.v82-product-image img,.v82-detail-image img{object-fit:contain}.v82-product-image svg[hidden]{display:none}.v82-product-actions form{flex:1}.v82-product-actions form button{width:100%}.v87-breadcrumb{display:flex;gap:8px;flex-wrap:wrap;font-size:12px;color:#797264;margin-bottom:14px}.v87-breadcrumb a{color:inherit}.auth-card{max-width:min(460px,calc(100% - 24px));width:100%}.auth-bg{min-height:100dvh;padding:24px 12px}.v82-product-form .v82-form-actions{z-index:15}
@media(max-width:760px){:root{--v87-gap:12px}.main{padding:12px 12px calc(104px + env(safe-area-inset-bottom))!important}.app-header{margin:-12px -12px 16px;padding:10px 12px;max-width:calc(100% + 24px);width:calc(100% + 24px)}.app-header-actions{gap:6px}.app-header-actions .icon-button{min-width:42px}.app-brand-mini img{max-width:100px}input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important;min-height:46px}.ui-panel,.panel,.app-form-card{padding:16px}.form-grid,.ui-info,.panel-grid,.v82-form-fields{grid-template-columns:minmax(0,1fr)}.form-grid>.full,.full{grid-column:1/-1}.ui-info dl>div{grid-template-columns:22px 80px minmax(0,1fr)}.ui-period{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ui-period .button{grid-column:1/-1}.ui-document-heading{align-items:flex-start;gap:10px}.ui-document-heading strong{font-size:22px}.ui-fields{gap:12px}.ui-ledger-row{grid-template-columns:24px minmax(0,1fr) minmax(84px,auto) 14px;gap:8px}.ui-account-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.v87-upload-row{grid-template-columns:1fr}.v87-photo-preview{width:160px;height:160px}.v87-upload-row>div{min-width:0}.v87-live-toolbar{font-size:11px}.v82-product-grid{grid-template-columns:minmax(0,1fr)}.sticky-submit,.sticky-actions,.v82-form-actions{max-width:100%;left:0;right:0}.focused-form .main{padding-bottom:120px!important}.module-drawer{max-width:100vw}.ui-statement-entry .ui-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-statement-money{gap:8px}.ui-records{grid-template-columns:minmax(0,1fr)}.ui-item{min-width:0}.ui-compact-row{grid-template-columns:20px minmax(0,1fr) auto 16px}.ui-compact-row>.ui-badge{grid-column:2/4;justify-self:start}.auth-card{padding:22px 18px}.v86-section-tabs{overscroll-behavior-x:contain}}
@media(max-width:360px){.app-brand-mini img{max-width:78px}.app-header-actions{gap:2px}.app-header-actions .header-action-label{font-size:10px}.ui-fields{grid-template-columns:minmax(0,1fr)}.v81-invoice-metrics{gap:8px}.v81-invoice-actions{flex-wrap:wrap}.v81-invoice-actions>.button{flex:1 1 44%}}
@media print{body{overflow:visible;background:#fff}.main{padding:0!important}.v87-live-toolbar,.v87-breadcrumb{display:none!important}.v87-table-scroll{overflow:visible}.v86-dashboard-extra{display:block}}

[hidden]{display:none!important}
/* One header layout on every module, including the older invoice/customer screens. */
body[data-route] .app-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:72px}
body[data-route] .app-header .app-brand-mini{flex:0 0 auto;min-width:0}
body[data-route] .app-header .app-brand-mini img{width:88px;max-width:88px;height:46px;object-fit:contain}
body[data-route] .app-header .app-brand-mini small{display:none}
body[data-route] .app-header .app-header-actions{display:flex;align-items:center;gap:4px;min-width:0;flex:0 0 auto}
body[data-route] .app-header .app-header-actions .icon-button,body[data-route] .app-header .app-header-actions .user-avatar{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:48px;min-width:48px;height:52px;min-height:52px;padding:2px;border:0;border-radius:8px;background:transparent;color:#27251f;font-weight:400}
body[data-route] .app-header .app-header-actions svg{width:23px;height:23px;flex-shrink:0}
body[data-route] .app-header .header-action-label{display:block;max-width:50px;font-size:10px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body[data-route] input:not([type=checkbox]):not([type=radio]),body[data-route] select,body[data-route] textarea{font-weight:400}
@media(max-width:360px){body[data-route] .app-header{gap:4px}body[data-route] .app-header .app-brand-mini img{width:72px;max-width:72px}body[data-route] .app-header .app-header-actions{gap:0}body[data-route] .app-header .app-header-actions .icon-button,body[data-route] .app-header .app-header-actions .user-avatar{width:46px;min-width:46px}}

/* v88 usability pass: simpler forms, truthful states and resilient mobile fields. */
.v87-live-toolbar [data-live-status][data-tone="success"]{color:#397044}.v87-live-toolbar [data-live-status][data-tone="error"]{color:#9f4338}.v87-live-toolbar button:disabled{opacity:.55}
.line-product-photo-placeholder{width:auto;max-width:100%;min-width:64px;min-height:56px;align-items:center;justify-content:center;overflow:visible}.line-product-photo-placeholder small{white-space:nowrap;word-break:normal;overflow-wrap:normal}.line-product-photo-placeholder svg{flex:0 0 auto}
.reference-invoice input[type="date"]{display:block;width:100%;min-width:0;max-width:100%;-webkit-appearance:none;appearance:none}
.v88-invoice-options,.v88-line-options,.v88-summary-options,.v88-more-fields{min-width:0;border-top:1px solid var(--v87-border);margin-top:12px;padding-top:8px}.v88-invoice-options>summary,.v88-line-options>summary,.v88-summary-options>summary,.v88-more-fields>summary,.v88-report-more>summary,.v88-history-more>summary{display:flex;align-items:center;min-height:44px;color:#735f31;cursor:pointer;font-size:13px;font-weight:650;list-style:none}.v88-invoice-options>summary::-webkit-details-marker,.v88-line-options>summary::-webkit-details-marker,.v88-summary-options>summary::-webkit-details-marker,.v88-more-fields>summary::-webkit-details-marker,.v88-report-more>summary::-webkit-details-marker,.v88-history-more>summary::-webkit-details-marker{display:none}.v88-invoice-options>summary:after,.v88-line-options>summary:after,.v88-summary-options>summary:after,.v88-more-fields>summary:after,.v88-report-more>summary:after,.v88-history-more>summary:after{content:'+';margin-left:auto;font-size:18px;font-weight:400}.v88-invoice-options[open]>summary:after,.v88-line-options[open]>summary:after,.v88-summary-options[open]>summary:after,.v88-more-fields[open]>summary:after,.v88-report-more[open]>summary:after,.v88-history-more[open]>summary:after{content:'−'}
.v88-invoice-options>.form-grid,.v88-line-options>.form-grid,.v88-more-fields>.v82-form-fields{margin-top:8px}.v88-assigned-number{display:grid;gap:4px;margin:0;color:#77736b;font-size:12px}.v88-assigned-number strong{color:#292720;font-size:14px}.v88-summary-options>div{display:grid;gap:8px;padding-top:8px}.v88-summary-options .ref-summary-input{margin:0}.v88-unit-correction{display:grid;gap:10px}.v88-unit-correction>p{margin:0}.v88-unit-correction label{display:grid;gap:5px}.v88-unit-correction label:has(input[type="checkbox"]){grid-template-columns:auto minmax(0,1fr);align-items:center}.v88-unit-correction input[type="checkbox"]{width:22px;height:22px}
.v88-report-more{margin:0 0 14px auto;width:max-content;max-width:100%}.v88-report-more>summary,.v88-history-more>summary{justify-content:center;gap:8px;min-height:40px;padding:7px 11px;border:1px solid var(--v87-border);border-radius:9px;background:#fff}.v88-report-more>summary:after,.v88-history-more>summary:after{margin-left:5px}.v88-report-more>div,.v88-history-more>div{display:flex;gap:7px;margin-top:7px}.v88-report-more .button,.v88-history-more .button{flex:1;white-space:nowrap}.v88-low-stock-summary strong{font-size:22px}.operational-report .ui-record-actions .button{width:100%}.v88-movement-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.v88-cost-summary{display:flex;align-items:flex-start;gap:8px;margin:0 0 12px;padding:10px 12px;border:1px solid #ecd9cc;border-radius:10px;background:#fff8f2;color:#8c4d2e;font-size:11px}.v88-cost-summary svg{width:18px;height:18px;flex:none}.v88-movement-footer{justify-content:flex-end}.v88-history-more{position:relative}.v88-history-more>div{position:absolute;right:0;z-index:5;padding:8px;border:1px solid var(--v87-border);border-radius:10px;background:#fff;box-shadow:0 10px 30px #29251c18}
@media(max-width:560px){.reference-invoice .invoice-meta-grid{grid-template-columns:minmax(0,1fr)!important}.reference-invoice .invoice-meta-grid>*{grid-column:1/-1}.reference-invoice .invoice-line{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-invoice .invoice-line>label:nth-of-type(2){grid-column:1/-1}.reference-invoice .invoice-line .line-total-box{grid-column:1/-1}.v88-invoice-options>.form-grid,.v88-line-options>.form-grid{grid-template-columns:minmax(0,1fr)}.v88-invoice-options>.form-grid>*,.v88-line-options>.form-grid>*{grid-column:1/-1}.v88-report-more{width:100%}.v88-report-more>summary{width:100%}.v88-report-more>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.operational-filters{padding:12px}.report-filter-actions{display:grid;grid-template-columns:minmax(0,1fr) auto}.report-filter-actions .button{min-width:0}.v88-movement-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.v88-history-more>div{min-width:190px}.v88-unit-correction{padding:12px}.v88-more-fields>.v82-form-fields{grid-template-columns:minmax(0,1fr)}}
