body{font-size:16px}.brand img{width:62px;height:45px;object-fit:contain}.brand small,.side-footer,.muted{font-size:14px}.content{max-width:1500px}h2{font-size:20px!important}.card p{line-height:1.6}.stats{margin:18px 0}.stat label{font-size:14px}.stat b{font-size:25px}.screen>.card{margin-top:18px}.card{margin-bottom:18px}.notice{font-size:14px;margin-top:0}button,.primary,.ghost{font-size:14px;min-height:44px}button:disabled{opacity:.5;cursor:not-allowed}.nav button{font-size:16px}.mobile-nav button{font-size:14px}label{display:block;font-size:14px;margin:12px 0;color:#534844}input,select,textarea{display:block;width:100%;border:1px solid #c6b9b2;background:white;color:#24201f;border-radius:8px;padding:12px;font:inherit;font-size:16px;margin-top:6px}input:focus,select:focus,button:focus-visible{outline:3px solid #bc7189;outline-offset:2px}.toolbar{align-items:end}.toolbar label{margin:0}.search-label{flex:1}.table{font-size:16px}.table th{font-size:14px;text-transform:none;letter-spacing:0}.table td{padding:12px}.table input{min-width:70px;width:85px}.product-head{display:flex;gap:16px;align-items:center;margin-bottom:16px}.product-head img{width:74px;height:90px;object-fit:cover;border-radius:9px}.product-head p{margin:4px 0;font-size:14px}.product-head h2{margin:0}.muted{color:#665c56}.small{font-size:14px;color:#665c56}.stock-pair{display:grid;gap:4px}.stock-pair span{font-size:14px}.inactive{opacity:.65}.badge{font-size:14px;padding:6px;background:#fff0d4;border-radius:8px}.empty{font-size:16px}.message{padding:14px;border-radius:8px;background:#edf6f0;margin:12px 0}.message.error{background:#fde4e4;color:#8b1c28}#message:empty{display:none}#scanner{display:flex;gap:12px;align-items:end}#scanner label{flex:1}#scanner button{margin-bottom:12px}#sql{min-height:260px;font-family:monospace;white-space:pre}summary{cursor:pointer;padding:16px 0}dialog{max-width:680px;width:94%;border:0;border-radius:16px;padding:24px}dialog::backdrop{background:#0008}#cart{margin:20px 0}.cart-line{display:flex;justify-content:space-between;gap:10px;padding:14px 0;border-bottom:1px solid #e9e0d9}.cart-line small{display:block;font-size:14px}.total{font-size:24px;font-weight:bold;margin:18px 0}.history-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 0;border-bottom:1px solid #e9e0d9}.history-row p{margin:0}.gate{padding:12px;background:#fff3df;margin:14px 0;border-radius:8px}.receipt-lines{width:100%;border-collapse:collapse}.receipt-lines td{padding:9px;border-bottom:1px solid #ddd}a{color:#721d38}#refresh{white-space:nowrap}@media(max-width:560px){.top h1{font-size:21px}.stats{grid-template-columns:1fr 1fr}.stat label{font-size:14px}.table{font-size:16px}.toolbar{display:block}.toolbar label{margin-bottom:12px}.mobile-nav{height:70px}.content{padding-bottom:100px}.history-row{flex-wrap:wrap}}@media print{body>.shell,body>.mobile-nav,#close-receipt,#print{display:none!important}dialog{position:static;display:block!important;max-width:100%;width:100%;margin:0;padding:0}dialog:not([open]){display:none!important}dialog::backdrop{display:none}#receipt-body{font-size:12px}.receipt-lines td{padding:5px}}

.mobile-nav{grid-template-columns:repeat(6,1fr)}@media(max-width:560px){.mobile-nav button{font-size:12px;padding:6px 2px}}

html,body,button,input,select,a{touch-action:manipulation}
.ticket-heading{text-align:center;border-bottom:1px dashed #222;padding-bottom:12px}.ticket-heading h2{font-size:25px!important;letter-spacing:.14em}.ticket-heading p{margin:5px 0}.ticket-ref{font-size:11px;overflow-wrap:anywhere}.ticket-note{white-space:pre-wrap}.receipt-lines th{text-align:left;border-bottom:1px dashed #222;padding:8px 0}.receipt-lines td{vertical-align:top;padding:10px 0}.receipt-lines td:last-child,.receipt-lines th:last-child{text-align:right;padding-left:10px;white-space:nowrap}.ticket-total{display:flex;justify-content:space-between;gap:12px;font-size:20px;border-top:2px solid #222;padding-top:14px;margin-top:12px}.ticket-footer,.ticket-units{text-align:center;font-size:12px}.ticket-logo{display:block;width:70px;height:50px;object-fit:contain;margin:20px auto 0;filter:grayscale(1) brightness(0)}#receipt-body{width:var(--ticket-width,72mm);max-width:100%;margin:20px auto;background:white;color:black;padding:10px;font-family:ui-monospace,monospace;font-size:13px}
@media(max-width:950px){.mobile-nav{height:calc(82px + env(safe-area-inset-bottom));padding:8px 6px calc(8px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;gap:2px}.mobile-nav button{font-size:14px;line-height:1.15;padding:6px 2px;border-radius:10px;min-width:0}.mobile-nav button.active{background:#812641;font-weight:700}.content{padding-bottom:calc(115px + env(safe-area-inset-bottom))}.top{padding-top:env(safe-area-inset-top);height:calc(78px + env(safe-area-inset-top))}}
@media print{html,body{background:white!important;margin:0!important;padding:0!important}dialog[open]{width:var(--ticket-width,72mm)!important;max-width:100%!important;margin:0!important;padding:0!important;overflow:visible!important;max-height:none!important;border-radius:0!important}#receipt-body{width:100%;padding:0;margin:0;font-size:11px}.ticket-heading h2{font-size:21px!important}.ticket-total{font-size:16px}.receipt-lines tr{break-inside:avoid}.ticket-logo{break-inside:avoid}.ticket-ref{font-size:9px}}

#upgrade-sql{min-height:220px;font-family:monospace}#sync-status:empty{display:none}.cart-line>div{width:100%}.cart-line input[data-price]{max-width:210px}.cart-line details{font-size:14px}.ticket-ref{margin:8px 0}.receipt-lines td{padding:6px 0}
#profile-screen{position:fixed;inset:0;z-index:30;background:#f5f0e9;display:grid;place-items:center;padding:20px}#profile-screen[hidden]{display:none}.profile-box{width:min(620px,100%);text-align:center;background:#fffdfa;border:1px solid #e9e0d9;border-radius:22px;padding:32px}.profile-box>img{width:70px;height:70px;object-fit:contain;background:#721d38;border-radius:18px;padding:10px}.profile-box h1{font-size:24px}.profile-box p{color:#665c56}.profile-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0}.profile-list button{background:#f8f1ec;border:1px solid #e9e0d9;border-radius:16px;padding:22px 10px;color:#721d38;font-weight:700}.profile-list button:hover{background:#721d38;color:white}@media(max-width:560px){.profile-list{grid-template-columns:1fr}.profile-box{padding:24px}}

[hidden]{display:none!important}.logged-out .side,.logged-out .mobile-nav,.logged-out #refresh,.logged-out #settings>.card:not(#account-card){display:none!important}.logged-out .shell{display:block}.logged-out .main{margin:0}.logged-out .content{max-width:520px;margin:auto}.logged-out #account-card{margin-top:30px}.profile-list button{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:18px}.profile-list small{font-weight:400;font-size:13px;line-height:1.4}.profile-box{max-height:90dvh;overflow:auto}#profile-error{color:#9d1632}.pin-dialog{max-width:380px}.pin-dialog input{letter-spacing:.35em;font-size:23px}.history-row small{display:block;margin-top:6px}@media(max-width:560px){.profile-list{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-box{padding:20px}.profile-list button{font-size:16px;padding:12px 8px}}

.management-card{max-width:820px;margin:0 auto;padding:28px}.management-card h2{font-size:28px!important;margin:0 0 28px}.period-tabs{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #d6c8cc;border-radius:14px;padding:4px;gap:4px}.period-tabs button{background:transparent;border:0;color:#78616a;font-weight:600;border-radius:10px;font-size:16px}.period-tabs button.active{background:#fff;box-shadow:0 0 0 2px #721d38 inset;color:#721d38}.period-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px 0 18px}.period-heading h3{font-size:22px;margin:0;text-transform:capitalize}.period-heading>div{display:flex;gap:8px}.period-heading button{font-size:25px;min-width:44px;padding:4px 12px}.income-summary{margin:28px 0}.income-summary>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;font-size:18px;align-items:baseline}.income-summary strong{font-variant-numeric:tabular-nums;text-align:right}#management-income{color:#398536;font-size:24px}.income-chart{display:flex;gap:10px;min-height:250px;margin-top:32px}.income-axis{display:flex;flex-direction:column;justify-content:space-between;padding:24px 0 35px;font-size:12px;color:#786b71;min-width:45px;max-width:85px;overflow-wrap:anywhere}.income-bars{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));flex:1;gap:8px;border-top:1px dashed #d9d0d4;padding-top:8px}.income-column{display:flex;flex-direction:column;justify-content:end;align-items:center;gap:8px;background:none;border:0;padding:0!important;color:#76646d;min-width:0;border-radius:6px}.bar-value{font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}.bar-track{height:170px;width:100%;display:flex;align-items:end;border-bottom:1px solid #d9d0d4}.bar-fill{width:70%;margin:auto auto 0;background:#b7d4b2;border-radius:12px 12px 0 0;min-height:0}.selected .bar-fill{background:#398536}.selected .bar-label{color:#252025;font-weight:700}.bar-label{font-size:13px;min-height:30px}.chart-legend{display:flex;align-items:center;gap:8px;font-size:14px}.chart-legend span{width:12px;height:12px;background:#398536;border-radius:4px}.income-day{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid #eee}.income-day small{display:block;color:#786b71;margin-top:5px}.income-day strong{white-space:nowrap}#management-pending:empty{display:none}#management-sql{min-height:230px;font-family:monospace;font-size:14px}@media(max-width:560px){.management-card{padding:20px 16px}.management-card h2{font-size:24px!important}.period-heading h3{font-size:20px}.income-summary>div{font-size:16px}#management-income{font-size:22px}.income-bars{gap:5px}.income-axis{font-size:11px;max-width:64px}.bar-value{font-size:11px}.bar-label{font-size:12px}.mobile-nav button[data-screen=management]{font-size:13px}}

.article-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}#article-dialog{max-width:520px;max-height:90dvh;overflow:auto}#article-error{color:#9d1632}#catalog-sql{min-height:240px;font-family:monospace;font-size:14px}#catalog-activation{margin:14px 0}#add-article{margin-bottom:16px}

#print-sale{display:block;margin-top:14px;width:100%}

#article-preview{display:flex;gap:12px;flex-wrap:wrap}#article-preview>div{width:120px}#article-preview img{width:120px;height:120px;object-fit:cover;border-radius:8px}#admin-sql{min-height:240px}.desktop-layout .shell{display:grid;grid-template-columns:190px minmax(0,1fr)}.desktop-layout .side{display:flex}.desktop-layout .mobile-nav{display:none}.desktop-layout .content{padding:22px}.desktop-layout{padding-bottom:0}.desktop-layout .nav{display:flex;flex-direction:column}.desktop-layout .nav button{display:block}.desktop-layout .stats{grid-template-columns:repeat(2,minmax(0,1fr))}

.profit-section{margin-top:32px;border-top:1px solid #ddd;padding-top:24px}.profit-section h2{margin-bottom:16px}

.sale-options>div{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.sale-options button{padding:14px;background:#eee5df;color:#721d38;border-radius:10px}.sale-options button.selected{background:#721d38;color:white}.quantity-buttons{display:flex;gap:6px;margin-top:6px}.quantity-buttons button{flex:1;background:#f4ece6;color:#721d38;border-radius:6px;font-size:22px}.curve-button{display:block;margin-top:12px;white-space:nowrap;font-size:13px}.sale-table input{width:90px}.sale-table th:first-child{min-width:100px}

.notification-item{border-top:1px solid #ded6d1;padding:16px 12px}.notification-item.unread{border-left:4px solid #721d38;background:#faf1f4}.notification-item p{margin:8px 0}.notification-actions{display:flex;gap:8px;flex-wrap:wrap}#sale-notifications-dialog{width:min(620px,calc(100vw - 32px));max-height:85vh;overflow:auto;box-sizing:border-box}.top{flex-wrap:wrap}.top h1{flex:1}#sale-notifications-open{font-size:16px;padding:12px}

.stock-account-menu{position:fixed;z-index:2000;width:min(280px,calc(100vw - 16px));max-height:65vh;overflow:auto;background:#fffaf5;border:1px solid #ddd0cb;box-shadow:0 8px 30px #31101933;border-radius:18px;padding:8px;box-sizing:border-box}.stock-account-menu button{display:block;width:100%;text-align:left;background:transparent;color:#721d38;padding:18px;border:0;border-radius:10px;font-size:18px}.stock-account-menu button:hover,.stock-account-menu button:focus{background:#f0e3e7}#sale-notifications-status:empty{display:none}#exchange-dialog{width:min(540px,calc(100vw - 32px));box-sizing:border-box;max-height:85vh;overflow:auto}#exchange-dialog select{max-width:100%}
