/* Shared v4 product system. Local fonts, no runtime dependencies. */
@font-face{font-family:Montserrat;src:url(../fonts/montserrat-latin-wght.woff2);font-weight:100 900;font-display:swap}
@font-face{font-family:Inter;src:url(../fonts/inter-latin-wght.woff2);font-weight:100 900;font-display:swap}
@font-face{font-family:Poppins;src:url(../fonts/poppins-latin-400.woff2);font-weight:400;font-display:swap}
:root{color-scheme:dark;--surface-0:#080c14;--surface-1:#101722;--surface-2:#182231;--surface-3:#223044;--border:#35445a;--text-primary:#f1f4f8;--text-secondary:#c0cad8;--text-tertiary:#a7b4c6;--accent:#edc66b;--success:#8de0b0;--warning:#f0ce83;--error:#ffa6ae;--info:#a2d4ff;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--text-xs:.75rem;--text-sm:.875rem;--text-md:.9375rem;--text-lg:1.125rem;--text-xl:1.5rem;--weight-normal:400;--weight-medium:500;--weight-bold:700;--shadow-modal:0 24px 80px #0009;--focus:0 0 0 2px var(--surface-0),0 0 0 4px var(--accent);--bg:var(--surface-0);--panel:var(--surface-1);--card:var(--surface-2);--line:var(--border);--line2:var(--border);--txt:var(--text-primary);--mut:var(--text-tertiary);--gold:var(--accent);--red:var(--error);--green:var(--success);--blue:var(--info);--fh:Montserrat,system-ui,sans-serif;--fb:Inter,system-ui,sans-serif}
*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#716447 transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#716447;border:2px solid transparent;background-clip:padding-box;border-radius:8px}*::-webkit-scrollbar-thumb:hover{background-color:var(--accent)}
body{background:var(--surface-0);color:var(--text-primary);font-family:var(--fb);font-size:var(--text-md);line-height:1.6;font-variant-numeric:tabular-nums}h1,h2,h3{font-family:var(--fh);font-weight:700;line-height:1.3}h1{font-size:clamp(1.35rem,2vw,1.75rem)}h2{font-size:var(--text-lg);color:var(--text-primary)}h3{font-size:1rem}a{color:var(--info)}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.card,.kpi{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:none}.card{padding:var(--space-5);margin-bottom:var(--space-4)}.top,.page-header{background:var(--surface-1);border-bottom:1px solid var(--border)}.side,.sidebar{background:var(--surface-0)}.side{scrollbar-gutter:stable}.navh,footer,.hint,.muted,.text-slate-500{color:var(--text-tertiary)}.side a:hover,.nav a:hover{background:var(--surface-2)}.side a[aria-current=page],.nav a[aria-current=page]{background:#edc66b16;color:var(--accent)}
label{color:var(--text-secondary)}input:not([type=checkbox]):not([type=radio]),select,textarea{background:var(--surface-0);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font:inherit;padding:8px 12px;min-height:38px;max-width:100%}.row input:not([type=checkbox]):not([type=radio]),.row select{height:38px;min-height:38px}textarea{height:auto;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}[aria-invalid=true]{border-color:var(--error)!important}.field-error,.err{color:var(--error);font-size:var(--text-sm)}input:disabled,select:disabled,textarea:disabled{opacity:.5;cursor:not-allowed}
input[type=checkbox]{appearance:none!important;display:inline-block!important;position:relative;flex:0 0 auto;width:16px!important;height:16px!important;min-height:16px!important;margin:2px 0;padding:0!important;border:1px solid #8b9aaf;border-radius:4px;background:var(--surface-0);vertical-align:middle;cursor:pointer;align-self:center}input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}input[type=checkbox]:checked::after{content:'';position:absolute;left:4px;top:1px;width:5px;height:9px;border:solid #171d28;border-width:0 2px 2px 0;transform:rotate(45deg)}input[type=checkbox]:indeterminate{background:var(--accent)}input[type=checkbox]:indeterminate::after{content:'';position:absolute;inset:6px 3px;background:#171d28;height:2px}input[type=checkbox]:disabled{opacity:.4;cursor:not-allowed}input[type=checkbox][role=switch]{width:36px!important;height:20px!important;min-height:20px!important;border-radius:20px;background:#45536a;border-color:#718199}input[type=checkbox][role=switch]::after{content:'';position:absolute;top:3px;left:3px;width:12px;height:12px;background:#f1f4f8;border:0;border-radius:50%;transform:none;transition:left .15s}input[type=checkbox][role=switch]:checked{background:var(--accent);border-color:var(--accent)}input[type=checkbox][role=switch]:checked::after{left:19px;background:#182231}label:has(>input[type=checkbox]){display:flex;flex-direction:row;align-items:center;gap:10px;cursor:pointer;min-height:36px}label.check .field-error{flex-basis:100%}
.btn,button:not(.nav-group):not(.x):not(.logout):not([data-sort]){font:600 var(--text-sm)/1.4 var(--fb);min-height:38px;border-radius:var(--radius-sm)}.btn,button[type=submit],.buy button{background:var(--accent);color:#171d28;border:1px solid transparent;padding:8px 16px}.btn:hover{color:#171d28;filter:brightness(1.06)}.btn.secondary{background:var(--surface-3);color:var(--text-primary);border:1px solid var(--border)}.btn.ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn.danger{background:#542530;color:#ffd7dc;border:1px solid #9c5261}.btn.sm{min-height:32px;padding:4px 12px;font-size:var(--text-xs)}.row>.btn,.row>button,.row>form>button{height:38px}.btn:disabled,button:disabled{opacity:.45;cursor:not-allowed;filter:none}.btn[aria-busy=true]::after{content:'';width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ds-spin .8s linear infinite}@keyframes ds-spin{to{transform:rotate(360deg)}}
table{width:100%;border-collapse:collapse}th,td{padding:8px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}th{position:sticky;top:0;background:var(--surface-2);color:var(--text-secondary);font-size:var(--text-xs);font-weight:600;letter-spacing:.04em}tbody tr:hover{background:var(--surface-2)}td.num,th.num{text-align:right}.badge,.tag{border-radius:99px;border:1px solid var(--border);padding:2px 8px;font-size:var(--text-xs)}.toolbar,.ds-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.ds-heading h2,.ds-heading p{margin:0}.toolbar input[type=search]{padding-left:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23a7b4c6'%3E%3Ccircle cx='7' cy='7' r='5'/%3E%3Cpath d='m11 11 4 4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:10px center}.empty,.shop-empty{padding:32px;text-align:center;color:var(--text-secondary);border:1px dashed var(--border);border-radius:10px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border);padding:16px 0}.setting-row:last-child{border:0}
dialog,dialog#shop-editor{color:var(--text-primary);background:var(--surface-1);border:1px solid var(--border);border-radius:14px;padding:24px;width:min(640px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:90dvh;overflow:auto;box-shadow:var(--shadow-modal)}dialog[data-size=sm]{width:440px}dialog[data-size=lg],dialog#shop-editor{width:1040px}dialog::backdrop{background:#03060cd9;backdrop-filter:blur(4px)}.ds-modal-footer,.shop-modal-footer{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:24px;padding-top:16px;border-top:1px solid var(--border);background:var(--surface-1)}.ds-modal-footer .hint{margin-right:auto}.ds-modal-form{display:grid;gap:12px}.ds-modal-form label{display:flex;flex-direction:column;gap:4px}.tabs,.panel-content>nav[aria-label=Categorias]{display:flex;gap:4px;flex-wrap:wrap;padding:4px;background:var(--surface-1);border:1px solid var(--border);border-radius:10px;margin-bottom:16px}.tabs a,.panel-content>nav[aria-label=Categorias] a{padding:8px 12px;color:var(--text-secondary);border-radius:6px;text-decoration:none}.tabs [aria-current],.panel-content>nav[aria-label=Categorias] [aria-current]{background:var(--surface-3);color:var(--accent)}#shop-toasts p,.toast{background:var(--surface-2);color:var(--text-primary);box-shadow:none}.shop-fields{gap:16px}.availability{gap:24px}.shop-summary .kpi b{font-family:var(--fb)}
@media(max-width:700px){.card{padding:16px}.setting-row{flex-wrap:wrap}table.ds-table thead{display:none}table.ds-table,table.ds-table tbody,table.ds-table tr{display:block}table.ds-table tr{padding:12px 0;border-bottom:1px solid var(--border)}table.ds-table td{display:flex;justify-content:space-between;gap:16px;border:0;padding:4px 0}table.ds-table td::before{content:attr(data-l);font-size:var(--text-xs);color:var(--text-tertiary)}.availability{align-items:start;flex-direction:column}.shop-fields{grid-template-columns:1fr}dialog{padding:16px}.ds-heading .btn{margin-left:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
/* Round 1: compact, readable data and consistent keyboard focus. */
:focus:not(:focus-visible),h1[tabindex="-1"]:focus,h2[tabindex="-1"]:focus{outline:none;box-shadow:none}
input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible){outline:none;box-shadow:none}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.hint,.muted,.small,.kpi small,.text-slate-400,.text-slate-500{font-size:max(12px,.8rem);color:var(--text-tertiary)}
.kpi small{line-height:1.5}.date,td time{white-space:nowrap;font-variant-numeric:tabular-nums}.num,.text-right{font-variant-numeric:tabular-nums}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.btn.sm{min-height:36px}.row-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;min-width:36px;padding:8px!important}.actions{display:flex;gap:8px;align-items:center}
.setting-row>span:first-child{min-width:0;flex:1}.setting-row code{display:block;font:12px/1.5 ui-monospace,monospace;color:var(--text-tertiary)}.setting-row .btn{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;white-space:nowrap}.setting-value{white-space:nowrap;margin-left:auto}.setting-row{gap:12px;padding:12px 0}.setting-row .badge:empty{display:none}
.dashboard-activity{grid-template-columns:minmax(240px,1fr) minmax(0,2fr);align-items:start}.shortcut-list{display:grid;gap:8px}.shortcut-list a{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;text-decoration:none}.shortcut-list small{flex-basis:100%;font-size:12px;font-weight:400;color:inherit}
#shop-filters.shop-filters{display:grid;grid-template-columns:minmax(180px,2fr) repeat(3,minmax(110px,1fr));gap:12px;align-items:end}#shop-filters .price-range{grid-column:1 / 3;min-width:0;padding:0;margin:0;border:0}#shop-filters .price-range legend{font:inherit;color:var(--text-secondary);margin-bottom:4px}#shop-filters .price-range>div{display:flex;align-items:center;gap:8px}#shop-filters .price-range input{min-width:0;width:100%}#shop-filters>button{grid-column:3 / 5}.filter-toggle{display:none}
.ds-modal-form label>.hint{margin:2px 0 0;line-height:1.5}.side-nav a{display:flex;align-items:center;gap:12px;min-height:40px}.side-nav svg{flex-shrink:0}header nav .site-nav-link{min-height:40px;display:inline-flex;align-items:center;padding:8px;border-radius:6px}header nav a[aria-current=page]{background:var(--surface-3);color:var(--accent)}
@media(max-width:1100px){.dashboard-activity{grid-template-columns:1fr}.shortcut-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.filter-toggle{display:inline-flex;margin-bottom:12px}#shop-filters.shop-filters{display:none;grid-template-columns:repeat(2,minmax(0,1fr))}#shop-filters.filters-open{display:grid}#shop-filters>label:first-child,#shop-filters .price-range,#shop-filters>button{grid-column:1 / -1}.shortcut-list{grid-template-columns:1fr}.setting-row{flex-wrap:nowrap}.setting-row>span:first-child{overflow-wrap:anywhere}.setting-value{white-space:normal;max-width:35%;text-align:right}.setting-row .btn{padding:8px}.setting-row .btn span{display:none}}
/* v5.1: logo do topo sem caixa (não é item "atual" do menu) e rodapé público em grade */
header nav a.site-brand,header nav a.site-brand[aria-current=page],header nav a.site-brand:hover{background:transparent;padding:0;min-height:0;border-radius:0}
.site-footer-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2.5rem;text-align:center}
.site-footer-brand img{display:block;margin-left:auto;margin-right:auto}
.site-footer-title{font:700 .8125rem/1.3 var(--fh);letter-spacing:.14em;text-transform:uppercase;color:#fcd34d;margin:0 0 .875rem}
.site-footer-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:.25rem}
footer .site-footer-links a,footer .site-footer-links button{display:inline-block;color:var(--text-secondary);font:400 .875rem/1.5 var(--fb)!important;min-height:0!important;padding:.25rem 0;margin:0;background:none;border:0;border-radius:0;text-align:inherit;text-decoration:none;cursor:pointer;transition:color .15s}
footer .site-footer-links a:hover,footer .site-footer-links button:hover,footer .site-footer-links a:focus-visible,footer .site-footer-links button:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:3px}
@media(min-width:768px){.site-footer-grid{grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));text-align:left}.site-footer-brand img{margin-left:0;margin-right:0}.site-footer-links{align-items:flex-start}}
